@danidoble/webserial 4.4.0-beta.1 → 4.4.0-beta.3

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 (63) hide show
  1. package/dist/boardroid.cjs +1 -1
  2. package/dist/boardroid.js +106 -101
  3. package/dist/hopper.cjs +2 -2
  4. package/dist/hopper.js +66 -51
  5. package/dist/jofemar.cjs +1 -1
  6. package/dist/jofemar.js +62 -144
  7. package/dist/kernel-C1HLYiV1.cjs +1 -0
  8. package/dist/kernel-C8ISUhzV.cjs +1 -0
  9. package/dist/kernel-CQcZ_OiG.js +831 -0
  10. package/dist/{kernel-505KqpPU.js → kernel-DkC7Kj3m.js} +151 -125
  11. package/dist/kernel-DtXV8d8B.js +831 -0
  12. package/dist/kernel-DyNuXvtW.cjs +1 -0
  13. package/dist/kernel-aqBCxtkj.js +831 -0
  14. package/dist/kernel-pO_elWba.cjs +1 -0
  15. package/dist/kernel.cjs +2 -2
  16. package/dist/kernel.d.ts +14 -0
  17. package/dist/kernel.d.ts.map +1 -0
  18. package/dist/kernel.js +3 -4
  19. package/dist/locker.cjs +1 -1
  20. package/dist/locker.js +33 -26
  21. package/dist/main.d.ts +28 -0
  22. package/dist/main.d.ts.map +1 -0
  23. package/dist/pinpad.cjs +15 -20
  24. package/dist/pinpad.js +1405 -1259
  25. package/dist/pinpax.cjs +4 -4
  26. package/dist/pinpax.js +68 -68
  27. package/dist/{relay-CsdB0FSa.js → relay-DP8PLsDP.js} +2 -2
  28. package/dist/{relay-DGFymXOw.cjs → relay-E3NCcSjS.cjs} +1 -1
  29. package/dist/relay.cjs +1 -1
  30. package/dist/relay.js +11 -29
  31. package/dist/serial/boardroid.d.ts +206 -0
  32. package/dist/serial/boardroid.d.ts.map +1 -0
  33. package/dist/serial/hopper.d.ts +85 -0
  34. package/dist/serial/hopper.d.ts.map +1 -0
  35. package/dist/serial/jofemar.d.ts +218 -0
  36. package/dist/serial/jofemar.d.ts.map +1 -0
  37. package/dist/serial/kernel.d.ts +137 -0
  38. package/dist/serial/kernel.d.ts.map +1 -0
  39. package/dist/serial/locker.d.ts +33 -0
  40. package/dist/serial/locker.d.ts.map +1 -0
  41. package/dist/serial/pinpad.d.ts +263 -0
  42. package/dist/serial/pinpad.d.ts.map +1 -0
  43. package/dist/serial/pinpax.d.ts +60 -0
  44. package/dist/serial/pinpax.d.ts.map +1 -0
  45. package/dist/serial/relay.d.ts +13 -0
  46. package/dist/serial/relay.d.ts.map +1 -0
  47. package/dist/utils/devices.d.ts +26 -0
  48. package/dist/utils/devices.d.ts.map +1 -0
  49. package/dist/utils/dispatcher.d.ts +17 -0
  50. package/dist/utils/dispatcher.d.ts.map +1 -0
  51. package/dist/utils/emulator.d.ts +80 -0
  52. package/dist/utils/emulator.d.ts.map +1 -0
  53. package/dist/utils/utils.d.ts +7 -0
  54. package/dist/utils/utils.d.ts.map +1 -0
  55. package/dist/{webserial-core-C0ZbaNYy.js → webserial-core-CH2Xov2y.js} +943 -933
  56. package/dist/webserial-core-Cj_EZjAU.cjs +4 -0
  57. package/dist/webserial-core-D3luFguv.js +3325 -0
  58. package/dist/webserial-core-YjdXyVOx.cjs +4 -0
  59. package/dist/webserial.cjs +2 -2
  60. package/dist/webserial.js +19 -19
  61. package/package.json +17 -14
  62. package/dist/kernel-Dq3Fv1y8.cjs +0 -1
  63. package/dist/webserial-core-B7vfLzGH.cjs +0 -4
