react-native-nfc-manager 4.0.0-beta.6 → 4.0.0-beta.8

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.
Files changed (107) hide show
  1. package/README.md +38 -4
  2. package/android/src/main/java/community/revteltech/nfc/MifareClassicHandler.java +419 -0
  3. package/android/src/main/java/community/revteltech/nfc/MifareUltralightHandler.java +84 -0
  4. package/android/src/main/java/community/revteltech/nfc/NdefHandler.java +373 -0
  5. package/android/src/main/java/community/revteltech/nfc/NfcAdapterStateChangedReceiver.java +48 -0
  6. package/android/src/main/java/community/revteltech/nfc/NfcErrorCodes.java +16 -0
  7. package/android/src/main/java/community/revteltech/nfc/NfcManager.java +339 -1125
  8. package/android/src/main/java/community/revteltech/nfc/NfcManagerIOSStubBase.java +130 -0
  9. package/android/src/main/java/community/revteltech/nfc/NfcTechIoRouter.java +258 -0
  10. package/android/src/main/java/community/revteltech/nfc/TagTechnologyRequest.java +19 -7
  11. package/android/src/main/java/community/revteltech/nfc/Util.java +201 -0
  12. package/dist/ndef-lib/constants.js +67 -0
  13. package/dist/ndef-lib/constants.js.map +1 -0
  14. package/dist/ndef-lib/index.js +79 -0
  15. package/dist/ndef-lib/index.js.map +1 -0
  16. package/dist/ndef-lib/ndef-text.js +29 -0
  17. package/dist/ndef-lib/ndef-text.js.map +1 -0
  18. package/dist/ndef-lib/ndef-uri.js +40 -0
  19. package/dist/ndef-lib/ndef-uri.js.map +1 -0
  20. package/dist/ndef-lib/ndef-wifi-simple.js +100 -0
  21. package/dist/ndef-lib/ndef-wifi-simple.js.map +1 -0
  22. package/dist/ndef-lib/ndef.js +153 -0
  23. package/dist/ndef-lib/ndef.js.map +1 -0
  24. package/dist/ndef-lib/stringifier.js +155 -0
  25. package/dist/ndef-lib/stringifier.js.map +1 -0
  26. package/dist/ndef-lib/util.js +126 -0
  27. package/dist/ndef-lib/util.js.map +1 -0
  28. package/dist/specs/NativeNfcManager.js +5 -0
  29. package/dist/specs/NativeNfcManager.js.map +1 -0
  30. package/dist/src/NativeNfcManager.js +55 -0
  31. package/dist/src/NativeNfcManager.js.map +1 -0
  32. package/dist/src/NfcError.js +220 -0
  33. package/dist/src/NfcError.js.map +1 -0
  34. package/dist/src/NfcManager.js +175 -0
  35. package/dist/src/NfcManager.js.map +1 -0
  36. package/dist/src/NfcManagerAndroid.js +112 -0
  37. package/dist/src/NfcManagerAndroid.js.map +1 -0
  38. package/dist/src/NfcManagerIOS.js +119 -0
  39. package/dist/src/NfcManagerIOS.js.map +1 -0
  40. package/dist/src/NfcTech/Iso15693HandlerIOS.js +99 -0
  41. package/dist/src/NfcTech/Iso15693HandlerIOS.js.map +1 -0
  42. package/dist/src/NfcTech/IsoDepHandler.js +29 -0
  43. package/dist/src/NfcTech/IsoDepHandler.js.map +1 -0
  44. package/dist/src/NfcTech/MifareClassicHandlerAndroid.js +68 -0
  45. package/dist/src/NfcTech/MifareClassicHandlerAndroid.js.map +1 -0
  46. package/dist/src/NfcTech/MifareUltralightHandlerAndroid.js +23 -0
  47. package/dist/src/NfcTech/MifareUltralightHandlerAndroid.js.map +1 -0
  48. package/dist/src/NfcTech/NdefFormatableHandlerAndroid.js +16 -0
  49. package/dist/src/NfcTech/NdefFormatableHandlerAndroid.js.map +1 -0
  50. package/dist/src/NfcTech/NdefHandler.js +54 -0
  51. package/dist/src/NfcTech/NdefHandler.js.map +1 -0
  52. package/dist/src/NfcTech/NfcAHandler.js +16 -0
  53. package/dist/src/NfcTech/NfcAHandler.js.map +1 -0
  54. package/dist/src/NfcTech/NfcVHandler.js +33 -0
  55. package/dist/src/NfcTech/NfcVHandler.js.map +1 -0
  56. package/dist/src/index.js +53 -0
  57. package/dist/src/index.js.map +1 -0
  58. package/index.d.ts +76 -43
  59. package/ios/NfcManager.h +2 -10
  60. package/ios/NfcManager.mm +176 -434
  61. package/ios/RNNfcBridgeUtil.h +28 -0
  62. package/ios/RNNfcBridgeUtil.mm +52 -0
  63. package/ios/RNNfcManager+Felica.swift +61 -0
  64. package/ios/RNNfcManager+Iso15693.swift +895 -0
  65. package/ios/RNNfcManager+IsoDep.swift +145 -0
  66. package/ios/RNNfcManager+Mifare.swift +61 -0
  67. package/ios/RNNfcManager+Ndef.swift +120 -0
  68. package/ios/RNNfcManager.h +251 -0
  69. package/ios/RNNfcManager.swift +648 -0
  70. package/ios/RNNfcSessionDelegateProxy.swift +104 -0
  71. package/ios/RNNfcSwiftUtil.swift +34 -0
  72. package/ndef-lib/{constants.js → constants.ts} +2 -0
  73. package/ndef-lib/{index.js → index.ts} +23 -12
  74. package/ndef-lib/{ndef-text.js → ndef-text.ts} +7 -2
  75. package/ndef-lib/{ndef-uri.js → ndef-uri.ts} +8 -3
  76. package/ndef-lib/{ndef-wifi-simple.js → ndef-wifi-simple.ts} +34 -11
  77. package/ndef-lib/{ndef.js → ndef.ts} +49 -20
  78. package/ndef-lib/{stringifier.js → stringifier.ts} +27 -10
  79. package/ndef-lib/{util.js → util.ts} +13 -8
  80. package/package.json +21 -7
  81. package/react-native-nfc-manager.podspec +3 -2
  82. package/specs/NativeNfcManager.ts +17 -4
  83. package/src/NativeNfcManager.ts +84 -0
  84. package/src/{NfcError.js → NfcError.ts} +6 -17
  85. package/src/{NfcManager.js → NfcManager.ts} +49 -34
  86. package/src/{NfcManagerAndroid.js → NfcManagerAndroid.ts} +25 -8
  87. package/src/{NfcManagerIOS.js → NfcManagerIOS.ts} +31 -10
  88. package/src/NfcTech/{Iso15693HandlerIOS.js → Iso15693HandlerIOS.ts} +64 -36
  89. package/src/NfcTech/{IsoDepHandler.js → IsoDepHandler.ts} +8 -5
  90. package/src/NfcTech/{MifareClassicHandlerAndroid.js → MifareClassicHandlerAndroid.ts} +33 -24
  91. package/src/NfcTech/{MifareUltralightHandlerAndroid.js → MifareUltralightHandlerAndroid.ts} +14 -5
  92. package/src/NfcTech/{NdefFormatableHandlerAndroid.js → NdefFormatableHandlerAndroid.ts} +9 -2
  93. package/src/NfcTech/{NdefHandler.js → NdefHandler.ts} +19 -6
  94. package/src/NfcTech/{NfcAHandler.js → NfcAHandler.ts} +6 -3
  95. package/src/NfcTech/{NfcVHandler.js → NfcVHandler.ts} +8 -5
  96. package/src/__mocks__/{NativeNfcManager.js → NativeNfcManager.ts} +4 -1
  97. package/src/{index.js → index.ts} +1 -1
  98. package/android/src/main/java/community/revteltech/nfc/JsonConvert.java +0 -141
  99. package/android/src/main/java/community/revteltech/nfc/MifareUtil.java +0 -84
  100. package/ios/NfcManager+Felica.mm +0 -43
  101. package/ios/NfcManager+Iso15693.mm +0 -600
  102. package/ios/NfcManager+IsoDep.mm +0 -83
  103. package/ios/NfcManager+Mifare.mm +0 -43
  104. package/ios/Util.mm +0 -55
  105. package/specs/NativeNfcManager.js +0 -3
  106. package/specs/NativeNfcManager.js.map +0 -1
  107. package/src/NativeNfcManager.js +0 -37
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.NfcErrorIOS = exports.NfcError = exports.NdefStatus = exports.Ndef = exports.Nfc15693ResponseFlagIOS = exports.Nfc15693RequestFlagIOS = exports.NfcAdapter = exports.NfcEvents = exports.NfcTech = void 0;
27
+ const react_native_1 = require("react-native");
28
+ const Ndef = require('../ndef-lib');
29
+ exports.Ndef = Ndef;
30
+ const NfcManager_1 = require("./NfcManager");
31
+ Object.defineProperty(exports, "NfcEvents", { enumerable: true, get: function () { return NfcManager_1.NfcEvents; } });
32
+ Object.defineProperty(exports, "NfcTech", { enumerable: true, get: function () { return NfcManager_1.NfcTech; } });
33
+ Object.defineProperty(exports, "NdefStatus", { enumerable: true, get: function () { return NfcManager_1.NdefStatus; } });
34
+ const NfcManagerAndroid_1 = require("./NfcManagerAndroid");
35
+ Object.defineProperty(exports, "NfcAdapter", { enumerable: true, get: function () { return NfcManagerAndroid_1.NfcAdapter; } });
36
+ const NfcManagerIOS_1 = require("./NfcManagerIOS");
37
+ Object.defineProperty(exports, "Nfc15693RequestFlagIOS", { enumerable: true, get: function () { return NfcManagerIOS_1.Nfc15693RequestFlagIOS; } });
38
+ Object.defineProperty(exports, "Nfc15693ResponseFlagIOS", { enumerable: true, get: function () { return NfcManagerIOS_1.Nfc15693ResponseFlagIOS; } });
39
+ const NfcError = __importStar(require("./NfcError"));
40
+ exports.NfcError = NfcError;
41
+ const nfcManager = (() => {
42
+ if (react_native_1.Platform.OS === 'ios') {
43
+ return new NfcManagerIOS_1.NfcManagerIOS();
44
+ }
45
+ else {
46
+ return new NfcManagerAndroid_1.NfcManagerAndroid();
47
+ }
48
+ })();
49
+ // only for backward-capability
50
+ const NfcErrorIOS = NfcError.NfcErrorIOS;
51
+ exports.NfcErrorIOS = NfcErrorIOS;
52
+ exports.default = nfcManager;
53
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAsC;AACtC,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AA6BlC,oBAAI;AA5BN,6CAA4D;AAwB1D,0FAxBM,sBAAS,OAwBN;AADT,wFAvBiB,oBAAO,OAuBjB;AAMP,2FA7B0B,uBAAU,OA6B1B;AA5BZ,2DAAkE;AAwBhE,2FAxBM,8BAAU,OAwBN;AAvBZ,mDAIyB;AAoBvB,uGAvBA,sCAAsB,OAuBA;AACtB,wGAvBA,uCAAuB,OAuBA;AApBzB,qDAAuC;AAuBrC,4BAAQ;AArBV,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE;IACvB,IAAI,uBAAQ,CAAC,EAAE,KAAK,KAAK,EAAE;QACzB,OAAO,IAAI,6BAAa,EAAE,CAAC;KAC5B;SAAM;QACL,OAAO,IAAI,qCAAiB,EAAE,CAAC;KAChC;AACH,CAAC,CAAC,EAAE,CAAC;AAEL,+BAA+B;AAC/B,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;AAavC,kCAAW;AAXb,kBAAe,UAAU,CAAC"}
package/index.d.ts CHANGED
@@ -67,7 +67,7 @@ declare module 'react-native-nfc-manager' {
67
67
  id?: number[];
68
68
  tnf: TNF;
69
69
  type: number[] | string;
70
- payload: any[];
70
+ payload: number[];
71
71
  }
