react-native-flic2 2.0.0-alpha.39 → 2.0.0-beta.10

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.
@@ -4,6 +4,32 @@ import { TurboModuleRegistry } from 'react-native';
4
4
 
5
5
  // MARK: - Event Types
6
6
 
7
+ export let ScanResult = /*#__PURE__*/function (ScanResult) {
8
+ ScanResult[ScanResult["SUCCESS"] = 0] = "SUCCESS";
9
+ ScanResult[ScanResult["ALREADY_RUNNING"] = 1] = "ALREADY_RUNNING";
10
+ ScanResult[ScanResult["BLUETOOTH_NOT_ACTIVATED"] = 2] = "BLUETOOTH_NOT_ACTIVATED";
11
+ ScanResult[ScanResult["UNKNOWN"] = 3] = "UNKNOWN";
12
+ ScanResult[ScanResult["NO_PUBLIC_BUTTON_DISCOVERED"] = 4] = "NO_PUBLIC_BUTTON_DISCOVERED";
13
+ ScanResult[ScanResult["ALREADY_CONNECTED_TO_ANOTHER_DEVICE"] = 5] = "ALREADY_CONNECTED_TO_ANOTHER_DEVICE";
14
+ ScanResult[ScanResult["CONNECTION_TIMEOUT"] = 6] = "CONNECTION_TIMEOUT";
15
+ ScanResult[ScanResult["INVALID_VERIFIER"] = 7] = "INVALID_VERIFIER";
16
+ ScanResult[ScanResult["BLE_PAIRING_FAILED_PREVIOUS_PAIRING_ALREADY_EXISTING"] = 8] = "BLE_PAIRING_FAILED_PREVIOUS_PAIRING_ALREADY_EXISTING";
17
+ ScanResult[ScanResult["BLE_PAIRING_FAILED_USER_CANCELED"] = 9] = "BLE_PAIRING_FAILED_USER_CANCELED";
18
+ ScanResult[ScanResult["BLE_PAIRING_FAILED_UNKNOWN_REASON"] = 10] = "BLE_PAIRING_FAILED_UNKNOWN_REASON";
19
+ ScanResult[ScanResult["APP_CREDENTIALS_DONT_MATCH"] = 11] = "APP_CREDENTIALS_DONT_MATCH";
20
+ ScanResult[ScanResult["USER_CANCELED"] = 12] = "USER_CANCELED";
21
+ ScanResult[ScanResult["INVALID_BLUETOOTH_ADDRESS"] = 13] = "INVALID_BLUETOOTH_ADDRESS";
22
+ ScanResult[ScanResult["GENUINE_CHECK_FAILED"] = 14] = "GENUINE_CHECK_FAILED";
23
+ ScanResult[ScanResult["TOO_MANY_APPS"] = 15] = "TOO_MANY_APPS";
24
+ ScanResult[ScanResult["COULD_NOT_SET_BLUETOOTH_NOTIFY"] = 16] = "COULD_NOT_SET_BLUETOOTH_NOTIFY";
25
+ ScanResult[ScanResult["COULD_NOT_DISCOVER_BLUETOOTH_SERVICES"] = 17] = "COULD_NOT_DISCOVER_BLUETOOTH_SERVICES";
26
+ ScanResult[ScanResult["BUTTON_DISCONNECTED_DURING_VERIFICATION"] = 18] = "BUTTON_DISCONNECTED_DURING_VERIFICATION";
27
+ ScanResult[ScanResult["FAILED_TO_ESTABLISH"] = 19] = "FAILED_TO_ESTABLISH";
28
+ ScanResult[ScanResult["CONNECTION_LIMIT_REACHED"] = 20] = "CONNECTION_LIMIT_REACHED";
29
+ ScanResult[ScanResult["NOT_IN_PUBLIC_MODE"] = 21] = "NOT_IN_PUBLIC_MODE";
30
+ return ScanResult;
31
+ }({});
32
+
7
33
  // MARK: - Flic2 Types
8
34
 
9
35
  // MARK: - Mode Types