@@ -0,0 +1,206 @@
1
+ import { Kernel, ConstructorParams, DispenseResponse } from './kernel';
2
+ interface MessageSerial {
3
+ code: string[] | Uint8Array<ArrayBufferLike> | string | ArrayBuffer;
4
+ name: string | null;
5
+ description: string | null;
6
+ request: string | null;
7
+ no_code: number;
8
+ additional?: any;
9
+ finished_test?: boolean;
10
+ }
11
+ export declare class Boardroid extends Kernel {
12
+ #private;
13
+ __coin_purse: {
14
+ available: boolean;
15
+ };
16
+ __banknote_purse: {
17
+ available: boolean;
18
+ isRecycler: boolean;
19
+ recycler: {
20
+ ict: boolean;
21
+ banknote: number;
22
+ };
23
+ };
24
+ __sale: {
25
+ price: number;
26
+ change: number;
27
+ change_verified: number;
28
+ dispense_all: boolean;
29
+ last_change: number;
30
+ clear(): void;
31
+ };
32
+ __money_session: {
33
+ inserted: number;
34
+ retired: number;
35
+ clear(): void;
36
+ };
37
+ coins: {
38
+ tubes: {
39
+ g50: number;
40
+ c50: number;
41
+ p1: number;
42
+ p2: number;
43
+ p5: number;
44
+ p10: number;
45
+ };
46
+ box: {
47
+ g50: number;
48
+ c50: number;
49
+ p1: number;
50
+ p2: number;
51
+ p5: number;
52
+ p10: number;
53
+ };
54
+ totals: {
55
+ g50: number;
56
+ c50: number;
57
+ p1: number;
58
+ p2: number;
59
+ p5: number;
60
+ p10: number;
61
+ };
62
+ total: number;
63
+ };
64
+ banknotes: {
65
+ stacker: {
66
+ p20: number;
67
+ p50: number;
68
+ p100: number;
69
+ p200: number;
70
+ p500: number;
71
+ p1000: number;
72
+ };
73
+ recycler: {
74
+ p20: number;
75
+ p50: number;
76
+ p100: number;
77
+ p200: number;
78
+ p500: number;
79
+ p1000: number;
80
+ };
81
+ out: {
82
+ p20: number;
83
+ p50: number;
84
+ p100: number;
85
+ p200: number;
86
+ p500: number;
87
+ p1000: number;
88
+ };
89
+ totals: {
90
+ p20: number;
91
+ p50: number;
92
+ p100: number;
93
+ p200: number;
94
+ p500: number;
95
+ p1000: number;
96
+ };
97
+ total: number;
98
+ };
99
+ card_reader: {
100
+ available: boolean;
101
+ max_pre_credit: number;
102
+ };
103
+ constructor({ filters, config_port, no_device, socket }?: ConstructorParams);
104
+ get totalInTubes(): number;
105
+ get totalInRecycler(): number;
106
+ get hasRecycler(): boolean;
107
+ set hasRecycler(value: boolean);
108
+ get hasICT(): boolean;
109
+ set hasICT(value: boolean);
110
+ set banknoteICT(value: number);
111
+ get banknoteICT(): number;
112
+ get hasCoinPurse(): boolean;
113
+ set hasCoinPurse(value: boolean);
114
+ set price(value: number);
115
+ get price(): number;
116
+ get change(): number;
117
+ softReload(): void;
118
+ serialMessage(code: string[] | Uint8Array<ArrayBufferLike> | string | ArrayBuffer): void;
119
+ serialSetConnectionConstant(listen_on_port?: number): string | Uint8Array<ArrayBufferLike> | string[];
120
+ coinPurseConfigure({ enable, high, low }?: {
121
+ enable?: boolean | undefined;
122
+ high?: number | undefined;
123
+ low?: number | undefined;
124
+ }): Promise<void>;
125
+ coinPurseEnable(): Promise<void>;
126
+ coinPurseDisable(): Promise<void>;
127
+ coinPurseDispense({ $_50c, $_1, $_2, $_5, $_10 }?: {
128
+ $_50c?: number | undefined;
129
+ $_1?: number | undefined;
130
+ $_2?: number | undefined;
131
+ $_5?: number | undefined;
132
+ $_10?: number | undefined;
133
+ }): Promise<void>;
134
+ coinPurseReadTubes(): Promise<void>;
135
+ banknotePurseConfigure({ enable, scrow }?: {
136
+ enable?: boolean | undefined;
137
+ scrow?: boolean | undefined;
138
+ }): Promise<void>;
139
+ banknotePurseDispense({ $_20, $_50, $_100, $_200, $_500, $_1000 }?: {
140
+ $_20?: number | undefined;
141
+ $_50?: number | undefined;
142
+ $_100?: number | undefined;
143
+ $_200?: number | undefined;
144
+ $_500?: number | undefined;
145
+ $_1000?: number | undefined;
146
+ }): Promise<void>;
147
+ banknotePurseEnable({ scrow }: {
148
+ scrow?: boolean | undefined;
149
+ }): Promise<void>;
150
+ banknotePurseDisable(): Promise<void>;
151
+ banknotePurseAcceptInScrow(): Promise<void>;
152
+ banknotePurseRejectInScrow(): Promise<void>;
153
+ banknotePurseSaveMemory({ channel, $_20, $_50, $_100, $_200, $_500, $_1000, }?: {
154
+ channel?: null | undefined;
155
+ $_20?: null | undefined;
156
+ $_50?: null | undefined;
157
+ $_100?: null | undefined;
158
+ $_200?: null | undefined;
159
+ $_500?: null | undefined;
160
+ $_1000?: null | undefined;
161
+ }): Promise<void>;
162
+ banknotePurseReadRecycler(): Promise<void>;
163
+ cardReaderDisable(): Promise<void>;
164
+ cardReaderDispense({ channel, second_channel, sensor, seconds, price }?: {
165
+ channel?: number | undefined;
166
+ second_channel?: null | undefined;
167
+ sensor?: boolean | undefined;
168
+ seconds?: null | undefined;
169
+ price?: number | undefined;
170
+ }): Promise<void>;
171
+ paymentPursesDisable({ coin, banknote, cardReader }?: {
172
+ coin?: boolean | undefined;
173
+ banknote?: boolean | undefined;
174
+ cardReader?: boolean | undefined;
175
+ }): Promise<void>;
176
+ paymentPursesEnable({ coin, banknote, scrowBanknote }?: {
177
+ coin?: boolean | undefined;
178
+ banknote?: boolean | undefined;
179
+ scrowBanknote?: boolean | undefined;
180
+ }): Promise<void>;
181
+ coolingRelayConfigure({ enable }?: {
182
+ enable?: boolean | undefined;
183
+ }): Promise<void>;
184
+ coolingRelayEnable(): Promise<void>;
185
+ coolingRelayDisable(): Promise<void>;
186
+ readTemperature(): Promise<void>;
187
+ dispense({ selection, second_selection, sensor, seconds, retry, }?: {
188
+ selection: number;
189
+ second_selection?: number | null;
190
+ sensor?: boolean;
191
+ seconds?: number | null;
192
+ retry?: boolean;
193
+ }): Promise<DispenseResponse>;
194
+ testEngines({ singleEngine }?: {
195
+ singleEngine?: boolean | undefined;
196
+ }): Promise<void>;
197
+ sendCustomCode({ code, }?: {
198
+ code: string[];
199
+ }): Promise<void>;
200
+ hasToReturnChange(money?: number): boolean;
201
+ returnChange(): Promise<boolean>;
202
+ returnInsertedMoney(): Promise<boolean>;
203
+ serialCorruptMessage(data: Uint8Array | number[] | string[] | never | null | string | ArrayBuffer, message: MessageSerial): Promise<void>;
204
+ }
205
+ export {};
206
+ //# sourceMappingURL=boardroid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boardroid.d.ts","sourceRoot":"","sources":["../../lib/serial/boardroid.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ import { Core } from 'webserial-core';
2
+ interface Hoppers {
3
+ levels: {
4
+ id: number;
5
+ currency: number;
6
+ key: string;
7
+ name: string;
8
+ amount: number;
9
+ capacity: number;
10
+ }[];
11
+ balance: number;
12
+ current: number | null;
13
+ }
14
+ interface ConstructorParams {
15
+ filters?: SerialPortFilter[] | null;
16
+ config_port?: SerialOptions;
17
+ no_device?: number;
18
+ device_listen_on_channel?: number | string;
19
+ bypassSerialBytesConnection?: boolean;
20
+ socket?: boolean;
21
+ }
22
+ export declare class Hopper extends Core {
23
+ #private;
24
+ __hoppers__: Hoppers;
25
+ constructor({ filters, config_port, no_device, socket, }?: ConstructorParams);
26
+ get balance(): number;
27
+ get currentHopper(): number | null;
28
+ get levels(): {
29
+ id: number;
30
+ currency: number;
31
+ key: string;
32
+ name: string;
33
+ amount: number;
34
+ capacity: number;
35
+ }[];
36
+ setMaxCapacity({ hopper, capacity }?: {
37
+ hopper?: number;
38
+ capacity?: number;
39
+ }): this;
40
+ setHopperName({ hopper, name }?: {
41
+ hopper?: number;
42
+ name?: string;
43
+ }): this;
44
+ setHopperKey({ hopper, key }?: {
45
+ hopper?: number;
46
+ key?: string;
47
+ }): this;
48
+ setHopperCurrency({ hopper, currency }?: {
49
+ hopper?: number;
50
+ currency?: number;
51
+ }): this;
52
+ serialMessage(codex1: string[] | Uint8Array<ArrayBufferLike> | string | ArrayBuffer): void;
53
+ serialSetConnectionConstant(): number[];
54
+ sendConnect(): Promise<void>;
55
+ requestStatus(): Promise<void>;
56
+ readBalance(): Promise<void>;
57
+ clearBalance(): Promise<void>;
58
+ forceInvalid(): Promise<void>;
59
+ readHopper({ hopper }?: {
60
+ hopper?: number;
61
+ }): Promise<void>;
62
+ writeHopper({ hopper, quantity }?: {
63
+ hopper?: number;
64
+ quantity?: number;
65
+ }): Promise<void>;
66
+ dispenseHopper({ hopper }?: {
67
+ hopper?: number;
68
+ }): Promise<void>;
69
+ dispenseChange({ change }?: {
70
+ change?: number;
71
+ }): Promise<void>;
72
+ configValidator({ enable, }?: {
73
+ enable: boolean;
74
+ }): Promise<void>;
75
+ disableValidator(): Promise<void>;
76
+ enableValidator(): Promise<void>;
77
+ change1x1({ hopper }?: {
78
+ hopper?: number;
79
+ }): Promise<void>;
80
+ sendCustomCode({ code, }?: {
81
+ code: any;
82
+ }): Promise<void>;
83
+ }
84
+ export {};
85
+ //# sourceMappingURL=hopper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hopper.d.ts","sourceRoot":"","sources":["../../lib/serial/hopper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAW,MAAM,gBAAgB,CAAC;AAE/C,UAAU,OAAO;IACf,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACxG,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,UAAU,iBAAiB;IACzB,OAAO,CAAC,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC;IACpC,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wBAAwB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3C,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAeD,qBAAa,MAAO,SAAQ,IAAI;;IAC9B,WAAW,EAAE,OAAO,CASlB;gBAGA,EACE,OAAc,EACd,WAOC,EACD,SAAa,EACb,MAAc,GACf,GAAE,iBAYF;IAyBH,IAAI,OAAO,WAEV;IAED,IAAI,aAAa,kBAEhB;IAED,IAAI,MAAM;YAjGI,MAAM;kBAAY,MAAM;aAAO,MAAM;cAAQ,MAAM;gBAAU,MAAM;kBAAY,MAAM;QAmGlG;IAED,cAAc,CAAC,EAAE,MAAU,EAAE,QAAe,EAAE;;;KAAgC;IAM9E,aAAa,CAAC,EAAE,MAAU,EAAE,IAAS,EAAE;;;KAA0B;IASjE,YAAY,CAAC,EAAE,MAAU,EAAE,GAAQ,EAAE;;;KAAyB;IAS9D,iBAAiB,CAAC,EAAE,MAAU,EAAE,QAAY,EAAE;;;KAA6B;IAiK3E,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC,eAAe,CAAC,GAAG,MAAM,GAAG,WAAW;IA0HnF,2BAA2B;IAIrB,WAAW;IAKX,aAAa;IAKb,WAAW;IAKX,YAAY;IAKZ,YAAY;IAMZ,UAAU,CAAC,EAAE,MAAU,EAAE;;KAAgB;IAQzC,WAAW,CAAC,EAAE,MAAU,EAAE,QAAY,EAAE;;;KAA6B;IAUrE,cAAc,CAAC,EAAE,MAAU,EAAE;;KAAgB;IAO7C,cAAc,CAAC,EAAE,MAAU,EAAE;;KAAgB;IAc7C,eAAe,CACnB,EACE,MAAc,GACf,GAAE;QACD,MAAM,EAAE,OAAO,CAAC;KACG;IAUjB,gBAAgB;IAIhB,eAAe;IAIf,SAAS,CAAC,EAAE,MAAU,EAAE;;KAAgB;IAOxC,cAAc,CAClB,EACE,IAAS,GACV,GAAE;QACD,IAAI,EAAE,GAAG,CAAC;KACI;CASnB"}
@@ -0,0 +1,218 @@
1
+ import { Kernel, ConstructorParams, Internal } from './kernel';
2
+ type TypeDevice = 'esplus' | 'iceplus';
3
+ interface ConstructorParamsJofemar extends ConstructorParams {
4
+ device_listen_on_channel?: number;
5
+ type?: TypeDevice;
6
+ support_cart?: boolean;
7
+ }
8
+ interface InternalJofemar extends Internal {
9
+ device: Internal['device'] & {
10
+ type: string;
11
+ support_cart: boolean;
12
+ withdraw: {
13
+ in_process: boolean;
14
+ seconds: number;
15
+ interval: number;
16
+ };
17
+ cart: {
18
+ in_process: boolean;
19
+ };
20
+ channels: {
21
+ verification: {
22
+ clear(): void;
23
+ running: boolean;
24
+ start: number;
25
+ end: number;
26
+ current: number;
27
+ channels: {
28
+ selection: number;
29
+ active: boolean;
30
+ }[];
31
+ };
32
+ };
33
+ hex_number?: string;
34
+ door_open: boolean;
35
+ listen_on_port?: number;
36
+ };
37
+ dispense: Internal['dispense'] & {
38
+ elevator: {
39
+ locking_time: number;
40
+ locking_interval: number;
41
+ need_reset: boolean;
42
+ };
43
+ timeout: number;
44
+ timeout_time: number;
45
+ interval: number;
46
+ interval_time: number;
47
+ };
48
+ }
49
+ interface DeviceJofemar {
50
+ type: TypeDevice;
51
+ support_cart: boolean;
52
+ withdraw: {
53
+ in_process: boolean;
54
+ seconds: number;
55
+ interval: number;
56
+ };
57
+ cart: {
58
+ in_process: boolean;
59
+ };
60
+ channels: {
61
+ verification: {
62
+ clear(): void;
63
+ running: boolean;
64
+ start: number;
65
+ end: number;
66
+ current: number;
67
+ channels: {
68
+ selection: number;
69
+ active: boolean;
70
+ }[];
71
+ };
72
+ };
73
+ }
74
+ export declare class Jofemar extends Kernel {
75
+ #private;
76
+ __internal__: InternalJofemar;
77
+ __device: DeviceJofemar;
78
+ constructor({ filters, config_port, no_device, device_listen_on_channel, type, support_cart, socket, }?: ConstructorParamsJofemar);
79
+ set startChannelVerification(value: number | string);
80
+ set endChannelVerification(value: number | string);
81
+ set listenOnChannel(channel: number);
82
+ /**
83
+ * @deperecated
84
+ * @param {string|number} channel
85
+ */
86
+ set listenOnPort(channel: number);
87
+ set deviceType(type: TypeDevice);
88
+ set supportCart(support_cart: boolean);
89
+ serialSetConnectionConstant(listen_on_port?: number): string | Uint8Array<ArrayBufferLike> | string[];
90
+ serialMessage(code: string[] | Uint8Array<ArrayBufferLike> | string | ArrayBuffer): void;
91
+ productRemovedContinueDispensing(): void;
92
+ dispense({ selection, cart }?: {
93
+ selection?: number | undefined;
94
+ cart?: boolean | undefined;
95
+ }): Promise<import("./kernel").DispenseResponse>;
96
+ internalClearSensing(): void;
97
+ endDispense(): Promise<import("./kernel").DispenseResponse>;
98
+ collect(): Promise<void>;
99
+ resetSoldOutErrors(): Promise<void>;
100
+ resetWaitingProductRemovedError(): Promise<void>;
101
+ resetMachineErrors(): Promise<unknown>;
102
+ resetAllErrors(): Promise<unknown>;
103
+ status(): Promise<void>;
104
+ lightsOn(): Promise<void>;
105
+ lightsOff(): Promise<void>;
106
+ program(param1: number, param2: number): Promise<void>;
107
+ programDisplayLanguage({ language, }?: {
108
+ language?: 'spanish' | 'english' | 'french';
109
+ }): Promise<void>;
110
+ programBeeper({ enable }?: {
111
+ enable?: boolean | undefined;
112
+ }): Promise<void>;
113
+ programDisableWorkingTemperature(): Promise<void>;
114
+ programDisableThermometer(): Promise<void>;
115
+ programWorkingTemperature({ degrees }?: {
116
+ degrees?: number | undefined;
117
+ }): Promise<void>;
118
+ programIsolationTray({ tray }?: {
119
+ tray?: number | undefined;
120
+ }): Promise<void>;
121
+ programTimeToStandbyAfterCollect({ seconds }?: {
122
+ seconds?: number | undefined;
123
+ }): Promise<void>;
124
+ programTimeToStandbyWithoutCollect({ minutes }?: {
125
+ minutes?: number | undefined;
126
+ }): Promise<void>;
127
+ programElevatorSpeed({ speed, }?: {
128
+ speed?: 'low' | 'high';
129
+ }): Promise<void>;
130
+ programTemperatureExpiration({ enable }?: {
131
+ enable?: boolean | undefined;
132
+ }): Promise<void>;
133
+ programEnableTemperatureExpiration(): Promise<void>;
134
+ programDisableTemperatureExpiration(): Promise<void>;
135
+ programMachineAddress({ address }?: {
136
+ address?: number | undefined;
137
+ }): Promise<void>;
138
+ programTemperatureBeforeExpiration({ degrees }?: {
139
+ degrees?: number | undefined;
140
+ }): Promise<void>;
141
+ programTimeBeforeExpirationByTemperature({ minutes }?: {
142
+ minutes?: number | undefined;
143
+ }): Promise<void>;
144
+ programTemperatureScale({ scale, }?: {
145
+ scale?: 'celsius' | 'fahrenheit';
146
+ }): Promise<void>;
147
+ programVoltageEngine({ selection, voltage }?: {
148
+ selection?: number | undefined;
149
+ voltage?: number | undefined;
150
+ }): Promise<void>;
151
+ programPushOverProducts({ selection, enable }?: {
152
+ selection?: number | undefined;
153
+ enable?: boolean | undefined;
154
+ }): Promise<void>;
155
+ programChannelRunningAfterDispense({ selection, seconds }?: {
156
+ selection?: number | undefined;
157
+ seconds?: number | undefined;
158
+ }): Promise<void>;
159
+ checkData(type: number, aux?: number): Promise<void>;
160
+ getDisplayLanguage(): Promise<void>;
161
+ getBeeper(): Promise<void>;
162
+ getWorkingTemperature(): Promise<void>;
163
+ getIsolationTray(): Promise<void>;
164
+ getProgramVersion(): Promise<void>;
165
+ getFaults(): Promise<void>;
166
+ getMachineId(): Promise<void>;
167
+ getCurrentTemperature(): Promise<void>;
168
+ getTimeToStandbyAfterCollect(): Promise<void>;
169
+ getTimeToStandbyWithoutCollect(): Promise<void>;
170
+ getElevatorSpeed(): Promise<void>;
171
+ getTemperatureExpiration(): Promise<void>;
172
+ getTemperatureBeforeExpiration(): Promise<void>;
173
+ getTimeBeforeExpirationByTemperature(): Promise<void>;
174
+ getTemperatureScale(): Promise<void>;
175
+ getClockRegisters(): Promise<void>;
176
+ getMachineActivity(): Promise<void>;
177
+ getVoltageEngine({ selection }?: {
178
+ selection?: number | undefined;
179
+ }): Promise<void>;
180
+ getChannelPresence({ selection }?: {
181
+ selection?: number | undefined;
182
+ }): Promise<void>;
183
+ getPushOverProducts({ selection }?: {
184
+ selection?: number | undefined;
185
+ }): Promise<void>;
186
+ getChannelRunningAfterDispense({ selection }?: {
187
+ selection?: number | undefined;
188
+ }): Promise<void>;
189
+ setDisplayStandbyMessage({ message }?: {
190
+ message?: string | undefined;
191
+ }): Promise<void>;
192
+ setDisplayMessageTemporarily({ message, seconds }: {
193
+ message?: string | undefined;
194
+ seconds?: number | undefined;
195
+ }): Promise<void>;
196
+ setDisplayMessageUnlimited({ message }: {
197
+ message?: string | undefined;
198
+ }): Promise<void>;
199
+ programClock({ date }?: {
200
+ date?: Date | undefined;
201
+ }): Promise<void>;
202
+ eventsConfig({ event, enable }?: {
203
+ event?: null | undefined;
204
+ enable?: boolean | undefined;
205
+ }): Promise<void>;
206
+ eventEnable({ event }?: {
207
+ event?: null | undefined;
208
+ }): Promise<void>;
209
+ eventDisable({ event }?: {
210
+ event?: null | undefined;
211
+ }): Promise<void>;
212
+ sendCustomCode({ code }?: {
213
+ code: any;
214
+ }): Promise<void>;
215
+ assignChannels(): Promise<unknown>;
216
+ }
217
+ export {};
218
+ //# sourceMappingURL=jofemar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jofemar.d.ts","sourceRoot":"","sources":["../../lib/serial/jofemar.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,137 @@
1
+ import { Core } from 'webserial-core';
2
+ export interface ConstructorParams {
3
+ filters?: SerialPortFilter[] | null;
4
+ config_port?: SerialOptions;
5
+ no_device?: number;
6
+ device_listen_on_channel?: number | string;
7
+ bypassSerialBytesConnection?: boolean;
8
+ socket?: boolean;
9
+ }
10
+ export interface DispenseResponse {
11
+ error: string | null;
12
+ status: boolean;
13
+ }
14
+ interface LastError {
15
+ message: string | null;
16
+ action: string | null;
17
+ code: string | Uint8Array | Array<string> | Array<number> | null | number;
18
+ no_code: number;
19
+ }
20
+ interface DeviceData {
21
+ type: string;
22
+ id: string;
23
+ listen_on_port: number | null;
24
+ door_open: boolean;
25
+ }
26
+ type SerialResponseAs = 'hex' | 'uint8' | 'string' | 'arraybuffer';
27
+ interface SerialResponse {
28
+ length: number | null;
29
+ buffer: Uint8Array;
30
+ as: SerialResponseAs;
31
+ replacer: RegExp | string;
32
+ limiter: null | string | RegExp;
33
+ prefixLimiter: boolean;
34
+ sufixLimiter: boolean;
35
+ delimited: boolean;
36
+ }
37
+ interface QueueData {
38
+ bytes: string | Uint8Array | Array<string> | Array<number>;
39
+ action: string;
40
+ }
41
+ type ParserSocketPort = {
42
+ name: 'byte-length' | 'inter-byte-timeout';
43
+ length?: number;
44
+ interval?: number;
45
+ };
46
+ type PortInfo = {
47
+ path: string | null;
48
+ vendorId: number | string | null;
49
+ productId: number | string | null;
50
+ parser: ParserSocketPort;
51
+ };
52
+ type SerialData = {
53
+ socket: boolean;
54
+ portInfo: PortInfo;
55
+ aux_connecting: string;
56
+ connecting: boolean;
57
+ connected: boolean;
58
+ port: SerialPort | null;
59
+ last_action: string | null;
60
+ response: SerialResponse;
61
+ reader: ReadableStreamDefaultReader<Uint8Array> | null;
62
+ input_done: Promise<void> | null;
63
+ output_done: Promise<void> | null;
64
+ input_stream: ReadableStream<Uint8Array> | null;
65
+ output_stream: WritableStream<Uint8Array> | null;
66
+ keep_reading: boolean;
67
+ time_until_send_bytes: number | undefined | ReturnType<typeof setTimeout>;
68
+ delay_first_connection: number;
69
+ bytes_connection: string | Uint8Array | string[] | number[] | null;
70
+ filters: SerialPortFilter[];
71
+ config_port: SerialOptions;
72
+ queue: QueueData[];
73
+ running_queue: boolean;
74
+ auto_response: any;
75
+ free_timeout_ms: number;
76
+ useRTSCTS: boolean;
77
+ };
78
+ interface TimeResponse {
79
+ response_connection: number;
80
+ response_engines: number;
81
+ response_general: number;
82
+ sense: number;
83
+ }
84
+ interface Timeout {
85
+ until_response: number | ReturnType<typeof setTimeout>;
86
+ }
87
+ interface InternalIntervals {
88
+ reconnection: number;
89
+ waiting_sense: number;
90
+ }
91
+ export interface Internal {
92
+ bypassSerialBytesConnection: boolean;
93
+ auto_response: boolean;
94
+ device_number: number;
95
+ aux_port_connector: number;
96
+ last_error: LastError;
97
+ serial: SerialData;
98
+ device: DeviceData;
99
+ time: TimeResponse;
100
+ timeout: Timeout;
101
+ interval: InternalIntervals;
102
+ dispense: {
103
+ must_response: boolean;
104
+ dispensing: boolean;
105
+ status: boolean | null | 'no-response' | 'elevator-locked';
106
+ counter: number;
107
+ limit_counter: number;
108
+ custom_limit_counter: number | null;
109
+ backup_dispense: Record<string, any>;
110
+ };
111
+ }
112
+ export declare class Kernel extends Core {
113
+ __internal__: Internal;
114
+ constructor(config?: ConstructorParams);
115
+ get isDoorOpen(): boolean;
116
+ get isDispensing(): number | boolean;
117
+ timeout(bytes: string | Uint8Array | Array<string> | Array<number>, event: string): Promise<void>;
118
+ internalClearSensing(): void;
119
+ internalDispensingProcess(): false | null;
120
+ internalDispenseStatus(): Promise<DispenseResponse>;
121
+ internalDispense(code: string | Uint8Array | string[] | number[]): Promise<DispenseResponse>;
122
+ __emulate(data: {
123
+ code: string[] | number[] | Uint8Array;
124
+ }): void;
125
+ /**
126
+ * @deprecated Use listenOnChannel instead
127
+ * @param {string|number} channel
128
+ */
129
+ set listenOnPort(channel: number);
130
+ /**
131
+ * @deprecated Use listenOnChannel instead
132
+ */
133
+ get listenOnPort(): number;
134
+ fixHexArray(array: Array<string> | Array<number>): string[];
135
+ }
136
+ export {};
137
+ //# sourceMappingURL=kernel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../../lib/serial/kernel.ts"],"names":[],"mappings":"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"}