72
72
 
73
73
  export interface TagEvent {
@@ -87,12 +87,12 @@ declare module 'react-native-nfc-manager' {
87
87
  }
88
88
 
89
89
  export interface CancelTechReqOpts {
90
- throwOnError?: boolean = false;
91
- delayMsAndroid?: number = 1000;
90
+ throwOnError?: boolean;
91
+ delayMsAndroid?: number;
92
92
  }
93
93
 
94
94
  interface NdefHandler {
95
- writeNdefMessage: (bytes: number[] , options?: { reconnectAfterWrite: boolean }) => Promise<void>;
95
+ writeNdefMessage: (bytes: number[] , options?: { reconnectAfterWrite?: boolean }) => Promise<void>;
96
96
  getNdefMessage: () => Promise<TagEvent | null>;
97
97
  makeReadOnly: () => Promise<void>;
98
98
  getNdefStatus: () => Promise<{
@@ -115,38 +115,36 @@ declare module 'react-native-nfc-manager' {
115
115
  }
116
116
 
117
117
  interface MifareClassicHandlerAndroid {
118
- mifareClassicSectorToBlock: (sector: number) => Promise<ArrayLike<number>>;
119
- mifareClassicReadBlock: (
120
- block: ArrayLike<number>,
121
- ) => Promise<ArrayLike<number>>;
118
+ mifareClassicGetBlockCountInSector: (sector: number) => Promise<number>;
119
+ mifareClassicSectorToBlock: (sector: number) => Promise<number>;
120
+ mifareClassicReadBlock: (block: number) => Promise<number[]>;
121
+ mifareClassicReadSector: (sector: number) => Promise<number[]>;
122
122
  mifareClassicWriteBlock: (
123
- block: ArrayLike<number>,
124
- simpliArr: any[],
125
- ) => Promise<void>;
123
+ block: number,
124
+ data: number[],
125
+ ) => Promise<boolean>;
126
126
  mifareClassicIncrementBlock: (
127
- block: ArrayLike<number>,
128
- data: number,
129
- ) => Promise<void>;
127
+ block: number,
128
+ value: number,
129
+ ) => Promise<boolean>;
130
130
  mifareClassicDecrementBlock: (
131
- block: ArrayLike<number>,
132
- data: number,
133
- ) => Promise<void>;
134
- mifareClassicTransferBlock: (
135
- block: ArrayLike<number>,
136
- ) => Promise<void>;
131
+ block: number,
132
+ value: number,
133
+ ) => Promise<boolean>;
134
+ mifareClassicTransferBlock: (block: number) => Promise<boolean>;
137
135
  mifareClassicGetSectorCount: () => Promise<number>;
138
136
  mifareClassicAuthenticateA: (
139
137
  sector: number,
140
138
  keys: number[],
141
- ) => Promise<void>;
139
+ ) => Promise<boolean>;
142
140
  mifareClassicAuthenticateB: (
143
141
  sector: number,
144
142
  keys: number[],
145
- ) => Promise<void>;
143
+ ) => Promise<boolean>;
146
144
  }
