zigbee-herdsman 0.33.9 → 0.34.2
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/.github/workflows/ci.yml +2 -2
- package/.release-please-manifest.json +1 -1
- package/CHANGELOG.md +27 -0
- package/dist/adapter/adapter.d.ts.map +1 -1
- package/dist/adapter/adapter.js +2 -1
- package/dist/adapter/adapter.js.map +1 -1
- package/dist/adapter/ember/adapter/emberAdapter.d.ts +818 -0
- package/dist/adapter/ember/adapter/emberAdapter.d.ts.map +1 -0
- package/dist/adapter/ember/adapter/emberAdapter.js +2991 -0
- package/dist/adapter/ember/adapter/emberAdapter.js.map +1 -0
- package/dist/adapter/ember/adapter/endpoints.d.ts +25 -0
- package/dist/adapter/ember/adapter/endpoints.d.ts.map +1 -0
- package/dist/adapter/ember/adapter/endpoints.js +66 -0
- package/dist/adapter/ember/adapter/endpoints.js.map +1 -0
- package/dist/adapter/ember/adapter/index.d.ts +3 -0
- package/dist/adapter/ember/adapter/index.d.ts.map +1 -0
- package/dist/adapter/ember/adapter/index.js +6 -0
- package/dist/adapter/ember/adapter/index.js.map +1 -0
- package/dist/adapter/ember/adapter/oneWaitress.d.ts +97 -0
- package/dist/adapter/ember/adapter/oneWaitress.d.ts.map +1 -0
- package/dist/adapter/ember/adapter/oneWaitress.js +226 -0
- package/dist/adapter/ember/adapter/oneWaitress.js.map +1 -0
- package/dist/adapter/ember/adapter/requestQueue.d.ts +59 -0
- package/dist/adapter/ember/adapter/requestQueue.d.ts.map +1 -0
- package/dist/adapter/ember/adapter/requestQueue.js +144 -0
- package/dist/adapter/ember/adapter/requestQueue.js.map +1 -0
- package/dist/adapter/ember/adapter/tokensManager.d.ts +69 -0
- package/dist/adapter/ember/adapter/tokensManager.d.ts.map +1 -0
- package/dist/adapter/ember/adapter/tokensManager.js +685 -0
- package/dist/adapter/ember/adapter/tokensManager.js.map +1 -0
- package/dist/adapter/ember/consts.d.ts +198 -0
- package/dist/adapter/ember/consts.d.ts.map +1 -0
- package/dist/adapter/ember/consts.js +253 -0
- package/dist/adapter/ember/consts.js.map +1 -0
- package/dist/adapter/ember/enums.d.ts +2184 -0
- package/dist/adapter/ember/enums.d.ts.map +1 -0
- package/dist/adapter/ember/enums.js +2391 -0
- package/dist/adapter/ember/enums.js.map +1 -0
- package/dist/adapter/ember/ezsp/buffalo.d.ts +156 -0
- package/dist/adapter/ember/ezsp/buffalo.d.ts.map +1 -0
- package/dist/adapter/ember/ezsp/buffalo.js +1033 -0
- package/dist/adapter/ember/ezsp/buffalo.js.map +1 -0
- package/dist/adapter/ember/ezsp/consts.d.ts +116 -0
- package/dist/adapter/ember/ezsp/consts.d.ts.map +1 -0
- package/dist/adapter/ember/ezsp/consts.js +128 -0
- package/dist/adapter/ember/ezsp/consts.js.map +1 -0
- package/dist/adapter/ember/ezsp/enums.d.ts +879 -0
- package/dist/adapter/ember/ezsp/enums.d.ts.map +1 -0
- package/dist/adapter/ember/ezsp/enums.js +948 -0
- package/dist/adapter/ember/ezsp/enums.js.map +1 -0
- package/dist/adapter/ember/ezsp/ezsp.d.ts +2664 -0
- package/dist/adapter/ember/ezsp/ezsp.d.ts.map +1 -0
- package/dist/adapter/ember/ezsp/ezsp.js +6449 -0
- package/dist/adapter/ember/ezsp/ezsp.js.map +1 -0
- package/dist/adapter/ember/types.d.ts +733 -0
- package/dist/adapter/ember/types.d.ts.map +1 -0
- package/dist/adapter/ember/types.js +3 -0
- package/dist/adapter/ember/types.js.map +1 -0
- package/dist/adapter/ember/uart/ash.d.ts +443 -0
- package/dist/adapter/ember/uart/ash.d.ts.map +1 -0
- package/dist/adapter/ember/uart/ash.js +1567 -0
- package/dist/adapter/ember/uart/ash.js.map +1 -0
- package/dist/adapter/ember/uart/consts.d.ts +91 -0
- package/dist/adapter/ember/uart/consts.d.ts.map +1 -0
- package/dist/adapter/ember/uart/consts.js +100 -0
- package/dist/adapter/ember/uart/consts.js.map +1 -0
- package/dist/adapter/ember/uart/enums.d.ts +191 -0
- package/dist/adapter/ember/uart/enums.d.ts.map +1 -0
- package/dist/adapter/ember/uart/enums.js +197 -0
- package/dist/adapter/ember/uart/enums.js.map +1 -0
- package/dist/adapter/ember/uart/parser.d.ts +10 -0
- package/dist/adapter/ember/uart/parser.d.ts.map +1 -0
- package/dist/adapter/ember/uart/parser.js +41 -0
- package/dist/adapter/ember/uart/parser.js.map +1 -0
- package/dist/adapter/ember/uart/queues.d.ts +85 -0
- package/dist/adapter/ember/uart/queues.d.ts.map +1 -0
- package/dist/adapter/ember/uart/queues.js +212 -0
- package/dist/adapter/ember/uart/queues.js.map +1 -0
- package/dist/adapter/ember/uart/writer.d.ts +15 -0
- package/dist/adapter/ember/uart/writer.d.ts.map +1 -0
- package/dist/adapter/ember/uart/writer.js +48 -0
- package/dist/adapter/ember/uart/writer.js.map +1 -0
- package/dist/adapter/ember/utils/initters.d.ts +20 -0
- package/dist/adapter/ember/utils/initters.d.ts.map +1 -0
- package/dist/adapter/ember/utils/initters.js +58 -0
- package/dist/adapter/ember/utils/initters.js.map +1 -0
- package/dist/adapter/ember/utils/math.d.ts +51 -0
- package/dist/adapter/ember/utils/math.d.ts.map +1 -0
- package/dist/adapter/ember/utils/math.js +102 -0
- package/dist/adapter/ember/utils/math.js.map +1 -0
- package/dist/adapter/ember/zdo.d.ts +921 -0
- package/dist/adapter/ember/zdo.d.ts.map +1 -0
- package/dist/adapter/ember/zdo.js +723 -0
- package/dist/adapter/ember/zdo.js.map +1 -0
- package/dist/adapter/ezsp/adapter/ezspAdapter.d.ts.map +1 -1
- package/dist/adapter/ezsp/adapter/ezspAdapter.js +28 -22
- package/dist/adapter/ezsp/adapter/ezspAdapter.js.map +1 -1
- package/dist/adapter/ezsp/driver/driver.d.ts +1 -2
- package/dist/adapter/ezsp/driver/driver.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/driver.js +21 -21
- package/dist/adapter/ezsp/driver/driver.js.map +1 -1
- package/dist/adapter/ezsp/driver/ezsp.d.ts +2 -0
- package/dist/adapter/ezsp/driver/ezsp.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/ezsp.js +24 -5
- package/dist/adapter/ezsp/driver/ezsp.js.map +1 -1
- package/dist/adapter/ezsp/driver/parser.d.ts +1 -2
- package/dist/adapter/ezsp/driver/parser.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/parser.js +29 -40
- package/dist/adapter/ezsp/driver/parser.js.map +1 -1
- package/dist/adapter/ezsp/driver/uart.d.ts +1 -0
- package/dist/adapter/ezsp/driver/uart.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/uart.js +38 -13
- package/dist/adapter/ezsp/driver/uart.js.map +1 -1
- package/dist/adapter/ezsp/driver/writer.d.ts.map +1 -1
- package/dist/adapter/ezsp/driver/writer.js +10 -13
- package/dist/adapter/ezsp/driver/writer.js.map +1 -1
- package/dist/adapter/tstype.d.ts +1 -1
- package/dist/adapter/tstype.d.ts.map +1 -1
- package/dist/utils/backup.d.ts.map +1 -1
- package/dist/utils/backup.js +4 -0
- package/dist/utils/backup.js.map +1 -1
- package/package.json +1 -1
|
@@ -295,6 +295,7 @@ class Ezsp extends events_1.EventEmitter {
|
|
|
295
295
|
queue;
|
|
296
296
|
watchdogTimer;
|
|
297
297
|
failures = 0;
|
|
298
|
+
inResetingProcess = false;
|
|
298
299
|
constructor() {
|
|
299
300
|
super();
|
|
300
301
|
this.queue = new utils_1.Queue();
|
|
@@ -305,6 +306,10 @@ class Ezsp extends events_1.EventEmitter {
|
|
|
305
306
|
}
|
|
306
307
|
async connect(options) {
|
|
307
308
|
let lastError = null;
|
|
309
|
+
const resetForReconnect = () => {
|
|
310
|
+
throw new Error("Failure to connect");
|
|
311
|
+
};
|
|
312
|
+
this.serialDriver.on('reset', resetForReconnect);
|
|
308
313
|
for (let i = 1; i <= MAX_SERIAL_CONNECT_ATTEMPTS; i++) {
|
|
309
314
|
try {
|
|
310
315
|
await this.serialDriver.connect(options);
|
|
@@ -319,21 +324,29 @@ class Ezsp extends events_1.EventEmitter {
|
|
|
319
324
|
lastError = error;
|
|
320
325
|
}
|
|
321
326
|
}
|
|
327
|
+
this.serialDriver.off('reset', resetForReconnect);
|
|
322
328
|
if (!this.serialDriver.isInitialized()) {
|
|
323
329
|
throw new Error("Failure to connect", { cause: lastError });
|
|
324
330
|
}
|
|
331
|
+
this.inResetingProcess = false;
|
|
325
332
|
this.serialDriver.on('reset', this.onSerialReset.bind(this));
|
|
326
333
|
if (WATCHDOG_WAKE_PERIOD) {
|
|
327
334
|
this.watchdogTimer = setInterval(this.watchdogHandler.bind(this), WATCHDOG_WAKE_PERIOD * 1000);
|
|
328
335
|
}
|
|
329
336
|
}
|
|
337
|
+
isInitialized() {
|
|
338
|
+
return this.serialDriver?.isInitialized();
|
|
339
|
+
}
|
|
330
340
|
onSerialReset() {
|
|
331
341
|
debug.log('onSerialReset()');
|
|
342
|
+
this.inResetingProcess = true;
|
|
332
343
|
this.emit('reset');
|
|
333
344
|
}
|
|
334
345
|
onSerialClose() {
|
|
335
346
|
debug.log('onSerialClose()');
|
|
336
|
-
this.
|
|
347
|
+
if (!this.inResetingProcess) {
|
|
348
|
+
this.emit('close');
|
|
349
|
+
}
|
|
337
350
|
}
|
|
338
351
|
async close(emitClose) {
|
|
339
352
|
debug.log('Closing Ezsp');
|
|
@@ -616,15 +629,21 @@ class Ezsp extends events_1.EventEmitter {
|
|
|
616
629
|
}
|
|
617
630
|
async watchdogHandler() {
|
|
618
631
|
debug.log(`Time to watchdog ... ${this.failures}`);
|
|
632
|
+
if (this.inResetingProcess) {
|
|
633
|
+
debug.log('The reset process is in progress...');
|
|
634
|
+
return;
|
|
635
|
+
}
|
|
619
636
|
try {
|
|
620
637
|
await this.execCommand('nop');
|
|
621
638
|
}
|
|
622
639
|
catch (error) {
|
|
623
640
|
debug.error(`Watchdog heartbeat timeout ${error.stack}`);
|
|
624
|
-
this.
|
|
625
|
-
|
|
626
|
-
this.failures
|
|
627
|
-
|
|
641
|
+
if (!this.inResetingProcess) {
|
|
642
|
+
this.failures += 1;
|
|
643
|
+
if (this.failures > MAX_WATCHDOG_FAILURES) {
|
|
644
|
+
this.failures = 0;
|
|
645
|
+
this.emit('reset');
|
|
646
|
+
}
|
|
628
647
|
}
|
|
629
648
|
}
|
|
630
649
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ezsp.js","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/ezsp.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ezsp.js","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/ezsp.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0BAA0B;AAC1B,sEAAsE;AACtE,2CAA6B;AAC7B,iCAAoC;AACpC,yCASoB;AACpB,yCASuB;AACvB,mCAAoC;AAEpC,0CAAqD;AACrD,kDAA0B;AAI1B,MAAM,KAAK,GAAG;IACV,KAAK,EAAE,IAAA,eAAK,EAAC,mCAAmC,CAAC;IACjD,GAAG,EAAE,IAAA,eAAK,EAAC,mCAAmC,CAAC;CAClD,CAAC;AAGF,MAAM,2BAA2B,GAAG,CAAC,CAAC;AACtC,0FAA0F;AAC1F,MAAM,oCAAoC,GAAG,IAAI,CAAC;AAClD,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B,MAAM,0BAA0B,GAAG,CAAC,CAAC;AACrC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AACvC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAChC,uCAAuC;AACvC,MAAM,oBAAoB,GAAG,EAAE,CAAC,CAAE,SAAS;AAC3C,4FAA4F;AAC5F,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAE3C,MAAM,iBAAiB,GAAe;IAClC,CAAC,oBAAY,CAAC,gDAAgD,EAAE,EAAE,CAAC;IACnE,CAAC,oBAAY,CAAC,sCAAsC,EAAE,CAAC,CAAC;IACxD,8CAA8C;IAC9C,CAAC,oBAAY,CAAC,wBAAwB,EAAE,EAAE,CAAC;IAC3C,CAAC,oBAAY,CAAC,uCAAuC,EAAE,CAAC,CAAC;IACzD,oDAAoD;IACpD,+CAA+C;IAC/C,CAAC,oBAAY,CAAC,4BAA4B;QACtC,kCAA0B,CAAC,oCAAoC;YAC/D,kCAA0B,CAAC,mCAAmC,CAAC;IACnE,CAAC,oBAAY,CAAC,oCAAoC,EAAE,IAAI,CAAC;IACzD,CAAC,oBAAY,CAAC,8BAA8B,EAAE,EAAE,CAAC;IACjD,CAAC,oBAAY,CAAC,qBAAqB,EAAE,CAAC,CAAC;IACvC,CAAC,oBAAY,CAAC,oBAAoB,EAAE,CAAC,CAAC;IACtC,yCAAyC;IACzC,CAAC,oBAAY,CAAC,2BAA2B,EAAE,CAAC,CAAC;IAC7C,gDAAgD;IAChD,6CAA6C;IAC7C,+CAA+C;IAC/C,2CAA2C;IAC3C,+CAA+C;IAC/C,8CAA8C;IAC9C,uDAAuD;IACvD,iDAAiD;IACjD,qCAAqC;IACrC,oDAAoD;IACpD,CAAC,oBAAY,CAAC,0BAA0B,EAAE,GAAG,CAAC;CACjD,CAAC;AAEF;;;GAGG;AACH,MAAM,kBAAkB,GAAe;IACnC,CAAC,oBAAY,CAAC,gDAAgD,EAAE,EAAE,CAAC;IACnE,CAAC,oBAAY,CAAC,wBAAwB,EAAE,EAAE,CAAC;IAC3C,CAAC,oBAAY,CAAC,uCAAuC,EAAE,CAAC,CAAC;IACzD,CAAC,oBAAY,CAAC,4BAA4B;QACtC,kCAA0B,CAAC,oCAAoC;YAC/D,kCAA0B,CAAC,mCAAmC,CAAC;IACnE,CAAC,oBAAY,CAAC,oCAAoC,EAAE,IAAI,CAAC;IACzD,CAAC,oBAAY,CAAC,8BAA8B,EAAE,EAAE,CAAC;IACjD,CAAC,oBAAY,CAAC,qBAAqB,EAAE,CAAC,CAAC;IACvC,CAAC,oBAAY,CAAC,oBAAoB,EAAE,CAAC,CAAC;IACtC,CAAC,oBAAY,CAAC,2BAA2B,EAAE,CAAC,CAAC;CAChD,CAAC;AAEF,MAAM,iBAAiB,GAAe;IAClC,6CAA6C;IAC7C,qDAAqD;IACrD,oFAAoF;IACpF,0EAA0E;IAC1E,qDAAqD;IACrD,oDAAoD;IACpD,gDAAgD;IAChD,+DAA+D;IAC/D,yDAAyD;IACzD,qFAAqF;IACrF,CAAC,oBAAY,CAAC,sBAAsB,EAAE,sBAAc,CAAC,qBAAqB,CAAC;IAC3E,CAAC,oBAAY,CAAC,qBAAqB,EAAE,sBAAc,CAAC,qBAAqB,CAAC;CAC7E,CAAC;AAEF,MAAM,kBAAkB,GAAe;IACnC,CAAC,oBAAY,CAAC,sBAAsB,EAAE,sBAAc,CAAC,qBAAqB,CAAC;IAC3E,CAAC,oBAAY,CAAC,qBAAqB,EAAE,sBAAc,CAAC,qBAAqB,CAAC;IAC1E,CAAC,oBAAY,CAAC,mBAAmB,EAAE,2BAAmB,CAAC,uBAAuB,GAAG,2BAAmB,CAAC,WAAW,CAAC;CACpH,CAAC;AAgBF,MAAa,aAAa;IACtB,KAAK,CAAS;IACd,IAAI,CAAS;IACb,WAAW,CAAU;IAIrB,MAAM,CAAC,WAAW,CACd,KAAa,EAAE,QAAgB,EAAE,SAAkB,EAAE,MAA2B;QAEhF,MAAM,KAAK,GAAG,4BAAiB,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,8BAA8B,QAAQ,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,GAAkB,CAAC;QACvB,KAAK,CAAC,KAAK,CAAC,CAAC,SAAS,EAAC,EAAE;YACrB,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACpD,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;gBAC3F,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,IAAI,CAAC;gBACD,GAAG,GAAG,IAAI,aAAa,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YAC1D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,KAAK,CAAC,KAAK,CAAC,SAAS,SAAS,mBAAmB,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;gBAChE,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACf,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,IAAY;QACxB,MAAM,SAAS,GAAG,iBAAM,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,IAAI,EAAE,CAAC,CAAC;QAC3E,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,YAAY,GAAW,EAAE,SAAkB,EAAE,MAA2B;QACpE,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,iBAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAElC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;QAClF,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,IAAI,IAAI,GAAG,MAAM,CAAC;YAClB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvD,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;YAC5E,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvD,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;QACL,CAAC;IACL,CAAC;IAED,SAAS;QACL,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;QAClF,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;YACvD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;CACJ;AAzED,sCAyEC;AAGD,MAAa,uBAAuB;IAChC,KAAK,CAAS;IACd,IAAI,CAAS;IACb,WAAW,CAAU;IAIrB,MAAM,CAAC,QAAQ,CAAC,GAAkB;QAC9B,MAAM,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,gCAAqB,CAAC,GAAG,CAAC,CAAC;QACzE,MAAM,SAAS,GAAG,sBAAW,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,GAAG,EAAE,CAAC,CAAC;QAC7E,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,YAAY,GAAkB,EAAE,SAAkB,EAAE,MAA2B;QAC3E,IAAI,OAAO,GAAG,IAAI,QAAQ,EAAE,CAAC;YACzB,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;YACjB,IAAI,CAAC,IAAI,GAAG,sBAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAC3C,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;YAChB,IAAI,CAAC,KAAK,GAAG,gCAAqB,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,MAAM,KAAK,GAAG,uBAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACpD,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;QAClF,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,IAAI,IAAI,GAAG,MAAM,CAAC;YAClB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvD,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;YAC5E,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvD,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;QACL,CAAC;IACL,CAAC;IAED,SAAS;QACL,MAAM,KAAK,GAAG,uBAAuB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;QAClF,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;YACvD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;CACJ;AAvDD,0DAuDC;AAED,MAAa,wBAAwB;IACjC,KAAK,CAAS;IACd,IAAI,CAAS;IAIb,MAAM,CAAC,QAAQ,CAAC,GAAkB;QAC9B,MAAM,IAAI,GAAG,CAAC,OAAO,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,iCAAsB,CAAC,GAAG,CAAC,CAAC;QAC1E,MAAM,SAAS,GAAG,uBAAY,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,GAAG,EAAE,CAAC,CAAC;QAC7E,OAAO,SAAS,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED,YAAY,GAAkB,EAAE,MAA2B;QACvD,IAAI,OAAO,GAAG,IAAI,QAAQ,EAAE,CAAC;YACzB,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;YACjB,IAAI,CAAC,IAAI,GAAG,uBAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QAC5C,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;YAChB,IAAI,CAAC,KAAK,GAAG,iCAAsB,CAAC,GAAG,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,SAAS,GAAG,wBAAwB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACzD,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,IAAI,IAAI,GAAG,MAAM,CAAC;YAClB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvD,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;YAC5E,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvD,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;QACL,CAAC;IACL,CAAC;IAED,SAAS;QACL,MAAM,SAAS,GAAG,wBAAwB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;YACvD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;CACJ;AAnDD,4DAmDC;AAGD,MAAa,IAAK,SAAQ,qBAAY;IAClC,KAAK,GAAG,CAAC,CAAC;IACV,MAAM,GAAG,CAAC,CAAC,CAAE,mBAAmB;IAChC,gEAAgE;IAChE,uFAAuF;IAC/E,YAAY,CAAe;IAC3B,QAAQ,CAA2C;IACnD,KAAK,CAAQ;IACb,aAAa,CAAiB;IAC9B,QAAQ,GAAG,CAAC,CAAC;IACb,iBAAiB,GAAG,KAAK,CAAC;IAElC;QACI,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,IAAI,aAAK,EAAE,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAQ,CACxB,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAE3D,IAAI,CAAC,YAAY,GAAG,IAAI,mBAAY,EAAE,CAAC;QACvC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAClE,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACjE,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,OAA0B;QAC3C,IAAI,SAAS,GAAG,IAAI,CAAC;QAErB,MAAM,iBAAiB,GAAG,GAAS,EAAE;YACjC,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC1C,CAAC,CAAC;QACF,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;QAEjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,2BAA2B,EAAE,CAAC,EAAE,EAAE,CAAC;YACpD,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACzC,MAAM;YACV,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,KAAK,CAAC,KAAK,CAAC,sBAAsB,CAAC,WAAW,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;gBAE7D,IAAI,CAAC,GAAG,2BAA2B,EAAE,CAAC;oBAClC,MAAM,IAAA,YAAI,EAAC,oCAAoC,GAAG,CAAC,CAAC,CAAC;oBACrD,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAC,CAAC,EAAE,CAAC,CAAC;gBACrC,CAAC;gBAED,SAAS,GAAG,KAAK,CAAC;YACtB,CAAC;QACL,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;QAElD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,oBAAoB,EAAE,EAAC,KAAK,EAAE,SAAS,EAAC,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;QAE/B,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE7D,IAAI,oBAAoB,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,GAAG,WAAW,CAC5B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAC/B,oBAAoB,GAAC,IAAI,CAC5B,CAAC;QACN,CAAC;IACL,CAAC;IAEM,aAAa;QAChB,OAAO,IAAI,CAAC,YAAY,EAAE,aAAa,EAAE,CAAC;IAC9C,CAAC;IAEO,aAAa;QACjB,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC7B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAEO,aAAa;QACjB,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvB,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,SAAkB;QACjC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAE1B,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;;;OAOG;IACK,eAAe,CAAC,IAAY;QAChC,KAAK,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEhD,IAAI,OAAe,CAAC;QACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAEzB,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;YACnB,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,CAAC;aAAM,CAAC;YACJ,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtE,CAAC;QAED,IAAI,CAAC,OAAO,KAAK,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,GAAG,CAAC,CAAC;YAEZ,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;gBACpB,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC5B,CAAC;QACL,CAAC;QAED,MAAM,GAAG,GAAG,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAExE,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,KAAK,CAAC,KAAK,CAAC,oBAAoB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;YACjE,OAAO;QACX,CAAC;QAED,KAAK,CAAC,GAAG,CAAC,SAAS,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEnE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAClC,OAAO;YACP,SAAS,EAAE,GAAG,CAAC,IAAI;YACnB,QAAQ;YACR,OAAO,EAAE,GAAG;SACf,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,CAAC,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;YAClB,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,eAAe,CAAC;QACrC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO;QACT,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,EAAC,sBAAsB,EAAE,OAAO,EAAC,CAAC,CAAC;QAEpF,IAAI,CAAC,MAAM,CAAC,eAAe,KAAK,OAAO,CAAC,EAAE,CAAC;YACvC,KAAK,CAAC,GAAG,CAAC,8BAA8B,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;YAElE,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,EAAC,sBAAsB,EAAE,MAAM,CAAC,eAAe,EAAC,CAAC,CAAC;QACxF,CAAC;QAED,OAAO,MAAM,CAAC,eAAe,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,WAAW;QACb,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAErD,KAAK,CAAC,GAAG,CAAC,uBAAuB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAE3D,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,mBAAW,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChC,KAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;YACrC,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC;QAE9C,OAAO,QAAQ,CAAC,OAAO,CAAC,MAAM,IAAI,mBAAW,CAAC,UAAU,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,YAAY;QACd,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QAEtD,KAAK,CAAC,GAAG,CAAC,qBAAqB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAEzD,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,mBAAW,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChC,KAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,CAAC,4BAA4B,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC7E,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC;QAE9C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,mBAAW,CAAC,YAAY,CAAC,EAAE,CAAC;YACzD,KAAK,CAAC,GAAG,CAAC,wBAAwB,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,CAAC,wBAAwB,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACnF,CAAC;QAED,OAAO,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,QAAgB,EAAE,KAAa;QACvD,MAAM,UAAU,GAAG,oBAAY,CAAC,WAAW,CAAC,oBAAY,EAAE,QAAQ,CAAC,CAAC;QACpE,KAAK,CAAC,GAAG,CAAC,OAAO,UAAU,MAAM,KAAK,EAAE,CAAC,CAAC;QAC1C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,uBAAuB,EAAE,EAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;QAChG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,mBAAW,CAAC,OAAO,EAC7C,kCAAkC,UAAU,KAAK,KAAK,iCAAiC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtH,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,QAAgB;QACxC,MAAM,UAAU,GAAG,oBAAY,CAAC,WAAW,CAAC,oBAAY,EAAE,QAAQ,CAAC,CAAC;QACpE,KAAK,CAAC,GAAG,CAAC,OAAO,UAAU,EAAE,CAAC,CAAC;QAC/B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,uBAAuB,EAAE,EAAC,QAAQ,EAAE,QAAQ,EAAC,CAAC,CAAC;QAClF,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,mBAAW,CAAC,OAAO,EAC7C,kCAAkC,UAAU,iCAAiC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxG,KAAK,CAAC,GAAG,CAAC,OAAO,UAAU,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;QAC9C,OAAO,GAAG,CAAC,KAAK,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,KAAa;QACtC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;QAC7E,OAAO,GAAG,CAAC,KAAK,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,KAAa,EAAE,KAAiC;QACzE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE,EAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;QAC3F,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,mBAAW,CAAC,OAAO,EAC7C,+DAA+D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1F,OAAO,GAAG,CAAC,MAAM,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,KAAkC;QAC5D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,yBAAyB,EAAE,EAAC,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;QAC9E,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,KAAK,mBAAW,CAAC,OAAO,EAC9C,gEAAgE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3F,OAAO,GAAG,CAAC,OAAO,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,uBAAuB;QACzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAAC;QAC9D,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,mBAAW,CAAC,OAAO,EAC7C,gEAAgE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3F,OAAO,GAAG,CAAC;IACf,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAsB,EAAE,KAAa;QAChD,MAAM,SAAS,GAAG,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACpE,KAAK,CAAC,GAAG,CAAC,OAAO,SAAS,MAAM,KAAK,EAAE,CAAC,CAAC;QACzC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,EAAC,OAAO,EAAE,KAAK,EAAC,CAAC,CAAC;QACjE,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,mBAAW,CAAC,OAAO,EAC7C,qBAAqB,SAAS,KAAK,KAAK,iCAAiC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEpG,OAAO,GAAG,CAAC;IACf,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAsB;QACjC,MAAM,SAAS,GAAG,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACpE,KAAK,CAAC,GAAG,CAAC,OAAO,SAAS,EAAE,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,EAAC,OAAO,EAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,mBAAW,CAAC,OAAO,EAC7C,qBAAqB,SAAS,iCAAiC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1F,KAAK,CAAC,GAAG,CAAC,OAAO,SAAS,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;QAC7C,OAAO,GAAG,CAAC,KAAK,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAsB,EAAE,KAAa;QACjD,MAAM,UAAU,GAAG,oBAAY,CAAC,WAAW,CAAC,oBAAY,EAAE,QAAQ,CAAC,CAAC;QACpE,KAAK,CAAC,GAAG,CAAC,OAAO,UAAU,MAAM,KAAK,EAAE,CAAC,CAAC;QAC1C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,EAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAC,CAAC,CAAC;QACzF,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,KAAK,mBAAW,CAAC,OAAO,EAC7C,sBAAsB,UAAU,KAAK,KAAK,iCAAiC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtG,OAAO,GAAG,CAAC;IACf,CAAC;IAED,KAAK,CAAC,YAAY;QACd,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAEzE,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;YACrC,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACtD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,KAAK,CAAC,KAAK,CAAC,yBAAyB,QAAQ,KAAK,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/F,CAAC;QACL,CAAC;IACL,CAAC;IAED,KAAK,CAAC,cAAc;QAChB,kDAAkD;QAClD,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAE3E,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACxC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,KAAK,CAAC,KAAK,CAAC,aAAa,MAAM,KAAK,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YACjF,CAAC;QACL,CAAC;IACL,CAAC;IAEM,YAAY,CAAC,IAAmB,EAAE,MAAkB;QACvD,MAAM,OAAO,GAAG,IAAI,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAChE,OAAO,OAAO,CAAC,SAAS,EAAE,CAAC;IAC/B,CAAC;IAEO,SAAS,CAAC,IAAY,EAAE,MAAkB,EAAE,GAAW;QAC3D,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAEtD,KAAK,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAE5C,MAAM,KAAK,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC;QAE5B,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC;gBACpB,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACJ,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YACjC,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YAEvD,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,CAAC;QACtC,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IACpE,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,IAAY,EAAE,SAAqB,IAAI;QAC5D,KAAK,CAAC,GAAG,CAAC,OAAO,IAAI,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAEpD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAClD,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAgB,KAAK,IAA4B,EAAE;YACxE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACvD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC/C,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;YAEtC,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAEvC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC;gBAE9C,OAAO,QAAQ,CAAC,OAAO,CAAC;YAC5B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAChC,MAAM,IAAI,KAAK,CAAC,gBAAgB,IAAI,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YACpE,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAA8B;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;QACxD,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,EAAC,UAAU,EAAE,MAAM,EAAC,CAAC,CAAC;QAEtE,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,mBAAW,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAEhC,KAAK,CAAC,KAAK,CAAC,2BAA2B,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YAE7D,MAAM,IAAI,KAAK,CAAC,CAAC,2BAA2B,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC;QAE9C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,mBAAW,CAAC,UAAU,CAAC,EAAE,CAAC;YACvD,KAAK,CAAC,KAAK,CAAC,wBAAwB,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YAEzE,MAAM,IAAI,KAAK,CAAC,CAAC,wBAAwB,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACnF,CAAC;QAED,OAAO,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC;IACnC,CAAC;IAEM,WAAW,CAAC,MAAgC,EAAE,GAAW,EAAE,QAC7C,EAAE,GAAW,EAAE,IAAY;QAC5C,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE;YACnC,IAAI,EAAE,MAAM;YACZ,kBAAkB,EAAE,GAAG;YACvB,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,GAAG;YACf,OAAO,EAAE,IAAI;SAChB,CAAC,CAAC;IACP,CAAC;IAEM,aAAa,CAAC,QAAuB,EAAE,GAAW,EAAE,IAAY;QACnE,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE;YACrC,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,mBAAmB;YACzB,eAAe,EAAE,gCAAgC;YACjD,UAAU,EAAE,GAAG;YACf,OAAO,EAAE,IAAI;SAChB,CAAC,CAAC;IACP,CAAC;IAEM,KAAK,CAAC,gBAAgB;QACzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE;YAClD,EAAE,EAAE,IAAI;YACR,gBAAgB,EAAE,6BAAqB,CAAC,qBAAqB;YAC7D,OAAO,EAAE,iBAAiB;YAC1B,OAAO,EAAE,iBAAiB;YAC1B,mBAAmB,EAAE,0BAA0B;YAC/C,wBAAwB,EAAE,4BAA4B;YACtD,OAAO,EAAE,CAAC;SACb,CAAC,CAAC;QAEH,KAAK,CAAC,GAAG,CAAC,2BAA2B,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;QAE5D,IAAI,GAAG,CAAC,MAAM,IAAI,mBAAW,CAAC,OAAO,EAAE,CAAC;YACpC,KAAK,CAAC,GAAG,CAAC,uCAAuC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;QAClF,CAAC;QAED,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,CAAC,WAAW,CAAC,6BAA6B,EAAE,EAAC,IAAI,EAAE,CAAC,EAAC,CAAC,CAAC;QACrE,CAAC;IACL,CAAC;IAEM,aAAa,CAAC,WAAmB,EAAE,QAAuB,EAAE,GAAW,EAAE,IAAY;QAExF,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE;YACrC,WAAW,EAAE,WAAW;YACxB,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,mBAAmB;YAC3B,UAAU,EAAE,GAAG;YACf,OAAO,EAAE,IAAI;SAChB,CAAC,CAAC;IACP,CAAC;IAEM,OAAO,CAAC,OAAsB,EAAE,QAAuB,EAAE,OAAO,GAAG,KAAK;QAE3E,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAC,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAEO,wBAAwB,CAAC,OAA4B,EAAE,OAAe;QAC1E,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,OAAO,IAAI,CAAC;IAC3D,CAAC;IAEO,iBAAiB,CAAC,OAAkB,EAAE,OAA4B;QACtE,MAAM,UAAU,GAAG,CAAC,OAAO,OAAO,CAAC,OAAO,IAAI,QAAQ,CAAC,CAAC,CAAC;YACrD,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,4BAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC3D,OAAO,CACH,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC;YACnE,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CACzC,CAAC;IACN,CAAC;IAEO,KAAK,CAAC,eAAe;QACzB,KAAK,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEnD,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,KAAK,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;YACjD,OAAO;QACX,CAAC;QAED,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,KAAK,CAAC,KAAK,CAAC,8BAA8B,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAEzD,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC1B,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;gBAEnB,IAAI,IAAI,CAAC,QAAQ,GAAG,qBAAqB,EAAE,CAAC;oBACxC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;oBAElB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AAjdD,oBAidC"}
|
|
@@ -2,11 +2,10 @@
|
|
|
2
2
|
/// <reference types="node" />
|
|
3
3
|
import * as stream from 'stream';
|
|
4
4
|
export declare class Parser extends stream.Transform {
|
|
5
|
-
private
|
|
5
|
+
private tail;
|
|
6
6
|
private flagXONXOFF;
|
|
7
7
|
constructor(flagXONXOFF?: boolean);
|
|
8
8
|
_transform(chunk: Buffer, _: string, cb: () => void): void;
|
|
9
|
-
private parseNext;
|
|
10
9
|
private unstuff;
|
|
11
10
|
reset(): void;
|
|
12
11
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/parser.ts"],"names":[],"mappings":";;AACA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAOjC,qBAAa,MAAO,SAAQ,MAAM,CAAC,SAAS;IACxC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/parser.ts"],"names":[],"mappings":";;AACA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAOjC,qBAAa,MAAO,SAAQ,MAAM,CAAC,SAAS;IACxC,OAAO,CAAC,IAAI,CAAW;IACvB,OAAO,CAAC,WAAW,CAAU;gBAEV,WAAW,GAAE,OAAe;IAOxC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI;IA4CjE,OAAO,CAAE,OAAO;IAmBT,KAAK,IAAI,IAAI;CAIvB"}
|
|
@@ -34,12 +34,12 @@ const debug_1 = __importDefault(require("debug"));
|
|
|
34
34
|
const frame_1 = __importDefault(require("./frame"));
|
|
35
35
|
const debug = (0, debug_1.default)('zigbee-herdsman:adapter:ezsp:uart');
|
|
36
36
|
class Parser extends stream.Transform {
|
|
37
|
-
|
|
37
|
+
tail;
|
|
38
38
|
flagXONXOFF;
|
|
39
39
|
constructor(flagXONXOFF = false) {
|
|
40
40
|
super();
|
|
41
41
|
this.flagXONXOFF = flagXONXOFF;
|
|
42
|
-
this.
|
|
42
|
+
this.tail = [];
|
|
43
43
|
}
|
|
44
44
|
_transform(chunk, _, cb) {
|
|
45
45
|
if (this.flagXONXOFF && (chunk.indexOf(consts.XON) >= 0 || chunk.indexOf(consts.XOFF) >= 0)) {
|
|
@@ -47,69 +47,58 @@ class Parser extends stream.Transform {
|
|
|
47
47
|
console.assert(false, `Host driver did not remove XON/XOFF from input stream. Driver not setup for XON/XOFF?`);
|
|
48
48
|
}
|
|
49
49
|
if (chunk.indexOf(consts.CANCEL) >= 0) {
|
|
50
|
-
this.
|
|
50
|
+
this.reset();
|
|
51
51
|
chunk = chunk.subarray(chunk.lastIndexOf(consts.CANCEL) + 1);
|
|
52
52
|
}
|
|
53
53
|
if (chunk.indexOf(consts.SUBSTITUTE) >= 0) {
|
|
54
|
-
this.
|
|
54
|
+
this.reset();
|
|
55
55
|
chunk = chunk.subarray(chunk.indexOf(consts.FLAG) + 1);
|
|
56
56
|
}
|
|
57
57
|
debug(`<-- [${chunk.toString('hex')}]`);
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
if (this.buffer.length >= frameLength) {
|
|
68
|
-
const frameBuffer = this.unstuff(this.buffer.subarray(0, frameLength));
|
|
69
|
-
try {
|
|
70
|
-
const frame = frame_1.default.fromBuffer(frameBuffer);
|
|
71
|
-
if (frame) {
|
|
72
|
-
debug(`--> parsed ${frame}`);
|
|
73
|
-
this.emit('parsed', frame);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
catch (error) {
|
|
77
|
-
debug(`--> error ${error.stack}`);
|
|
78
|
-
}
|
|
79
|
-
this.buffer = this.buffer.subarray(frameLength);
|
|
80
|
-
this.parseNext();
|
|
58
|
+
let delimiterPlace = chunk.indexOf(consts.FLAG);
|
|
59
|
+
while (delimiterPlace >= 0) {
|
|
60
|
+
const buffer = chunk.subarray(0, delimiterPlace + 1);
|
|
61
|
+
const frameBuffer = Buffer.from([...this.unstuff(Buffer.concat([...this.tail, buffer]))]);
|
|
62
|
+
this.reset();
|
|
63
|
+
try {
|
|
64
|
+
const frame = frame_1.default.fromBuffer(frameBuffer);
|
|
65
|
+
if (frame) {
|
|
66
|
+
this.emit('parsed', frame);
|
|
81
67
|
}
|
|
82
68
|
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
debug(`<-- error ${error.stack}`);
|
|
71
|
+
}
|
|
72
|
+
chunk = chunk.subarray(delimiterPlace + 1);
|
|
73
|
+
delimiterPlace = chunk.indexOf(consts.FLAG);
|
|
83
74
|
}
|
|
75
|
+
this.tail.push(chunk);
|
|
76
|
+
cb();
|
|
84
77
|
}
|
|
85
|
-
unstuff(
|
|
86
|
-
/* Unstuff (unescape) a
|
|
78
|
+
*unstuff(buffer) {
|
|
79
|
+
/* Unstuff (unescape) a buffer after receipt */
|
|
87
80
|
let escaped = false;
|
|
88
|
-
const
|
|
89
|
-
let outIdx = 0;
|
|
90
|
-
for (let idx = 0; idx < s.length; idx += 1) {
|
|
91
|
-
const c = s[idx];
|
|
81
|
+
for (const byte of buffer) {
|
|
92
82
|
if (escaped) {
|
|
93
|
-
|
|
83
|
+
yield byte ^ consts.STUFF;
|
|
94
84
|
escaped = false;
|
|
95
85
|
}
|
|
96
86
|
else {
|
|
97
|
-
if (
|
|
87
|
+
if (byte === consts.ESCAPE) {
|
|
98
88
|
escaped = true;
|
|
99
89
|
}
|
|
100
|
-
else if (
|
|
90
|
+
else if (byte === consts.XOFF || byte === consts.XON) {
|
|
101
91
|
// skip
|
|
102
92
|
}
|
|
103
93
|
else {
|
|
104
|
-
|
|
94
|
+
yield byte;
|
|
105
95
|
}
|
|
106
96
|
}
|
|
107
97
|
}
|
|
108
|
-
return out.subarray(0, outIdx);
|
|
109
98
|
}
|
|
110
99
|
reset() {
|
|
111
|
-
// clear
|
|
112
|
-
this.
|
|
100
|
+
// clear tail
|
|
101
|
+
this.tail.length = 0;
|
|
113
102
|
}
|
|
114
103
|
}
|
|
115
104
|
exports.Parser = Parser;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/parser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0BAA0B;AAC1B,+CAAiC;AACjC,iDAAmC;AACnC,kDAA0B;AAC1B,oDAA4B;AAE5B,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,mCAAmC,CAAC,CAAC;AAEzD,MAAa,MAAO,SAAQ,MAAM,CAAC,SAAS;IAChC,
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uart.d.ts","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/uart.ts"],"names":[],"mappings":";;AACA,OAAO,EAAC,YAAY,EAAC,MAAM,QAAQ,CAAC;AASpC,OAAO,EAAC,iBAAiB,EAAC,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"uart.d.ts","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/uart.ts"],"names":[],"mappings":";;AACA,OAAO,EAAC,YAAY,EAAC,MAAM,QAAQ,CAAC;AASpC,OAAO,EAAC,iBAAiB,EAAC,MAAM,cAAc,CAAC;AAkB/C,KAAK,UAAU,GAAG;IACd,QAAQ,EAAE,MAAM,CAAA;CACnB,CAAC;AAOF,qBAAa,YAAa,SAAQ,YAAY;IAC1C,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,WAAW,CAAU;IAC7B,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,QAAQ,CAA0C;IAC1D,OAAO,CAAC,KAAK,CAAQ;;IAUf,OAAO,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;YAS1C,cAAc;YAqDd,cAAc;YA4Cd,QAAQ;IA2CtB,OAAO,CAAC,UAAU;IA4ClB,OAAO,CAAC,SAAS;IAmBjB,OAAO,CAAC,SAAS;IAgBjB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,YAAY;YAsBN,WAAW;IAWnB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA8Bf,KAAK,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BrD,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,WAAW;IAcZ,aAAa,IAAI,OAAO;IAIlB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0C3C,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,SAAO,GACzC;QAAE,KAAK,EAAE,MAAM;YAAE,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;YAAC,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE;IAI/E,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,iBAAiB;CAG5B"}
|
|
@@ -14,6 +14,7 @@ const writer_1 = require("./writer");
|
|
|
14
14
|
const parser_1 = require("./parser");
|
|
15
15
|
const frame_1 = require("./frame");
|
|
16
16
|
const debug_1 = __importDefault(require("debug"));
|
|
17
|
+
const wait_1 = __importDefault(require("../../../utils/wait"));
|
|
17
18
|
const debug = (0, debug_1.default)('zigbee-herdsman:adapter:ezsp:uart');
|
|
18
19
|
var NcpResetCode;
|
|
19
20
|
(function (NcpResetCode) {
|
|
@@ -37,6 +38,7 @@ class SerialDriver extends events_1.EventEmitter {
|
|
|
37
38
|
sendSeq = 0; // next frame number to send
|
|
38
39
|
recvSeq = 0; // next frame number to receive
|
|
39
40
|
ackSeq = 0; // next number after the last accepted frame
|
|
41
|
+
rejectCondition = false;
|
|
40
42
|
waitress;
|
|
41
43
|
queue;
|
|
42
44
|
constructor() {
|
|
@@ -131,17 +133,9 @@ class SerialDriver extends events_1.EventEmitter {
|
|
|
131
133
|
});
|
|
132
134
|
}
|
|
133
135
|
async onParsed(frame) {
|
|
136
|
+
const rejectCondition = this.rejectCondition;
|
|
134
137
|
try {
|
|
135
138
|
frame.checkCRC();
|
|
136
|
-
}
|
|
137
|
-
catch (error) {
|
|
138
|
-
debug(error);
|
|
139
|
-
// send NAK
|
|
140
|
-
this.writer.sendNAK(this.recvSeq);
|
|
141
|
-
// skip handler
|
|
142
|
-
return;
|
|
143
|
-
}
|
|
144
|
-
try {
|
|
145
139
|
/* Frame receive handler */
|
|
146
140
|
switch (frame.type) {
|
|
147
141
|
case frame_1.FrameType.DATA:
|
|
@@ -163,18 +157,41 @@ class SerialDriver extends events_1.EventEmitter {
|
|
|
163
157
|
await this.handleError(frame);
|
|
164
158
|
break;
|
|
165
159
|
default:
|
|
160
|
+
this.rejectCondition = true;
|
|
166
161
|
debug(`UNKNOWN FRAME RECEIVED: ${frame}`);
|
|
167
162
|
}
|
|
168
163
|
}
|
|
169
164
|
catch (error) {
|
|
165
|
+
this.rejectCondition = true;
|
|
166
|
+
debug(error);
|
|
170
167
|
debug(`Error while parsing to NpiFrame '${error.stack}'`);
|
|
171
168
|
}
|
|
169
|
+
// We send NAK only if the rejectCondition was set in the current processing
|
|
170
|
+
if (!rejectCondition && this.rejectCondition) {
|
|
171
|
+
// send NAK
|
|
172
|
+
this.writer.sendNAK(this.recvSeq);
|
|
173
|
+
}
|
|
172
174
|
}
|
|
173
175
|
handleDATA(frame) {
|
|
174
176
|
/* Data frame receive handler */
|
|
175
177
|
const frmNum = (frame.control & 0x70) >> 4;
|
|
176
178
|
const reTx = (frame.control & 0x08) >> 3;
|
|
177
179
|
debug(`<-- DATA (${frmNum},${frame.control & 0x07},${reTx}): ${frame}`);
|
|
180
|
+
// Expected package {recvSeq}, but received {frmNum}
|
|
181
|
+
// This happens when the chip sends us a reTx packet, but we are waiting for the next one
|
|
182
|
+
if (this.recvSeq != frmNum) {
|
|
183
|
+
if (reTx) {
|
|
184
|
+
// if the reTx flag is set, then this is a packet replay
|
|
185
|
+
debug(`Unexpected DATA packet sequence ${frmNum} | ${this.recvSeq}: packet replay`);
|
|
186
|
+
}
|
|
187
|
+
else {
|
|
188
|
+
// otherwise, the sequence of packets is out of order - skip or send NAK is needed
|
|
189
|
+
debug(`Unexpected DATA packet sequence ${frmNum} | ${this.recvSeq}: reject condition`);
|
|
190
|
+
this.rejectCondition = true;
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
this.rejectCondition = false;
|
|
178
195
|
this.recvSeq = (frmNum + 1) & 7; // next
|
|
179
196
|
debug(`--> ACK (${this.recvSeq})`);
|
|
180
197
|
this.writer.sendACK(this.recvSeq);
|
|
@@ -195,6 +212,9 @@ class SerialDriver extends events_1.EventEmitter {
|
|
|
195
212
|
debug(`<-- ACK (${this.ackSeq}): ${frame}`);
|
|
196
213
|
const handled = this.waitress.resolve({ sequence: this.ackSeq });
|
|
197
214
|
if (!handled && this.sendSeq !== this.ackSeq) {
|
|
215
|
+
// Packet confirmation received for {ackSeq}, but was expected {sendSeq}
|
|
216
|
+
// This happens when the chip has not yet received of the packet {sendSeq} from us,
|
|
217
|
+
// but has already sent us the next one.
|
|
198
218
|
debug(`Unexpected packet sequence ${this.ackSeq} | ${this.sendSeq}`);
|
|
199
219
|
}
|
|
200
220
|
return handled;
|
|
@@ -218,8 +238,7 @@ class SerialDriver extends events_1.EventEmitter {
|
|
|
218
238
|
handleRSTACK(frame) {
|
|
219
239
|
/* Reset acknowledgement frame receive handler */
|
|
220
240
|
let code;
|
|
221
|
-
this.
|
|
222
|
-
this.recvSeq = 0;
|
|
241
|
+
this.rejectCondition = false;
|
|
223
242
|
debug(`<-- RSTACK ${frame}`);
|
|
224
243
|
try {
|
|
225
244
|
code = NcpResetCode[frame.buffer[2]];
|
|
@@ -247,14 +266,18 @@ class SerialDriver extends events_1.EventEmitter {
|
|
|
247
266
|
debug('Uart reseting');
|
|
248
267
|
this.parser.reset();
|
|
249
268
|
this.queue.clear();
|
|
269
|
+
this.sendSeq = 0;
|
|
270
|
+
this.recvSeq = 0;
|
|
250
271
|
return this.queue.execute(async () => {
|
|
251
272
|
try {
|
|
252
273
|
debug(`--> Write reset`);
|
|
253
274
|
const waiter = this.waitFor(-1, 10000);
|
|
275
|
+
this.rejectCondition = false;
|
|
254
276
|
this.writer.sendReset();
|
|
255
277
|
debug(`-?- waiting reset`);
|
|
256
278
|
await waiter.start().promise;
|
|
257
279
|
debug(`-+- waiting reset success`);
|
|
280
|
+
await (0, wait_1.default)(2000);
|
|
258
281
|
}
|
|
259
282
|
catch (e) {
|
|
260
283
|
debug(`--> Error: ${e}`);
|
|
@@ -338,13 +361,15 @@ class SerialDriver extends events_1.EventEmitter {
|
|
|
338
361
|
debug(`--> Error: ${e2}`);
|
|
339
362
|
debug(`-!- break rewaiting (${nextSeq})`);
|
|
340
363
|
debug(`Can't resend DATA frame (${seq},${ackSeq},1): ${data.toString('hex')}`);
|
|
341
|
-
this.
|
|
364
|
+
if (this.initialized) {
|
|
365
|
+
this.emit('reset');
|
|
366
|
+
}
|
|
342
367
|
throw new Error(`sendDATA error: try 1: ${e1}, try 2: ${e2}`);
|
|
343
368
|
}
|
|
344
369
|
}
|
|
345
370
|
});
|
|
346
371
|
}
|
|
347
|
-
waitFor(sequence, timeout =
|
|
372
|
+
waitFor(sequence, timeout = 4000) {
|
|
348
373
|
return this.waitress.waitFor({ sequence }, timeout);
|
|
349
374
|
}
|
|
350
375
|
waitressTimeoutFormatter(matcher, timeout) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uart.js","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/uart.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"uart.js","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/uart.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/writer.ts"],"names":[],"mappings":";;AACA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAOjC,qBAAa,MAAO,SAAQ,MAAM,CAAC,QAAQ;IAChC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAKjC,KAAK,IAAI,IAAI;IAGb,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM7B,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM7B,SAAS,IAAI,IAAI;IAMjB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAO/E,OAAO,
|
|
1
|
+
{"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/writer.ts"],"names":[],"mappings":";;AACA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAOjC,qBAAa,MAAO,SAAQ,MAAM,CAAC,QAAQ;IAChC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAKjC,KAAK,IAAI,IAAI;IAGb,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM7B,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM7B,SAAS,IAAI,IAAI;IAMjB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAO/E,OAAO,CAAE,KAAK;IAYd,OAAO,CAAC,SAAS;CAQpB"}
|
|
@@ -61,28 +61,25 @@ class Writer extends stream.Readable {
|
|
|
61
61
|
const dataFrame = this.makeFrame(control, data);
|
|
62
62
|
this.writeBuffer(dataFrame);
|
|
63
63
|
}
|
|
64
|
-
stuff(
|
|
64
|
+
*stuff(buffer) {
|
|
65
65
|
/* Byte stuff (escape) a string for transmission */
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
out.writeUInt8(consts.ESCAPE, outIdx++);
|
|
71
|
-
out.writeUInt8(c ^ consts.STUFF, outIdx++);
|
|
66
|
+
for (const byte of buffer) {
|
|
67
|
+
if (consts.RESERVED.includes(byte)) {
|
|
68
|
+
yield consts.ESCAPE;
|
|
69
|
+
yield byte ^ consts.STUFF;
|
|
72
70
|
}
|
|
73
71
|
else {
|
|
74
|
-
|
|
72
|
+
yield byte;
|
|
75
73
|
}
|
|
76
74
|
}
|
|
77
|
-
return out.subarray(0, outIdx);
|
|
78
75
|
}
|
|
79
76
|
makeFrame(control, data) {
|
|
80
77
|
/* Construct a frame */
|
|
81
|
-
const
|
|
82
|
-
const frm = (data) ? Buffer.concat([ctrl, data]) : ctrl;
|
|
78
|
+
const frm = [control, ...(data || [])];
|
|
83
79
|
const crc = (0, utils_1.crc16ccitt)(frm, 65535);
|
|
84
|
-
|
|
85
|
-
|
|
80
|
+
frm.push(crc >> 8);
|
|
81
|
+
frm.push(crc % 256);
|
|
82
|
+
return Buffer.from([...this.stuff(frm), consts.FLAG]);
|
|
86
83
|
}
|
|
87
84
|
}
|
|
88
85
|
exports.Writer = Writer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writer.js","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/writer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0BAA0B;AAC1B,+CAAiC;AACjC,iDAAmC;AACnC,mCAAmC;AACnC,kDAA0B;AAE1B,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,mCAAmC,CAAC,CAAC;AAEzD,MAAa,MAAO,SAAQ,MAAM,CAAC,QAAQ;IAChC,WAAW,CAAC,MAAc;QAC7B,KAAK,CAAC,QAAQ,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAEM,KAAK;IACZ,CAAC;IAEM,OAAO,CAAC,MAAc;QACzB,uCAAuC;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC;QACvD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAEM,OAAO,CAAC,MAAc;QACzB,gDAAgD;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC;QACvD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAEM,SAAS;QACZ,6BAA6B;QAC7B,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAEM,QAAQ,CAAC,IAAY,EAAE,GAAW,EAAE,KAAa,EAAE,MAAc;QACpE,4BAA4B;QAC5B,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC;
|
|
1
|
+
{"version":3,"file":"writer.js","sourceRoot":"","sources":["../../../../src/adapter/ezsp/driver/writer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0BAA0B;AAC1B,+CAAiC;AACjC,iDAAmC;AACnC,mCAAmC;AACnC,kDAA0B;AAE1B,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,mCAAmC,CAAC,CAAC;AAEzD,MAAa,MAAO,SAAQ,MAAM,CAAC,QAAQ;IAChC,WAAW,CAAC,MAAc;QAC7B,KAAK,CAAC,QAAQ,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAEM,KAAK;IACZ,CAAC;IAEM,OAAO,CAAC,MAAc;QACzB,uCAAuC;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC;QACvD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAEM,OAAO,CAAC,MAAc;QACzB,gDAAgD;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC;QACvD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAEM,SAAS;QACZ,6BAA6B;QAC7B,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAEM,QAAQ,CAAC,IAAY,EAAE,GAAW,EAAE,KAAa,EAAE,MAAc;QACpE,4BAA4B;QAC5B,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC;IAEM,CAAE,KAAK,CAAE,MAAgB;QAC5B,mDAAmD;QACnD,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YACxB,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjC,MAAM,MAAM,CAAC,MAAM,CAAC;gBACpB,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACJ,MAAM,IAAI,CAAC;YACf,CAAC;QACL,CAAC;IACL,CAAC;IAEO,SAAS,CAAC,OAAe,EAAE,IAAa;QAC5C,uBAAuB;QACvB,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACnC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QACnB,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;QACpB,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1D,CAAC;CACJ;AAtDD,wBAsDC"}
|
package/dist/adapter/tstype.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ interface SerialPortOptions {
|
|
|
9
9
|
baudRate?: number;
|
|
10
10
|
rtscts?: boolean;
|
|
11
11
|
path?: string;
|
|
12
|
-
adapter?: 'zstack' | 'deconz' | 'zigate' | 'ezsp' | 'auto';
|
|
12
|
+
adapter?: 'zstack' | 'deconz' | 'zigate' | 'ezsp' | 'ember' | 'auto';
|
|
13
13
|
}
|
|
14
14
|
interface AdapterOptions {
|
|
15
15
|
concurrent?: number;
|