react-native-printer-imin 0.4.2 → 0.6.0

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/src/index.tsx CHANGED
@@ -1,14 +1,9 @@
1
- import {
2
- NativeModules,
3
- Platform,
4
- Image,
5
- type ImageSourcePropType,
6
- type ImageResolvedAssetSource,
7
- } from 'react-native';
8
- import type { IminPrinterType, IminTextStyle } from './typing';
1
+ import { NativeModules, Platform, NativeEventEmitter } from 'react-native';
2
+
9
3
  import {
10
4
  IminPrintAlign,
11
5
  IminTypeface,
6
+ IminPrinterType,
12
7
  IminFontStyle,
13
8
  IminQrcodeCorrectionLevel,
14
9
  IminBarCodeToBitmapFormat,
@@ -19,6 +14,8 @@ import {
19
14
  IminDoubleQRCodeStyle,
20
15
  IminPictureStyle,
21
16
  IminBaseStyle,
17
+ IminTextStyle,
18
+ IminTextPictureStyle,
22
19
  } from './typing';
23
20
  export {
24
21
  IminPrintAlign,
@@ -33,6 +30,7 @@ export {
33
30
  IminDoubleQRCodeStyle,
34
31
  IminPictureStyle,
35
32
  IminBaseStyle,
33
+ IminTextPictureStyle,
36
34
  };
37
35
  const LINKING_ERROR =
38
36
  `The package 'react-native-printer-imin' doesn't seem to be linked. Make sure: \n\n` +
@@ -52,6 +50,24 @@ const PrinterImin = NativeModules.PrinterImin
52
50
  );
53
51
 
54
52
  const PrinterSDK: IminPrinterType = {
53
+ version: PrinterImin.SDK_VERSION_IMIN as string,
54
+ receiveBroadcastStream: {
55
+ listen(
56
+ callBackHandle: (payload: { eventName: string; eventData: any }) => void
57
+ ) {
58
+ const eventEmitter = new NativeEventEmitter(NativeModules.PrinterImin);
59
+ const eventListener = eventEmitter.addListener(
60
+ 'eventBroadcast',
61
+ (payload: { eventName: string; eventData: any }) => {
62
+ callBackHandle(payload);
63
+ }
64
+ );
65
+ // PrinterImin.getUsePrinterSdkVersion();
66
+ return () => {
67
+ eventListener.remove();
68
+ };
69
+ },
70
+ },
55
71
  initPrinter: PrinterImin.initPrinter,
56
72
  getPrinterStatus: PrinterImin.getPrinterStatus,
57
73
  setTextSize: PrinterImin.setTextSize,
@@ -82,7 +98,7 @@ const PrinterSDK: IminPrinterType = {
82
98
  PrinterImin.setTextStyle(style.fontStyle);
83
99
  }
84
100
  }
85
- PrinterImin.printText(textStr).then(() => {
101
+ return PrinterImin.printText(textStr).then(() => {
86
102
  if (style?.align !== undefined) {
87
103
  PrinterImin.setAlignment(IminPrintAlign.left);
88
104
  }
@@ -118,7 +134,7 @@ const PrinterSDK: IminPrinterType = {
118
134
  PrinterImin.setTextStyle(style.fontStyle);
119
135
  }
120
136
  }
121
- PrinterImin.printAntiWhiteText(textStr).then(() => {
137
+ return PrinterImin.printAntiWhiteText(textStr).then(() => {
122
138
  if (style?.align !== undefined) {
123
139
  PrinterImin.setAlignment(IminPrintAlign.left);
124
140
  }
@@ -136,51 +152,30 @@ const PrinterSDK: IminPrinterType = {
136
152
  printColumnsText: PrinterImin.printColumnsText,
137
153
  setPageFormat: PrinterImin.setPageFormat,
138
154
  partialCut: PrinterImin.partialCut,
139
- printSingleBitmap(
140
- uri: string | ImageSourcePropType,
141
- pictureStyle?: IminPictureStyle
142
- ) {
143
- const path = Image.resolveAssetSource(uri as ImageSourcePropType);
144
- console.log('path', path);
155
+ printSingleBitmap(uri: string, pictureStyle?: IminPictureStyle) {
145
156
  return PrinterImin.printSingleBitmap({
146
- url: path?.uri || uri,
157
+ url: uri,
147
158
  align: pictureStyle?.align,
148
159
  width: pictureStyle?.width,
149
160
  height: pictureStyle?.height,
150
161
  });
151
162
  },
152
- printMultiBitmap(
153
- imgs: (string | ImageSourcePropType)[],
154
- pictureStyle?: IminPictureStyle
155
- ) {
156
- const imgList: (
157
- | ImageResolvedAssetSource['uri']
158
- | string
159
- | ImageSourcePropType
160
- )[] = [];
161
- imgs.forEach((imgUri) => {
162
- imgList.push(
163
- Image.resolveAssetSource(imgUri as ImageSourcePropType)?.uri || imgUri
164
- );
165
- });
163
+ printMultiBitmap(imgs: string[], pictureStyle?: IminPictureStyle) {
166
164
  return PrinterImin.printMultiBitmap({
167
- urls: imgList,
165
+ urls: imgs,
168
166
  align: pictureStyle?.align,
169
167
  width: pictureStyle?.width,
170
168
  height: pictureStyle?.height,
171
169
  });
172
170
  },
173
- printSingleBitmapBlackWhite(
174
- uri: string | ImageSourcePropType,
175
- baseStyle?: IminBaseStyle
176
- ) {
177
- const path = Image.resolveAssetSource(uri as ImageSourcePropType);
171
+ printSingleBitmapBlackWhite(uri: string, baseStyle?: IminBaseStyle) {
178
172
  return PrinterImin.printSingleBitmapBlackWhite({
179
- url: path?.uri || uri,
173
+ url: uri,
180
174
  width: baseStyle?.width,
181
175
  height: baseStyle?.height,
182
176
  });
183
177
  },
178
+ openCashBox: PrinterImin.openCashBox,
184
179
  setQrCodeSize: PrinterImin.setQrCodeSize,
185
180
  setLeftMargin: PrinterImin.setLeftMargin,
186
181
  setQrCodeErrorCorrectionLev: PrinterImin.setQrCodeErrorCorrectionLev,
@@ -192,22 +187,41 @@ const PrinterSDK: IminPrinterType = {
192
187
  barCodeContent: string,
193
188
  style?: IminBarCodeStyle
194
189
  ) {
190
+ const params: {
191
+ data: string;
192
+ type: number;
193
+ width?: number;
194
+ height?: number;
195
+ position?: number;
196
+ align?: number;
197
+ } = { data: barCodeContent, type: barCodeType };
195
198
  if (style !== undefined) {
196
- if (style.width !== undefined) {
197
- PrinterImin.setBarCodeWidth(style.width);
198
- }
199
- if (style.height !== undefined) {
200
- PrinterImin.setBarCodeHeight(style.height);
201
- }
202
- if (style.position !== undefined) {
203
- PrinterImin.setBarCodeContentPrintPos(style.position);
199
+ if (
200
+ style.width !== undefined &&
201
+ style.height !== undefined &&
202
+ style.position !== undefined &&
203
+ style.align !== undefined
204
+ ) {
205
+ params.width = style.width;
206
+ params.height = style.height;
207
+ params.position = style.position;
208
+ params.align = style.align;
209
+ } else {
210
+ if (style.width !== undefined) {
211
+ PrinterImin.setBarCodeWidth(style.width);
212
+ }
213
+ if (style.height !== undefined) {
214
+ PrinterImin.setBarCodeHeight(style.height);
215
+ }
216
+ if (style.position !== undefined) {
217
+ PrinterImin.setBarCodeContentPrintPos(style.position);
218
+ }
219
+ if (style.align !== undefined) {
220
+ params.align = style.align;
221
+ }
204
222
  }
205
223
  }
206
- return PrinterImin.printBarCode({
207
- data: barCodeContent,
208
- type: barCodeType,
209
- align: style?.align,
210
- });
224
+ return PrinterImin.printBarCode(params);
211
225
  },
212
226
  setDoubleQRSize: PrinterImin.setDoubleQRSize,
213
227
  setDoubleQR1Level: PrinterImin.setDoubleQR1Level,
@@ -217,20 +231,42 @@ const PrinterSDK: IminPrinterType = {
217
231
  setDoubleQR1Version: PrinterImin.setDoubleQR1Version,
218
232
  setDoubleQR2Version: PrinterImin.setDoubleQR2Version,
219
233
  printQrCode(data: string, qrCodeStyle?: IminQrCodeStyle) {
234
+ const params: {
235
+ data: string;
236
+ align?: number;
237
+ qrSize?: number;
238
+ level?: number;
239
+ } = { data };
220
240
  if (qrCodeStyle !== undefined) {
221
- if (qrCodeStyle.qrSize !== undefined) {
222
- PrinterImin.setQrCodeSize(qrCodeStyle.qrSize);
223
- }
224
- if (qrCodeStyle.leftMargin !== undefined) {
225
- PrinterImin.setLeftMargin(qrCodeStyle.leftMargin);
226
- }
227
- if (qrCodeStyle.errorCorrectionLevel !== undefined) {
228
- PrinterImin.setQrCodeErrorCorrectionLev(
229
- qrCodeStyle.errorCorrectionLevel
230
- );
241
+ if (
242
+ qrCodeStyle.qrSize !== undefined &&
243
+ qrCodeStyle.errorCorrectionLevel !== undefined &&
244
+ qrCodeStyle.align !== undefined
245
+ ) {
246
+ params.align = qrCodeStyle.align;
247
+ params.qrSize = qrCodeStyle.qrSize;
248
+ params.level = qrCodeStyle.errorCorrectionLevel;
249
+ if (qrCodeStyle.leftMargin !== undefined) {
250
+ PrinterImin.setLeftMargin(qrCodeStyle.leftMargin);
251
+ }
252
+ } else {
253
+ if (qrCodeStyle.qrSize !== undefined) {
254
+ PrinterImin.setQrCodeSize(qrCodeStyle.qrSize);
255
+ }
256
+ if (qrCodeStyle.leftMargin !== undefined) {
257
+ PrinterImin.setLeftMargin(qrCodeStyle.leftMargin);
258
+ }
259
+ if (qrCodeStyle.errorCorrectionLevel !== undefined) {
260
+ PrinterImin.setQrCodeErrorCorrectionLev(
261
+ qrCodeStyle.errorCorrectionLevel
262
+ );
263
+ }
264
+ if (qrCodeStyle.align !== undefined) {
265
+ params.align = qrCodeStyle.align;
266
+ }
231
267
  }
232
268
  }
233
- return PrinterImin.printQrCode({ data, align: qrCodeStyle?.align });
269
+ return PrinterImin.printQrCode(params);
234
270
  },
235
271
  printDoubleQR(
236
272
  qrCode1: IminDoubleQRCodeStyle,
@@ -265,6 +301,95 @@ const PrinterSDK: IminPrinterType = {
265
301
  },
266
302
  setInitIminPrinter: PrinterImin.setInitIminPrinter,
267
303
  resetDevice: PrinterImin.resetDevice,
304
+ // 2.0
305
+ getFontCodepage: PrinterImin.getFontCodepage,
306
+ setFontCodepage: PrinterImin.setFontCodepage,
307
+ getCurCodepage: PrinterImin.getCurCodepage,
308
+ getEncodeList: PrinterImin.getEncodeList,
309
+ setPrinterEncode: PrinterImin.setPrinterEncode,
310
+ getCurEncode: PrinterImin.getCurEncode,
311
+ getPrinterDensityList: PrinterImin.getPrinterDensityList,
312
+ setPrinterDensity: PrinterImin.setPrinterDensity,
313
+ getPrinterDensity: PrinterImin.getPrinterDensity,
314
+ getPrinterSpeedList: PrinterImin.getPrinterSpeedList,
315
+ setPrinterSpeed: PrinterImin.setPrinterSpeed,
316
+ getPrinterSpeed: PrinterImin.getPrinterSpeed,
317
+ getPrinterPaperTypeList: PrinterImin.getPrinterPaperTypeList,
318
+ getPrinterPaperType: PrinterImin.getPrinterPaperType,
319
+ getPrinterSerialNumber: PrinterImin.getPrinterSerialNumber,
320
+ getPrinterModelName: PrinterImin.getPrinterModelName,
321
+ getPrinterThermalHead: PrinterImin.getPrinterThermalHead,
322
+ getPrinterFirmwareVersion: PrinterImin.getPrinterFirmwareVersion,
323
+ getServiceVersion: PrinterImin.getServiceVersion,
324
+ getPrinterHardwareVersion: PrinterImin.getPrinterHardwareVersion,
325
+ getUsbPrinterVidPid: PrinterImin.getUsbPrinterVidPid,
326
+ getUsbDevicesName: PrinterImin.getUsbDevicesName,
327
+ getPrinterPaperDistance: PrinterImin.getPrinterPaperDistance,
328
+ getPrinterCutTimes: PrinterImin.getPrinterCutTimes,
329
+ getPrinterMode: PrinterImin.getPrinterMode,
330
+ getDrawerStatus: PrinterImin.getDrawerStatus,
331
+ getOpenDrawerTimes: PrinterImin.getOpenDrawerTimes,
332
+ printerSelfChecking: PrinterImin.printerSelfChecking,
333
+ printSingleBitmapColorChart(uri: string, pictureStyle?: IminPictureStyle) {
334
+ return PrinterImin.printSingleBitmap({
335
+ url: uri,
336
+ align: pictureStyle?.align,
337
+ width: pictureStyle?.width,
338
+ height: pictureStyle?.height,
339
+ });
340
+ },
341
+ sendRAWData: PrinterImin.sendRAWData,
342
+ unBindService: PrinterImin.unBindService,
343
+ initPrinterParams: PrinterImin.initPrinterParams,
344
+ fullCut: PrinterImin.fullCut,
345
+ printColumnsString: PrinterImin.printColumnsString,
346
+ setCodeAlignment: PrinterImin.setCodeAlignment,
347
+ setTextBitmapTypeface: PrinterImin.setTextBitmapTypeface,
348
+ setTextBitmapSize: PrinterImin.setTextBitmapSize,
349
+ setTextBitmapStyle: PrinterImin.setTextBitmapStyle,
350
+ setTextBitmapStrikeThru: PrinterImin.setTextBitmapStrikeThru,
351
+ setTextBitmapUnderline: PrinterImin.setTextBitmapUnderline,
352
+ setTextBitmapLineSpacing: PrinterImin.setTextBitmapLineSpacing,
353
+ setTextBitmapLetterSpacing: PrinterImin.setTextBitmapLetterSpacing,
354
+ setTextBitmapAntiWhite: PrinterImin.setTextBitmapAntiWhite,
355
+ printTextBitmap(text: string, style?: IminTextPictureStyle) {
356
+ let textStr = `${text}\n`;
357
+ if (style) {
358
+ if (style.wordWrap !== undefined && style.wordWrap === false) {
359
+ textStr = text;
360
+ }
361
+ if (style.fontSize !== undefined) {
362
+ PrinterImin.setTextBitmapSize(style.fontSize);
363
+ }
364
+ if (style.typeface !== undefined) {
365
+ PrinterImin.setTextBitmapTypeface(style.typeface);
366
+ }
367
+ if (style.fontStyle !== undefined) {
368
+ PrinterImin.setTextBitmapStyle(style.fontStyle);
369
+ }
370
+ if (style.throughline !== undefined) {
371
+ PrinterImin.setTextBitmapStrikeThru(style.throughline);
372
+ }
373
+ if (style.underline !== undefined) {
374
+ PrinterImin.setTextBitmapUnderline(style.underline);
375
+ }
376
+ if (style.lineHeight !== undefined) {
377
+ PrinterImin.setTextBitmapLineSpacing(style.lineHeight);
378
+ }
379
+ if (style.letterSpacing !== undefined) {
380
+ PrinterImin.setTextBitmapLetterSpacing(style.letterSpacing);
381
+ }
382
+ if (style.reverseWhite !== undefined) {
383
+ PrinterImin.setTextBitmapAntiWhite(style.reverseWhite);
384
+ }
385
+ }
386
+ return PrinterImin.printTextBitmap({ text: textStr, align: style?.align });
387
+ },
388
+ enterPrinterBuffer: PrinterImin.enterPrinterBuffer,
389
+ commitPrinterBuffer: PrinterImin.commitPrinterBuffer,
390
+ exitPrinterBuffer: PrinterImin.exitPrinterBuffer,
391
+ openLogs: PrinterImin.openLogs,
392
+ sendRAWDataHexStr: PrinterImin.sendRAWDataHexStr,
268
393
  };
269
394
 
270
395
  export default PrinterSDK;
package/src/typing.ts CHANGED
@@ -1,4 +1,3 @@
1
- import type { ImageSourcePropType } from 'react-native';
2
1
  export enum IminTypeface {
3
2
  Default = 0,
4
3
  Monospace = 1,
@@ -39,7 +38,8 @@ export enum IminBarcodeType {
39
38
  code39 = 4,
40
39
  itf = 5,
41
40
  codabar = 6,
42
- code128 = 73,
41
+ code93 = 7,
42
+ code128 = 8,
43
43
  }
44
44
 
45
45
  export enum IminBarCodeToBitmapFormat {
@@ -80,6 +80,19 @@ export interface IminTextStyle {
80
80
  align?: IminPrintAlign;
81
81
  }
82
82
 
83
+ export interface IminTextPictureStyle {
84
+ wordWrap?: boolean;
85
+ fontSize?: number;
86
+ typeface?: IminTypeface;
87
+ fontStyle?: IminFontStyle;
88
+ align?: IminPrintAlign;
89
+ letterSpacing?: number;
90
+ underline?: boolean;
91
+ throughline?: boolean;
92
+ lineHeight?: number;
93
+ reverseWhite?: boolean;
94
+ }
95
+
83
96
  export interface IminDoubleQRCodeStyle {
84
97
  text: string;
85
98
  level?: number;
@@ -96,8 +109,13 @@ export interface IminQrCodeStyle {
96
109
  export interface IminPictureStyle extends IminBaseStyle {
97
110
  align?: IminPrintAlign;
98
111
  }
99
-
100
112
  export type IminPrinterType = {
113
+ version: string;
114
+ receiveBroadcastStream: {
115
+ listen: (
116
+ callBackHandle: (payload: { eventName: string; eventData: any }) => void
117
+ ) => () => void;
118
+ };
101
119
  initPrinter: () => Promise<string>;
102
120
  getPrinterStatus: () => Promise<{ code: number; message: string }>;
103
121
  setTextSize: (size: number) => Promise<void>;
@@ -105,8 +123,8 @@ export type IminPrinterType = {
105
123
  setTextStyle: (style: number) => Promise<void>;
106
124
  setAlignment: (align: number) => Promise<void>;
107
125
  setTextLineSpacing: (spacing: number) => Promise<void>;
108
- printText: (text: string, style?: IminTextStyle) => void;
109
- printAntiWhiteText: (text: string, style?: IminTextStyle) => void;
126
+ printText: (text: string, style?: IminTextStyle) => Promise<void>;
127
+ printAntiWhiteText: (text: string, style?: IminTextStyle) => Promise<void>;
110
128
  setTextWidth: (width: number) => Promise<void>;
111
129
  printAndLineFeed: () => Promise<void>;
112
130
  printAndFeedPaper: (height: number) => Promise<void>;
@@ -121,15 +139,15 @@ export type IminPrinterType = {
121
139
  setPageFormat: (style?: number) => Promise<void>;
122
140
  partialCut: () => Promise<void>;
123
141
  printSingleBitmap: (
124
- uri: string | ImageSourcePropType,
142
+ uri: string,
125
143
  pictureStyle?: IminPictureStyle
126
144
  ) => Promise<void>;
127
145
  printMultiBitmap: (
128
- imgs: (string | ImageSourcePropType)[],
146
+ imgs: string[],
129
147
  pictureStyle?: IminPictureStyle
130
148
  ) => Promise<void>;
131
149
  printSingleBitmapBlackWhite: (
132
- uri: string | ImageSourcePropType,
150
+ uri: string,
133
151
  baseStyle?: IminBaseStyle
134
152
  ) => Promise<void>;
135
153
  setQrCodeSize: (qrSize: number) => Promise<void>;
@@ -145,6 +163,7 @@ export type IminPrinterType = {
145
163
  barCodeContent: string,
146
164
  style?: IminBarCodeStyle
147
165
  ) => Promise<void>;
166
+ openCashBox: () => Promise<void>;
148
167
  setDoubleQRSize: (size: number) => Promise<void>;
149
168
  setDoubleQR1Level: (level: number) => Promise<void>;
150
169
  setDoubleQR2Level: (level: number) => Promise<void>;
@@ -160,4 +179,67 @@ export type IminPrinterType = {
160
179
  ) => Promise<void>;
161
180
  setInitIminPrinter: (isDefaultPrinter: boolean) => Promise<void>;
162
181
  resetDevice: () => Promise<void>;
182
+ // 2.0
183
+ getFontCodepage: () => Promise<string[]>;
184
+ setFontCodepage: (codepage: number) => Promise<void>;
185
+ getCurCodepage: () => Promise<string>;
186
+ getEncodeList: () => Promise<string[]>;
187
+ setPrinterEncode: (encode: number) => Promise<void>;
188
+ getCurEncode: () => Promise<string>;
189
+ getPrinterDensityList: () => Promise<string[]>;
190
+ setPrinterDensity: (density: number) => Promise<void>;
191
+ getPrinterDensity: () => Promise<number>;
192
+ getPrinterSpeedList: () => Promise<string[]>;
193
+ setPrinterSpeed: (speed: number) => Promise<void>;
194
+ getPrinterSpeed: () => Promise<number>;
195
+ getPrinterPaperTypeList: () => Promise<string[]>;
196
+ getPrinterPaperType: () => Promise<number>;
197
+ getPrinterSerialNumber: () => Promise<string>;
198
+ getPrinterModelName: () => Promise<string>;
199
+ getPrinterThermalHead: () => Promise<string>;
200
+ getPrinterFirmwareVersion: () => Promise<string>;
201
+ getServiceVersion: () => Promise<string>;
202
+ getPrinterHardwareVersion: () => Promise<string>;
203
+ getUsbPrinterVidPid: () => Promise<string>;
204
+ getUsbDevicesName: () => Promise<string>;
205
+ getPrinterPaperDistance: () => Promise<number>;
206
+ getPrinterCutTimes: () => Promise<string>;
207
+ getPrinterMode: () => Promise<number>;
208
+ getDrawerStatus: () => Promise<boolean>;
209
+ getOpenDrawerTimes: () => Promise<number>;
210
+ printSingleBitmapColorChart: (
211
+ uri: string,
212
+ pictureStyle?: IminPictureStyle
213
+ ) => Promise<void>;
214
+ printerSelfChecking: () => Promise<void>;
215
+ sendRAWData: (bytes: number[]) => Promise<void>;
216
+ initPrinterParams: () => Promise<void>;
217
+ unBindService: () => Promise<void>;
218
+ fullCut: () => Promise<void>;
219
+ printColumnsString: (
220
+ cols: {
221
+ text: string;
222
+ width: number;
223
+ align: IminPrintAlign;
224
+ fontSize: number;
225
+ }[]
226
+ ) => Promise<void>;
227
+ setCodeAlignment: (align: IminPrintAlign) => Promise<void>;
228
+ setTextBitmapTypeface: (typeface: IminTypeface) => Promise<void>;
229
+ setTextBitmapSize: (size: number) => Promise<void>;
230
+ setTextBitmapStyle: (style: IminFontStyle) => Promise<void>;
231
+ setTextBitmapStrikeThru: (strikeThru: boolean) => Promise<void>;
232
+ setTextBitmapUnderline: (haveUnderline: boolean) => Promise<void>;
233
+ setTextBitmapLineSpacing: (lineHeight: number) => Promise<void>;
234
+ setTextBitmapLetterSpacing: (space: number) => Promise<void>;
235
+ setTextBitmapAntiWhite: (antiWhite: boolean) => Promise<void>;
236
+ printTextBitmap: (
237
+ text: string,
238
+ style?: IminTextPictureStyle
239
+ ) => Promise<void>;
240
+ enterPrinterBuffer: (isClean: boolean) => Promise<void>;
241
+ commitPrinterBuffer: () => Promise<void>;
242
+ exitPrinterBuffer: (isCommit: boolean) => Promise<void>;
243
+ openLogs: (open: number) => Promise<void>;
244
+ sendRAWDataHexStr: (byteStr: string) => Promise<void>;
163
245
  };
@@ -1,2 +0,0 @@
1
- #import <React/RCTBridgeModule.h>
2
- #import <React/RCTViewManager.h>
@@ -1,14 +0,0 @@
1
- #import <React/RCTBridgeModule.h>
2
-
3
- @interface RCT_EXTERN_MODULE(PrinterImin, NSObject)
4
-
5
- RCT_EXTERN_METHOD(multiply:(float)a withB:(float)b
6
- withResolver:(RCTPromiseResolveBlock)resolve
7
- withRejecter:(RCTPromiseRejectBlock)reject)
8
-
9
- + (BOOL)requiresMainQueueSetup
10
- {
11
- return NO;
12
- }
13
-
14
- @end
@@ -1,8 +0,0 @@
1
- @objc(PrinterImin)
2
- class PrinterImin: NSObject {
3
-
4
- @objc(multiply:withB:withResolver:withRejecter:)
5
- func multiply(a: Float, b: Float, resolve:RCTPromiseResolveBlock,reject:RCTPromiseRejectBlock) -> Void {
6
- resolve(a*b)
7
- }
8
- }