147
145
 
148
146
  interface MifareUltralightHandlerAndroid {
149
- mifareUltralightReadPages: (offset: number) => Promise<ArrayLike<number>>;
147
+ mifareUltralightReadPages: (offset: number) => Promise<number[]>;
150
148
  mifareUltralightWritePage: (
151
149
  offset: number,
152
150
  data: number[],
@@ -154,13 +152,13 @@ declare module 'react-native-nfc-manager' {
154
152
  }
155
153
 
156
154
  interface NdefFormatableHandlerAndroid {
157
- formatNdef: (bytes: number[], options?: { readOnly: boolean }) => Promise<void>;
155
+ formatNdef: (bytes: number[], options?: {readOnly?: boolean}) => Promise<void>;
158
156
  }
159
157
 
160
158
  /** [iOS ONLY] */
161
159
  interface Iso15693HandlerIOS {
162
160
  getSystemInfo: (
163
- requestFloags: number,
161
+ requestFlags: number,
164
162
  ) => Promise<{
165
163
  dsfid: number;
166
164
  afi: number;
@@ -189,6 +187,8 @@ declare module 'react-native-nfc-manager' {
189
187
  lockDSFID: (params: {flags: number}) => Promise<void>;
190
188
  resetToReady: (params: {flags: number}) => Promise<void>;
191
189
  select: (params: {flags: number}) => Promise<void>;
190
+ stayQuiet: () => Promise<void>;
191
+ /** @deprecated Use stayQuiet instead. */
192
192
  stayQuite: () => Promise<void>;
193
193
  customCommand: (params: {
194
194
  flags: number;
@@ -223,15 +223,17 @@ declare module 'react-native-nfc-manager' {
223
223
  type OnDiscoverTag = (evt: TagEvent) => void;
224
224
  type OnSessionClosed = (error?: NfcError.NfcErrorBase) => void;
225
225
  type OnStateChanged = (evt: {state: string}) => void;
226
- type OnNfcEvents = OnDiscoverTag | OnSessionClosed | OnStateChanged;
227
226
 
228
227
  interface NfcManager {
229
228
  start(): Promise<void>;
230
- isSupported(): Promise<boolean>;
229
+ isSupported(tech?: NfcTech | ''): Promise<boolean>;
231
230
  isEnabled(): Promise<boolean>;
232
231
  registerTagEvent(options?: RegisterTagEventOpts): Promise<void>;
233
232
  unregisterTagEvent(): Promise<void>;
234
- setEventListener(name: NfcEvents, callback: OnNfcEvents | null): void;
233
+ setEventListener(name: NfcEvents.DiscoverTag, callback: OnDiscoverTag | null): void;
234
+ setEventListener(name: NfcEvents.DiscoverBackgroundTag, callback: OnDiscoverTag | null): void;
235
+ setEventListener(name: NfcEvents.SessionClosed, callback: OnSessionClosed | null): void;
236
+ setEventListener(name: NfcEvents.StateChanged, callback: OnStateChanged | null): void;
235
237
  requestTechnology(
236
238
  tech: NfcTech | NfcTech[],
237
239
  options?: RegisterTagEventOpts,
@@ -241,6 +243,17 @@ declare module 'react-native-nfc-manager' {
241
243
  getBackgroundTag: () => Promise<TagEvent | null>;
242
244
  clearBackgroundTag: () => Promise<void>;
243
245
  setAlertMessage: (alertMessage: string) => Promise<void>;
246
+ writeNdefMessage: (
247
+ bytes: number[],
248
+ options?: {reconnectAfterWrite?: boolean},
249
+ ) => Promise<void>;
250
+ getNdefMessage: () => Promise<TagEvent | null>;
251
+
252
+ readonly MIFARE_BLOCK_SIZE: number;
253
+ readonly MIFARE_ULTRALIGHT_PAGE_SIZE: number;
254
+ readonly MIFARE_ULTRALIGHT_TYPE: number;
255
+ readonly MIFARE_ULTRALIGHT_TYPE_C: number;
256
+ readonly MIFARE_ULTRALIGHT_TYPE_UNKNOWN: number;
244
257
 
245
258
  /**
246
259
  * common tech handler getters for both iOS / Android
@@ -253,12 +266,13 @@ declare module 'react-native-nfc-manager' {
253
266
  /**
254
267
  * iOS only
255
268
  */
269
+ /** @deprecated Use getBackgroundTag instead. */
256
270
  getBackgroundNdef: () => Promise<NdefRecord[] | null>;
257
271
  setAlertMessageIOS: (alertMessage: string) => Promise<void>;
258
272
  invalidateSessionIOS: () => Promise<void>;
259
- invalidateSessionWithErrorIOS: (errorMessage: string) => Promise<void>;
260
- isSessionAvailableIOS: () => Promise<Boolean>;
261
- isTagSessionAvailableIOS: () => Promise<Boolean>;
273
+ invalidateSessionWithErrorIOS: (errorMessage?: string) => Promise<void>;
274
+ isSessionAvailableIOS: () => Promise<boolean>;
275
+ isTagSessionAvailableIOS: () => Promise<boolean>;
262
276
  sendMifareCommandIOS: (bytes: number[]) => Promise<number[]>;
263
277
  sendFelicaCommandIOS: (bytes: number[]) => Promise<number[]>;
264
278
  sendCommandAPDUIOS: (
@@ -285,6 +299,8 @@ declare module 'react-native-nfc-manager' {
285
299
  getMaxTransceiveLength(): Promise<number>;
286
300
  setTimeout(timeout: number): Promise<void>;
287
301
  getTimeout(): Promise<number|void>;
302
+ /** @deprecated Android Beam is no longer supported. */
303
+ setNdefPushMessage(bytes: number[]): Promise<never>;
288
304
  connect: (techs: NfcTech[]) => Promise<void>;
289
305
  close: () => Promise<void>;
290
306
  mifareClassicHandlerAndroid: MifareClassicHandlerAndroid;
@@ -374,7 +390,7 @@ declare module 'react-native-nfc-manager' {
374
390
  encodePayload: (
375
391
  text: string,
376
392
  lang?: ISOLangCode,
377
- encoding?: any,
393
+ encoding?: unknown,
378
394
  ) => NdefRecord;
379
395
  decodePayload: (data: Uint8Array) => string;
380
396
  };
@@ -387,38 +403,55 @@ declare module 'react-native-nfc-manager' {
387
403
  decodePayload: (data: Uint8Array) => WifiSimpleCredentials;
388
404
  };
389
405
  util: {
390
- stringToBytes: (string: string) => any[];
391
- bytesToString: (bytes: any) => string;
392
- bytesToHexString: (bytes: any) => string;
393
- toHex: (i: any) => any;
394
- toPrintable: (i: any) => string;
406
+ stringToBytes: (string: string) => number[];
407
+ bytesToString: (bytes: string | number[]) => string;
408
+ bytesToHexString: (bytes: number[]) => string;
409
+ toHex: (i: number) => string;
410
+ toPrintable: (i: number) => string;
395
411
  };
396
412
  isType(record: NdefRecord, tnf: TNF, type: string): boolean;
397
413
  stringify(data: number[], separator: string): string;
398
414
  encodeMessage(records: NdefRecord[]): number[];
399
415
  decodeMessage(bytes: number[]): NdefRecord[];
400
- textRecord(text: string, lang?: ISOLangCode, encoding?: any): NdefRecord;
401
- uriRecord(uri: URI, id?: any): NdefRecord;
402
- wifiSimpleRecord(credentials: WifiSimpleCredentials, id?: any): NdefRecord;
416
+ textRecord(text: string, lang?: ISOLangCode, encoding?: unknown): NdefRecord;
417
+ uriRecord(uri: URI, id?: string | number[]): NdefRecord;
418
+ wifiSimpleRecord(credentials: WifiSimpleCredentials, id?: string | number[]): NdefRecord;
403
419
  androidApplicationRecord(pkgName: string): NdefRecord;
404
420
  record(
405
421
  tnf: TNF,
406
422
  type: string,
407
- id: string | any[],
408
- payload: string | any[],
423
+ id: string | number[],
424
+ payload: string | number[],
409
425
  ): NdefRecord;
410
426
  };
411
427
 
412
428
  export const NfcErrorIOS: {
413
429
  errCodes: {
414
430
  unknown: -1;
431
+ unsupportedFeature: 1;
432
+ securityViolation: 2;
433
+ invalidParameter: 3;
434
+ invalidParameterLength: 4;
435
+ parameterOutOfBound: 5;
436
+ radioDisabled: 6;
437
+ tagConnectionLost: 100;
438
+ retryExceeded: 101;
439
+ tagResponseError: 102;
440
+ sessionInvalidated: 103;
441
+ tagNotConnected: 104;
442
+ packetTooLong: 105;
415
443
  userCancel: 200;
416
444
  timeout: 201;
417
445
  unexpected: 202;
418
446
  systemBusy: 203;
419
447
  firstNdefInvalid: 204;
448
+ invalidConfiguration: 300;
449
+ tagNotWritable: 400;
450
+ tagUpdateFailure: 401;
451
+ tagSizeTooSmall: 402;
452
+ zeroLengthMessage: 403;
420
453
  };
421
- parse(errorString: string): number;
454
+ parse(error: string | NfcError.UserCancel): number;
422
455
  }
423
456
 
424
457
  export namespace NfcError {
package/ios/NfcManager.h CHANGED
@@ -15,18 +15,15 @@
15
15
 
16
16
  #ifdef RCT_NEW_ARCH_ENABLED
17
17
  #import <NativeNfcManagerSpec/NativeNfcManagerSpec.h>
18
- @interface NfcManager : RCTEventEmitter <NativeNfcManagerSpec, NFCNDEFReaderSessionDelegate, NFCTagReaderSessionDelegate> {
18
+ @interface NfcManager : NativeNfcManagerSpecBase <NativeNfcManagerSpec> {
19
19
 
20
20
  }
21
21
  #else
22
- @interface NfcManager : RCTEventEmitter <RCTBridgeModule, NFCNDEFReaderSessionDelegate, NFCTagReaderSessionDelegate> {
22
+ @interface NfcManager : RCTEventEmitter <RCTBridgeModule> {
23
23
 
24
24
  }
25
25
  #endif
26
26
 
27
- @property (strong, nonatomic) NFCNDEFReaderSession * _Nullable session;
28
- @property (strong, nonatomic) NFCTagReaderSession * _Nullable tagSession;
29
-
30
27
  + (BOOL)application:(nonnull UIApplication *)application
31
28
  continueUserActivity:(nonnull NSUserActivity *)userActivity
32
29
  restorationHandler:
@@ -37,8 +34,3 @@
37
34
  #endif
38
35
 
39
36
  @end
40
-
41
- extern NSString* _Nonnull getHexString(NSData * _Nonnull);
42
- extern NSString* _Nonnull getErrorMessage(NSError * _Nonnull);
43
- extern NSData * _Nonnull arrayToData(NSArray * _Nonnull);
44
- extern NSArray * _Nonnull dataToArray(NSData * _Nonnull);