@@ -1 +1 @@
1
- {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeFlic2.ts"],"mappings":";;AAAA,SACEA,mBAAmB,QAGd,cAAc;;AAErB;;AA+CA;;AAsDA;;AAKA;;AA4CA,eAAeA,mBAAmB,CAACC,YAAY,CAAO,OAAO,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["TurboModuleRegistry","ScanResult","getEnforcing"],"sourceRoot":"../../src","sources":["NativeFlic2.ts"],"mappings":";;AAAA,SACEA,mBAAmB,QAGd,cAAc;;AAErB;;AASA,WAAYC,UAAU,0BAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;;AA+DtB;;AAgDA;;AAKA;;AAwCA,eAAeD,mBAAmB,CAACE,YAAY,CAAO,OAAO,CAAC","ignoreList":[]}
@@ -1,91 +1,263 @@
1
1
  "use strict";
2
2
 
3
+ import { TypedEmitter } from "./lib/typedEventEmitter.js";
3
4
  import NativeFlic2 from "./NativeFlic2.js";
5
+ class Flic2 {
6
+ isFlic2ManagerInitialized = false;
7
+ /**
8
+ * Constructor.
9
+ *
10
+ * @class
11
+ * @version 2.0.0
12
+ */
13
+ constructor() {
14
+ // create event emitter
15
+ this.eventEmitter = new TypedEmitter();
4
16
 
5
- // MARK: - Example Functions (keeping for compatibility)
17
+ // listen
18
+ NativeFlic2.onButtonEvent(this.onNativeButtonEvent.bind(this));
19
+ NativeFlic2.onManagerStateChange(this.onNativeManagerStateChange.bind(this));
20
+ NativeFlic2.onScanStatusChange(this.onNativeScanStatusChange.bind(this));
21
+ }
6
22
 
7
- export function multiply(a, b) {
8
- return NativeFlic2.multiply(a, b);
9
- }
10
- export const onMultiply = NativeFlic2.onMultiply;
23
+ // MARK: Public management methods
24
+ /**
25
+ * Initialize the Flic2 manager.
26
+ *
27
+ * @returns A promise that resolves when the Flic2 manager is initialized.
28
+ */
29
+ async initialize() {
30
+ // check if the Flic2 manager is already initialized
31
+ if (this.isInitialized()) {
32
+ throw new Error('Flic2 manager is already initialized');
33
+ }
11
34
 
12
- // MARK: - Manager Functions
35
+ // initialize the Flic2 manager in background
36
+ await NativeFlic2.initialize(true);
37
+ this.onInitialized();
38
+ }
13
39
 
14
- export function initialize(background) {
15
- return NativeFlic2.initialize(background);
16
- }
17
- export function getButtons() {
18
- return NativeFlic2.getButtons();
19
- }
20
- export function scanForButtons() {
21
- return NativeFlic2.scanForButtons();
22
- }
23
- export function stopScan() {
24
- return NativeFlic2.stopScan();
25
- }
26
- export function forgetButton(uuid) {
27
- return NativeFlic2.forgetButton(uuid);
28
- }
29
- export function connectAllKnownButtons() {
30
- return NativeFlic2.connectAllKnownButtons();
31
- }
32
- export function disconnectAllKnownButtons() {
33
- return NativeFlic2.disconnectAllKnownButtons();
34
- }
35
- export function forgetAllButtons() {
36
- return NativeFlic2.forgetAllButtons();
37
- }
38
- export function isScanning() {
39
- return NativeFlic2.isScanning();
40
- }
40
+ /**
41
+ * Scan for buttons.
42
+ *
43
+ * @returns A promise that resolves when the scan is started. Events will be emitted for the scan process.
44
+ */
45
+ startScan() {
46
+ return NativeFlic2.scanForButtons();
47
+ }
41
48
 
42
- // MARK: - Button Functions
49
+ /**
50
+ * Stop the scan.
51
+ *
52
+ * @returns A promise that resolves when the scan is stopped.
53
+ */
54
+ stopScan() {
55
+ return NativeFlic2.stopScan();
56
+ }
43
57
 
44
- export function connectButton(uuid) {
45
- return NativeFlic2.connectButton(uuid);
46
- }
47
- export function disconnectButton(uuid) {
48
- return NativeFlic2.disconnectButton(uuid);
49
- }
58
+ /**
59
+ * Called when the Flic2 manager is initialized.
60
+ */
61
+ onInitialized() {
62
+ this.isFlic2ManagerInitialized = true;
63
+ }
50
64
 
51
- /**
52
- * Sets the trigger mode for a button.
53
- *
54
- * @platform iOS
55
- * @param uuid - Button UUID
56
- * @param mode - Trigger mode (0-3)
57
- * @returns Promise that resolves on iOS, rejects with NOT_SUPPORTED_ON_ANDROID on Android
58
- *
59
- * **Note:** This feature is only available on iOS. On Android, this will reject due to
60
- * limitations in the Android Flic2 library v1.1.0+.
61
- */
62
- export function setTriggerMode(uuid, mode) {
63
- return NativeFlic2.setTriggerMode(uuid, mode);
64
- }
65
+ /**
66
+ * Check if the Flic2 manager is initialized.
67
+ *
68
+ * @returns True if the Flic2 manager is initialized, false otherwise.
69
+ */
70
+ isInitialized() {
71
+ return this.isFlic2ManagerInitialized;
72
+ }
65
73
 
66
- /**
67
- * Sets the latency mode for a button.
68
- *
69
- * @platform iOS
70
- * @param uuid - Button UUID
71
- * @param mode - Latency mode (0-1)
72
- * @returns Promise that resolves on iOS, rejects with NOT_SUPPORTED_ON_ANDROID on Android
73
- *
74
- * **Note:** This feature is only available on iOS. On Android, this will reject due to
75
- * limitations in the Android Flic2 library v1.1.0+.
76
- */
77
- export function setLatencyMode(uuid, mode) {
78
- return NativeFlic2.setLatencyMode(uuid, mode);
79
- }
80
- export function setNickname(uuid, nickname) {
81
- return NativeFlic2.setNickname(uuid, nickname);
82
- }
74
+ /**
75
+ * Connect all known buttons.
76
+ *
77
+ * @returns A promise that resolves when the all known buttons are connected.
78
+ */
79
+ connectAllKnownButtons() {
80
+ return NativeFlic2.connectAllKnownButtons();
81
+ }
82
+
83
+ /**
84
+ * Disconnect all known buttons.
85
+ *
86
+ * @returns A promise that resolves when the all known buttons are disconnected.
87
+ */
88
+ disconnectAllKnownButtons() {
89
+ return NativeFlic2.disconnectAllKnownButtons();
90
+ }
83
91
 
84
- // MARK: - Event Emitters
92
+ /**
93
+ * Forget all buttons.
94
+ *
95
+ * @returns A promise that resolves when the all buttons are forgotten.
96
+ */
97
+ forgetAllButtons() {
98
+ return NativeFlic2.forgetAllButtons();
99
+ }
100
+
101
+ /**
102
+ * Check if a scan is currently running.
103
+ *
104
+ * @returns A promise that resolves to true if scanning, false otherwise.
105
+ */
106
+ isScanning() {
107
+ return NativeFlic2.isScanning();
108
+ }
109
+
110
+ /**
111
+ * Forget a specific button by UUID.
112
+ *
113
+ * @param uuid - The UUID of the button to forget.
114
+ * @returns A promise that resolves when the button is forgotten.
115
+ */
116
+ forgetButton(uuid) {
117
+ return NativeFlic2.forgetButton(uuid);
118
+ }
119
+
120
+ // MARK: Public button methods
121
+ /**
122
+ * Connect a button.
123
+ *
124
+ * @param uuid - The UUID of the button to connect.
125
+ * @returns A promise that resolves with the button when the connection is initiated.
126
+ */
127
+ buttonConnect(uuid) {
128
+ return NativeFlic2.connectButton(uuid);
129
+ }
130
+
131
+ /**
132
+ * Disconnect a button.
133
+ *
134
+ * @param uuid - The UUID of the button to disconnect.
135
+ * @returns A promise that resolves with the button when the disconnection is initiated.
136
+ */
137
+ buttonDisconnect(uuid) {
138
+ return NativeFlic2.disconnectButton(uuid);
139
+ }
140
+
141
+ /**
142
+ * Set the trigger mode of a button.
143
+ *
144
+ * @param uuid - The UUID of the button to set the trigger mode of.
145
+ * @param mode - The trigger mode to set.
146
+ * @returns A promise that resolves with the button when the trigger mode is set.
147
+ */
148
+ buttonSetTriggerMode(uuid, mode) {
149
+ return NativeFlic2.setTriggerMode(uuid, mode);
150
+ }
151
+
152
+ /**
153
+ * Set the latency mode of a button.
154
+ *
155
+ * @param uuid - The UUID of the button to set the latency mode of.
156
+ * @param mode - The latency mode to set.
157
+ * @returns A promise that resolves with the button when the latency mode is set.
158
+ */
159
+ buttonSetLatencyMode(uuid, mode) {
160
+ return NativeFlic2.setLatencyMode(uuid, mode);
161
+ }
162
+
163
+ /**
164
+ * Set the nickname of a button.
165
+ *
166
+ * @param uuid - The UUID of the button to set the nickname of.
167
+ * @param nickname - The nickname to set.
168
+ * @returns A promise that resolves with the button when the nickname is set.
169
+ */
170
+ buttonSetNickname(uuid, nickname) {
171
+ return NativeFlic2.setNickname(uuid, nickname);
172
+ }
173
+
174
+ /**
175
+ * Get all buttons.
176
+ *
177
+ * @returns A promise that resolves with an array of FlicButton instances.
178
+ */
179
+ getButtons() {
180
+ return NativeFlic2.getButtons();
181
+ }
182
+
183
+ /**
184
+ * Get a button by UUID.
185
+ *
186
+ * @param uuid - The UUID of the button to get.
187
+ * @returns A promise that resolves with the FlicButton instance or null if the button is not found.
188
+ */
189
+ async getButton(uuid) {
190
+ const buttons = await NativeFlic2.getButtons();
191
+ const button = buttons.find(item => item.uuid === uuid);
192
+ return button ?? null;
193
+ }
194
+
195
+ /**
196
+ * Get the battery health status of a button.
197
+ *
198
+ * @param uuid - The UUID of the button to check.
199
+ * @returns A promise that resolves to true if battery is OK (voltage > 2.65V), false otherwise.
200
+ * @throws Error if the button is not found.
201
+ */
202
+ async getBatteryHealth(uuid) {
203
+ const button = await this.getButton(uuid);
204
+ if (!button) {
205
+ throw new Error(`Button with UUID ${uuid} not found`);
206
+ }
207
+ return this.isBatteryVoltageOk(button.batteryVoltage);
208
+ }
209
+
210
+ // MARK: Private Methods
211
+ /**
212
+ * Check if battery voltage is OK based on the 2.65V threshold.
213
+ *
214
+ * @param voltage - The battery voltage in volts.
215
+ * @returns True if voltage is above 2.65V (battery is OK), false otherwise.
216
+ */
217
+ isBatteryVoltageOk(voltage) {
218
+ return voltage * 1000 > 2650;
219
+ }
220
+
221
+ /**
222
+ * Called when a button event is received from the native side.
223
+ *
224
+ * @param event - The button event.
225
+ */
226
+ onNativeButtonEvent(event) {
227
+ // Enrich batteryUpdate events with batteryVoltageOk
228
+ if (event.event === 'batteryUpdate') {
229
+ const voltage = typeof event.voltage === 'number' ? event.voltage : event.button?.batteryVoltage;
230
+ const enrichedEvent = {
231
+ ...event,
232
+ batteryVoltageOk: this.isBatteryVoltageOk(voltage ?? 0)
233
+ };
234
+ this.eventEmitter.emit('buttonEvent', enrichedEvent);
235
+ return;
236
+ }
237
+ this.eventEmitter.emit('buttonEvent', event);
238
+ }
239
+
240
+ /**
241
+ * Called when a manager state change event is received from the native side.
242
+ *
243
+ * @param event - The manager state change event.
244
+ */
245
+ onNativeManagerStateChange(event) {
246
+ this.eventEmitter.emit('managerStateChange', event);
247
+ }
248
+
249
+ /**
250
+ * Called when a scan status change event is received from the native side.
251
+ *
252
+ * @param event - The scan status change event.
253
+ */
254
+ onNativeScanStatusChange(event) {
255
+ this.eventEmitter.emit('scanStatusChange', event);
256
+ }
257
+ }
85
258
 
