react-native-nfc-manager 4.0.0-beta.7 → 4.0.0-beta.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +37 -3
- package/android/src/main/java/community/revteltech/nfc/MifareClassicHandler.java +419 -0
- package/android/src/main/java/community/revteltech/nfc/MifareUltralightHandler.java +84 -0
- package/android/src/main/java/community/revteltech/nfc/NdefHandler.java +373 -0
- package/android/src/main/java/community/revteltech/nfc/NfcAdapterStateChangedReceiver.java +48 -0
- package/android/src/main/java/community/revteltech/nfc/NfcErrorCodes.java +16 -0
- package/android/src/main/java/community/revteltech/nfc/NfcManager.java +333 -1119
- package/android/src/main/java/community/revteltech/nfc/NfcManagerIOSStubBase.java +130 -0
- package/android/src/main/java/community/revteltech/nfc/NfcTechIoRouter.java +258 -0
- package/android/src/main/java/community/revteltech/nfc/TagTechnologyRequest.java +19 -7
- package/android/src/main/java/community/revteltech/nfc/Util.java +201 -0
- package/dist/ndef-lib/constants.js +67 -0
- package/dist/ndef-lib/constants.js.map +1 -0
- package/dist/ndef-lib/index.js +79 -0
- package/dist/ndef-lib/index.js.map +1 -0
- package/dist/ndef-lib/ndef-text.js +29 -0
- package/dist/ndef-lib/ndef-text.js.map +1 -0
- package/dist/ndef-lib/ndef-uri.js +40 -0
- package/dist/ndef-lib/ndef-uri.js.map +1 -0
- package/dist/ndef-lib/ndef-wifi-simple.js +100 -0
- package/dist/ndef-lib/ndef-wifi-simple.js.map +1 -0
- package/dist/ndef-lib/ndef.js +153 -0
- package/dist/ndef-lib/ndef.js.map +1 -0
- package/dist/ndef-lib/stringifier.js +155 -0
- package/dist/ndef-lib/stringifier.js.map +1 -0
- package/dist/ndef-lib/util.js +126 -0
- package/dist/ndef-lib/util.js.map +1 -0
- package/dist/specs/NativeNfcManager.js +5 -0
- package/dist/specs/NativeNfcManager.js.map +1 -0
- package/dist/src/NativeNfcManager.js +55 -0
- package/dist/src/NativeNfcManager.js.map +1 -0
- package/dist/src/NfcError.js +220 -0
- package/dist/src/NfcError.js.map +1 -0
- package/dist/src/NfcManager.js +175 -0
- package/dist/src/NfcManager.js.map +1 -0
- package/dist/src/NfcManagerAndroid.js +112 -0
- package/dist/src/NfcManagerAndroid.js.map +1 -0
- package/dist/src/NfcManagerIOS.js +119 -0
- package/dist/src/NfcManagerIOS.js.map +1 -0
- package/dist/src/NfcTech/Iso15693HandlerIOS.js +99 -0
- package/dist/src/NfcTech/Iso15693HandlerIOS.js.map +1 -0
- package/dist/src/NfcTech/IsoDepHandler.js +29 -0
- package/dist/src/NfcTech/IsoDepHandler.js.map +1 -0
- package/dist/src/NfcTech/MifareClassicHandlerAndroid.js +68 -0
- package/dist/src/NfcTech/MifareClassicHandlerAndroid.js.map +1 -0
- package/dist/src/NfcTech/MifareUltralightHandlerAndroid.js +23 -0
- package/dist/src/NfcTech/MifareUltralightHandlerAndroid.js.map +1 -0
- package/dist/src/NfcTech/NdefFormatableHandlerAndroid.js +16 -0
- package/dist/src/NfcTech/NdefFormatableHandlerAndroid.js.map +1 -0
- package/dist/src/NfcTech/NdefHandler.js +54 -0
- package/dist/src/NfcTech/NdefHandler.js.map +1 -0
- package/dist/src/NfcTech/NfcAHandler.js +16 -0
- package/dist/src/NfcTech/NfcAHandler.js.map +1 -0
- package/dist/src/NfcTech/NfcVHandler.js +33 -0
- package/dist/src/NfcTech/NfcVHandler.js.map +1 -0
- package/dist/src/index.js +53 -0
- package/dist/src/index.js.map +1 -0
- package/index.d.ts +76 -43
- package/ios/NfcManager.h +2 -10
- package/ios/NfcManager.mm +176 -434
- package/ios/RNNfcBridgeUtil.h +28 -0
- package/ios/RNNfcBridgeUtil.mm +52 -0
- package/ios/RNNfcManager+Felica.swift +61 -0
- package/ios/RNNfcManager+Iso15693.swift +895 -0
- package/ios/RNNfcManager+IsoDep.swift +145 -0
- package/ios/RNNfcManager+Mifare.swift +61 -0
- package/ios/RNNfcManager+Ndef.swift +120 -0
- package/ios/RNNfcManager.h +251 -0
- package/ios/RNNfcManager.swift +648 -0
- package/ios/RNNfcSessionDelegateProxy.swift +104 -0
- package/ios/RNNfcSwiftUtil.swift +34 -0
- package/ndef-lib/{constants.js → constants.ts} +2 -0
- package/ndef-lib/{index.js → index.ts} +23 -12
- package/ndef-lib/{ndef-text.js → ndef-text.ts} +7 -2
- package/ndef-lib/{ndef-uri.js → ndef-uri.ts} +8 -3
- package/ndef-lib/{ndef-wifi-simple.js → ndef-wifi-simple.ts} +34 -11
- package/ndef-lib/{ndef.js → ndef.ts} +49 -20
- package/ndef-lib/{stringifier.js → stringifier.ts} +27 -10
- package/ndef-lib/{util.js → util.ts} +13 -8
- package/package.json +21 -7
- package/react-native-nfc-manager.podspec +3 -2
- package/specs/NativeNfcManager.ts +17 -3
- package/src/NativeNfcManager.ts +84 -0
- package/src/{NfcError.js → NfcError.ts} +6 -17
- package/src/{NfcManager.js → NfcManager.ts} +49 -34
- package/src/{NfcManagerAndroid.js → NfcManagerAndroid.ts} +25 -8
- package/src/{NfcManagerIOS.js → NfcManagerIOS.ts} +31 -10
- package/src/NfcTech/{Iso15693HandlerIOS.js → Iso15693HandlerIOS.ts} +64 -36
- package/src/NfcTech/{IsoDepHandler.js → IsoDepHandler.ts} +8 -5
- package/src/NfcTech/{MifareClassicHandlerAndroid.js → MifareClassicHandlerAndroid.ts} +33 -24
- package/src/NfcTech/{MifareUltralightHandlerAndroid.js → MifareUltralightHandlerAndroid.ts} +14 -5
- package/src/NfcTech/{NdefFormatableHandlerAndroid.js → NdefFormatableHandlerAndroid.ts} +9 -2
- package/src/NfcTech/{NdefHandler.js → NdefHandler.ts} +19 -6
- package/src/NfcTech/{NfcAHandler.js → NfcAHandler.ts} +6 -3
- package/src/NfcTech/{NfcVHandler.js → NfcVHandler.ts} +8 -5
- package/src/__mocks__/{NativeNfcManager.js → NativeNfcManager.ts} +4 -1
- package/src/{index.js → index.ts} +1 -1
- package/android/src/main/java/community/revteltech/nfc/JsonConvert.java +0 -141
- package/android/src/main/java/community/revteltech/nfc/MifareUtil.java +0 -84
- package/ios/NfcManager+Felica.mm +0 -43
- package/ios/NfcManager+Iso15693.mm +0 -600
- package/ios/NfcManager+IsoDep.mm +0 -83
- package/ios/NfcManager+Mifare.mm +0 -43
- package/ios/Util.mm +0 -55
- package/specs/NativeNfcManager.js +0 -3
- package/specs/NativeNfcManager.js.map +0 -1
- package/src/NativeNfcManager.js +0 -37
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NfcManagerAndroid = exports.NfcAdapter = void 0;
|
|
4
|
+
const NativeNfcManager_1 = require("./NativeNfcManager");
|
|
5
|
+
const NfcManager_1 = require("./NfcManager");
|
|
6
|
+
const MifareClassicHandlerAndroid_1 = require("./NfcTech/MifareClassicHandlerAndroid");
|
|
7
|
+
const MifareUltralightHandlerAndroid_1 = require("./NfcTech/MifareUltralightHandlerAndroid");
|
|
8
|
+
const NdefFormatableHandlerAndroid_1 = require("./NfcTech/NdefFormatableHandlerAndroid");
|
|
9
|
+
const NfcError_1 = require("./NfcError");
|
|
10
|
+
const NfcAdapter = {
|
|
11
|
+
FLAG_READER_NFC_A: 0x1,
|
|
12
|
+
FLAG_READER_NFC_B: 0x2,
|
|
13
|
+
FLAG_READER_NFC_F: 0x4,
|
|
14
|
+
FLAG_READER_NFC_V: 0x8,
|
|
15
|
+
FLAG_READER_NFC_BARCODE: 0x10,
|
|
16
|
+
FLAG_READER_SKIP_NDEF_CHECK: 0x80,
|
|
17
|
+
FLAG_READER_NO_PLATFORM_SOUNDS: 0x100,
|
|
18
|
+
};
|
|
19
|
+
exports.NfcAdapter = NfcAdapter;
|
|
20
|
+
const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
21
|
+
class NfcManagerAndroid extends NfcManager_1.NfcManagerBase {
|
|
22
|
+
constructor() {
|
|
23
|
+
super();
|
|
24
|
+
this.requestTechnology = async (tech, options = {}) => {
|
|
25
|
+
try {
|
|
26
|
+
if (typeof tech === 'string') {
|
|
27
|
+
tech = [tech];
|
|
28
|
+
}
|
|
29
|
+
const sessionAvailable = await this._hasTagEventRegistrationAndroid();
|
|
30
|
+
// make sure we do register for tag event
|
|
31
|
+
if (!sessionAvailable) {
|
|
32
|
+
await this.registerTagEvent(options);
|
|
33
|
+
this.cleanUpTagRegistration = true;
|
|
34
|
+
}
|
|
35
|
+
return await (0, NativeNfcManager_1.callNative)('requestTechnology', [tech, options]);
|
|
36
|
+
}
|
|
37
|
+
catch (ex) {
|
|
38
|
+
throw (0, NfcError_1.buildNfcExceptionAndroid)(ex);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
this.cancelTechnologyRequest = async (options = {}) => {
|
|
42
|
+
const { throwOnError = false, delayMsAndroid = 1000 } = options;
|
|
43
|
+
try {
|
|
44
|
+
await (0, NativeNfcManager_1.callNative)('cancelTechnologyRequest');
|
|
45
|
+
if (this.cleanUpTagRegistration) {
|
|
46
|
+
await delay(delayMsAndroid);
|
|
47
|
+
await this.unregisterTagEvent();
|
|
48
|
+
this.cleanUpTagRegistration = false;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
catch (ex) {
|
|
52
|
+
if (throwOnError) {
|
|
53
|
+
throw (0, NfcError_1.buildNfcExceptionAndroid)(ex);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
this.getBackgroundTag = () => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('getBackgroundTag'));
|
|
58
|
+
this.clearBackgroundTag = () => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('clearBackgroundTag'));
|
|
59
|
+
// -------------------------------------
|
|
60
|
+
// public only for Android
|
|
61
|
+
// -------------------------------------
|
|
62
|
+
this.isEnabled = () => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('isEnabled'));
|
|
63
|
+
this.goToNfcSetting = () => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('goToNfcSetting'));
|
|
64
|
+
this.getLaunchTagEvent = () => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('getLaunchTagEvent'));
|
|
65
|
+
this.setNdefPushMessage = (_bytes) => {
|
|
66
|
+
return Promise.reject('this api is deprecated');
|
|
67
|
+
};
|
|
68
|
+
this.setTimeout = (timeout) => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('setTimeout', [timeout]));
|
|
69
|
+
this.getTimeout = () => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('getTimeout'));
|
|
70
|
+
this.connect = (techs) => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('connect', [techs]));
|
|
71
|
+
this.close = () => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('close'));
|
|
72
|
+
this.transceive = (bytes) => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('transceive', [bytes]));
|
|
73
|
+
this.getMaxTransceiveLength = () => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('getMaxTransceiveLength'));
|
|
74
|
+
// -------------------------------------
|
|
75
|
+
// Android private
|
|
76
|
+
// -------------------------------------
|
|
77
|
+
this._hasTagEventRegistrationAndroid = () => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('hasTagEventRegistration'));
|
|
78
|
+
this.cleanUpTagRegistration = false;
|
|
79
|
+
this._mifareClassicHandlerAndroid = null;
|
|
80
|
+
this._mifareUltralightHandlerAndroid = null;
|
|
81
|
+
this._ndefFormatableHandlerAndroid = null;
|
|
82
|
+
}
|
|
83
|
+
// -------------------------------------
|
|
84
|
+
// (android) NfcTech.MifareClassic API
|
|
85
|
+
// -------------------------------------
|
|
86
|
+
get mifareClassicHandlerAndroid() {
|
|
87
|
+
if (!this._mifareClassicHandlerAndroid) {
|
|
88
|
+
this._mifareClassicHandlerAndroid = new MifareClassicHandlerAndroid_1.MifareClassicHandlerAndroid(this);
|
|
89
|
+
}
|
|
90
|
+
return this._mifareClassicHandlerAndroid;
|
|
91
|
+
}
|
|
92
|
+
// -------------------------------------
|
|
93
|
+
// (android) NfcTech.MifareUltralight API
|
|
94
|
+
// -------------------------------------
|
|
95
|
+
get mifareUltralightHandlerAndroid() {
|
|
96
|
+
if (!this._mifareUltralightHandlerAndroid) {
|
|
97
|
+
this._mifareUltralightHandlerAndroid = new MifareUltralightHandlerAndroid_1.MifareUltralightHandlerAndroid(this);
|
|
98
|
+
}
|
|
99
|
+
return this._mifareUltralightHandlerAndroid;
|
|
100
|
+
}
|
|
101
|
+
// -------------------------------------
|
|
102
|
+
// (android) NfcTech.NdefFormatable API
|
|
103
|
+
// -------------------------------------
|
|
104
|
+
get ndefFormatableHandlerAndroid() {
|
|
105
|
+
if (!this._ndefFormatableHandlerAndroid) {
|
|
106
|
+
this._ndefFormatableHandlerAndroid = new NdefFormatableHandlerAndroid_1.NdefFormatableHandlerAndroid();
|
|
107
|
+
}
|
|
108
|
+
return this._ndefFormatableHandlerAndroid;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
exports.NfcManagerAndroid = NfcManagerAndroid;
|
|
112
|
+
//# sourceMappingURL=NfcManagerAndroid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NfcManagerAndroid.js","sourceRoot":"","sources":["../../src/NfcManagerAndroid.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Nfc15693ResponseFlagIOS = exports.Nfc15693RequestFlagIOS = exports.NfcManagerIOS = void 0;
|
|
4
|
+
const react_native_1 = require("react-native");
|
|
5
|
+
const NativeNfcManager_1 = require("./NativeNfcManager");
|
|
6
|
+
const NfcManager_1 = require("./NfcManager");
|
|
7
|
+
const Iso15693HandlerIOS_1 = require("./NfcTech/Iso15693HandlerIOS");
|
|
8
|
+
Object.defineProperty(exports, "Nfc15693RequestFlagIOS", { enumerable: true, get: function () { return Iso15693HandlerIOS_1.Nfc15693RequestFlagIOS; } });
|
|
9
|
+
Object.defineProperty(exports, "Nfc15693ResponseFlagIOS", { enumerable: true, get: function () { return Iso15693HandlerIOS_1.Nfc15693ResponseFlagIOS; } });
|
|
10
|
+
const NfcError_1 = require("./NfcError");
|
|
11
|
+
class NfcManagerIOS extends NfcManager_1.NfcManagerBase {
|
|
12
|
+
constructor() {
|
|
13
|
+
super();
|
|
14
|
+
this.isEnabled = async () => {
|
|
15
|
+
return true;
|
|
16
|
+
};
|
|
17
|
+
this.requestTechnology = async (tech, options = {}) => {
|
|
18
|
+
if (typeof tech === 'string') {
|
|
19
|
+
tech = [tech];
|
|
20
|
+
}
|
|
21
|
+
const techList = [];
|
|
22
|
+
for (const t of tech) {
|
|
23
|
+
if (t === NfcManager_1.NfcTech.NfcA) {
|
|
24
|
+
techList.push(NfcManager_1.NfcTech.MifareIOS);
|
|
25
|
+
}
|
|
26
|
+
else if (t === NfcManager_1.NfcTech.NfcV) {
|
|
27
|
+
techList.push(NfcManager_1.NfcTech.Iso15693IOS);
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
techList.push(t);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('requestTechnology', [
|
|
34
|
+
techList,
|
|
35
|
+
{
|
|
36
|
+
...NfcManager_1.DEFAULT_REGISTER_TAG_EVENT_OPTIONS,
|
|
37
|
+
...options,
|
|
38
|
+
},
|
|
39
|
+
]));
|
|
40
|
+
};
|
|
41
|
+
this.restartTechnologyRequestIOS = async () => {
|
|
42
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('restartTechnologyRequest'));
|
|
43
|
+
};
|
|
44
|
+
this.cancelTechnologyRequest = async (options = {}) => {
|
|
45
|
+
const { throwOnError = false } = options;
|
|
46
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('cancelTechnologyRequest'), !throwOnError);
|
|
47
|
+
};
|
|
48
|
+
this.getBackgroundTag = () => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('getBackgroundTag'));
|
|
49
|
+
this.clearBackgroundTag = () => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('clearBackgroundTag'));
|
|
50
|
+
// -------------------------------------
|
|
51
|
+
// public only for iOS
|
|
52
|
+
// -------------------------------------
|
|
53
|
+
this.getBackgroundNdef = async () => {
|
|
54
|
+
var _a;
|
|
55
|
+
const tag = await this.getBackgroundTag();
|
|
56
|
+
return (_a = tag === null || tag === void 0 ? void 0 : tag.ndefMessage) !== null && _a !== void 0 ? _a : null;
|
|
57
|
+
};
|
|
58
|
+
this.setAlertMessage = (alertMessage) => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('setAlertMessage', [alertMessage]));
|
|
59
|
+
this.setAlertMessageIOS = (alertMessage) => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('setAlertMessage', [alertMessage]));
|
|
60
|
+
this.invalidateSessionIOS = () => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('invalidateSession'));
|
|
61
|
+
this.invalidateSessionWithErrorIOS = (errorMessage = 'Error') => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('invalidateSessionWithError', [errorMessage]));
|
|
62
|
+
this.isSessionAvailableIOS = async () => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('isSessionAvailable'));
|
|
63
|
+
this.isTagSessionAvailableIOS = async () => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('isTagSessionAvailable'));
|
|
64
|
+
// -------------------------------------
|
|
65
|
+
// (iOS) NfcTech.MifareIOS API
|
|
66
|
+
// -------------------------------------
|
|
67
|
+
this.sendMifareCommandIOS = (bytes) => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('sendMifareCommand', [bytes]));
|
|
68
|
+
// -------------------------------------
|
|
69
|
+
// (iOS) NfcTech.FelicaIOS API
|
|
70
|
+
// -------------------------------------
|
|
71
|
+
this.sendFelicaCommandIOS = (bytes) => (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('sendFelicaCommand', [bytes]));
|
|
72
|
+
// -------------------------------------
|
|
73
|
+
// (iOS) NfcTech.IsoDep API
|
|
74
|
+
// -------------------------------------
|
|
75
|
+
this.sendCommandAPDUIOS = (bytesOrApdu) => {
|
|
76
|
+
if (react_native_1.Platform.OS !== 'ios') {
|
|
77
|
+
return Promise.reject('not implemented');
|
|
78
|
+
}
|
|
79
|
+
if (Array.isArray(bytesOrApdu)) {
|
|
80
|
+
const bytes = bytesOrApdu;
|
|
81
|
+
return (0, NfcError_1.handleNativeException)(new Promise((resolve, reject) => {
|
|
82
|
+
NativeNfcManager_1.NativeNfcManager.sendCommandAPDUBytes(bytes, (err, response, sw1, sw2) => {
|
|
83
|
+
if (err) {
|
|
84
|
+
reject(err);
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
resolve({ response, sw1, sw2 });
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
}));
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
const apdu = bytesOrApdu;
|
|
94
|
+
return (0, NfcError_1.handleNativeException)(new Promise((resolve, reject) => {
|
|
95
|
+
NativeNfcManager_1.NativeNfcManager.sendCommandAPDU(apdu, (err, response, sw1, sw2) => {
|
|
96
|
+
if (err) {
|
|
97
|
+
reject(err);
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
resolve({ response, sw1, sw2 });
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
}));
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
this._iso15693HandlerIOS = null;
|
|
107
|
+
}
|
|
108
|
+
// -------------------------------------
|
|
109
|
+
// (iOS) NfcTech.Iso15693IOS API
|
|
110
|
+
// -------------------------------------
|
|
111
|
+
get iso15693HandlerIOS() {
|
|
112
|
+
if (!this._iso15693HandlerIOS) {
|
|
113
|
+
this._iso15693HandlerIOS = new Iso15693HandlerIOS_1.Iso15693HandlerIOS();
|
|
114
|
+
}
|
|
115
|
+
return this._iso15693HandlerIOS;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
exports.NfcManagerIOS = NfcManagerIOS;
|
|
119
|
+
//# sourceMappingURL=NfcManagerIOS.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NfcManagerIOS.js","sourceRoot":"","sources":["../../src/NfcManagerIOS.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AACb,+CAAsC;AACtC,yDAAgE;AAChE,6CAIsB;AACtB,qEAIsC;AAwKf,uGA3KrB,2CAAsB,OA2KqB;AAAE,wGA1K7C,4CAAuB,OA0K6C;AAvKtE,yCAAiD;AAcjD,MAAM,aAAc,SAAQ,2BAAc;IAGxC;QACE,KAAK,EAAE,CAAC;QAIV,cAAS,GAAG,KAAK,IAAI,EAAE;YACrB,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,sBAAiB,GAAG,KAAK,EACvB,IAAuB,EACvB,UAAmC,EAAE,EACrC,EAAE;YACF,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gBAC5B,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;aACf;YAED,MAAM,QAAQ,GAAG,EAAE,CAAC;YACpB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;gBACpB,IAAI,CAAC,KAAK,oBAAO,CAAC,IAAI,EAAE;oBACtB,QAAQ,CAAC,IAAI,CAAC,oBAAO,CAAC,SAAS,CAAC,CAAC;iBAClC;qBAAM,IAAI,CAAC,KAAK,oBAAO,CAAC,IAAI,EAAE;oBAC7B,QAAQ,CAAC,IAAI,CAAC,oBAAO,CAAC,WAAW,CAAC,CAAC;iBACpC;qBAAM;oBACL,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;iBAClB;aACF;YAED,OAAO,IAAA,gCAAqB,EAC1B,IAAA,6BAAU,EAAC,mBAAmB,EAAE;gBAC9B,QAAQ;gBACR;oBACE,GAAG,+CAAkC;oBACrC,GAAG,OAAO;iBACX;aACF,CAAC,CACH,CAAC;QACJ,CAAC,CAAC;QAEF,gCAA2B,GAAG,KAAK,IAAI,EAAE;YACvC,OAAO,IAAA,gCAAqB,EACxB,IAAA,6BAAU,EAAC,0BAA0B,CAAC,CACzC,CAAC;QACJ,CAAC,CAAC;QAEF,4BAAuB,GAAG,KAAK,EAAE,UAA0C,EAAE,EAAE,EAAE;YAC/E,MAAM,EAAC,YAAY,GAAG,KAAK,EAAC,GAAG,OAAO,CAAC;YACvC,OAAO,IAAA,gCAAqB,EAC1B,IAAA,6BAAU,EAAC,yBAAyB,CAAC,EACrC,CAAC,YAAY,CACd,CAAC;QACJ,CAAC,CAAC;QAEF,qBAAgB,GAAG,GAAG,EAAE,CACtB,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,kBAAkB,CAAC,CAAC,CAAC;QAExD,uBAAkB,GAAG,GAAG,EAAE,CACxB,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,oBAAoB,CAAC,CAAC,CAAC;QAE1D,wCAAwC;QACxC,sBAAsB;QACtB,wCAAwC;QACxC,sBAAiB,GAAG,KAAK,IAAI,EAAE;;YAC7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAsC,CAAC;YAC9E,OAAO,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,WAAW,mCAAI,IAAI,CAAC;QAClC,CAAC,CAAC;QAEF,oBAAe,GAAG,CAAC,YAAoB,EAAE,EAAE,CACzC,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAEvE,uBAAkB,GAAG,CAAC,YAAoB,EAAE,EAAE,CAC5C,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAEvE,yBAAoB,GAAG,GAAG,EAAE,CAC1B,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,mBAAmB,CAAC,CAAC,CAAC;QAEzD,kCAA6B,GAAG,CAAC,YAAY,GAAG,OAAO,EAAE,EAAE,CACzD,IAAA,gCAAqB,EACnB,IAAA,6BAAU,EAAC,4BAA4B,EAAE,CAAC,YAAY,CAAC,CAAC,CACzD,CAAC;QAEJ,0BAAqB,GAAG,KAAK,IAAI,EAAE,CACjC,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,oBAAoB,CAAC,CAAC,CAAC;QAE1D,6BAAwB,GAAG,KAAK,IAAI,EAAE,CACpC,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,uBAAuB,CAAC,CAAC,CAAC;QAE7D,wCAAwC;QACxC,8BAA8B;QAC9B,wCAAwC;QACxC,yBAAoB,GAAG,CAAC,KAAe,EAAE,EAAE,CACzC,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,mBAAmB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAElE,wCAAwC;QACxC,8BAA8B;QAC9B,wCAAwC;QACxC,yBAAoB,GAAG,CAAC,KAAe,EAAE,EAAE,CACzC,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,mBAAmB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAElE,wCAAwC;QACxC,2BAA2B;QAC3B,wCAAwC;QACxC,uBAAkB,GAAG,CAAC,WAAkC,EAAE,EAAE;YAC1D,IAAI,uBAAQ,CAAC,EAAE,KAAK,KAAK,EAAE;gBACzB,OAAO,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;aAC1C;YAED,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;gBAC9B,MAAM,KAAK,GAAG,WAAW,CAAC;gBAC1B,OAAO,IAAA,gCAAqB,EAC1B,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC9B,mCAAgB,CAAC,oBAAoB,CACnC,KAAK,EACL,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;wBAC1B,IAAI,GAAG,EAAE;4BACP,MAAM,CAAC,GAAG,CAAC,CAAC;yBACb;6BAAM;4BACL,OAAO,CAAC,EAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAC,CAAC,CAAC;yBAC/B;oBACH,CAAC,CACF,CAAC;gBACJ,CAAC,CAAC,CACH,CAAC;aACH;iBAAM;gBACL,MAAM,IAAI,GAAG,WAAW,CAAC;gBACzB,OAAO,IAAA,gCAAqB,EAC1B,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC9B,mCAAgB,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;wBACjE,IAAI,GAAG,EAAE;4BACP,MAAM,CAAC,GAAG,CAAC,CAAC;yBACb;6BAAM;4BACL,OAAO,CAAC,EAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAC,CAAC,CAAC;yBAC/B;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CACH,CAAC;aACH;QACH,CAAC,CAAC;QAvIA,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAClC,CAAC;IAwID,wCAAwC;IACxC,gCAAgC;IAChC,wCAAwC;IACxC,IAAI,kBAAkB;QACpB,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC7B,IAAI,CAAC,mBAAmB,GAAG,IAAI,uCAAkB,EAAE,CAAC;SACrD;QACD,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;CACF;AAEO,sCAAa"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Iso15693HandlerIOS = exports.Nfc15693ResponseFlagIOS = exports.Nfc15693RequestFlagIOS = void 0;
|
|
4
|
+
const NativeNfcManager_1 = require("../NativeNfcManager");
|
|
5
|
+
const NfcError_1 = require("../NfcError");
|
|
6
|
+
const Nfc15693RequestFlagIOS = {
|
|
7
|
+
DualSubCarriers: 1 << 0,
|
|
8
|
+
HighDataRate: 1 << 1,
|
|
9
|
+
ProtocolExtension: 1 << 3,
|
|
10
|
+
Select: 1 << 4,
|
|
11
|
+
Address: 1 << 5,
|
|
12
|
+
Option: 1 << 6,
|
|
13
|
+
CommandSpecificBit8: 1 << 7,
|
|
14
|
+
};
|
|
15
|
+
exports.Nfc15693RequestFlagIOS = Nfc15693RequestFlagIOS;
|
|
16
|
+
const Nfc15693ResponseFlagIOS = {
|
|
17
|
+
Error: 1 << 0,
|
|
18
|
+
ResponseBufferValid: 1 << 1,
|
|
19
|
+
FinalResponse: 1 << 2,
|
|
20
|
+
ProtocolExtension: 1 << 3,
|
|
21
|
+
BlockSecurityStatusBit5: 1 << 4,
|
|
22
|
+
BlockSecurityStatusBit6: 1 << 5,
|
|
23
|
+
WaitTimeExtension: 1 << 6
|
|
24
|
+
};
|
|
25
|
+
exports.Nfc15693ResponseFlagIOS = Nfc15693ResponseFlagIOS;
|
|
26
|
+
class Iso15693HandlerIOS {
|
|
27
|
+
getSystemInfo(requestFlag) {
|
|
28
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_getSystemInfo', [requestFlag]));
|
|
29
|
+
}
|
|
30
|
+
readSingleBlock({ flags, blockNumber }) {
|
|
31
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_readSingleBlock', [{ flags, blockNumber }]));
|
|
32
|
+
}
|
|
33
|
+
readMultipleBlocks({ flags, blockNumber, blockCount }) {
|
|
34
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_readMultipleBlocks', [
|
|
35
|
+
{ flags, blockNumber, blockCount },
|
|
36
|
+
]));
|
|
37
|
+
}
|
|
38
|
+
writeSingleBlock({ flags, blockNumber, dataBlock }) {
|
|
39
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_writeSingleBlock', [
|
|
40
|
+
{ flags, blockNumber, dataBlock },
|
|
41
|
+
]));
|
|
42
|
+
}
|
|
43
|
+
lockBlock({ flags, blockNumber }) {
|
|
44
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_lockBlock', [{ flags, blockNumber }]));
|
|
45
|
+
}
|
|
46
|
+
writeAFI({ flags, afi }) {
|
|
47
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_writeAFI', [{ flags, afi }]));
|
|
48
|
+
}
|
|
49
|
+
lockAFI({ flags }) {
|
|
50
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_lockAFI', [{ flags }]));
|
|
51
|
+
}
|
|
52
|
+
writeDSFID({ flags, dsfid }) {
|
|
53
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_writeDSFID', [{ flags, dsfid }]));
|
|
54
|
+
}
|
|
55
|
+
lockDSFID({ flags }) {
|
|
56
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_lockDSFID', [{ flags }]));
|
|
57
|
+
}
|
|
58
|
+
resetToReady({ flags }) {
|
|
59
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_resetToReady', [{ flags }]));
|
|
60
|
+
}
|
|
61
|
+
select({ flags }) {
|
|
62
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_select', [{ flags }]));
|
|
63
|
+
}
|
|
64
|
+
stayQuiet() {
|
|
65
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_stayQuiet'));
|
|
66
|
+
}
|
|
67
|
+
stayQuite() {
|
|
68
|
+
return this.stayQuiet();
|
|
69
|
+
}
|
|
70
|
+
customCommand({ flags, customCommandCode, customRequestParameters }) {
|
|
71
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_customCommand', [
|
|
72
|
+
{ flags, customCommandCode, customRequestParameters },
|
|
73
|
+
]));
|
|
74
|
+
}
|
|
75
|
+
// https://developer.apple.com/documentation/corenfc/nfciso15693tag/3551933-sendrequestwithflag?language=objc
|
|
76
|
+
sendRequest({ flags, commandCode, data }) {
|
|
77
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_sendRequest', [
|
|
78
|
+
{ flags, commandCode, data },
|
|
79
|
+
]));
|
|
80
|
+
}
|
|
81
|
+
extendedReadSingleBlock({ flags, blockNumber }) {
|
|
82
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_extendedReadSingleBlock', [{ flags, blockNumber }]));
|
|
83
|
+
}
|
|
84
|
+
extendedReadMultipleBlocks({ flags, blockNumber, blockCount }) {
|
|
85
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_extendedReadMultipleBlocks', [
|
|
86
|
+
{ flags, blockNumber, blockCount },
|
|
87
|
+
]));
|
|
88
|
+
}
|
|
89
|
+
extendedWriteSingleBlock({ flags, blockNumber, dataBlock }) {
|
|
90
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_extendedWriteSingleBlock', [
|
|
91
|
+
{ flags, blockNumber, dataBlock },
|
|
92
|
+
]));
|
|
93
|
+
}
|
|
94
|
+
extendedLockBlock({ flags, blockNumber }) {
|
|
95
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('iso15693_extendedLockBlock', [{ flags, blockNumber }]));
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
exports.Iso15693HandlerIOS = Iso15693HandlerIOS;
|
|
99
|
+
//# sourceMappingURL=Iso15693HandlerIOS.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Iso15693HandlerIOS.js","sourceRoot":"","sources":["../../../src/NfcTech/Iso15693HandlerIOS.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IsoDepHandler = void 0;
|
|
4
|
+
const react_native_1 = require("react-native");
|
|
5
|
+
const NativeNfcManager_1 = require("../NativeNfcManager");
|
|
6
|
+
const NfcError_1 = require("../NfcError");
|
|
7
|
+
class IsoDepHandler {
|
|
8
|
+
async transceive(bytes) {
|
|
9
|
+
if (!Array.isArray(bytes)) {
|
|
10
|
+
throw new Error('IsoDepHandler.transceive only takes input as a byte array');
|
|
11
|
+
}
|
|
12
|
+
if (react_native_1.Platform.OS === 'ios') {
|
|
13
|
+
return (0, NfcError_1.handleNativeException)(new Promise((resolve, reject) => {
|
|
14
|
+
NativeNfcManager_1.NativeNfcManager.sendCommandAPDUBytes(bytes, (err, response, sw1, sw2) => {
|
|
15
|
+
if (err) {
|
|
16
|
+
reject(err);
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
// TODO: make following data the same format as Android
|
|
20
|
+
resolve([...response, sw1, sw2]);
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
}));
|
|
24
|
+
}
|
|
25
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('transceive', [bytes]));
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.IsoDepHandler = IsoDepHandler;
|
|
29
|
+
//# sourceMappingURL=IsoDepHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IsoDepHandler.js","sourceRoot":"","sources":["../../../src/NfcTech/IsoDepHandler.ts"],"names":[],"mappings":";;;AAAA,+CAAsC;AACtC,0DAAiE;AACjE,0CAAkD;AAKlD,MAAM,aAAa;IACjB,KAAK,CAAC,UAAU,CAAC,KAAgB;QAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACzB,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;SACH;QAED,IAAI,uBAAQ,CAAC,EAAE,KAAK,KAAK,EAAE;YACzB,OAAO,IAAA,gCAAqB,EAC1B,IAAI,OAAO,CAAY,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACzC,mCAAgB,CAAC,oBAAoB,CACnC,KAAK,EACL,CAAC,GAAkB,EAAE,QAAmB,EAAE,GAAW,EAAE,GAAW,EAAE,EAAE;oBACpE,IAAI,GAAG,EAAE;wBACP,MAAM,CAAC,GAAG,CAAC,CAAC;qBACb;yBAAM;wBACL,uDAAuD;wBACvD,OAAO,CAAC,CAAC,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;qBAClC;gBACH,CAAC,CACF,CAAC;YACJ,CAAC,CAAC,CACmB,CAAC;SACzB;QAED,OAAO,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAuB,CAAC;IACxF,CAAC;CACF;AAEO,sCAAa"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MifareClassicHandlerAndroid = void 0;
|
|
4
|
+
const NativeNfcManager_1 = require("../NativeNfcManager");
|
|
5
|
+
const NfcError_1 = require("../NfcError");
|
|
6
|
+
class MifareClassicHandlerAndroid {
|
|
7
|
+
constructor(nfcManager) {
|
|
8
|
+
this.nfcManager = nfcManager;
|
|
9
|
+
}
|
|
10
|
+
async mifareClassicAuthenticateA(sector, key) {
|
|
11
|
+
if (!key || !Array.isArray(key) || key.length !== 6) {
|
|
12
|
+
throw new Error('key should be an Array[6] of integers (0 - 255)');
|
|
13
|
+
}
|
|
14
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('mifareClassicAuthenticateA', [sector, key]));
|
|
15
|
+
}
|
|
16
|
+
async mifareClassicAuthenticateB(sector, key) {
|
|
17
|
+
if (!key || !Array.isArray(key) || key.length !== 6) {
|
|
18
|
+
throw new Error('key should be an Array[6] of integers (0 - 255)');
|
|
19
|
+
}
|
|
20
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('mifareClassicAuthenticateB', [sector, key]));
|
|
21
|
+
}
|
|
22
|
+
async mifareClassicGetBlockCountInSector(sector) {
|
|
23
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('mifareClassicGetBlockCountInSector', [sector]));
|
|
24
|
+
}
|
|
25
|
+
async mifareClassicGetSectorCount() {
|
|
26
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('mifareClassicGetSectorCount'));
|
|
27
|
+
}
|
|
28
|
+
async mifareClassicSectorToBlock(sector) {
|
|
29
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('mifareClassicSectorToBlock', [sector]));
|
|
30
|
+
}
|
|
31
|
+
async mifareClassicReadBlock(block) {
|
|
32
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('mifareClassicReadBlock', [block]));
|
|
33
|
+
}
|
|
34
|
+
async mifareClassicReadSector(sector) {
|
|
35
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('mifareClassicReadSector', [sector]));
|
|
36
|
+
}
|
|
37
|
+
async mifareClassicWriteBlock(block, data) {
|
|
38
|
+
if (!data ||
|
|
39
|
+
!Array.isArray(data) ||
|
|
40
|
+
data.length !== this.nfcManager.MIFARE_BLOCK_SIZE) {
|
|
41
|
+
throw new Error(`data should be a non-empty Array[${this.nfcManager.MIFARE_BLOCK_SIZE}] of integers (0 - 255)`);
|
|
42
|
+
}
|
|
43
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('mifareClassicWriteBlock', [block, data]));
|
|
44
|
+
}
|
|
45
|
+
async mifareClassicIncrementBlock(block, value) {
|
|
46
|
+
if (!value ||
|
|
47
|
+
Number.isNaN(value)) {
|
|
48
|
+
throw new Error(`value should be a number`);
|
|
49
|
+
}
|
|
50
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('mifareClassicIncrementBlock', [block, value]));
|
|
51
|
+
}
|
|
52
|
+
async mifareClassicDecrementBlock(block, value) {
|
|
53
|
+
if (!value ||
|
|
54
|
+
Number.isNaN(value)) {
|
|
55
|
+
throw new Error(`value should be a number`);
|
|
56
|
+
}
|
|
57
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('mifareClassicDecrementBlock', [block, value]));
|
|
58
|
+
}
|
|
59
|
+
async mifareClassicTransferBlock(block) {
|
|
60
|
+
if (!block ||
|
|
61
|
+
Number.isNaN(block)) {
|
|
62
|
+
throw new Error(`block should be a number`);
|
|
63
|
+
}
|
|
64
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('mifareClassicTransferBlock', [block]));
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
exports.MifareClassicHandlerAndroid = MifareClassicHandlerAndroid;
|
|
68
|
+
//# sourceMappingURL=MifareClassicHandlerAndroid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MifareClassicHandlerAndroid.js","sourceRoot":"","sources":["../../../src/NfcTech/MifareClassicHandlerAndroid.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MifareUltralightHandlerAndroid = void 0;
|
|
4
|
+
const NativeNfcManager_1 = require("../NativeNfcManager");
|
|
5
|
+
const NfcError_1 = require("../NfcError");
|
|
6
|
+
class MifareUltralightHandlerAndroid {
|
|
7
|
+
constructor(nfcManager) {
|
|
8
|
+
this.nfcManager = nfcManager;
|
|
9
|
+
}
|
|
10
|
+
async mifareUltralightReadPages(pageOffset) {
|
|
11
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('mifareUltralightReadPages', [pageOffset]));
|
|
12
|
+
}
|
|
13
|
+
async mifareUltralightWritePage(pageOffset, data) {
|
|
14
|
+
if (!data ||
|
|
15
|
+
!Array.isArray(data) ||
|
|
16
|
+
data.length !== this.nfcManager.MIFARE_ULTRALIGHT_PAGE_SIZE) {
|
|
17
|
+
throw new Error(`data should be a non-empty Array[${this.nfcManager.MIFARE_ULTRALIGHT_PAGE_SIZE}] of integers (0 - 255)`);
|
|
18
|
+
}
|
|
19
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('mifareUltralightWritePage', [pageOffset, data]));
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
exports.MifareUltralightHandlerAndroid = MifareUltralightHandlerAndroid;
|
|
23
|
+
//# sourceMappingURL=MifareUltralightHandlerAndroid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MifareUltralightHandlerAndroid.js","sourceRoot":"","sources":["../../../src/NfcTech/MifareUltralightHandlerAndroid.ts"],"names":[],"mappings":";;;AAAA,0DAA+C;AAC/C,0CAAkD;AASlD,MAAM,8BAA8B;IAGlC,YAAY,UAA0C;QACpD,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,UAAkB;QAChD,OAAO,IAAA,gCAAqB,EAC1B,IAAA,6BAAU,EAAC,2BAA2B,EAAE,CAAC,UAAU,CAAC,CAAC,CAChC,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,UAAkB,EAAE,IAAe;QACjE,IACE,CAAC,IAAI;YACL,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YACpB,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,CAAC,2BAA2B,EAC3D;YACA,MAAM,IAAI,KAAK,CACb,oCAAoC,IAAI,CAAC,UAAU,CAAC,2BAA2B,yBAAyB,CACzG,CAAC;SACH;QAED,OAAO,IAAA,gCAAqB,EAC1B,IAAA,6BAAU,EAAC,2BAA2B,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAC3C,CAAC;IACrB,CAAC;CACF;AAEO,wEAA8B"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NdefFormatableHandlerAndroid = void 0;
|
|
4
|
+
const NativeNfcManager_1 = require("../NativeNfcManager");
|
|
5
|
+
const NfcError_1 = require("../NfcError");
|
|
6
|
+
class NdefFormatableHandlerAndroid {
|
|
7
|
+
async formatNdef(bytes, options = {}) {
|
|
8
|
+
const defaultOptions = { readOnly: false };
|
|
9
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('formatNdef', [
|
|
10
|
+
bytes,
|
|
11
|
+
{ ...defaultOptions, ...options }
|
|
12
|
+
]));
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.NdefFormatableHandlerAndroid = NdefFormatableHandlerAndroid;
|
|
16
|
+
//# sourceMappingURL=NdefFormatableHandlerAndroid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NdefFormatableHandlerAndroid.js","sourceRoot":"","sources":["../../../src/NfcTech/NdefFormatableHandlerAndroid.ts"],"names":[],"mappings":";;;AAAA,0DAA+C;AAC/C,0CAAkD;AASlD,MAAM,4BAA4B;IAChC,KAAK,CAAC,UAAU,CAAC,KAAgB,EAAE,UAA6B,EAAE;QAChE,MAAM,cAAc,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC3C,OAAO,IAAA,gCAAqB,EACxB,IAAA,6BAAU,EAAC,YAAY,EAAE;YACrB,KAAK;YACL,EAAC,GAAG,cAAc,EAAE,GAAG,OAAO,EAAC;SAClC,CAAC,CACY,CAAC;IACrB,CAAC;CACF;AAEO,oEAA4B"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NdefStatus = exports.NdefHandler = void 0;
|
|
4
|
+
const react_native_1 = require("react-native");
|
|
5
|
+
const NativeNfcManager_1 = require("../NativeNfcManager");
|
|
6
|
+
const NfcError_1 = require("../NfcError");
|
|
7
|
+
const NdefStatus = {
|
|
8
|
+
NotSupported: 1,
|
|
9
|
+
ReadWrite: 2,
|
|
10
|
+
ReadOnly: 3,
|
|
11
|
+
};
|
|
12
|
+
exports.NdefStatus = NdefStatus;
|
|
13
|
+
class NdefHandler {
|
|
14
|
+
async writeNdefMessage(bytes, options) {
|
|
15
|
+
const defaultOptions = { reconnectAfterWrite: false };
|
|
16
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('writeNdefMessage', [
|
|
17
|
+
bytes,
|
|
18
|
+
{ ...defaultOptions, ...options }
|
|
19
|
+
]));
|
|
20
|
+
}
|
|
21
|
+
async getNdefMessage() {
|
|
22
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('getNdefMessage'));
|
|
23
|
+
}
|
|
24
|
+
async makeReadOnly() {
|
|
25
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('makeReadOnly'));
|
|
26
|
+
}
|
|
27
|
+
async getNdefStatus() {
|
|
28
|
+
if (react_native_1.Platform.OS === 'ios') {
|
|
29
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('queryNdefStatus'));
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
try {
|
|
33
|
+
const result = await (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('queryNdefStatus'));
|
|
34
|
+
return {
|
|
35
|
+
status: result.isWritable
|
|
36
|
+
? NdefStatus.ReadWrite
|
|
37
|
+
: NdefStatus.ReadOnly,
|
|
38
|
+
capacity: result.maxSize,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
catch (ex) {
|
|
42
|
+
return {
|
|
43
|
+
status: NdefStatus.NotSupported,
|
|
44
|
+
capacity: 0,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
async getCachedNdefMessageAndroid() {
|
|
50
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('getCachedNdefMessage'));
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
exports.NdefHandler = NdefHandler;
|
|
54
|
+
//# sourceMappingURL=NdefHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NdefHandler.js","sourceRoot":"","sources":["../../../src/NfcTech/NdefHandler.ts"],"names":[],"mappings":";;;AAAA,+CAAsC;AACtC,0DAA+C;AAC/C,0CAAkD;AAclD,MAAM,UAAU,GAAG;IACjB,YAAY,EAAE,CAAC;IACf,SAAS,EAAE,CAAC;IACZ,QAAQ,EAAE,CAAC;CACZ,CAAC;AAkDmB,gCAAU;AAhD/B,MAAM,WAAW;IACf,KAAK,CAAC,gBAAgB,CAAC,KAAgB,EAAE,OAA0B;QACjE,MAAM,cAAc,GAAG,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC;QACtD,OAAO,IAAA,gCAAqB,EACxB,IAAA,6BAAU,EAAC,kBAAkB,EAAE;YAC3B,KAAK;YACL,EAAC,GAAG,cAAc,EAAE,GAAG,OAAO,EAAC;SAClC,CAAC,CACL,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,OAAO,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,gBAAgB,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,OAAO,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,cAAc,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,IAAI,uBAAQ,CAAC,EAAE,KAAK,KAAK,EAAE;YACzB,OAAO,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,iBAAiB,CAAC,CAA8B,CAAC;SAC1F;aAAM;YACL,IAAI;gBACF,MAAM,MAAM,GAAG,MAAM,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,iBAAiB,CAAC,CAGvE,CAAC;gBACF,OAAO;oBACL,MAAM,EAAE,MAAM,CAAC,UAAU;wBACvB,CAAC,CAAC,UAAU,CAAC,SAAS;wBACtB,CAAC,CAAC,UAAU,CAAC,QAAQ;oBACvB,QAAQ,EAAE,MAAM,CAAC,OAAO;iBACzB,CAAC;aACH;YAAC,OAAO,EAAE,EAAE;gBACX,OAAO;oBACL,MAAM,EAAE,UAAU,CAAC,YAAY;oBAC/B,QAAQ,EAAE,CAAC;iBACZ,CAAC;aACH;SACF;IACH,CAAC;IAED,KAAK,CAAC,2BAA2B;QAC/B,OAAO,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,sBAAsB,CAAC,CAAC,CAAC;IACnE,CAAC;CACF;AAEO,kCAAW"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NfcAHandler = void 0;
|
|
4
|
+
const react_native_1 = require("react-native");
|
|
5
|
+
const NativeNfcManager_1 = require("../NativeNfcManager");
|
|
6
|
+
const NfcError_1 = require("../NfcError");
|
|
7
|
+
class NfcAHandler {
|
|
8
|
+
async transceive(bytes) {
|
|
9
|
+
if (react_native_1.Platform.OS === 'ios') {
|
|
10
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('sendMifareCommand', [bytes]));
|
|
11
|
+
}
|
|
12
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('transceive', [bytes]));
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.NfcAHandler = NfcAHandler;
|
|
16
|
+
//# sourceMappingURL=NfcAHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NfcAHandler.js","sourceRoot":"","sources":["../../../src/NfcTech/NfcAHandler.ts"],"names":[],"mappings":";;;AAAA,+CAAsC;AACtC,0DAA+C;AAC/C,0CAAkD;AAKlD,MAAM,WAAW;IACf,KAAK,CAAC,UAAU,CAAC,KAAgB;QAC/B,IAAI,uBAAQ,CAAC,EAAE,KAAK,KAAK,EAAE;YACzB,OAAO,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,mBAAmB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAuB,CAAC;SAC9F;QACD,OAAO,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAuB,CAAC;IACxF,CAAC;CACF;AAEO,kCAAW"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NfcVHandler = void 0;
|
|
4
|
+
const react_native_1 = require("react-native");
|
|
5
|
+
const NativeNfcManager_1 = require("../NativeNfcManager");
|
|
6
|
+
const NfcError_1 = require("../NfcError");
|
|
7
|
+
class NfcVHandler {
|
|
8
|
+
async transceive(bytes) {
|
|
9
|
+
if (!Array.isArray(bytes)) {
|
|
10
|
+
throw new Error('IsoDepHandler.transceive only takes input as a byte array');
|
|
11
|
+
}
|
|
12
|
+
if (react_native_1.Platform.OS === 'ios') {
|
|
13
|
+
const [flags, commandCode, ...data] = bytes;
|
|
14
|
+
return (0, NfcError_1.handleNativeException)(new Promise((resolve, reject) => {
|
|
15
|
+
NativeNfcManager_1.NativeNfcManager.iso15693_sendRequest({
|
|
16
|
+
flags,
|
|
17
|
+
commandCode,
|
|
18
|
+
data,
|
|
19
|
+
}, (err, responseFlag, response) => {
|
|
20
|
+
if (err) {
|
|
21
|
+
reject(err);
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
resolve([responseFlag, ...response]);
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
}));
|
|
28
|
+
}
|
|
29
|
+
return (0, NfcError_1.handleNativeException)((0, NativeNfcManager_1.callNative)('transceive', [bytes]));
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.NfcVHandler = NfcVHandler;
|
|
33
|
+
//# sourceMappingURL=NfcVHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NfcVHandler.js","sourceRoot":"","sources":["../../../src/NfcTech/NfcVHandler.ts"],"names":[],"mappings":";;;AAAA,+CAAsC;AACtC,0DAAiE;AACjE,0CAAkD;AAKlD,MAAM,WAAW;IACf,KAAK,CAAC,UAAU,CAAC,KAAgB;QAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACzB,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;SACH;QAED,IAAI,uBAAQ,CAAC,EAAE,KAAK,KAAK,EAAE;YACzB,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC;YAC5C,OAAO,IAAA,gCAAqB,EAC1B,IAAI,OAAO,CAAY,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACzC,mCAAgB,CAAC,oBAAoB,CACnC;oBACI,KAAK;oBACL,WAAW;oBACX,IAAI;iBACP,EACD,CAAC,GAAkB,EAAE,YAAoB,EAAE,QAAmB,EAAE,EAAE;oBAChE,IAAI,GAAG,EAAE;wBACP,MAAM,CAAC,GAAG,CAAC,CAAC;qBACb;yBAAM;wBACL,OAAO,CAAC,CAAC,YAAY,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC;qBACtC;gBACH,CAAC,CACF,CAAC;YACJ,CAAC,CAAC,CACmB,CAAC;SACzB;QAED,OAAO,IAAA,gCAAqB,EAAC,IAAA,6BAAU,EAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAuB,CAAC;IACxF,CAAC;CACF;AAEO,kCAAW"}
|