feat(hce): add hce plugin wrapper (#2534)

feat(hce): add hce plugin wrapper
This commit is contained in:
GabrielTK 2018-06-13 15:06:37 -03:00 committed by Daniel Sogl
parent 03e6afbad4
commit 8460e6838a

View File

@ -0,0 +1,80 @@
import { Injectable } from '@angular/core';
import { Plugin, Cordova, IonicNativePlugin } from '@ionic-native/core';
/**
* @name hce
* @description
* HCE Cordova Wrapper
*
* @usage
* ```typescript
* import { hce } from '@ionic-native/hce';
*
*
* constructor(private hce: hce) { }
*
* ...
*
* function onCommand(command){
* var commandAsBytes = new Uint8Array(command);
* var commandAsString = hce.util.byteArrayToHexString(commandAsBytes);
*
* // do something with the command
*
* // send the response
* hce.sendReponse(commandResponse);
* }
* this.hce.registerCommandCallback().then(onCommand);
*
* ```
*/
@Plugin({
pluginName: 'hce',
plugin: 'cordova-plugin-hce',
pluginRef: 'hce',
repo: 'https://github.com/don/cordova-plugin-hce',
install: '',
installVariables: ['AID_FILTER'],
platforms: ['Android']
})
@Injectable()
export class HCE extends IonicNativePlugin {
/**
* Registers command receiver.
* @param onCommand {HCECommandEvent} The event handler.
* @param fail {Function} Error event handler.
*
*/
@Cordova()
registerCommandCallback(onCommand: HCECommandEvent, fail?: Function): void {
return; // We add return; here to avoid any IDE / Compiler errors
}
/**
* Registers Deactivated receiver.
* @param ok {HCEDeactivatedEvent} Success event handler.
* @param fail {Function} Error event handler.
*
*/
@Cordova()
registerDeactivatedCallback(ok: HCEDeactivatedEvent, fail?: Function): void {
return; // We add return; here to avoid any IDE / Compiler errors
}
/**
* Sends response APDU.
* @param response {Uint8Array} Response
* @param success {string} Success Callback.
* @param success {string} Failure Callback.
*
*/
@Cordova()
sendResponse(response: Uint8Array, success?: Function, failure?: Function): void {
return; // We add return; here to avoid any IDE / Compiler errors
}
}
export interface HCECommandEvent { (command: Uint8Array): void; }
export interface HCEDeactivatedEvent { (command: number): void; }