86
- export const onManagerStateChange = NativeFlic2.onManagerStateChange;
87
- export const onScanStatusChange = NativeFlic2.onScanStatusChange;
88
- export const onButtonEvent = NativeFlic2.onButtonEvent;
259
+ // export as singleton
260
+ export default new Flic2();
89
261
 
90
- // MARK: - Re-export Types
262
+ // re-export types
91
263
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["NativeFlic2","multiply","a","b","onMultiply","initialize","background","getButtons","scanForButtons","stopScan","forgetButton","uuid","connectAllKnownButtons","disconnectAllKnownButtons","forgetAllButtons","isScanning","connectButton","disconnectButton","setTriggerMode","mode","setLatencyMode","setNickname","nickname","onManagerStateChange","onScanStatusChange","onButtonEvent"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAUA,OAAOA,WAAW,MAAM,kBAAe;;AAEvC;;AAEA,OAAO,SAASC,QAAQA,CAACC,CAAS,EAAEC,CAAS,EAAU;EACrD,OAAOH,WAAW,CAACC,QAAQ,CAACC,CAAC,EAAEC,CAAC,CAAC;AACnC;AAEA,OAAO,MAAMC,UAAU,GACrBJ,WAAW,CAACI,UAAsD;;AAEpE;;AAEA,OAAO,SAASC,UAAUA,CACxBC,UAAmB,EAC6B;EAChD,OAAON,WAAW,CAACK,UAAU,CAACC,UAAU,CAAC;AAC3C;AAEA,OAAO,SAASC,UAAUA,CAAA,EAA0B;EAClD,OAAOP,WAAW,CAACO,UAAU,CAAC,CAAC;AACjC;AAEA,OAAO,SAASC,cAAcA,CAAA,EAG3B;EACD,OAAOR,WAAW,CAACQ,cAAc,CAAC,CAAC;AACrC;AAEA,OAAO,SAASC,QAAQA,CAAA,EAAmD;EACzE,OAAOT,WAAW,CAACS,QAAQ,CAAC,CAAC;AAC/B;AAEA,OAAO,SAASC,YAAYA,CAC1BC,IAAY,EACoC;EAChD,OAAOX,WAAW,CAACU,YAAY,CAACC,IAAI,CAAC;AACvC;AAEA,OAAO,SAASC,sBAAsBA,CAAA,EAGnC;EACD,OAAOZ,WAAW,CAACY,sBAAsB,CAAC,CAAC;AAC7C;AAEA,OAAO,SAASC,yBAAyBA,CAAA,EAGtC;EACD,OAAOb,WAAW,CAACa,yBAAyB,CAAC,CAAC;AAChD;AAEA,OAAO,SAASC,gBAAgBA,CAAA,EAG7B;EACD,OAAOd,WAAW,CAACc,gBAAgB,CAAC,CAAC;AACvC;AAEA,OAAO,SAASC,UAAUA,CAAA,EAAqB;EAC7C,OAAOf,WAAW,CAACe,UAAU,CAAC,CAAC;AACjC;;AAEA;;AAEA,OAAO,SAASC,aAAaA,CAC3BL,IAAY,EACoC;EAChD,OAAOX,WAAW,CAACgB,aAAa,CAACL,IAAI,CAAC;AACxC;AAEA,OAAO,SAASM,gBAAgBA,CAC9BN,IAAY,EACoC;EAChD,OAAOX,WAAW,CAACiB,gBAAgB,CAACN,IAAI,CAAC;AAC3C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASO,cAAcA,CAC5BP,IAAY,EACZQ,IAAqB,EAC2B;EAChD,OAAOnB,WAAW,CAACkB,cAAc,CAACP,IAAI,EAAEQ,IAAI,CAAC;AAC/C;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,cAAcA,CAC5BT,IAAY,EACZQ,IAAqB,EAC2B;EAChD,OAAOnB,WAAW,CAACoB,cAAc,CAACT,IAAI,EAAEQ,IAAI,CAAC;AAC/C;AAEA,OAAO,SAASE,WAAWA,CACzBV,IAAY,EACZW,QAAgB,EACgC;EAChD,OAAOtB,WAAW,CAACqB,WAAW,CAACV,IAAI,EAAEW,QAAQ,CAAC;AAChD;;AAEA;;AAEA,OAAO,MAAMC,oBAAoB,GAC/BvB,WAAW,CAACuB,oBAA0E;AAExF,OAAO,MAAMC,kBAAkB,GAC7BxB,WAAW,CAACwB,kBAAsE;AAEpF,OAAO,MAAMC,aAAa,GACxBzB,WAAW,CAACyB,aAAuD;;AAErE","ignoreList":[]}
1
+ {"version":3,"names":["TypedEmitter","NativeFlic2","Flic2","isFlic2ManagerInitialized","constructor","eventEmitter","onButtonEvent","onNativeButtonEvent","bind","onManagerStateChange","onNativeManagerStateChange","onScanStatusChange","onNativeScanStatusChange","initialize","isInitialized","Error","onInitialized","startScan","scanForButtons","stopScan","connectAllKnownButtons","disconnectAllKnownButtons","forgetAllButtons","isScanning","forgetButton","uuid","buttonConnect","connectButton","buttonDisconnect","disconnectButton","buttonSetTriggerMode","mode","setTriggerMode","buttonSetLatencyMode","setLatencyMode","buttonSetNickname","nickname","setNickname","getButtons","getButton","buttons","button","find","item","getBatteryHealth","isBatteryVoltageOk","batteryVoltage","voltage","event","enrichedEvent","batteryVoltageOk","emit"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ export class TypedEmitter {
4
+ listeners = {};
5
+ on(event, fn) {
6
+ (this.listeners[event] ??= new Set()).add(fn);
7
+
8
+ // return shorthand for removing the listener
9
+ return {
10
+ remove: () => this.off(event, fn)
11
+ };
12
+ }
13
+ off(event, fn) {
14
+ this.listeners[event]?.delete(fn);
15
+ return this;
16
+ }
17
+ once(event, fn) {
18
+ const wrapped = (...args) => {
19
+ this.off(event, wrapped);
20
+ fn(...args);
21
+ };
22
+ return this.on(event, wrapped);
23
+ }
24
+ emit(event, ...args) {
25
+ const ls = this.listeners[event];
26
+ if (!ls || ls.size === 0) {
27
+ return false;
28
+ }
29
+ for (const fn of [...ls]) {
30
+ fn(...args);
31
+ }
32
+ return true;
33
+ }
34
+ clear() {
35
+ this.listeners = {};
36
+ return this;
37
+ }
38
+ }
39
+ //# sourceMappingURL=typedEventEmitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TypedEmitter","listeners","on","event","fn","Set","add","remove","off","delete","once","wrapped","args","emit","ls","size","clear"],"sourceRoot":"../../../src","sources":["lib/typedEventEmitter.ts"],"mappings":";;AAEA,OAAO,MAAMA,YAAY,CAAqB;EAEpCC,SAAS,GAAmC,CAAC,CAAC;EAEtDC,EAAEA,CAAoBC,KAAQ,EAAEC,EAAQ,EAA0B;IAEhE,CAAC,IAAI,CAACH,SAAS,CAACE,KAAK,CAAC,KAAK,IAAIE,GAAG,CAAC,CAAC,EAAEC,GAAG,CAACF,EAAE,CAAC;;IAE7C;IACA,OAAO;MAAEG,MAAM,EAAEA,CAAA,KAAM,IAAI,CAACC,GAAG,CAACL,KAAK,EAAEC,EAAE;IAAE,CAAC;EAE9C;EAEAI,GAAGA,CAAoBL,KAAQ,EAAEC,EAAQ,EAAQ;IAE/C,IAAI,CAACH,SAAS,CAACE,KAAK,CAAC,EAAEM,MAAM,CAACL,EAAE,CAAC;IACjC,OAAO,IAAI;EAEb;EAEAM,IAAIA,CAAoBP,KAAQ,EAAEC,EAAQ,EAA0B;IAElE,MAAMO,OAAa,GAAIA,CAAC,GAAGC,IAAsB,KAAK;MAEpD,IAAI,CAACJ,GAAG,CAACL,KAAK,EAAEQ,OAAO,CAAC;MACxBP,EAAE,CAAC,GAAGQ,IAAI,CAAC;IAEb,CAAU;IAEV,OAAO,IAAI,CAACV,EAAE,CAACC,KAAK,EAAEQ,OAAO,CAAC;EAEhC;EAEAE,IAAIA,CAAoBV,KAAQ,EAAE,GAAGS,IAAsB,EAAW;IAEpE,MAAME,EAAE,GAAG,IAAI,CAACb,SAAS,CAACE,KAAK,CAAC;IAEhC,IAAI,CAACW,EAAE,IAAIA,EAAE,CAACC,IAAI,KAAK,CAAC,EAAE;MAExB,OAAO,KAAK;IAEd;IAEA,KAAK,MAAMX,EAAE,IAAI,CAAC,GAAGU,EAAE,CAAC,EAAE;MAExBV,EAAE,CAAC,GAAGQ,IAAI,CAAC;IAEb;IAEA,OAAO,IAAI;EAEb;EAEAI,KAAKA,CAAA,EAAS;IAEZ,IAAI,CAACf,SAAS,GAAG,CAAC,CAAC;IACnB,OAAO,IAAI;EAEb;AAEF","ignoreList":[]}
@@ -1,26 +1,49 @@
1
1
  import { type TurboModule, type CodegenTypes } from 'react-native';
2
- export type MultiplyEvent = {
3
- a: number;
4
- b: number;
5
- result: number;
6
- };
7
2
  export type ManagerStateChangeEvent = {
8
3
  event: 'restored' | 'stateChanged';
9
4
  state?: number;
10
5
  stateName?: string;
11
6
  message?: string;
12
7
  };
8
+ export declare enum ScanResult {
9
+ SUCCESS = 0,
10
+ ALREADY_RUNNING = 1,
11
+ BLUETOOTH_NOT_ACTIVATED = 2,
12
+ UNKNOWN = 3,
13
+ NO_PUBLIC_BUTTON_DISCOVERED = 4,
14
+ ALREADY_CONNECTED_TO_ANOTHER_DEVICE = 5,
15
+ CONNECTION_TIMEOUT = 6,
16
+ INVALID_VERIFIER = 7,
17
+ BLE_PAIRING_FAILED_PREVIOUS_PAIRING_ALREADY_EXISTING = 8,
18
+ BLE_PAIRING_FAILED_USER_CANCELED = 9,
19
+ BLE_PAIRING_FAILED_UNKNOWN_REASON = 10,
20
+ APP_CREDENTIALS_DONT_MATCH = 11,
21
+ USER_CANCELED = 12,
22
+ INVALID_BLUETOOTH_ADDRESS = 13,
23
+ GENUINE_CHECK_FAILED = 14,
24
+ TOO_MANY_APPS = 15,
25
+ COULD_NOT_SET_BLUETOOTH_NOTIFY = 16,
26
+ COULD_NOT_DISCOVER_BLUETOOTH_SERVICES = 17,
27
+ BUTTON_DISCONNECTED_DURING_VERIFICATION = 18,
28
+ FAILED_TO_ESTABLISH = 19,
29
+ CONNECTION_LIMIT_REACHED = 20,
30
+ NOT_IN_PUBLIC_MODE = 21
31
+ }
32
+ export type ScanStatus = 'started' | 'completion';
13
33
  export type ScanStatusChangeEvent = {
14
- event: number;
15
- eventName: string;
34
+ event: ScanStatus;
35
+ eventName: ScanStatus;
36
+ result?: ScanResult;
16
37
  };
38
+ export type ButtonEventName = 'discovered' | 'connected' | 'ready' | 'disconnected' | 'connectionFailed' | 'buttonDown' | 'buttonUp' | 'click' | 'doubleClick' | 'hold' | 'unpaired' | 'batteryUpdate' | 'nicknameUpdate';
17
39
  export type ButtonEvent = {
18
40
  uuid: string;
19
- event: 'discovered' | 'connected' | 'ready' | 'disconnected' | 'connectionFailed' | 'buttonDown' | 'buttonUp' | 'click' | 'doubleClick' | 'hold' | 'unpaired' | 'batteryUpdate' | 'nicknameUpdate';
41
+ event: ButtonEventName;
20
42
  queued?: boolean;
21
43
  age?: number;
22
- voltage?: number;
23
44
  nickname?: string;
45
+ voltage?: number;
46
+ batteryVoltageOk?: boolean;
24
47
  error?: {
25
48
  code: number;
26
49
  message: string;
@@ -54,62 +77,23 @@ export type FlicManagerState = 'unknown' | 'resetting' | 'unsupported' | 'unauth
54
77
  export type FlicButtonState = 'disconnected' | 'connecting' | 'connected' | 'disconnecting';
55
78
  export type FlicTriggerMode = 'clickAndHold' | 'clickAndDoubleClick' | 'clickAndDoubleClickAndHold' | 'click';
56
79
  export type FlicLatencyMode = 'normal' | 'low';
57
- export type FlicScannerEvent = 'discovered' | 'connected' | 'verified' | 'verificationFailed';
58
80
  export type TriggerModeType = 0 | 1 | 2 | 3;
59
81
  export type LatencyModeType = 0 | 1;
60
82
  export interface Spec extends TurboModule {
61
- multiply(a: number, b: number): number;
62
- readonly onMultiply: CodegenTypes.EventEmitter<MultiplyEvent>;
63
- initialize(background: boolean): Promise<{
64
- success: boolean;
65
- message: string;
66
- }>;
83
+ initialize(background: boolean): Promise<void>;
67
84
  getButtons(): Promise<FlicButton[]>;
68
- scanForButtons(): Promise<{
69
- success: boolean;
70
- message: string;
71
- }>;
72
- stopScan(): Promise<{
73
- success: boolean;
74
- message: string;
75
- }>;
76
- forgetButton(uuid: string): Promise<{
77
- success: boolean;
78
- message: string;
79
- }>;
80
- connectAllKnownButtons(): Promise<{
81
- success: boolean;
82
- message: string;
83
- }>;
84
- disconnectAllKnownButtons(): Promise<{
85
- success: boolean;
86
- message: string;
87
- }>;
88
- forgetAllButtons(): Promise<{
89
- success: boolean;
90
- message: string;
91
- }>;
85
+ scanForButtons(): Promise<void>;
86
+ stopScan(): Promise<void>;
87
+ forgetButton(uuid: string): Promise<void>;
88
+ connectAllKnownButtons(): Promise<void>;
89
+ disconnectAllKnownButtons(): Promise<void>;
90
+ forgetAllButtons(): Promise<void>;
92
91
  isScanning(): Promise<boolean>;
93
- connectButton(uuid: string): Promise<{
94
- success: boolean;
95
- message: string;
96
- }>;
97
- disconnectButton(uuid: string): Promise<{
98
- success: boolean;
99
- message: string;
100
- }>;
101
- setTriggerMode(uuid: string, mode: TriggerModeType): Promise<{
102
- success: boolean;
103
- message: string;
104
- }>;
105
- setLatencyMode(uuid: string, mode: LatencyModeType): Promise<{
106
- success: boolean;
107
- message: string;
108
- }>;
109
- setNickname(uuid: string, nickname: string): Promise<{
110
- success: boolean;
111
- message: string;
112
- }>;
92
+ connectButton(uuid: string): Promise<FlicButton>;
93
+ disconnectButton(uuid: string): Promise<FlicButton>;
94
+ setTriggerMode(uuid: string, mode: number): Promise<FlicButton>;
95
+ setLatencyMode(uuid: string, mode: number): Promise<FlicButton>;
96
+ setNickname(uuid: string, nickname: string): Promise<FlicButton>;
113
97
  readonly onManagerStateChange: CodegenTypes.EventEmitter<ManagerStateChangeEvent>;
114
98
  readonly onScanStatusChange: CodegenTypes.EventEmitter<ScanStatusChangeEvent>;
115
99
  readonly onButtonEvent: CodegenTypes.EventEmitter<ButtonEvent>;
@@ -1 +1 @@
1
- {"version":3,"file":"NativeFlic2.d.ts","sourceRoot":"","sources":["../../../src/NativeFlic2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NativeFlic2.d.ts","sourceRoot":"","sources":["../../../src/NativeFlic2.ts"],"names":[],"mappings":"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"}