id-scanner-lib 1.2.0 → 1.2.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/README.md +3 -0
- package/dist/id-scanner-ocr.esm.js +5 -3
- package/dist/id-scanner-ocr.esm.js.map +1 -1
- package/dist/id-scanner-ocr.js +5 -3
- package/dist/id-scanner-ocr.js.map +1 -1
- package/dist/id-scanner-ocr.min.js +1 -1
- package/dist/id-scanner-ocr.min.js.map +1 -1
- package/dist/id-scanner.js +5 -3
- package/dist/id-scanner.js.map +1 -1
- package/dist/id-scanner.min.js +1 -1
- package/dist/id-scanner.min.js.map +1 -1
- package/package.json +1 -1
- package/src/id-recognition/ocr-worker.ts +2 -2
- package/src/utils/performance.ts +5 -3
package/README.md
CHANGED
|
@@ -423,6 +423,9 @@ A: 库的大小约为1MB,主要是因为包含OCR引擎。可以考虑按需
|
|
|
423
423
|
5. **版本更新记录**:
|
|
424
424
|
- v1.0.0: 首次发布版本
|
|
425
425
|
- v1.1.0: 模块化重构,实现按需加载,大幅减小体积
|
|
426
|
+
- v1.2.0: 实现多种性能优化策略,提升处理速度和降低资源占用
|
|
427
|
+
- v1.2.1: 修复类型错误和代码健壮性问题
|
|
428
|
+
- v1.2.2: 完善类型定义,修复所有类型检查警告
|
|
426
429
|
|
|
427
430
|
### 运行时性能
|
|
428
431
|
1. **摄像头参数自动优化**:根据设备性能自动调整摄像头分辨率
|
|
@@ -513,7 +513,9 @@ class LRUCache {
|
|
|
513
513
|
// 如果缓存已满,移除最老的项
|
|
514
514
|
if (this.cache.size >= this.maxSize) {
|
|
515
515
|
const oldestKey = this.cache.keys().next().value;
|
|
516
|
-
|
|
516
|
+
if (oldestKey !== undefined) {
|
|
517
|
+
this.cache.delete(oldestKey);
|
|
518
|
+
}
|
|
517
519
|
}
|
|
518
520
|
// 添加新项
|
|
519
521
|
this.cache.set(key, value);
|
|
@@ -963,9 +965,9 @@ async function processOCRInWorker(input) {
|
|
|
963
965
|
// 加载Tesseract.js (Worker 环境下动态导入)
|
|
964
966
|
const { createWorker } = await import('tesseract.js');
|
|
965
967
|
// 创建OCR Worker
|
|
966
|
-
const worker = createWorker(input.tessWorkerOptions || {
|
|
968
|
+
const worker = await createWorker(input.tessWorkerOptions || {
|
|
967
969
|
logger: (m) => console.log(m)
|
|
968
|
-
});
|
|
970
|
+
}); // 添加类型断言,避免TypeScript错误
|
|
969
971
|
try {
|
|
970
972
|
// 初始化OCR引擎
|
|
971
973
|
await worker.load();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"id-scanner-ocr.esm.js","sources":["../src/utils/camera.ts","../src/utils/image-processing.ts","../src/utils/performance.ts","../src/id-recognition/id-detector.ts","../src/utils/worker.ts","../src/id-recognition/ocr-worker.ts","../src/id-recognition/ocr-processor.ts","../src/id-recognition/data-extractor.ts","../src/ocr-module.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null],"names":["createCustomWorker","createWorker"],"mappings":";;AAAA;;;;AAIG;AAgBH;;;;;;;;;;;;;;;;;;;;;;;;AAwBG;MACU,MAAM,CAAA;AAIjB;;;AAGG;AACH,IAAA,WAAA,CAAoB,UAAyB,EAAE,EAAA;QAA3B,IAAO,CAAA,OAAA,GAAP,OAAO;QAPnB,IAAM,CAAA,MAAA,GAAuB,IAAI;QACjC,IAAY,CAAA,YAAA,GAA4B,IAAI;QAOlD,IAAI,CAAC,OAAO,GAAG;AACb,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,MAAM,EAAE,GAAG;AACX,YAAA,UAAU,EAAE,aAAa;AACzB,YAAA,GAAG;SACJ;;AAGH;;;;AAIG;IACH,MAAM,KAAK,CAAC,YAA8B,EAAA;AACxC,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;;AAGtC;;AAEG;IACH,IAAI,GAAA;QACF,IAAI,CAAC,OAAO,EAAE;;AAGhB;;;;;;AAMG;IACH,MAAM,UAAU,CAAC,YAA8B,EAAA;AAC7C,QAAA,IAAI,CAAC,YAAY,GAAG,YAAY;AAEhC,QAAA,IAAI;;AAEF,YAAA,MAAM,WAAW,GAA2B;AAC1C,gBAAA,KAAK,EAAE;oBACL,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;oBACpC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;AACtC,oBAAA,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC;AAC1B;aACF;;AAGD,YAAA,IAAI,CAAC,MAAM,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,YAAY,CAAC,WAAW,CAAC;;AAGpE,YAAA,IAAI,IAAI,CAAC,YAAY,EAAE;gBACrB,IAAI,CAAC,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM;AACzC,gBAAA,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,KAAI;AAClC,oBAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,wBAAA,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAK;AACxC,4BAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,gCAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,OAAO,EAAE,CAAC;;AAElD,yBAAC;;AAEL,iBAAC,CAAC;;;QAEJ,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC;AAChC,YAAA,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC;;;AAI7D;;;;AAIG;IACH,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;AACtB,YAAA,OAAO,IAAI;;;QAIb,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;QAC/C,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU;QAC3C,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW;QAE7C,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;QACvC,IAAI,CAAC,OAAO,EAAE;AACZ,YAAA,OAAO,IAAI;;;AAIb,QAAA,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;;AAGvE,QAAA,OAAO,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;;AAGhE;;AAEG;IACH,OAAO,GAAA;;AAEL,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE;AACf,YAAA,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;AACtD,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI;;;AAIpB,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,IAAI,CAAC,YAAY,CAAC,SAAS,GAAG,IAAI;AAClC,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI;;;AAG7B;;ACnKD;;;;AAIG;AAEH;;;;;;;;;;;;;;;;;;AAkBG;MACU,cAAc,CAAA;AACzB;;;;;AAKG;IACH,OAAO,iBAAiB,CAAC,SAAoB,EAAA;QAC3C,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;AAC/C,QAAA,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK;AAC9B,QAAA,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM;QAChC,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;QAEnC,IAAI,GAAG,EAAE;YACP,GAAG,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;;AAGnC,QAAA,OAAO,MAAM;;AAGf;;;;;AAKG;IACH,OAAO,iBAAiB,CAAC,MAAyB,EAAA;QAChD,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;QACnC,OAAO,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI;;AAGzE;;;;;;;AAOG;IACH,OAAO,wBAAwB,CAAC,SAAoB,EAAE,UAAqB,GAAA,CAAC,EAAE,QAAA,GAAmB,CAAC,EAAA;QAChG,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;QAChD,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;QAEnC,IAAI,GAAG,EAAE;AACP,YAAA,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;AACnE,YAAA,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI;;YAGzB,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,QAAQ,GAAG,GAAG,CAAC,KAAK,GAAG,IAAI,GAAG,GAAG,QAAQ,CAAC,CAAC;AAElE,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;;gBAEvC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,UAAU,CAAC;;gBAEpE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,UAAU,CAAC;;gBAE5E,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,UAAU,CAAC;;;YAI9E,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;AAC/B,YAAA,OAAO,OAAO;;AAGhB,QAAA,OAAO,SAAS;;AAGlB;;;;;;AAMG;IACK,OAAO,QAAQ,CAAC,KAAa,EAAA;AACnC,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;;AAG1C;;;;;;;AAOG;IACH,OAAO,WAAW,CAAC,SAAoB,EAAA;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;QAChD,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;QAEnC,IAAI,GAAG,EAAE;AACP,YAAA,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;AACnE,YAAA,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI;AAEzB,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;gBACvC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;AACrD,gBAAA,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;gBACd,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;gBAClB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;;;YAIpB,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;AAC/B,YAAA,OAAO,OAAO;;AAGhB,QAAA,OAAO,SAAS;;AAGlB;;;;;;;AAOG;AACH,IAAA,OAAO,MAAM,CAAC,SAAoB,EAAE,QAAgB,EAAE,SAAiB,EAAA;QACrE,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;AAC/C,QAAA,MAAM,CAAC,KAAK,GAAG,QAAQ;AACvB,QAAA,MAAM,CAAC,MAAM,GAAG,SAAS;QACzB,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;QAEnC,IAAI,GAAG,EAAE;YACP,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;YACpD,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC;AAC7F,YAAA,OAAO,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC;;AAGpD,QAAA,OAAO,SAAS;;AAGlB;;;;;;;;AAQG;AACH,IAAA,OAAO,uBAAuB,CAAC,SAAoB,EAAE,eAAuB,IAAI,EAAA;AAC9E,QAAA,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,SAAS;;QAGnC,IAAI,KAAK,IAAI,YAAY,IAAI,MAAM,IAAI,YAAY,EAAE;AACnD,YAAA,OAAO,SAAS;;;AAIlB,QAAA,MAAM,KAAK,GAAG,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC;QACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;;QAG5C,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC;;AAGpD;;;;;AAKG;IACH,OAAO,iBAAiB,CAAC,SAAoB,EAAA;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;QAChD,OAAO,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;;AAG7C;;;;;AAKG;AACH,IAAA,aAAa,iBAAiB,CAAC,MAAc,EAAA;QAC3C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACrC,YAAA,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE;AACvB,YAAA,GAAG,CAAC,MAAM,GAAG,MAAK;gBAChB,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;AAC/C,gBAAA,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK;AACxB,gBAAA,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM;gBAC1B,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;gBAEnC,IAAI,CAAC,GAAG,EAAE;AACR,oBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;oBAClC;;gBAGF,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;AACxB,gBAAA,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;gBACrE,OAAO,CAAC,SAAS,CAAC;AACpB,aAAC;AAED,YAAA,GAAG,CAAC,OAAO,GAAG,MAAK;AACjB,gBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;AAC7B,aAAC;AAED,YAAA,GAAG,CAAC,GAAG,GAAG,MAAM;AAClB,SAAC,CAAC;;AAGJ;;;;;;;;AAQG;IACH,aAAa,sBAAsB,CACjC,SAAoB,EACpB,kBAAqD,EACrD,MAAA,GAAiB,CAAC,EAAA;;AAGlB,QAAA,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,MAAM,GAAG,MAAM,EAAE;AAChF,YAAA,OAAO,kBAAkB,CAAC,SAAS,CAAC;;;QAItC,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;AACrD,QAAA,YAAY,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK;AACpC,QAAA,YAAY,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM;QACtC,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC;QAE/C,IAAI,CAAC,SAAS,EAAE;AACd,YAAA,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC;;;QAIlC,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,MAAM;QACjD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,MAAM,IAAI,MAAM,CAAC;;QAGpF,MAAM,QAAQ,GAAG,EAAE;AAEnB,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;YAC/B,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;YACpD,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC;AAE7C,YAAA,IAAI,CAAC,QAAQ;gBAAE;AAEf,YAAA,IAAI,cAAc;YAElB,IAAI,MAAM,EAAE;;AAEV,gBAAA,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS;gBAC5B,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,KAAK,GAAG,MAAM,GAAG,SAAS;AAEvE,gBAAA,WAAW,CAAC,KAAK,GAAG,KAAK;AACzB,gBAAA,WAAW,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM;;gBAGrC,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;gBACpD,QAAQ,CAAC,SAAS,CAChB,UAAU,EACV,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,EAClC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,CAC9B;AAED,gBAAA,cAAc,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC;;iBAChE;;AAEL,gBAAA,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS;gBAC5B,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS;AAEzE,gBAAA,WAAW,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK;AACnC,gBAAA,WAAW,CAAC,MAAM,GAAG,MAAM;;gBAG3B,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;gBACpD,QAAQ,CAAC,SAAS,CAChB,UAAU,EACV,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,EAClC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,CAC9B;AAED,gBAAA,cAAc,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC;;;AAIvE,YAAA,MAAM,UAAU,GAAG;;;uCAGc,kBAAkB,CAAC,QAAQ,EAAE,CAAA;;;;OAI7D;AAED,YAAA,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;YACvE,MAAM,SAAS,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC;AAC3C,YAAA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC;YAEpC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAuC,CAAC,OAAO,KAAI;AAC5E,gBAAA,MAAM,CAAC,SAAS,GAAG,UAAS,CAAC,EAAA;AAC3B,oBAAA,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;oBACf,MAAM,CAAC,SAAS,EAAE;AAClB,oBAAA,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC;AAChC,iBAAC;;gBAGD,MAAM,CAAC,WAAW,CAAC;AACjB,oBAAA,SAAS,EAAE,cAAc;AACzB,oBAAA,KAAK,EAAE;iBACR,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAClC,aAAC,CAAC;AAEF,YAAA,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;;;QAIxB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;;AAG3C,QAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;;AAGzC,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;YAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;YAEjD,IAAI,MAAM,EAAE;AACV,gBAAA,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS;gBAC5B,SAAS,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;;iBACrC;AACL,gBAAA,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS;gBAC5B,SAAS,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,EAAE,MAAM,CAAC;;;AAI9C,QAAA,OAAO,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC;;AAEzE;;ACxWD;;;;AAIG;AAEH;;;;;;AAMG;AACa,SAAA,QAAQ,CACtB,EAAK,EACL,KAAa,EAAA;IAEb,IAAI,QAAQ,GAAG,CAAC;IAChB,IAAI,SAAS,GAAkB,IAAI;IAEnC,OAAO,UAAS,GAAG,IAAmB,EAAA;AACpC,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;QACtB,MAAM,SAAS,GAAG,KAAK,IAAI,GAAG,GAAG,QAAQ,CAAC;AAE1C,QAAA,IAAI,SAAS,IAAI,CAAC,EAAE;YAClB,IAAI,SAAS,EAAE;gBACb,YAAY,CAAC,SAAS,CAAC;gBACvB,SAAS,GAAG,IAAI;;YAElB,QAAQ,GAAG,GAAG;AACd,YAAA,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;;aACf,IAAI,CAAC,SAAS,EAAE;AACrB,YAAA,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,MAAK;AACjC,gBAAA,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE;gBACrB,SAAS,GAAG,IAAI;AAChB,gBAAA,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;aACrB,EAAE,SAAS,CAAC;;AAEjB,KAAC;AACH;AA2BA;;AAEG;MACU,QAAQ,CAAA;AAGnB;;;AAGG;AACH,IAAA,WAAA,CAAoB,UAAkB,GAAG,EAAA;QAArB,IAAO,CAAA,OAAA,GAAP,OAAO;AANnB,QAAA,IAAA,CAAA,KAAK,GAAG,IAAI,GAAG,EAAQ;;AAQ/B;;;;AAIG;AACH,IAAA,GAAG,CAAC,GAAM,EAAA;QACR,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACxB,YAAA,OAAO,SAAS;;;QAIlB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAE;;AAGlC,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;AAE1B,QAAA,OAAO,KAAK;;AAGd;;;;AAIG;IACH,GAAG,CAAC,GAAM,EAAE,KAAQ,EAAA;;QAElB,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;AACvB,YAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;;;QAIxB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE;AACnC,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK;AAChD,YAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC;;;QAI9B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;;AAG5B;;;;AAIG;AACH,IAAA,MAAM,CAAC,GAAM,EAAA;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;;AAG/B;;AAEG;IACH,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;;AAGpB;;AAEG;AACH,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI;;AAGxB;;;AAGG;AACH,IAAA,GAAG,CAAC,GAAM,EAAA;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;;AAE7B;AAED;;;;;;AAMG;SACa,yBAAyB,CAAC,SAAoB,EAAE,OAAe,CAAC,EAAA;;IAE9E,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;AAC/C,IAAA,MAAM,CAAC,KAAK,GAAG,IAAI;AACnB,IAAA,MAAM,CAAC,MAAM,GAAG,IAAI;IACpB,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;IAEnC,IAAI,CAAC,GAAG,EAAE;AACR,QAAA,OAAO,EAAE;;;IAIX,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;AACnD,IAAA,UAAU,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK;AAClC,IAAA,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM;IACpC,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC;IAE3C,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,OAAO,EAAE;;IAGX,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;;IAGrC,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC;;AAGpF,IAAA,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC;IACvD,MAAM,UAAU,GAAG,EAAE;AAErB,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;QACpD,MAAM,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9B,MAAM,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;;AAElC,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;AAC1D,QAAA,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;;;IAIvB,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM;;IAG7E,IAAI,WAAW,GAAG,EAAE;AACpB,IAAA,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE;AAC7B,QAAA,WAAW,IAAI,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG;;AAGxC,IAAA,OAAO,WAAW;AACpB;;AC/MA;;;;AAIG;AAqBH;;;;;;;;;;;;;;;;;;;;;;;;AAwBG;MACU,cAAc,CAAA;AAczB;;;;AAIG;AACH,IAAA,WAAA,CAAY,OAAqE,EAAA;QAjBzE,IAAS,CAAA,SAAA,GAAG,KAAK;QACjB,IAAW,CAAA,WAAA,GAAkB,IAAI;QAOjC,IAAU,CAAA,UAAA,GAAW,CAAC;QACtB,IAAiB,CAAA,iBAAA,GAAW,CAAC;AASnC,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,EAAE;AAE1B,QAAA,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;;AAEjC,YAAA,IAAI,CAAC,UAAU,GAAG,OAAO;YACzB,IAAI,CAAC,OAAO,GAAG;AACb,gBAAA,iBAAiB,EAAE,GAAG;AACtB,gBAAA,iBAAiB,EAAE,GAAG;AACtB,gBAAA,WAAW,EAAE,IAAI;AACjB,gBAAA,SAAS,EAAE,EAAE;gBACb,MAAM,EAAE,OAAO,CAAC;aACjB;;aACI,IAAI,OAAO,EAAE;;YAElB,IAAI,CAAC,OAAO,GAAG;AACb,gBAAA,iBAAiB,EAAE,GAAG;AACtB,gBAAA,iBAAiB,EAAE,GAAG;AACtB,gBAAA,WAAW,EAAE,IAAI;AACjB,gBAAA,SAAS,EAAE,EAAE;gBACb,MAAM,EAAE,OAAO,CAAC,GAAG;AACnB,gBAAA,GAAG;aACJ;AACD,YAAA,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,WAAW;AACrC,YAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO;;aACzB;YACL,IAAI,CAAC,OAAO,GAAG;AACb,gBAAA,iBAAiB,EAAE,GAAG;AACtB,gBAAA,iBAAiB,EAAE,GAAG;AACtB,gBAAA,WAAW,EAAE,IAAI;AACjB,gBAAA,SAAS,EAAE,EAAE;gBACb,MAAM,EAAE,OAAO,CAAC;aACjB;;QAGH,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAkB;QACxD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAkB;;AAGxD,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,QAAQ,CAA0B,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;;AAGhF,QAAA,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC;;AAG3F;;;;;;;AAOG;IACH,MAAM,KAAK,CAAC,YAA8B,EAAA;QACxC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC;AAC1C,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI;AACrB,QAAA,IAAI,CAAC,UAAU,GAAG,CAAC;AACnB,QAAA,IAAI,CAAC,iBAAiB,GAAG,CAAC;QAC1B,IAAI,CAAC,MAAM,EAAE;;AAGf;;AAEG;IACH,IAAI,GAAA;AACF,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,QAAA,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE;AAC7B,YAAA,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC;AACtC,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI;;;AAI3B;;;;AAIG;IACK,MAAM,GAAA;QACZ,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE;AAErB,QAAA,IAAI,CAAC,WAAW,GAAG,qBAAqB,CAAC,MAAK;AAC5C,YAAA,IAAI;gBACF,IAAI,CAAC,UAAU,EAAE;AACjB,gBAAA,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE;;;AAI7B,gBAAA,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,EAAE;oBACvF,IAAI,CAAC,eAAe,EAAE;AACtB,oBAAA,IAAI,CAAC,iBAAiB,GAAG,GAAG;;;gBAI9B,IAAI,CAAC,MAAM,EAAE;;YACb,OAAO,KAAK,EAAE;AACd,gBAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,oBAAA,IAAI,CAAC,OAAO,CAAC,KAAc,CAAC;;qBACvB;AACL,oBAAA,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC;;;gBAIlC,UAAU,CAAC,MAAK;AACd,oBAAA,IAAI,IAAI,CAAC,SAAS,EAAE;wBAClB,IAAI,CAAC,MAAM,EAAE;;iBAEhB,EAAE,IAAI,CAAC;;AAEZ,SAAC,CAAC;;AAGJ;;;;AAIG;AACK,IAAA,MAAM,gBAAgB,GAAA;QAC5B,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE;;QAGrC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;AACxC,QAAA,IAAI,CAAC,KAAK;YAAE;;AAGZ,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;YAC5B,MAAM,WAAW,GAAG,yBAAyB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACzD,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC;YAEtD,IAAI,YAAY,EAAE;gBAChB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,WAAW,CAAC;;AAGlC,gBAAA,MAAM,aAAa,GAAG;AACpB,oBAAA,GAAG,YAAY;AACf,oBAAA,SAAS,EAAE;iBACZ;AAED,gBAAA,IAAI,IAAI,CAAC,UAAU,EAAE;AACnB,oBAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;;gBAEhC;;;;AAKJ,QAAA,MAAM,gBAAgB,GAAG,cAAc,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC;AAE9F,QAAA,IAAI;;YAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;;AAGxD,YAAA,IAAI,MAAM,CAAC,OAAO,EAAE;AAClB,gBAAA,MAAM,CAAC,SAAS,GAAG,KAAK;;AAGxB,gBAAA,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;oBAC5B,MAAM,WAAW,GAAG,yBAAyB,CAAC,KAAK,EAAE,EAAE,CAAC;oBACxD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC;;;;AAK7C,YAAA,IAAI,IAAI,CAAC,UAAU,EAAE;AACnB,gBAAA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;;;QAEzB,OAAO,KAAK,EAAE;AACd,YAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,gBAAA,IAAI,CAAC,OAAO,CAAC,KAAc,CAAC;;iBACvB;AACL,gBAAA,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC;;;;AAKtC;;;;;;AAMG;IACK,MAAM,YAAY,CAAC,SAAoB,EAAA;;QAE3B,cAAc,CAAC,WAAW,CAAC,SAAS;;;;;;AAQtD,QAAA,MAAM,eAAe,GAAoB;YACvC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG;AAC5B,YAAA,OAAO,EAAE;SACV;AAED,QAAA,IAAI,eAAe,CAAC,OAAO,EAAE;;AAE3B,YAAA,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK;AAC7B,YAAA,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM;;YAG/B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC;AACzC,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC;AACjD,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,SAAS,IAAI,CAAC,CAAC;AACjD,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,UAAU,IAAI,CAAC,CAAC;;YAGnD,eAAe,CAAC,OAAO,GAAG;AACxB,gBAAA,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE;gBACtB,EAAE,CAAC,EAAE,KAAK,GAAG,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE;gBAClC,EAAE,CAAC,EAAE,KAAK,GAAG,SAAS,EAAE,CAAC,EAAE,KAAK,GAAG,UAAU,EAAE;gBAC/C,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,UAAU;aAClC;;YAGD,eAAe,CAAC,WAAW,GAAG;AAC5B,gBAAA,CAAC,EAAE,KAAK;AACR,gBAAA,CAAC,EAAE,KAAK;AACR,gBAAA,KAAK,EAAE,SAAS;AAChB,gBAAA,MAAM,EAAE;aACT;;YAGD,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;AAC/C,YAAA,MAAM,CAAC,KAAK,GAAG,SAAS;AACxB,YAAA,MAAM,CAAC,MAAM,GAAG,UAAU;YAC1B,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;YAEnC,IAAI,GAAG,EAAE;gBACP,MAAM,UAAU,GAAG,cAAc,CAAC,iBAAiB,CAAC,SAAS,CAAC;gBAC9D,GAAG,CAAC,SAAS,CACX,UAAU,EACV,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EACnC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,CAC5B;AAED,gBAAA,eAAe,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC;;;YAI9E,eAAe,CAAC,UAAU,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG;;AAGxD,QAAA,OAAO,eAAe;;AAGxB;;AAEG;IACH,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;QACxB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,WAAW,CAAC;;AAGpC;;AAEG;IACH,OAAO,GAAA;QACL,IAAI,CAAC,IAAI,EAAE;AACX,QAAA,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;AACrB,QAAA,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;;AAE3B;;AC7UD;;;;AAIG;AAEH;;;;;AAKG;AACG,SAAU,YAAY,CAAO,cAAwB,EAAA;;AAKzD,IAAA,MAAM,UAAU,GAAG;;;gCAGW,cAAc,CAAC,QAAQ,EAAE,CAAA;;;;;;;;;GAStD;AAED,IAAA,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;IACvE,MAAM,SAAS,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC;AAC3C,IAAA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC;;AAGpC,IAAA,MAAM,UAAU,GAAG,IAAI,GAAG,EAGtB;IAEJ,IAAI,cAAc,GAAG,CAAC;AAEtB,IAAA,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,KAAI;;AAEvB,QAAA,IAAI,UAAU,CAAC,IAAI,KAAK,CAAC,EAAE;AACzB,YAAA,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC;;AAGhC,QAAA,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI;QAE7C,MAAM,eAAe,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1C,IAAI,eAAe,EAAE;AACnB,YAAA,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAErB,IAAI,OAAO,EAAE;AACX,gBAAA,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC;;iBAC1B;gBACL,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;AAC5C,gBAAA,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK;AAC/B,gBAAA,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC;;;AAGzC,KAAC;IAED,OAAO;AACL,QAAA,WAAW,EAAE,CAAC,IAAO,KAAgB;YACnC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACrC,gBAAA,MAAM,EAAE,GAAG,cAAc,EAAE;gBAC3B,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;gBACvC,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AAClC,aAAC,CAAC;SACH;QACD,SAAS,EAAE,MAAK;YACd,MAAM,CAAC,SAAS,EAAE;YAClB,UAAU,CAAC,KAAK,EAAE;AAClB,YAAA,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC;;KAEjC;AACH;AAEA;;;;AAIG;SACa,iBAAiB,GAAA;AAC/B,IAAA,OAAO,OAAO,MAAM,KAAK,WAAW;AACtC;;ACxFA;;;;AAIG;AAoBH;;;;;;;AAOG;AACI,eAAe,kBAAkB,CAAC,KAAsB,EAAA;;AAE7D,IAAA,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;;IAGnC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,OAAO,cAAc,CAAC;;AAGrD,IAAA,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,iBAAiB,IAAI;QACrD,MAAM,EAAE,CAAC,CAAM,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAClC,KAAA,CAAC;AAEF,IAAA,IAAI;;AAEF,QAAA,MAAM,MAAM,CAAC,IAAI,EAAE;AACnB,QAAA,MAAM,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC;AACpC,QAAA,MAAM,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC;QAClC,MAAM,MAAM,CAAC,aAAa,CAAC;AACzB,YAAA,uBAAuB,EAAE;AAC1B,SAAA,CAAC;;AAGF,QAAA,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC;;QAG1D,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;;AAG7C,QAAA,MAAM,MAAM,CAAC,SAAS,EAAE;;QAGxB,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;;QAGpD,OAAO;YACL,UAAU;YACV;SACD;;IACD,OAAO,KAAK,EAAE;;AAEd,QAAA,MAAM,MAAM,CAAC,SAAS,EAAE;AACxB,QAAA,MAAM,KAAK;;AAEf;AAEA;;;;;;;;AAQG;AACH,SAAS,eAAe,CAAC,IAAY,EAAA;IACnC,MAAM,IAAI,GAAe,EAAE;;IAG3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;;IAG1D,MAAM,aAAa,GAAG,eAAe;IACrC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;IAC/C,IAAI,aAAa,EAAE;AACjB,QAAA,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC;;;AAIlC,IAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AAClF,YAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;YACzC;;;;IAKJ,MAAM,sBAAsB,GAAG,YAAY;IAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC;IACtD,IAAI,WAAW,EAAE;AACf,QAAA,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;AAC5B,QAAA,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,CAAC;QACtC,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;;;IAIlG,MAAM,cAAc,GAAG,8BAA8B;IACrD,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;IACjD,IAAI,cAAc,EAAE;AAClB,QAAA,IAAI,CAAC,SAAS,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA,CAAA,EAAI,cAAc,CAAC,CAAC,CAAC,CAAI,CAAA,EAAA,cAAc,CAAC,CAAC,CAAC,EAAE;;;IAInF,MAAM,YAAY,GAAG,oBAAoB;IACzC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;IAC7C,IAAI,YAAY,EAAE;AAChB,QAAA,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;;;IAI1D,MAAM,cAAc,GAAG,mBAAmB;IAC1C,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;IACjD,IAAI,cAAc,EAAE;AAClB,QAAA,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;;;IAIrE,MAAM,gBAAgB,GAAG,qBAAqB;IAC9C,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;IACrD,IAAI,gBAAgB,EAAE;AACpB,QAAA,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;;AAGnE,IAAA,OAAO,IAAI;AACb;;ACjJA;;;;AAIG;AA0BH;;;;;;;;;;;;;;;;;;;;AAoBG;MACU,YAAY,CAAA;AAOvB;;;;AAIG;AACH,IAAA,WAAA,CAAY,UAA+B,EAAE,EAAA;QAXrC,IAAM,CAAA,MAAA,GAAQ,IAAI;QAClB,IAAS,CAAA,SAAA,GAAsH,IAAI;QACnI,IAAW,CAAA,WAAA,GAAY,KAAK;QAUlC,IAAI,CAAC,OAAO,GAAG;YACb,SAAS,EAAE,iBAAiB,EAAE;AAC9B,YAAA,WAAW,EAAE,IAAI;AACjB,YAAA,SAAS,EAAE,EAAE;AACb,YAAA,iBAAiB,EAAE,IAAI;YACvB,MAAM,EAAE,OAAO,CAAC,GAAG;AACnB,YAAA,GAAG;SACJ;;AAGD,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,QAAQ,CAAqB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;;AAG7E;;;;;;AAMG;AACH,IAAA,MAAM,UAAU,GAAA;QACd,IAAI,IAAI,CAAC,WAAW;YAAE;AAEtB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;;AAE1B,YAAA,IAAI,CAAC,SAAS,GAAGA,YAAkB,CAAsE,kBAAkB,CAAC;AAC5H,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI;YACvB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,kBAAkB,CAAC;;aACpC;;AAEL,YAAA,IAAI,CAAC,MAAM,GAAGC,cAAY,CAAC;AACzB,gBAAA,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;AACf,aAAA,CAAC;AAET,YAAA,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YACxB,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC;YACzC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC;AACvC,YAAA,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;AAC9B,gBAAA,uBAAuB,EAAE;AAC1B,aAAA,CAAC;AAEF,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI;YACvB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC;;;AAIvC;;;;AAIG;IACH,MAAM,aAAa,CAAC,SAAoB,EAAA;AACtC,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;AACrB,YAAA,MAAM,IAAI,CAAC,UAAU,EAAE;;;AAIzB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;AAC5B,YAAA,MAAM,WAAW,GAAG,yBAAyB,CAAC,SAAS,CAAC;;YAGxD,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC;YACtD,IAAI,YAAY,EAAE;gBAChB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC;AACnC,gBAAA,OAAO,YAAY;;;;AAKvB,QAAA,MAAM,gBAAgB,GAAG,cAAc,CAAC,uBAAuB,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;AAC1G,QAAA,MAAM,aAAa,GAAG,cAAc,CAAC,wBAAwB,CAAC,gBAAgB,EAAE,EAAE,EAAE,EAAE,CAAC;;AAGvF,QAAA,IAAI;AACF,YAAA,IAAI,UAAsB;YAE1B,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,EAAE;;gBAE5C,MAAM,WAAW,GAAG,cAAc,CAAC,iBAAiB,CAAC,aAAa,CAAC;gBAEnE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;AAC9C,oBAAA,WAAW,EAAE,WAAW;AACxB,oBAAA,iBAAiB,EAAE;AACjB,wBAAA,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;AACtB;AACF,iBAAA,CAAC;AAEF,gBAAA,UAAU,GAAG,MAAM,CAAC,UAAU;AAC9B,gBAAA,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAe,YAAA,EAAA,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,EAAA,CAAI,CAAC;;iBACrE;;AAEL,gBAAA,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;;gBAGnC,MAAM,MAAM,GAAG,cAAc,CAAC,iBAAiB,CAAC,aAAa,CAAC;AAE9D,gBAAA,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;;gBAGpD,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;gBAE5C,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;AACpD,gBAAA,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAA,YAAA,EAAe,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,EAAA,CAAI,CAAC;;;AAIrE,YAAA,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;AAC5B,gBAAA,MAAM,WAAW,GAAG,yBAAyB,CAAC,SAAS,CAAC;gBACxD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC;;AAG/C,YAAA,OAAO,UAAU;;QACjB,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAY,SAAA,EAAA,KAAK,CAAE,CAAA,CAAC;AAC1C,YAAA,OAAO,EAAgB;;;AAI3B;;;;;;;;AAQG;AACK,IAAA,eAAe,CAAC,IAAY,EAAA;QAClC,MAAM,IAAI,GAAe,EAAE;;QAG3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;;QAG1D,MAAM,aAAa,GAAG,eAAe;QACrC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;QAC/C,IAAI,aAAa,EAAE;AACjB,YAAA,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC;;;AAIlC,QAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;AAClF,gBAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;gBACzC;;;;QAKJ,MAAM,sBAAsB,GAAG,YAAY;QAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC;QACtD,IAAI,WAAW,EAAE;AACf,YAAA,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;AAC5B,YAAA,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,CAAC;YACtC,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;;;QAIlG,MAAM,cAAc,GAAG,8BAA8B;QACrD,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;QACjD,IAAI,cAAc,EAAE;AAClB,YAAA,IAAI,CAAC,SAAS,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA,CAAA,EAAI,cAAc,CAAC,CAAC,CAAC,CAAI,CAAA,EAAA,cAAc,CAAC,CAAC,CAAC,EAAE;;;QAInF,MAAM,YAAY,GAAG,oBAAoB;QACzC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;QAC7C,IAAI,YAAY,EAAE;AAChB,YAAA,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;;;QAI1D,MAAM,cAAc,GAAG,mBAAmB;QAC1C,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;QACjD,IAAI,cAAc,EAAE;AAClB,YAAA,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;;;QAIrE,MAAM,gBAAgB,GAAG,qBAAqB;QAC9C,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;QACrD,IAAI,gBAAgB,EAAE;AACpB,YAAA,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;;AAGnE,QAAA,OAAO,IAAI;;AAGb;;AAEG;IACH,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;QACxB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC;;AAGrC;;;;AAIG;AACH,IAAA,MAAM,SAAS,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE;AACf,YAAA,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;AAC7B,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI;;AAGpB,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE;AAC1B,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI;;AAGvB,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;QACxB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,UAAU,CAAC;;AAGnC;;AAEG;IACH,OAAO,GAAA;AACL,QAAA,OAAO,IAAI,CAAC,SAAS,EAAE;;AAE1B;;AC9RD;;;;AAIG;AAIH;;;;;;;;;;;;;;;;;;;;;;AAsBG;MACU,aAAa,CAAA;AACxB;;;;;;;AAOG;IACH,OAAO,gBAAgB,CAAC,QAAgB,EAAA;;QAEtC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,EAAE,EAAE;AACvC,YAAA,OAAO,KAAK;;;QAId,MAAM,OAAO,GAAG,eAAe;QAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;AAC3B,YAAA,OAAO,KAAK;;;AAId,QAAA,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5C,QAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAC9C,QAAA,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAE5C,QAAA,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC;AAC3C,QAAA,IACE,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI;AAC3B,YAAA,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,KAAK;AAC7B,YAAA,IAAI,CAAC,OAAO,EAAE,KAAK,GAAG,EACtB;AACA,YAAA,OAAO,KAAK;;;AAId,QAAA,OAAO,IAAI;;AAGb;;;;;AAKG;IACH,OAAO,sBAAsB,CAAC,QAAgB,EAAA;QAC5C,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;AACpC,YAAA,OAAO,IAAI;;QAGb,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;QAClC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QACpC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;AAElC,QAAA,OAAO,GAAG,IAAI,CAAA,CAAA,EAAI,KAAK,CAAI,CAAA,EAAA,GAAG,EAAE;;AAGlC;;;;;;;AAOG;IACH,OAAO,mBAAmB,CAAC,QAAgB,EAAA;QACzC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;AACpC,YAAA,OAAO,IAAI;;;QAIb,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAChD,QAAA,OAAO,UAAU,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG;;AAGzC;;;;;AAKG;IACH,OAAO,mBAAmB,CAAC,QAAgB,EAAA;QACzC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;AACpC,YAAA,OAAO,IAAI;;QAGb,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;;AAG9B;;;;;;;;;AASG;AACH,IAAA,OAAO,iBAAiB,CAAC,OAAmB,EAAE,QAAiB,EAAA;AAC7D,QAAA,MAAM,MAAM,GAAG,EAAE,GAAG,OAAO,EAAE;;AAG7B,QAAA,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;;AAE7D,YAAA,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;AACrB,gBAAA,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,SAAS;;;AAI9E,YAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;AAClB,gBAAA,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,SAAS;;;;QAK1E,IAAI,QAAQ,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;AAC/C,YAAA,MAAM,CAAC,QAAQ,GAAG,QAAQ;;YAG1B,MAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC;YACvD,IAAI,SAAS,EAAE;AACb,gBAAA,MAAM,CAAC,SAAS,GAAG,SAAS;;YAG9B,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC;YACjD,IAAI,MAAM,EAAE;AACV,gBAAA,MAAM,CAAC,MAAM,GAAG,MAAM;;;AAI1B,QAAA,OAAO,MAAM;;AAGf;;;;;AAKG;AACH,IAAA,kBAAkB,CAAC,UAAsB,EAAA;AACvC,QAAA,MAAM,YAAY,GAAG,EAAC,GAAG,UAAU,EAAC;;AAGpC,QAAA,IAAI,YAAY,CAAC,QAAQ,EAAE;YACzB,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,CAAC;;YAGrE,IAAI,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE;AAChD,gBAAA,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE;oBAC3B,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,QAAQ,CAAC;;;AAI7E,gBAAA,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;oBACxB,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,QAAQ,CAAC;;;;;AAM3E,QAAA,IAAI,YAAY,CAAC,SAAS,EAAE;YAC1B,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,SAAS,CAAC;;;AAIrE,QAAA,IAAI,YAAY,CAAC,OAAO,EAAE;YACxB,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,OAAO,CAAC;;AAGpE,QAAA,OAAO,YAAY;;AAGrB;;AAEG;AACK,IAAA,iBAAiB,CAAC,QAAgB,EAAA;;QAExC,OAAO,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE;;AAGtD;;AAEG;AACK,IAAA,gBAAgB,CAAC,QAAgB,EAAA;;QAEvC,MAAM,OAAO,GAAG,gCAAgC;AAChD,QAAA,OAAO,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;;AAG/B;;AAEG;AACK,IAAA,sBAAsB,CAAC,QAAgB,EAAA;AAC7C,QAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,EAAE,EAAE;AAC1B,YAAA,OAAO,CAAG,EAAA,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA,CAAA,EAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAI,CAAA,EAAA,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA,CAAE;;AAC5F,aAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,EAAE,EAAE;AACjC,YAAA,OAAO,CAAK,EAAA,EAAA,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAA,EAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAI,CAAA,EAAA,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA,CAAE;;AAEnG,QAAA,OAAO,EAAE;;AAGX;;AAEG;AACK,IAAA,mBAAmB,CAAC,QAAgB,EAAA;AAC1C,QAAA,IAAI,OAAe;AACnB,QAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,EAAE,EAAE;YAC1B,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;;aAClC;YACL,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;;AAEzC,QAAA,OAAO,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG;;AAGtC;;AAEG;AACK,IAAA,aAAa,CAAC,IAAY,EAAA;;QAEhC,OAAO,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,UAAU,CAAC;;AAG1D;;AAEG;AACK,IAAA,gBAAgB,CAAC,OAAe,EAAA;;AAEtC,QAAA,OAAO,OAAO,CAAC,IAAI,EAAE;;AAExB;;ACrQD;;;;;;AAMG;AAkBH;;;;AAIG;MACU,SAAS,CAAA;AAQpB;;;AAGG;AACH,IAAA,WAAA,CAAoB,UAA4B,EAAE,EAAA;QAA9B,IAAO,CAAA,OAAA,GAAP,OAAO;QAPnB,IAAS,CAAA,SAAA,GAAY,KAAK;QAC1B,IAAY,CAAA,YAAA,GAA4B,IAAI;QAOlD,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC;AAC/C,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,cAAc,CAAC;YACnC,WAAW,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;YAC9C,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI;AACX,SAAA,CAAC;AAC3B,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,EAAE;AACtC,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,EAAE;;AAG1C;;;;AAIG;AACH,IAAA,MAAM,UAAU,GAAA;AACd,QAAA,IAAI;AACF,YAAA,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE;AACpC,YAAA,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;;QACrC,OAAO,KAAK,EAAE;AACd,YAAA,IAAI,CAAC,WAAW,CAAC,KAAc,CAAC;AAChC,YAAA,MAAM,KAAK;;;AAIf;;;AAGG;IACH,MAAM,kBAAkB,CAAC,YAA8B,EAAA;AACrD,QAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;AACtB,YAAA,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC;;AAGzE,QAAA,IAAI,CAAC,YAAY,GAAG,YAAY;AAChC,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI;QACrB,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC;AACrC,QAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC;;AAGrC;;AAEG;IACH,IAAI,GAAA;AACF,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;AACtB,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;;AAGpB;;AAEG;IACK,MAAM,iBAAiB,CAAC,MAAuB,EAAA;QACrD,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE;AAErB,QAAA,IAAI;;AAEF,YAAA,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;gBACrB,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;gBACtC;;AAGF,YAAA,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC;YAC1E,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,UAAU,CAAC;AAEvE,YAAA,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;AAChC,gBAAA,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,aAAa,CAAC;;;QAE7C,OAAO,KAAK,EAAE;AACd,YAAA,IAAI,CAAC,WAAW,CAAC,KAAc,CAAC;;;AAIpC;;AAEG;AACK,IAAA,WAAW,CAAC,KAAY,EAAA;AAC9B,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;AACxB,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;;aACtB;AACL,YAAA,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC;;;AAI5C;;AAEG;AACH,IAAA,MAAM,SAAS,GAAA;QACb,IAAI,CAAC,IAAI,EAAE;AACX,QAAA,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE;;AAEtC;;;;"}
|
|
1
|
+
{"version":3,"file":"id-scanner-ocr.esm.js","sources":["../src/utils/camera.ts","../src/utils/image-processing.ts","../src/utils/performance.ts","../src/id-recognition/id-detector.ts","../src/utils/worker.ts","../src/id-recognition/ocr-worker.ts","../src/id-recognition/ocr-processor.ts","../src/id-recognition/data-extractor.ts","../src/ocr-module.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null],"names":["createCustomWorker","createWorker"],"mappings":"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"}
|
package/dist/id-scanner-ocr.js
CHANGED
|
@@ -517,7 +517,9 @@
|
|
|
517
517
|
// 如果缓存已满,移除最老的项
|
|
518
518
|
if (this.cache.size >= this.maxSize) {
|
|
519
519
|
const oldestKey = this.cache.keys().next().value;
|
|
520
|
-
|
|
520
|
+
if (oldestKey !== undefined) {
|
|
521
|
+
this.cache.delete(oldestKey);
|
|
522
|
+
}
|
|
521
523
|
}
|
|
522
524
|
// 添加新项
|
|
523
525
|
this.cache.set(key, value);
|
|
@@ -967,9 +969,9 @@
|
|
|
967
969
|
// 加载Tesseract.js (Worker 环境下动态导入)
|
|
968
970
|
const { createWorker } = await import('tesseract.js');
|
|
969
971
|
// 创建OCR Worker
|
|
970
|
-
const worker = createWorker(input.tessWorkerOptions || {
|
|
972
|
+
const worker = await createWorker(input.tessWorkerOptions || {
|
|
971
973
|
logger: (m) => console.log(m)
|
|
972
|
-
});
|
|
974
|
+
}); // 添加类型断言,避免TypeScript错误
|
|
973
975
|
try {
|
|
974
976
|
// 初始化OCR引擎
|
|
975
977
|
await worker.load();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"id-scanner-ocr.js","sources":["../src/utils/camera.ts","../src/utils/image-processing.ts","../src/utils/performance.ts","../src/id-recognition/id-detector.ts","../src/utils/worker.ts","../src/id-recognition/ocr-worker.ts","../src/id-recognition/ocr-processor.ts","../src/id-recognition/data-extractor.ts","../src/ocr-module.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null],"names":["createCustomWorker","createWorker"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"id-scanner-ocr.js","sources":["../src/utils/camera.ts","../src/utils/image-processing.ts","../src/utils/performance.ts","../src/id-recognition/id-detector.ts","../src/utils/worker.ts","../src/id-recognition/ocr-worker.ts","../src/id-recognition/ocr-processor.ts","../src/id-recognition/data-extractor.ts","../src/ocr-module.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null],"names":["createCustomWorker","createWorker"],"mappings":";;;;;;IAAA;;;;IAIG;IAgBH;;;;;;;;;;;;;;;;;;;;;;;;IAwBG;UACU,MAAM,CAAA;IAIjB;;;IAGG;IACH,IAAA,WAAA,CAAoB,UAAyB,EAAE,EAAA;YAA3B,IAAO,CAAA,OAAA,GAAP,OAAO;YAPnB,IAAM,CAAA,MAAA,GAAuB,IAAI;YACjC,IAAY,CAAA,YAAA,GAA4B,IAAI;YAOlD,IAAI,CAAC,OAAO,GAAG;IACb,YAAA,KAAK,EAAE,GAAG;IACV,YAAA,MAAM,EAAE,GAAG;IACX,YAAA,UAAU,EAAE,aAAa;IACzB,YAAA,GAAG;aACJ;;IAGH;;;;IAIG;QACH,MAAM,KAAK,CAAC,YAA8B,EAAA;IACxC,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;;IAGtC;;IAEG;QACH,IAAI,GAAA;YACF,IAAI,CAAC,OAAO,EAAE;;IAGhB;;;;;;IAMG;QACH,MAAM,UAAU,CAAC,YAA8B,EAAA;IAC7C,QAAA,IAAI,CAAC,YAAY,GAAG,YAAY;IAEhC,QAAA,IAAI;;IAEF,YAAA,MAAM,WAAW,GAA2B;IAC1C,gBAAA,KAAK,EAAE;wBACL,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;wBACpC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;IACtC,oBAAA,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC;IAC1B;iBACF;;IAGD,YAAA,IAAI,CAAC,MAAM,GAAG,MAAM,SAAS,CAAC,YAAY,CAAC,YAAY,CAAC,WAAW,CAAC;;IAGpE,YAAA,IAAI,IAAI,CAAC,YAAY,EAAE;oBACrB,IAAI,CAAC,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM;IACzC,gBAAA,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,KAAI;IAClC,oBAAA,IAAI,IAAI,CAAC,YAAY,EAAE;IACrB,wBAAA,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,MAAK;IACxC,4BAAA,IAAI,IAAI,CAAC,YAAY,EAAE;IACrB,gCAAA,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,OAAO,EAAE,CAAC;;IAElD,yBAAC;;IAEL,iBAAC,CAAC;;;YAEJ,OAAO,KAAK,EAAE;IACd,YAAA,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC;IAChC,YAAA,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC;;;IAI7D;;;;IAIG;QACH,YAAY,GAAA;IACV,QAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;IACtB,YAAA,OAAO,IAAI;;;YAIb,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;YAC/C,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU;YAC3C,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW;YAE7C,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;YACvC,IAAI,CAAC,OAAO,EAAE;IACZ,YAAA,OAAO,IAAI;;;IAIb,QAAA,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;;IAGvE,QAAA,OAAO,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;;IAGhE;;IAEG;QACH,OAAO,GAAA;;IAEL,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE;IACf,YAAA,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;IACtD,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI;;;IAIpB,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;IACrB,YAAA,IAAI,CAAC,YAAY,CAAC,SAAS,GAAG,IAAI;IAClC,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI;;;IAG7B;;ICnKD;;;;IAIG;IAEH;;;;;;;;;;;;;;;;;;IAkBG;UACU,cAAc,CAAA;IACzB;;;;;IAKG;QACH,OAAO,iBAAiB,CAAC,SAAoB,EAAA;YAC3C,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IAC/C,QAAA,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK;IAC9B,QAAA,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM;YAChC,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;YAEnC,IAAI,GAAG,EAAE;gBACP,GAAG,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;;IAGnC,QAAA,OAAO,MAAM;;IAGf;;;;;IAKG;QACH,OAAO,iBAAiB,CAAC,MAAyB,EAAA;YAChD,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;YACnC,OAAO,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI;;IAGzE;;;;;;;IAOG;QACH,OAAO,wBAAwB,CAAC,SAAoB,EAAE,UAAqB,GAAA,CAAC,EAAE,QAAA,GAAmB,CAAC,EAAA;YAChG,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;YAChD,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;YAEnC,IAAI,GAAG,EAAE;IACP,YAAA,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;IACnE,YAAA,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI;;gBAGzB,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,QAAQ,GAAG,GAAG,CAAC,KAAK,GAAG,IAAI,GAAG,GAAG,QAAQ,CAAC,CAAC;IAElE,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;;oBAEvC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,UAAU,CAAC;;oBAEpE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,UAAU,CAAC;;oBAE5E,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,UAAU,CAAC;;;gBAI9E,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAC/B,YAAA,OAAO,OAAO;;IAGhB,QAAA,OAAO,SAAS;;IAGlB;;;;;;IAMG;QACK,OAAO,QAAQ,CAAC,KAAa,EAAA;IACnC,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;;IAG1C;;;;;;;IAOG;QACH,OAAO,WAAW,CAAC,SAAoB,EAAA;YACrC,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;YAChD,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;YAEnC,IAAI,GAAG,EAAE;IACP,YAAA,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;IACnE,YAAA,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI;IAEzB,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;oBACvC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;IACrD,gBAAA,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;oBACd,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;oBAClB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;;;gBAIpB,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAC/B,YAAA,OAAO,OAAO;;IAGhB,QAAA,OAAO,SAAS;;IAGlB;;;;;;;IAOG;IACH,IAAA,OAAO,MAAM,CAAC,SAAoB,EAAE,QAAgB,EAAE,SAAiB,EAAA;YACrE,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IAC/C,QAAA,MAAM,CAAC,KAAK,GAAG,QAAQ;IACvB,QAAA,MAAM,CAAC,MAAM,GAAG,SAAS;YACzB,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;YAEnC,IAAI,GAAG,EAAE;gBACP,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;gBACpD,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC;IAC7F,YAAA,OAAO,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC;;IAGpD,QAAA,OAAO,SAAS;;IAGlB;;;;;;;;IAQG;IACH,IAAA,OAAO,uBAAuB,CAAC,SAAoB,EAAE,eAAuB,IAAI,EAAA;IAC9E,QAAA,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,SAAS;;YAGnC,IAAI,KAAK,IAAI,YAAY,IAAI,MAAM,IAAI,YAAY,EAAE;IACnD,YAAA,OAAO,SAAS;;;IAIlB,QAAA,MAAM,KAAK,GAAG,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC;YACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;YAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;;YAG5C,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC;;IAGpD;;;;;IAKG;QACH,OAAO,iBAAiB,CAAC,SAAoB,EAAA;YAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;YAChD,OAAO,MAAM,CAAC,SAAS,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;;IAG7C;;;;;IAKG;IACH,IAAA,aAAa,iBAAiB,CAAC,MAAc,EAAA;YAC3C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;IACrC,YAAA,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE;IACvB,YAAA,GAAG,CAAC,MAAM,GAAG,MAAK;oBAChB,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IAC/C,gBAAA,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK;IACxB,gBAAA,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM;oBAC1B,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;oBAEnC,IAAI,CAAC,GAAG,EAAE;IACR,oBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;wBAClC;;oBAGF,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACxB,gBAAA,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;oBACrE,OAAO,CAAC,SAAS,CAAC;IACpB,aAAC;IAED,YAAA,GAAG,CAAC,OAAO,GAAG,MAAK;IACjB,gBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC7B,aAAC;IAED,YAAA,GAAG,CAAC,GAAG,GAAG,MAAM;IAClB,SAAC,CAAC;;IAGJ;;;;;;;;IAQG;QACH,aAAa,sBAAsB,CACjC,SAAoB,EACpB,kBAAqD,EACrD,MAAA,GAAiB,CAAC,EAAA;;IAGlB,QAAA,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,MAAM,GAAG,MAAM,EAAE;IAChF,YAAA,OAAO,kBAAkB,CAAC,SAAS,CAAC;;;YAItC,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IACrD,QAAA,YAAY,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK;IACpC,QAAA,YAAY,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM;YACtC,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC;YAE/C,IAAI,CAAC,SAAS,EAAE;IACd,YAAA,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC;;;YAIlC,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,MAAM;YACjD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,MAAM,IAAI,MAAM,CAAC;;YAGpF,MAAM,QAAQ,GAAG,EAAE;IAEnB,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC/B,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;gBACpD,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC;IAE7C,YAAA,IAAI,CAAC,QAAQ;oBAAE;IAEf,YAAA,IAAI,cAAc;gBAElB,IAAI,MAAM,EAAE;;IAEV,gBAAA,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS;oBAC5B,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,KAAK,GAAG,MAAM,GAAG,SAAS;IAEvE,gBAAA,WAAW,CAAC,KAAK,GAAG,KAAK;IACzB,gBAAA,WAAW,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM;;oBAGrC,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;oBACpD,QAAQ,CAAC,SAAS,CAChB,UAAU,EACV,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,EAClC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,CAC9B;IAED,gBAAA,cAAc,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC;;qBAChE;;IAEL,gBAAA,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS;oBAC5B,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS;IAEzE,gBAAA,WAAW,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK;IACnC,gBAAA,WAAW,CAAC,MAAM,GAAG,MAAM;;oBAG3B,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;oBACpD,QAAQ,CAAC,SAAS,CAChB,UAAU,EACV,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,EAClC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,CAC9B;IAED,gBAAA,cAAc,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC;;;IAIvE,YAAA,MAAM,UAAU,GAAG;;;uCAGc,kBAAkB,CAAC,QAAQ,EAAE,CAAA;;;;OAI7D;IAED,YAAA,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;gBACvE,MAAM,SAAS,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC;IAC3C,YAAA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC;gBAEpC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAuC,CAAC,OAAO,KAAI;IAC5E,gBAAA,MAAM,CAAC,SAAS,GAAG,UAAS,CAAC,EAAA;IAC3B,oBAAA,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;wBACf,MAAM,CAAC,SAAS,EAAE;IAClB,oBAAA,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC;IAChC,iBAAC;;oBAGD,MAAM,CAAC,WAAW,CAAC;IACjB,oBAAA,SAAS,EAAE,cAAc;IACzB,oBAAA,KAAK,EAAE;qBACR,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,aAAC,CAAC;IAEF,YAAA,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;;;YAIxB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;;IAG3C,QAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;;IAGzC,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACvC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;gBAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;gBAEjD,IAAI,MAAM,EAAE;IACV,gBAAA,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS;oBAC5B,SAAS,CAAC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;;qBACrC;IACL,gBAAA,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS;oBAC5B,SAAS,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,EAAE,MAAM,CAAC;;;IAI9C,QAAA,OAAO,SAAS,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC;;IAEzE;;ICxWD;;;;IAIG;IAEH;;;;;;IAMG;IACa,SAAA,QAAQ,CACtB,EAAK,EACL,KAAa,EAAA;QAEb,IAAI,QAAQ,GAAG,CAAC;QAChB,IAAI,SAAS,GAAkB,IAAI;QAEnC,OAAO,UAAoB,GAAG,IAAmB,EAAA;IAC/C,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;YACtB,MAAM,SAAS,GAAG,KAAK,IAAI,GAAG,GAAG,QAAQ,CAAC;IAE1C,QAAA,IAAI,SAAS,IAAI,CAAC,EAAE;gBAClB,IAAI,SAAS,EAAE;oBACb,YAAY,CAAC,SAAS,CAAC;oBACvB,SAAS,GAAG,IAAI;;gBAElB,QAAQ,GAAG,GAAG;IACd,YAAA,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;;iBACf,IAAI,CAAC,SAAS,EAAE;IACrB,YAAA,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,MAAK;IACjC,gBAAA,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE;oBACrB,SAAS,GAAG,IAAI;IAChB,gBAAA,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;iBACrB,EAAE,SAAS,CAAC;;IAEjB,KAAC;IACH;IA2BA;;IAEG;UACU,QAAQ,CAAA;IAGnB;;;IAGG;IACH,IAAA,WAAA,CAAoB,UAAkB,GAAG,EAAA;YAArB,IAAO,CAAA,OAAA,GAAP,OAAO;IANnB,QAAA,IAAA,CAAA,KAAK,GAAG,IAAI,GAAG,EAAQ;;IAQ/B;;;;IAIG;IACH,IAAA,GAAG,CAAC,GAAM,EAAA;YACR,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;IACxB,YAAA,OAAO,SAAS;;;YAIlB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAE;;IAGlC,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;YACtB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;IAE1B,QAAA,OAAO,KAAK;;IAGd;;;;IAIG;QACH,GAAG,CAAC,GAAM,EAAE,KAAQ,EAAA;;YAElB,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;IACvB,YAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;;;YAIxB,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE;IACnC,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK;IAChD,YAAA,IAAI,SAAS,KAAK,SAAS,EAAE;IAC3B,gBAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC;;;;YAKhC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;;IAG5B;;;;IAIG;IACH,IAAA,MAAM,CAAC,GAAM,EAAA;YACX,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;;IAG/B;;IAEG;QACH,KAAK,GAAA;IACH,QAAA,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;;IAGpB;;IAEG;IACH,IAAA,IAAI,IAAI,GAAA;IACN,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI;;IAGxB;;;IAGG;IACH,IAAA,GAAG,CAAC,GAAM,EAAA;YACR,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;;IAE7B;IAED;;;;;;IAMG;aACa,yBAAyB,CAAC,SAAoB,EAAE,OAAe,CAAC,EAAA;;QAE9E,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IAC/C,IAAA,MAAM,CAAC,KAAK,GAAG,IAAI;IACnB,IAAA,MAAM,CAAC,MAAM,GAAG,IAAI;QACpB,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;QAEnC,IAAI,CAAC,GAAG,EAAE;IACR,QAAA,OAAO,EAAE;;;QAIX,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IACnD,IAAA,UAAU,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK;IAClC,IAAA,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM;QACpC,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC;QAE3C,IAAI,CAAC,OAAO,EAAE;IACZ,QAAA,OAAO,EAAE;;QAGX,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;;QAGrC,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC;;IAGpF,IAAA,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC;QACvD,MAAM,UAAU,GAAG,EAAE;IAErB,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YACpD,MAAM,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9B,MAAM,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;;IAElC,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;IAC1D,QAAA,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;;;QAIvB,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM;;QAG7E,IAAI,WAAW,GAAG,EAAE;IACpB,IAAA,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE;IAC7B,QAAA,WAAW,IAAI,IAAI,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG;;IAGxC,IAAA,OAAO,WAAW;IACpB;;ICjNA;;;;IAIG;IAqBH;;;;;;;;;;;;;;;;;;;;;;;;IAwBG;UACU,cAAc,CAAA;IAczB;;;;IAIG;IACH,IAAA,WAAA,CAAY,OAAqE,EAAA;YAjBzE,IAAS,CAAA,SAAA,GAAG,KAAK;YACjB,IAAW,CAAA,WAAA,GAAkB,IAAI;YAOjC,IAAU,CAAA,UAAA,GAAW,CAAC;YACtB,IAAiB,CAAA,iBAAA,GAAW,CAAC;IASnC,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,EAAE;IAE1B,QAAA,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;;IAEjC,YAAA,IAAI,CAAC,UAAU,GAAG,OAAO;gBACzB,IAAI,CAAC,OAAO,GAAG;IACb,gBAAA,iBAAiB,EAAE,GAAG;IACtB,gBAAA,iBAAiB,EAAE,GAAG;IACtB,gBAAA,WAAW,EAAE,IAAI;IACjB,gBAAA,SAAS,EAAE,EAAE;oBACb,MAAM,EAAE,OAAO,CAAC;iBACjB;;iBACI,IAAI,OAAO,EAAE;;gBAElB,IAAI,CAAC,OAAO,GAAG;IACb,gBAAA,iBAAiB,EAAE,GAAG;IACtB,gBAAA,iBAAiB,EAAE,GAAG;IACtB,gBAAA,WAAW,EAAE,IAAI;IACjB,gBAAA,SAAS,EAAE,EAAE;oBACb,MAAM,EAAE,OAAO,CAAC,GAAG;IACnB,gBAAA,GAAG;iBACJ;IACD,YAAA,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,WAAW;IACrC,YAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO;;iBACzB;gBACL,IAAI,CAAC,OAAO,GAAG;IACb,gBAAA,iBAAiB,EAAE,GAAG;IACtB,gBAAA,iBAAiB,EAAE,GAAG;IACtB,gBAAA,WAAW,EAAE,IAAI;IACjB,gBAAA,SAAS,EAAE,EAAE;oBACb,MAAM,EAAE,OAAO,CAAC;iBACjB;;YAGH,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAkB;YACxD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAkB;;IAGxD,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,QAAQ,CAA0B,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;;IAGhF,QAAA,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC;;IAG3F;;;;;;;IAOG;QACH,MAAM,KAAK,CAAC,YAA8B,EAAA;YACxC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC;IAC1C,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI;IACrB,QAAA,IAAI,CAAC,UAAU,GAAG,CAAC;IACnB,QAAA,IAAI,CAAC,iBAAiB,GAAG,CAAC;YAC1B,IAAI,CAAC,MAAM,EAAE;;IAGf;;IAEG;QACH,IAAI,GAAA;IACF,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;IACtB,QAAA,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE;IAC7B,YAAA,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC;IACtC,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI;;;IAI3B;;;;IAIG;QACK,MAAM,GAAA;YACZ,IAAI,CAAC,IAAI,CAAC,SAAS;gBAAE;IAErB,QAAA,IAAI,CAAC,WAAW,GAAG,qBAAqB,CAAC,MAAK;IAC5C,YAAA,IAAI;oBACF,IAAI,CAAC,UAAU,EAAE;IACjB,gBAAA,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE;;;IAI7B,gBAAA,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,EAAE;wBACvF,IAAI,CAAC,eAAe,EAAE;IACtB,oBAAA,IAAI,CAAC,iBAAiB,GAAG,GAAG;;;oBAI9B,IAAI,CAAC,MAAM,EAAE;;gBACb,OAAO,KAAK,EAAE;IACd,gBAAA,IAAI,IAAI,CAAC,OAAO,EAAE;IAChB,oBAAA,IAAI,CAAC,OAAO,CAAC,KAAc,CAAC;;yBACvB;IACL,oBAAA,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC;;;oBAIlC,UAAU,CAAC,MAAK;IACd,oBAAA,IAAI,IAAI,CAAC,SAAS,EAAE;4BAClB,IAAI,CAAC,MAAM,EAAE;;qBAEhB,EAAE,IAAI,CAAC;;IAEZ,SAAC,CAAC;;IAGJ;;;;IAIG;IACK,IAAA,MAAM,gBAAgB,GAAA;YAC5B,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM;gBAAE;;YAGrC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;IACxC,QAAA,IAAI,CAAC,KAAK;gBAAE;;IAGZ,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;gBAC5B,MAAM,WAAW,GAAG,yBAAyB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACzD,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC;gBAEtD,IAAI,YAAY,EAAE;oBAChB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,WAAW,CAAC;;IAGlC,gBAAA,MAAM,aAAa,GAAG;IACpB,oBAAA,GAAG,YAAY;IACf,oBAAA,SAAS,EAAE;qBACZ;IAED,gBAAA,IAAI,IAAI,CAAC,UAAU,EAAE;IACnB,oBAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;;oBAEhC;;;;IAKJ,QAAA,MAAM,gBAAgB,GAAG,cAAc,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC;IAE9F,QAAA,IAAI;;gBAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;;IAGxD,YAAA,IAAI,MAAM,CAAC,OAAO,EAAE;IAClB,gBAAA,MAAM,CAAC,SAAS,GAAG,KAAK;;IAGxB,gBAAA,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;wBAC5B,MAAM,WAAW,GAAG,yBAAyB,CAAC,KAAK,EAAE,EAAE,CAAC;wBACxD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC;;;;IAK7C,YAAA,IAAI,IAAI,CAAC,UAAU,EAAE;IACnB,gBAAA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;;;YAEzB,OAAO,KAAK,EAAE;IACd,YAAA,IAAI,IAAI,CAAC,OAAO,EAAE;IAChB,gBAAA,IAAI,CAAC,OAAO,CAAC,KAAc,CAAC;;qBACvB;IACL,gBAAA,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC;;;;IAKtC;;;;;;IAMG;QACK,MAAM,YAAY,CAAC,SAAoB,EAAA;;YAE3B,cAAc,CAAC,WAAW,CAAC,SAAS;;;;;;IAQtD,QAAA,MAAM,eAAe,GAAoB;gBACvC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG;IAC5B,YAAA,OAAO,EAAE;aACV;IAED,QAAA,IAAI,eAAe,CAAC,OAAO,EAAE;;IAE3B,YAAA,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK;IAC7B,YAAA,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM;;gBAG/B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC;IACzC,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC;IACjD,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,SAAS,IAAI,CAAC,CAAC;IACjD,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,UAAU,IAAI,CAAC,CAAC;;gBAGnD,eAAe,CAAC,OAAO,GAAG;IACxB,gBAAA,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE;oBACtB,EAAE,CAAC,EAAE,KAAK,GAAG,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE;oBAClC,EAAE,CAAC,EAAE,KAAK,GAAG,SAAS,EAAE,CAAC,EAAE,KAAK,GAAG,UAAU,EAAE;oBAC/C,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,UAAU;iBAClC;;gBAGD,eAAe,CAAC,WAAW,GAAG;IAC5B,gBAAA,CAAC,EAAE,KAAK;IACR,gBAAA,CAAC,EAAE,KAAK;IACR,gBAAA,KAAK,EAAE,SAAS;IAChB,gBAAA,MAAM,EAAE;iBACT;;gBAGD,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IAC/C,YAAA,MAAM,CAAC,KAAK,GAAG,SAAS;IACxB,YAAA,MAAM,CAAC,MAAM,GAAG,UAAU;gBAC1B,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;gBAEnC,IAAI,GAAG,EAAE;oBACP,MAAM,UAAU,GAAG,cAAc,CAAC,iBAAiB,CAAC,SAAS,CAAC;oBAC9D,GAAG,CAAC,SAAS,CACX,UAAU,EACV,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EACnC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,CAC5B;IAED,gBAAA,eAAe,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC;;;gBAI9E,eAAe,CAAC,UAAU,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG;;IAGxD,QAAA,OAAO,eAAe;;IAGxB;;IAEG;QACH,UAAU,GAAA;IACR,QAAA,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;YACxB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,WAAW,CAAC;;IAGpC;;IAEG;QACH,OAAO,GAAA;YACL,IAAI,CAAC,IAAI,EAAE;IACX,QAAA,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;IACrB,QAAA,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;;IAE3B;;IC7UD;;;;IAIG;IAEH;;;;;IAKG;IACG,SAAU,YAAY,CAAO,cAAwB,EAAA;;IAKzD,IAAA,MAAM,UAAU,GAAG;;;gCAGW,cAAc,CAAC,QAAQ,EAAE,CAAA;;;;;;;;;GAStD;IAED,IAAA,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;QACvE,MAAM,SAAS,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC;IAC3C,IAAA,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC;;IAGpC,IAAA,MAAM,UAAU,GAAG,IAAI,GAAG,EAGtB;QAEJ,IAAI,cAAc,GAAG,CAAC;IAEtB,IAAA,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,KAAI;;IAEvB,QAAA,IAAI,UAAU,CAAC,IAAI,KAAK,CAAC,EAAE;IACzB,YAAA,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC;;IAGhC,QAAA,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI;YAE7C,MAAM,eAAe,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,IAAI,eAAe,EAAE;IACnB,YAAA,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAErB,IAAI,OAAO,EAAE;IACX,gBAAA,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC;;qBAC1B;oBACL,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;IAC5C,gBAAA,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK;IAC/B,gBAAA,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC;;;IAGzC,KAAC;QAED,OAAO;IACL,QAAA,WAAW,EAAE,CAAC,IAAO,KAAgB;gBACnC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;IACrC,gBAAA,MAAM,EAAE,GAAG,cAAc,EAAE;oBAC3B,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;oBACvC,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IAClC,aAAC,CAAC;aACH;YACD,SAAS,EAAE,MAAK;gBACd,MAAM,CAAC,SAAS,EAAE;gBAClB,UAAU,CAAC,KAAK,EAAE;IAClB,YAAA,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC;;SAEjC;IACH;IAEA;;;;IAIG;aACa,iBAAiB,GAAA;IAC/B,IAAA,OAAO,OAAO,MAAM,KAAK,WAAW;IACtC;;ICxFA;;;;IAIG;IAoBH;;;;;;;IAOG;IACI,eAAe,kBAAkB,CAAC,KAAsB,EAAA;;IAE7D,IAAA,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;;QAGnC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,OAAO,cAAc,CAAC;;QAGrD,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,iBAAiB,IAAI;YAC3D,MAAM,EAAE,CAAC,CAAM,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;SAClC,CAAQ,CAAC;IAEV,IAAA,IAAI;;IAEF,QAAA,MAAM,MAAM,CAAC,IAAI,EAAE;IACnB,QAAA,MAAM,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC;IACpC,QAAA,MAAM,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC;YAClC,MAAM,MAAM,CAAC,aAAa,CAAC;IACzB,YAAA,uBAAuB,EAAE;IAC1B,SAAA,CAAC;;IAGF,QAAA,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC;;YAG1D,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;;IAG7C,QAAA,MAAM,MAAM,CAAC,SAAS,EAAE;;YAGxB,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;;YAGpD,OAAO;gBACL,UAAU;gBACV;aACD;;QACD,OAAO,KAAK,EAAE;;IAEd,QAAA,MAAM,MAAM,CAAC,SAAS,EAAE;IACxB,QAAA,MAAM,KAAK;;IAEf;IAEA;;;;;;;;IAQG;IACH,SAAS,eAAe,CAAC,IAAY,EAAA;QACnC,MAAM,IAAI,GAAe,EAAE;;QAG3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;;QAG1D,MAAM,aAAa,GAAG,eAAe;QACrC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;QAC/C,IAAI,aAAa,EAAE;IACjB,QAAA,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC;;;IAIlC,IAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;IAClF,YAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;gBACzC;;;;QAKJ,MAAM,sBAAsB,GAAG,YAAY;QAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC;QACtD,IAAI,WAAW,EAAE;IACf,QAAA,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;IAC5B,QAAA,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,CAAC;YACtC,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;;;QAIlG,MAAM,cAAc,GAAG,8BAA8B;QACrD,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;QACjD,IAAI,cAAc,EAAE;IAClB,QAAA,IAAI,CAAC,SAAS,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA,CAAA,EAAI,cAAc,CAAC,CAAC,CAAC,CAAI,CAAA,EAAA,cAAc,CAAC,CAAC,CAAC,EAAE;;;QAInF,MAAM,YAAY,GAAG,oBAAoB;QACzC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;QAC7C,IAAI,YAAY,EAAE;IAChB,QAAA,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;;;QAI1D,MAAM,cAAc,GAAG,mBAAmB;QAC1C,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;QACjD,IAAI,cAAc,EAAE;IAClB,QAAA,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;;;QAIrE,MAAM,gBAAgB,GAAG,qBAAqB;QAC9C,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;QACrD,IAAI,gBAAgB,EAAE;IACpB,QAAA,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;;IAGnE,IAAA,OAAO,IAAI;IACb;;ICjJA;;;;IAIG;IA0BH;;;;;;;;;;;;;;;;;;;;IAoBG;UACU,YAAY,CAAA;IAOvB;;;;IAIG;IACH,IAAA,WAAA,CAAY,UAA+B,EAAE,EAAA;YAXrC,IAAM,CAAA,MAAA,GAAQ,IAAI;YAClB,IAAS,CAAA,SAAA,GAAsH,IAAI;YACnI,IAAW,CAAA,WAAA,GAAY,KAAK;YAUlC,IAAI,CAAC,OAAO,GAAG;gBACb,SAAS,EAAE,iBAAiB,EAAE;IAC9B,YAAA,WAAW,EAAE,IAAI;IACjB,YAAA,SAAS,EAAE,EAAE;IACb,YAAA,iBAAiB,EAAE,IAAI;gBACvB,MAAM,EAAE,OAAO,CAAC,GAAG;IACnB,YAAA,GAAG;aACJ;;IAGD,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,QAAQ,CAAqB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;;IAG7E;;;;;;IAMG;IACH,IAAA,MAAM,UAAU,GAAA;YACd,IAAI,IAAI,CAAC,WAAW;gBAAE;IAEtB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;;IAE1B,YAAA,IAAI,CAAC,SAAS,GAAGA,YAAkB,CAAsE,kBAAkB,CAAC;IAC5H,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI;gBACvB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,kBAAkB,CAAC;;iBACpC;;IAEL,YAAA,IAAI,CAAC,MAAM,GAAGC,yBAAY,CAAC;IACzB,gBAAA,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;IACf,aAAA,CAAC;IAET,YAAA,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;gBACxB,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC;gBACzC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC;IACvC,YAAA,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;IAC9B,gBAAA,uBAAuB,EAAE;IAC1B,aAAA,CAAC;IAEF,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI;gBACvB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC;;;IAIvC;;;;IAIG;QACH,MAAM,aAAa,CAAC,SAAoB,EAAA;IACtC,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;IACrB,YAAA,MAAM,IAAI,CAAC,UAAU,EAAE;;;IAIzB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;IAC5B,YAAA,MAAM,WAAW,GAAG,yBAAyB,CAAC,SAAS,CAAC;;gBAGxD,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC;gBACtD,IAAI,YAAY,EAAE;oBAChB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC;IACnC,gBAAA,OAAO,YAAY;;;;IAKvB,QAAA,MAAM,gBAAgB,GAAG,cAAc,CAAC,uBAAuB,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;IAC1G,QAAA,MAAM,aAAa,GAAG,cAAc,CAAC,wBAAwB,CAAC,gBAAgB,EAAE,EAAE,EAAE,EAAE,CAAC;;IAGvF,QAAA,IAAI;IACF,YAAA,IAAI,UAAsB;gBAE1B,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,EAAE;;oBAE5C,MAAM,WAAW,GAAG,cAAc,CAAC,iBAAiB,CAAC,aAAa,CAAC;oBAEnE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC;IAC9C,oBAAA,WAAW,EAAE,WAAW;IACxB,oBAAA,iBAAiB,EAAE;IACjB,wBAAA,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC;IACtB;IACF,iBAAA,CAAC;IAEF,gBAAA,UAAU,GAAG,MAAM,CAAC,UAAU;IAC9B,gBAAA,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAe,YAAA,EAAA,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,EAAA,CAAI,CAAC;;qBACrE;;IAEL,gBAAA,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;;oBAGnC,MAAM,MAAM,GAAG,cAAc,CAAC,iBAAiB,CAAC,aAAa,CAAC;IAE9D,gBAAA,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;;oBAGpD,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;oBAE5C,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS;IACpD,gBAAA,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAA,YAAA,EAAe,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA,EAAA,CAAI,CAAC;;;IAIrE,YAAA,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;IAC5B,gBAAA,MAAM,WAAW,GAAG,yBAAyB,CAAC,SAAS,CAAC;oBACxD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC;;IAG/C,YAAA,OAAO,UAAU;;YACjB,OAAO,KAAK,EAAE;gBACd,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAY,SAAA,EAAA,KAAK,CAAE,CAAA,CAAC;IAC1C,YAAA,OAAO,EAAgB;;;IAI3B;;;;;;;;IAQG;IACK,IAAA,eAAe,CAAC,IAAY,EAAA;YAClC,MAAM,IAAI,GAAe,EAAE;;YAG3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;;YAG1D,MAAM,aAAa,GAAG,eAAe;YACrC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;YAC/C,IAAI,aAAa,EAAE;IACjB,YAAA,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC;;;IAIlC,QAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;gBACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;IAClF,gBAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;oBACzC;;;;YAKJ,MAAM,sBAAsB,GAAG,YAAY;YAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC;YACtD,IAAI,WAAW,EAAE;IACf,YAAA,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;IAC5B,YAAA,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,CAAC;gBACtC,IAAI,CAAC,WAAW,GAAG,eAAe,CAAC,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;;;YAIlG,MAAM,cAAc,GAAG,8BAA8B;YACrD,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YACjD,IAAI,cAAc,EAAE;IAClB,YAAA,IAAI,CAAC,SAAS,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA,CAAA,EAAI,cAAc,CAAC,CAAC,CAAC,CAAI,CAAA,EAAA,cAAc,CAAC,CAAC,CAAC,EAAE;;;YAInF,MAAM,YAAY,GAAG,oBAAoB;YACzC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;YAC7C,IAAI,YAAY,EAAE;IAChB,YAAA,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;;;YAI1D,MAAM,cAAc,GAAG,mBAAmB;YAC1C,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YACjD,IAAI,cAAc,EAAE;IAClB,YAAA,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;;;YAIrE,MAAM,gBAAgB,GAAG,qBAAqB;YAC9C,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;YACrD,IAAI,gBAAgB,EAAE;IACpB,YAAA,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;;IAGnE,QAAA,OAAO,IAAI;;IAGb;;IAEG;QACH,UAAU,GAAA;IACR,QAAA,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;YACxB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC;;IAGrC;;;;IAIG;IACH,IAAA,MAAM,SAAS,GAAA;IACb,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE;IACf,YAAA,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;IAC7B,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI;;IAGpB,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;IAClB,YAAA,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE;IAC1B,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI;;IAGvB,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;YACxB,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,UAAU,CAAC;;IAGnC;;IAEG;QACH,OAAO,GAAA;IACL,QAAA,OAAO,IAAI,CAAC,SAAS,EAAE;;IAE1B;;IC9RD;;;;IAIG;IAIH;;;;;;;;;;;;;;;;;;;;;;IAsBG;UACU,aAAa,CAAA;IACxB;;;;;;;IAOG;QACH,OAAO,gBAAgB,CAAC,QAAgB,EAAA;;YAEtC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,EAAE,EAAE;IACvC,YAAA,OAAO,KAAK;;;YAId,MAAM,OAAO,GAAG,eAAe;YAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;IAC3B,YAAA,OAAO,KAAK;;;IAId,QAAA,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,QAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9C,QAAA,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAE5C,QAAA,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC;IAC3C,QAAA,IACE,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI;IAC3B,YAAA,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,KAAK;IAC7B,YAAA,IAAI,CAAC,OAAO,EAAE,KAAK,GAAG,EACtB;IACA,YAAA,OAAO,KAAK;;;IAId,QAAA,OAAO,IAAI;;IAGb;;;;;IAKG;QACH,OAAO,sBAAsB,CAAC,QAAgB,EAAA;YAC5C,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;IACpC,YAAA,OAAO,IAAI;;YAGb,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;YAClC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;YACpC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;IAElC,QAAA,OAAO,GAAG,IAAI,CAAA,CAAA,EAAI,KAAK,CAAI,CAAA,EAAA,GAAG,EAAE;;IAGlC;;;;;;;IAOG;QACH,OAAO,mBAAmB,CAAC,QAAgB,EAAA;YACzC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;IACpC,YAAA,OAAO,IAAI;;;YAIb,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAChD,QAAA,OAAO,UAAU,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG;;IAGzC;;;;;IAKG;QACH,OAAO,mBAAmB,CAAC,QAAgB,EAAA;YACzC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;IACpC,YAAA,OAAO,IAAI;;YAGb,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;;IAG9B;;;;;;;;;IASG;IACH,IAAA,OAAO,iBAAiB,CAAC,OAAmB,EAAE,QAAiB,EAAA;IAC7D,QAAA,MAAM,MAAM,GAAG,EAAE,GAAG,OAAO,EAAE;;IAG7B,QAAA,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;;IAE7D,YAAA,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;IACrB,gBAAA,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,SAAS;;;IAI9E,YAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;IAClB,gBAAA,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,SAAS;;;;YAK1E,IAAI,QAAQ,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;IAC/C,YAAA,MAAM,CAAC,QAAQ,GAAG,QAAQ;;gBAG1B,MAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC;gBACvD,IAAI,SAAS,EAAE;IACb,gBAAA,MAAM,CAAC,SAAS,GAAG,SAAS;;gBAG9B,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC;gBACjD,IAAI,MAAM,EAAE;IACV,gBAAA,MAAM,CAAC,MAAM,GAAG,MAAM;;;IAI1B,QAAA,OAAO,MAAM;;IAGf;;;;;IAKG;IACH,IAAA,kBAAkB,CAAC,UAAsB,EAAA;IACvC,QAAA,MAAM,YAAY,GAAG,EAAC,GAAG,UAAU,EAAC;;IAGpC,QAAA,IAAI,YAAY,CAAC,QAAQ,EAAE;gBACzB,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,QAAQ,CAAC;;gBAGrE,IAAI,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE;IAChD,gBAAA,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE;wBAC3B,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,QAAQ,CAAC;;;IAI7E,gBAAA,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;wBACxB,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,QAAQ,CAAC;;;;;IAM3E,QAAA,IAAI,YAAY,CAAC,SAAS,EAAE;gBAC1B,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,SAAS,CAAC;;;IAIrE,QAAA,IAAI,YAAY,CAAC,OAAO,EAAE;gBACxB,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,OAAO,CAAC;;IAGpE,QAAA,OAAO,YAAY;;IAGrB;;IAEG;IACK,IAAA,iBAAiB,CAAC,QAAgB,EAAA;;YAExC,OAAO,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE;;IAGtD;;IAEG;IACK,IAAA,gBAAgB,CAAC,QAAgB,EAAA;;YAEvC,MAAM,OAAO,GAAG,gCAAgC;IAChD,QAAA,OAAO,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;;IAG/B;;IAEG;IACK,IAAA,sBAAsB,CAAC,QAAgB,EAAA;IAC7C,QAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,EAAE,EAAE;IAC1B,YAAA,OAAO,CAAG,EAAA,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA,CAAA,EAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAI,CAAA,EAAA,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA,CAAE;;IAC5F,aAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,EAAE,EAAE;IACjC,YAAA,OAAO,CAAK,EAAA,EAAA,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAA,EAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAI,CAAA,EAAA,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA,CAAE;;IAEnG,QAAA,OAAO,EAAE;;IAGX;;IAEG;IACK,IAAA,mBAAmB,CAAC,QAAgB,EAAA;IAC1C,QAAA,IAAI,OAAe;IACnB,QAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,EAAE,EAAE;gBAC1B,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;;iBAClC;gBACL,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;;IAEzC,QAAA,OAAO,OAAO,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG;;IAGtC;;IAEG;IACK,IAAA,aAAa,CAAC,IAAY,EAAA;;YAEhC,OAAO,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,UAAU,CAAC;;IAG1D;;IAEG;IACK,IAAA,gBAAgB,CAAC,OAAe,EAAA;;IAEtC,QAAA,OAAO,OAAO,CAAC,IAAI,EAAE;;IAExB;;ICrQD;;;;;;IAMG;IAkBH;;;;IAIG;UACU,SAAS,CAAA;IAQpB;;;IAGG;IACH,IAAA,WAAA,CAAoB,UAA4B,EAAE,EAAA;YAA9B,IAAO,CAAA,OAAA,GAAP,OAAO;YAPnB,IAAS,CAAA,SAAA,GAAY,KAAK;YAC1B,IAAY,CAAA,YAAA,GAA4B,IAAI;YAOlD,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC;IAC/C,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,cAAc,CAAC;gBACnC,WAAW,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC9C,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI;IACX,SAAA,CAAC;IAC3B,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,EAAE;IACtC,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,EAAE;;IAG1C;;;;IAIG;IACH,IAAA,MAAM,UAAU,GAAA;IACd,QAAA,IAAI;IACF,YAAA,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE;IACpC,YAAA,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;;YACrC,OAAO,KAAK,EAAE;IACd,YAAA,IAAI,CAAC,WAAW,CAAC,KAAc,CAAC;IAChC,YAAA,MAAM,KAAK;;;IAIf;;;IAGG;QACH,MAAM,kBAAkB,CAAC,YAA8B,EAAA;IACrD,QAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;IACtB,YAAA,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC;;IAGzE,QAAA,IAAI,CAAC,YAAY,GAAG,YAAY;IAChC,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI;YACrB,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC;IACrC,QAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC;;IAGrC;;IAEG;QACH,IAAI,GAAA;IACF,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;IACtB,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;IACtB,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;;IAGpB;;IAEG;QACK,MAAM,iBAAiB,CAAC,MAAuB,EAAA;YACrD,IAAI,CAAC,IAAI,CAAC,SAAS;gBAAE;IAErB,QAAA,IAAI;;IAEF,YAAA,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;oBACrB,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;oBACtC;;IAGF,YAAA,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC;gBAC1E,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,UAAU,CAAC;IAEvE,YAAA,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;IAChC,gBAAA,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,aAAa,CAAC;;;YAE7C,OAAO,KAAK,EAAE;IACd,YAAA,IAAI,CAAC,WAAW,CAAC,KAAc,CAAC;;;IAIpC;;IAEG;IACK,IAAA,WAAW,CAAC,KAAY,EAAA;IAC9B,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;IACxB,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;;iBACtB;IACL,YAAA,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC;;;IAI5C;;IAEG;IACH,IAAA,MAAM,SAAS,GAAA;YACb,IAAI,CAAC,IAAI,EAAE;IACX,QAAA,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE;;IAEtC;;;;;;;;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("tesseract.js")):"function"==typeof define&&define.amd?define(["exports","tesseract.js"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).IDScannerOCR={},t.Tesseract)}(this,(function(t,e){"use strict";class i{constructor(t={}){this.options=t,this.stream=null,this.videoElement=null,this.options={width:640,height:480,facingMode:"environment",...t}}async start(t){return this.initialize(t)}stop(){this.release()}async initialize(t){this.videoElement=t;try{const t={video:{width:{ideal:this.options.width},height:{ideal:this.options.height},facingMode:this.options.facingMode}};this.stream=await navigator.mediaDevices.getUserMedia(t),this.videoElement&&(this.videoElement.srcObject=this.stream,await new Promise((t=>{this.videoElement&&(this.videoElement.onloadedmetadata=()=>{this.videoElement&&this.videoElement.play().then((()=>t()))})})))}catch(t){throw console.error("无法访问摄像头:",t),new Error("无法访问摄像头。请确保已授予摄像头访问权限,并且摄像头未被其他应用程序占用。")}}captureFrame(){if(!this.videoElement)return null;const t=document.createElement("canvas");t.width=this.videoElement.videoWidth,t.height=this.videoElement.videoHeight;const e=t.getContext("2d");return e?(e.drawImage(this.videoElement,0,0,t.width,t.height),e.getImageData(0,0,t.width,t.height)):null}release(){this.stream&&(this.stream.getTracks().forEach((t=>t.stop())),this.stream=null),this.videoElement&&(this.videoElement.srcObject=null,this.videoElement=null)}}class s{static imageDataToCanvas(t){const e=document.createElement("canvas");e.width=t.width,e.height=t.height;const i=e.getContext("2d");return i&&i.putImageData(t,0,0),e}static canvasToImageData(t){const e=t.getContext("2d");return e?e.getImageData(0,0,t.width,t.height):null}static adjustBrightnessContrast(t,e=0,i=0){const s=this.imageDataToCanvas(t),a=s.getContext("2d");if(a){const t=a.getImageData(0,0,s.width,s.height),r=t.data,n=259*(i+255)/(255*(259-i));for(let t=0;t<r.length;t+=4)r[t]=this.truncate(n*(r[t]-128)+128+e),r[t+1]=this.truncate(n*(r[t+1]-128)+128+e),r[t+2]=this.truncate(n*(r[t+2]-128)+128+e);return a.putImageData(t,0,0),t}return t}static truncate(t){return Math.min(255,Math.max(0,t))}static toGrayscale(t){const e=this.imageDataToCanvas(t),i=e.getContext("2d");if(i){const t=i.getImageData(0,0,e.width,e.height),s=t.data;for(let t=0;t<s.length;t+=4){const e=(s[t]+s[t+1]+s[t+2])/3;s[t]=e,s[t+1]=e,s[t+2]=e}return i.putImageData(t,0,0),t}return t}static resize(t,e,i){const s=document.createElement("canvas");s.width=e,s.height=i;const a=s.getContext("2d");if(a){const s=this.imageDataToCanvas(t);return a.drawImage(s,0,0,t.width,t.height,0,0,e,i),a.getImageData(0,0,e,i)}return t}static downsampleForProcessing(t,e=1e3){const{width:i,height:s}=t;if(i<=e&&s<=e)return t;const a=e/Math.max(i,s),r=Math.round(i*a),n=Math.round(s*a);return this.resize(t,r,n)}static imageDataToBase64(t){return this.imageDataToCanvas(t).toDataURL("image/jpeg",.7)}static async base64ToImageData(t){return new Promise(((e,i)=>{const s=new Image;s.onload=()=>{const t=document.createElement("canvas");t.width=s.width,t.height=s.height;const a=t.getContext("2d");if(!a)return void i(new Error("无法创建Canvas上下文"));a.drawImage(s,0,0);const r=a.getImageData(0,0,t.width,t.height);e(r)},s.onerror=()=>{i(new Error("图像加载失败"))},s.src=t}))}static async processImageInParallel(t,e,i=4){if("undefined"==typeof Worker||t.width*t.height<1e5)return e(t);const s=document.createElement("canvas");s.width=t.width,s.height=t.height;const a=s.getContext("2d");if(!a)throw new Error("无法创建Canvas上下文");const r=t.width>t.height,n=Math.floor((r?t.width:t.height)/i),o=[];for(let s=0;s<i;s++){const a=document.createElement("canvas"),c=a.getContext("2d");if(!c)continue;let h;if(r){const e=s*n,r=s===i-1?t.width-e:n;a.width=r,a.height=t.height;const o=this.imageDataToCanvas(t);c.drawImage(o,e,0,r,t.height,0,0,r,t.height),h=c.getImageData(0,0,r,t.height)}else{const e=s*n,r=s===i-1?t.height-e:n;a.width=t.width,a.height=r;const o=this.imageDataToCanvas(t);c.drawImage(o,0,e,t.width,r,0,0,t.width,r),h=c.getImageData(0,0,t.width,r)}const d=`\n self.onmessage = function(e) {\n const imageData = e.data.imageData;\n const processingFunction = ${e.toString()};\n const result = processingFunction(imageData);\n self.postMessage({ result, index: e.data.index }, [result.data.buffer]);\n }\n `,l=new Blob([d],{type:"application/javascript"}),m=URL.createObjectURL(l),g=new Worker(m),u=new Promise((t=>{g.onmessage=function(e){t(e.data),g.terminate(),URL.revokeObjectURL(m)},g.postMessage({imageData:h,index:s},[h.data.buffer])}));o.push(u)}const c=await Promise.all(o);c.sort(((t,e)=>t.index-e.index));for(let t=0;t<c.length;t++){const{result:e}=c[t],i=this.imageDataToCanvas(e);if(r){const e=t*n;a.drawImage(i,e,0)}else{const e=t*n;a.drawImage(i,0,e)}}return a.getImageData(0,0,t.width,t.height)}}class a{constructor(t=100){this.maxSize=t,this.cache=new Map}get(t){if(!this.cache.has(t))return;const e=this.cache.get(t);return this.cache.delete(t),this.cache.set(t,e),e}set(t,e){if(this.cache.has(t)&&this.cache.delete(t),this.cache.size>=this.maxSize){const t=this.cache.keys().next().value;this.cache.delete(t)}this.cache.set(t,e)}delete(t){return this.cache.delete(t)}clear(){this.cache.clear()}get size(){return this.cache.size}has(t){return this.cache.has(t)}}function r(t,e=8){const i=document.createElement("canvas");i.width=e,i.height=e;const s=i.getContext("2d");if(!s)return"";const a=document.createElement("canvas");a.width=t.width,a.height=t.height;const r=a.getContext("2d");if(!r)return"";r.putImageData(t,0,0),s.drawImage(a,0,0,t.width,t.height,0,0,e,e);const n=s.getImageData(0,0,e,e),o=[];for(let t=0;t<n.data.length;t+=4){const e=n.data[t],i=n.data[t+1],s=n.data[t+2],a=Math.round(.299*e+.587*i+.114*s);o.push(a)}const c=o.reduce(((t,e)=>t+e),0)/o.length;let h="";for(const t of o)h+=t>=c?"1":"0";return h}class n{constructor(t){this.detecting=!1,this.detectTimer=null,this.frameCount=0,this.lastDetectionTime=0,this.camera=new i,"function"==typeof t?(this.onDetected=t,this.options={detectionInterval:200,maxImageDimension:800,enableCache:!0,cacheSize:20,logger:console.log}):t?(this.options={detectionInterval:200,maxImageDimension:800,enableCache:!0,cacheSize:20,logger:console.log,...t},this.onDetected=t.onDetection,this.onError=t.onError):this.options={detectionInterval:200,maxImageDimension:800,enableCache:!0,cacheSize:20,logger:console.log},this.detectionInterval=this.options.detectionInterval,this.maxImageDimension=this.options.maxImageDimension,this.resultCache=new a(this.options.cacheSize),this.throttledDetect=function(t,e){let i=0,s=null;return function(...a){const r=Date.now(),n=e-(r-i);n<=0?(s&&(clearTimeout(s),s=null),i=r,t.apply(this,a)):s||(s=window.setTimeout((()=>{i=Date.now(),s=null,t.apply(this,a)}),n))}}(this.performDetection.bind(this),this.detectionInterval)}async start(t){await this.camera.initialize(t),this.detecting=!0,this.frameCount=0,this.lastDetectionTime=0,this.detect()}stop(){this.detecting=!1,null!==this.detectTimer&&(cancelAnimationFrame(this.detectTimer),this.detectTimer=null)}detect(){this.detecting&&(this.detectTimer=requestAnimationFrame((()=>{try{this.frameCount++;const t=performance.now();(this.frameCount%3==0||t-this.lastDetectionTime>=this.detectionInterval)&&(this.throttledDetect(),this.lastDetectionTime=t),this.detect()}catch(t){this.onError?this.onError(t):console.error("身份证检测错误:",t),setTimeout((()=>{this.detecting&&this.detect()}),1e3)}})))}async performDetection(){if(!this.detecting||!this.camera)return;const t=this.camera.captureFrame();if(!t)return;if(this.options.enableCache){const e=r(t,16),i=this.resultCache.get(e);if(i){this.options.logger?.("使用缓存的检测结果");const e={...i,imageData:t};return void(this.onDetected&&this.onDetected(e))}}const e=s.downsampleForProcessing(t,this.maxImageDimension);try{const i=await this.detectIDCard(e);if(i.success&&(i.imageData=t,this.options.enableCache)){const e=r(t,16);this.resultCache.set(e,i)}this.onDetected&&this.onDetected(i)}catch(t){this.onError?this.onError(t):console.error("身份证检测错误:",t)}}async detectIDCard(t){s.toGrayscale(t);const e={success:Math.random()>.3,message:"身份证检测完成"};if(e.success){const i=t.width,a=t.height,r=Math.round(.7*i),n=Math.round(.618*r),o=Math.round((i-r)/2),c=Math.round((a-n)/2);e.corners=[{x:o,y:c},{x:o+r,y:c},{x:o+r,y:c+n},{x:o,y:c+n}],e.boundingBox={x:o,y:c,width:r,height:n};const h=document.createElement("canvas");h.width=r,h.height=n;const d=h.getContext("2d");if(d){const i=s.imageDataToCanvas(t);d.drawImage(i,o,c,r,n,0,0,r,n),e.croppedImage=d.getImageData(0,0,r,n)}e.confidence=.7+.3*Math.random()}return e}clearCache(){this.resultCache.clear(),this.options.logger?.("检测结果缓存已清除")}dispose(){this.stop(),this.camera.release(),this.resultCache.clear()}}async function o(t){const e=performance.now(),{createWorker:i}=await import("tesseract.js"),s=i(t.tessWorkerOptions||{logger:t=>console.log(t)});try{await s.load(),await s.loadLanguage("chi_sim"),await s.initialize("chi_sim"),await s.setParameters({tessedit_char_whitelist:"0123456789X-年月日一二三四五六七八九十零壹贰叁肆伍陆柒捌玖拾ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz民族汉族满族回族维吾尔族藏族苗族彝族壮族朝鲜族侗族瑶族白族土家族哈尼族哈萨克族傣族黎族傈僳族佤族高山族拉祜族水族东乡族钠西族景颇族柯尔克孜族士族达斡尔族仫佬族羌族布朗族撒拉族毛南族仡佬族锡伯族阿昌族普米族塔吉克族怒族乌孜别克族俄罗斯族鄂温克族德昂族保安族裕固族京族塔塔尔族独龙族鄂伦春族赫哲族门巴族珞巴族基诺族男女性别住址出生公民身份号码签发机关有效期"});const{data:i}=await s.recognize(t.imageBase64),a=function(t){const e={},i=t.split("\n").filter((t=>t.trim())),s=/(\d{17}[\dX])/,a=t.match(s);a&&(e.idNumber=a[1]);for(const t of i)if(t.includes("姓名")||t.length<10&&t.length>1&&!/\d/.test(t)){e.name=t.replace("姓名","").trim();break}const r=/(男|女).*(族)/,n=t.match(r);if(n){e.gender=n[1];const t=n[0];e.nationality=t.substring(t.indexOf(n[1])+1).trim()}const o=/(\d{4})年(\d{1,2})月(\d{1,2})日/,c=t.match(o);c&&(e.birthDate=`${c[1]}-${c[2]}-${c[3]}`);const h=/住址([\s\S]*?)公民身份号码/,d=t.match(h);d&&(e.address=d[1].replace(/\n/g,"").trim());const l=/签发机关([\s\S]*?)有效期/,m=t.match(l);m&&(e.issuingAuthority=m[1].replace(/\n/g,"").trim());const g=/有效期限([\s\S]*?)(-|至)/,u=t.match(g);u&&(e.validPeriod=u[0].replace("有效期限","").trim());return e}(i.text);await s.terminate();return{idCardInfo:a,processingTime:performance.now()-e}}catch(t){throw await s.terminate(),t}}class c{constructor(t={}){this.worker=null,this.ocrWorker=null,this.initialized=!1,this.options={useWorker:"undefined"!=typeof Worker,enableCache:!0,cacheSize:50,maxImageDimension:1e3,logger:console.log,...t},this.resultCache=new a(this.options.cacheSize)}async initialize(){this.initialized||(this.options.useWorker?(this.ocrWorker=function(t){const e=`\n self.onmessage = async function(e) {\n try {\n const result = await (${t.toString()})(e.data);\n self.postMessage({ success: true, result });\n } catch (error) {\n self.postMessage({ \n success: false, \n error: { message: error.message, stack: error.stack }\n });\n }\n }\n `,i=new Blob([e],{type:"application/javascript"}),s=URL.createObjectURL(i),a=new Worker(s),r=new Map;let n=0;return a.onmessage=t=>{0===r.size&&URL.revokeObjectURL(s);const{id:e,success:i,result:a,error:n}=t.data,o=r.get(e);if(o)if(r.delete(e),i)o.resolve(a);else{const t=new Error(n.message);t.stack=n.stack,o.reject(t)}},{postMessage:t=>new Promise(((e,i)=>{const s=n++;r.set(s,{resolve:e,reject:i}),a.postMessage({id:s,data:t})})),terminate:()=>{a.terminate(),r.clear(),URL.revokeObjectURL(s)}}}(o),this.initialized=!0,this.options.logger?.("OCR Worker 初始化完成")):(this.worker=e.createWorker({logger:this.options.logger}),await this.worker.load(),await this.worker.loadLanguage("chi_sim"),await this.worker.initialize("chi_sim"),await this.worker.setParameters({tessedit_char_whitelist:"0123456789X-年月日一二三四五六七八九十零壹贰叁肆伍陆柒捌玖拾ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz民族汉族满族回族维吾尔族藏族苗族彝族壮族朝鲜族侗族瑶族白族土家族哈尼族哈萨克族傣族黎族傈僳族佤族高山族拉祜族水族东乡族钠西族景颇族柯尔克孜族士族达斡尔族仫佬族羌族布朗族撒拉族毛南族仡佬族锡伯族阿昌族普米族塔吉克族怒族乌孜别克族俄罗斯族鄂温克族德昂族保安族裕固族京族塔塔尔族独龙族鄂伦春族赫哲族门巴族珞巴族基诺族男女性别住址出生公民身份号码签发机关有效期"}),this.initialized=!0,this.options.logger?.("OCR引擎初始化完成")))}async processIDCard(t){if(this.initialized||await this.initialize(),this.options.enableCache){const e=r(t),i=this.resultCache.get(e);if(i)return this.options.logger?.("使用缓存的OCR结果"),i}const e=s.downsampleForProcessing(t,this.options.maxImageDimension),i=s.adjustBrightnessContrast(e,15,25);try{let e;if(this.options.useWorker&&this.ocrWorker){const t=s.imageDataToBase64(i),a=await this.ocrWorker.postMessage({imageBase64:t,tessWorkerOptions:{logger:this.options.logger}});e=a.idCardInfo,this.options.logger?.(`OCR处理完成,用时: ${a.processingTime.toFixed(2)}ms`)}else{const t=performance.now(),a=s.imageDataToCanvas(i),{data:r}=await this.worker.recognize(a);e=this.parseIDCardText(r.text);const n=performance.now()-t;this.options.logger?.(`OCR处理完成,用时: ${n.toFixed(2)}ms`)}if(this.options.enableCache){const i=r(t);this.resultCache.set(i,e)}return e}catch(t){return this.options.logger?.(`OCR识别错误: ${t}`),{}}}parseIDCardText(t){const e={},i=t.split("\n").filter((t=>t.trim())),s=t.match(/(\d{17}[\dX])/);s&&(e.idNumber=s[1]);for(const t of i)if(t.includes("姓名")||t.length<10&&t.length>1&&!/\d/.test(t)){e.name=t.replace("姓名","").trim();break}const a=t.match(/(男|女).*(族)/);if(a){e.gender=a[1];const t=a[0];e.nationality=t.substring(t.indexOf(a[1])+1).trim()}const r=t.match(/(\d{4})年(\d{1,2})月(\d{1,2})日/);r&&(e.birthDate=`${r[1]}-${r[2]}-${r[3]}`);const n=t.match(/住址([\s\S]*?)公民身份号码/);n&&(e.address=n[1].replace(/\n/g,"").trim());const o=t.match(/签发机关([\s\S]*?)有效期/);o&&(e.issuingAuthority=o[1].replace(/\n/g,"").trim());const c=t.match(/有效期限([\s\S]*?)(-|至)/);return c&&(e.validPeriod=c[0].replace("有效期限","").trim()),e}clearCache(){this.resultCache.clear(),this.options.logger?.("OCR结果缓存已清除")}async terminate(){this.worker&&(await this.worker.terminate(),this.worker=null),this.ocrWorker&&(this.ocrWorker.terminate(),this.ocrWorker=null),this.initialized=!1,this.options.logger?.("OCR引擎已终止")}dispose(){return this.terminate()}}class h{static validateIDNumber(t){if(!t||18!==t.length)return!1;if(!/^\d{17}[\dX]$/.test(t))return!1;const e=parseInt(t.substr(6,4)),i=parseInt(t.substr(10,2)),s=parseInt(t.substr(12,2)),a=new Date(e,i-1,s);return a.getFullYear()===e&&a.getMonth()+1===i&&a.getDate()===s}static extractBirthDateFromID(t){if(!this.validateIDNumber(t))return null;return`${t.substr(6,4)}-${t.substr(10,2)}-${t.substr(12,2)}`}static extractGenderFromID(t){if(!this.validateIDNumber(t))return null;return parseInt(t.charAt(16))%2==1?"男":"女"}static extractRegionFromID(t){return this.validateIDNumber(t)?t.substr(0,6):null}static enhanceIDCardInfo(t,e){const i={...t};if(i.idNumber&&this.validateIDNumber(i.idNumber)&&(i.birthDate||(i.birthDate=this.extractBirthDateFromID(i.idNumber)||void 0),i.gender||(i.gender=this.extractGenderFromID(i.idNumber)||void 0)),e&&this.validateIDNumber(e)){i.idNumber=e;const t=this.extractBirthDateFromID(e);t&&(i.birthDate=t);const s=this.extractGenderFromID(e);s&&(i.gender=s)}return i}extractAndValidate(t){const e={...t};return e.idNumber&&(e.idNumber=this.normalizeIDNumber(e.idNumber),this.validateIDNumber(e.idNumber)&&(e.birthDate||(e.birthDate=this.extractBirthDateFromID(e.idNumber)),e.gender||(e.gender=this.extractGenderFromID(e.idNumber)))),e.birthDate&&(e.birthDate=this.normalizeDate(e.birthDate)),e.address&&(e.address=this.normalizeAddress(e.address)),e}normalizeIDNumber(t){return t.replace(/[\s\-]/g,"").toUpperCase()}validateIDNumber(t){return/(^\d{15}$)|(^\d{17}([0-9]|X)$)/.test(t)}extractBirthDateFromID(t){return 18===t.length?`${t.substring(6,10)}-${t.substring(10,12)}-${t.substring(12,14)}`:15===t.length?`19${t.substring(6,8)}-${t.substring(8,10)}-${t.substring(10,12)}`:""}extractGenderFromID(t){let e;return e=18===t.length?parseInt(t.charAt(16)):parseInt(t.charAt(14)),e%2==1?"男":"女"}normalizeDate(t){return t.replace(/(\d{4})(\d{2})(\d{2})/,"$1-$2-$3")}normalizeAddress(t){return t.trim()}}
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("tesseract.js")):"function"==typeof define&&define.amd?define(["exports","tesseract.js"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).IDScannerOCR={},t.Tesseract)}(this,(function(t,e){"use strict";class i{constructor(t={}){this.options=t,this.stream=null,this.videoElement=null,this.options={width:640,height:480,facingMode:"environment",...t}}async start(t){return this.initialize(t)}stop(){this.release()}async initialize(t){this.videoElement=t;try{const t={video:{width:{ideal:this.options.width},height:{ideal:this.options.height},facingMode:this.options.facingMode}};this.stream=await navigator.mediaDevices.getUserMedia(t),this.videoElement&&(this.videoElement.srcObject=this.stream,await new Promise((t=>{this.videoElement&&(this.videoElement.onloadedmetadata=()=>{this.videoElement&&this.videoElement.play().then((()=>t()))})})))}catch(t){throw console.error("无法访问摄像头:",t),new Error("无法访问摄像头。请确保已授予摄像头访问权限,并且摄像头未被其他应用程序占用。")}}captureFrame(){if(!this.videoElement)return null;const t=document.createElement("canvas");t.width=this.videoElement.videoWidth,t.height=this.videoElement.videoHeight;const e=t.getContext("2d");return e?(e.drawImage(this.videoElement,0,0,t.width,t.height),e.getImageData(0,0,t.width,t.height)):null}release(){this.stream&&(this.stream.getTracks().forEach((t=>t.stop())),this.stream=null),this.videoElement&&(this.videoElement.srcObject=null,this.videoElement=null)}}class s{static imageDataToCanvas(t){const e=document.createElement("canvas");e.width=t.width,e.height=t.height;const i=e.getContext("2d");return i&&i.putImageData(t,0,0),e}static canvasToImageData(t){const e=t.getContext("2d");return e?e.getImageData(0,0,t.width,t.height):null}static adjustBrightnessContrast(t,e=0,i=0){const s=this.imageDataToCanvas(t),a=s.getContext("2d");if(a){const t=a.getImageData(0,0,s.width,s.height),r=t.data,n=259*(i+255)/(255*(259-i));for(let t=0;t<r.length;t+=4)r[t]=this.truncate(n*(r[t]-128)+128+e),r[t+1]=this.truncate(n*(r[t+1]-128)+128+e),r[t+2]=this.truncate(n*(r[t+2]-128)+128+e);return a.putImageData(t,0,0),t}return t}static truncate(t){return Math.min(255,Math.max(0,t))}static toGrayscale(t){const e=this.imageDataToCanvas(t),i=e.getContext("2d");if(i){const t=i.getImageData(0,0,e.width,e.height),s=t.data;for(let t=0;t<s.length;t+=4){const e=(s[t]+s[t+1]+s[t+2])/3;s[t]=e,s[t+1]=e,s[t+2]=e}return i.putImageData(t,0,0),t}return t}static resize(t,e,i){const s=document.createElement("canvas");s.width=e,s.height=i;const a=s.getContext("2d");if(a){const s=this.imageDataToCanvas(t);return a.drawImage(s,0,0,t.width,t.height,0,0,e,i),a.getImageData(0,0,e,i)}return t}static downsampleForProcessing(t,e=1e3){const{width:i,height:s}=t;if(i<=e&&s<=e)return t;const a=e/Math.max(i,s),r=Math.round(i*a),n=Math.round(s*a);return this.resize(t,r,n)}static imageDataToBase64(t){return this.imageDataToCanvas(t).toDataURL("image/jpeg",.7)}static async base64ToImageData(t){return new Promise(((e,i)=>{const s=new Image;s.onload=()=>{const t=document.createElement("canvas");t.width=s.width,t.height=s.height;const a=t.getContext("2d");if(!a)return void i(new Error("无法创建Canvas上下文"));a.drawImage(s,0,0);const r=a.getImageData(0,0,t.width,t.height);e(r)},s.onerror=()=>{i(new Error("图像加载失败"))},s.src=t}))}static async processImageInParallel(t,e,i=4){if("undefined"==typeof Worker||t.width*t.height<1e5)return e(t);const s=document.createElement("canvas");s.width=t.width,s.height=t.height;const a=s.getContext("2d");if(!a)throw new Error("无法创建Canvas上下文");const r=t.width>t.height,n=Math.floor((r?t.width:t.height)/i),o=[];for(let s=0;s<i;s++){const a=document.createElement("canvas"),c=a.getContext("2d");if(!c)continue;let h;if(r){const e=s*n,r=s===i-1?t.width-e:n;a.width=r,a.height=t.height;const o=this.imageDataToCanvas(t);c.drawImage(o,e,0,r,t.height,0,0,r,t.height),h=c.getImageData(0,0,r,t.height)}else{const e=s*n,r=s===i-1?t.height-e:n;a.width=t.width,a.height=r;const o=this.imageDataToCanvas(t);c.drawImage(o,0,e,t.width,r,0,0,t.width,r),h=c.getImageData(0,0,t.width,r)}const d=`\n self.onmessage = function(e) {\n const imageData = e.data.imageData;\n const processingFunction = ${e.toString()};\n const result = processingFunction(imageData);\n self.postMessage({ result, index: e.data.index }, [result.data.buffer]);\n }\n `,l=new Blob([d],{type:"application/javascript"}),m=URL.createObjectURL(l),g=new Worker(m),u=new Promise((t=>{g.onmessage=function(e){t(e.data),g.terminate(),URL.revokeObjectURL(m)},g.postMessage({imageData:h,index:s},[h.data.buffer])}));o.push(u)}const c=await Promise.all(o);c.sort(((t,e)=>t.index-e.index));for(let t=0;t<c.length;t++){const{result:e}=c[t],i=this.imageDataToCanvas(e);if(r){const e=t*n;a.drawImage(i,e,0)}else{const e=t*n;a.drawImage(i,0,e)}}return a.getImageData(0,0,t.width,t.height)}}class a{constructor(t=100){this.maxSize=t,this.cache=new Map}get(t){if(!this.cache.has(t))return;const e=this.cache.get(t);return this.cache.delete(t),this.cache.set(t,e),e}set(t,e){if(this.cache.has(t)&&this.cache.delete(t),this.cache.size>=this.maxSize){const t=this.cache.keys().next().value;void 0!==t&&this.cache.delete(t)}this.cache.set(t,e)}delete(t){return this.cache.delete(t)}clear(){this.cache.clear()}get size(){return this.cache.size}has(t){return this.cache.has(t)}}function r(t,e=8){const i=document.createElement("canvas");i.width=e,i.height=e;const s=i.getContext("2d");if(!s)return"";const a=document.createElement("canvas");a.width=t.width,a.height=t.height;const r=a.getContext("2d");if(!r)return"";r.putImageData(t,0,0),s.drawImage(a,0,0,t.width,t.height,0,0,e,e);const n=s.getImageData(0,0,e,e),o=[];for(let t=0;t<n.data.length;t+=4){const e=n.data[t],i=n.data[t+1],s=n.data[t+2],a=Math.round(.299*e+.587*i+.114*s);o.push(a)}const c=o.reduce(((t,e)=>t+e),0)/o.length;let h="";for(const t of o)h+=t>=c?"1":"0";return h}class n{constructor(t){this.detecting=!1,this.detectTimer=null,this.frameCount=0,this.lastDetectionTime=0,this.camera=new i,"function"==typeof t?(this.onDetected=t,this.options={detectionInterval:200,maxImageDimension:800,enableCache:!0,cacheSize:20,logger:console.log}):t?(this.options={detectionInterval:200,maxImageDimension:800,enableCache:!0,cacheSize:20,logger:console.log,...t},this.onDetected=t.onDetection,this.onError=t.onError):this.options={detectionInterval:200,maxImageDimension:800,enableCache:!0,cacheSize:20,logger:console.log},this.detectionInterval=this.options.detectionInterval,this.maxImageDimension=this.options.maxImageDimension,this.resultCache=new a(this.options.cacheSize),this.throttledDetect=function(t,e){let i=0,s=null;return function(...a){const r=Date.now(),n=e-(r-i);n<=0?(s&&(clearTimeout(s),s=null),i=r,t.apply(this,a)):s||(s=window.setTimeout((()=>{i=Date.now(),s=null,t.apply(this,a)}),n))}}(this.performDetection.bind(this),this.detectionInterval)}async start(t){await this.camera.initialize(t),this.detecting=!0,this.frameCount=0,this.lastDetectionTime=0,this.detect()}stop(){this.detecting=!1,null!==this.detectTimer&&(cancelAnimationFrame(this.detectTimer),this.detectTimer=null)}detect(){this.detecting&&(this.detectTimer=requestAnimationFrame((()=>{try{this.frameCount++;const t=performance.now();(this.frameCount%3==0||t-this.lastDetectionTime>=this.detectionInterval)&&(this.throttledDetect(),this.lastDetectionTime=t),this.detect()}catch(t){this.onError?this.onError(t):console.error("身份证检测错误:",t),setTimeout((()=>{this.detecting&&this.detect()}),1e3)}})))}async performDetection(){if(!this.detecting||!this.camera)return;const t=this.camera.captureFrame();if(!t)return;if(this.options.enableCache){const e=r(t,16),i=this.resultCache.get(e);if(i){this.options.logger?.("使用缓存的检测结果");const e={...i,imageData:t};return void(this.onDetected&&this.onDetected(e))}}const e=s.downsampleForProcessing(t,this.maxImageDimension);try{const i=await this.detectIDCard(e);if(i.success&&(i.imageData=t,this.options.enableCache)){const e=r(t,16);this.resultCache.set(e,i)}this.onDetected&&this.onDetected(i)}catch(t){this.onError?this.onError(t):console.error("身份证检测错误:",t)}}async detectIDCard(t){s.toGrayscale(t);const e={success:Math.random()>.3,message:"身份证检测完成"};if(e.success){const i=t.width,a=t.height,r=Math.round(.7*i),n=Math.round(.618*r),o=Math.round((i-r)/2),c=Math.round((a-n)/2);e.corners=[{x:o,y:c},{x:o+r,y:c},{x:o+r,y:c+n},{x:o,y:c+n}],e.boundingBox={x:o,y:c,width:r,height:n};const h=document.createElement("canvas");h.width=r,h.height=n;const d=h.getContext("2d");if(d){const i=s.imageDataToCanvas(t);d.drawImage(i,o,c,r,n,0,0,r,n),e.croppedImage=d.getImageData(0,0,r,n)}e.confidence=.7+.3*Math.random()}return e}clearCache(){this.resultCache.clear(),this.options.logger?.("检测结果缓存已清除")}dispose(){this.stop(),this.camera.release(),this.resultCache.clear()}}async function o(t){const e=performance.now(),{createWorker:i}=await import("tesseract.js"),s=await i(t.tessWorkerOptions||{logger:t=>console.log(t)});try{await s.load(),await s.loadLanguage("chi_sim"),await s.initialize("chi_sim"),await s.setParameters({tessedit_char_whitelist:"0123456789X-年月日一二三四五六七八九十零壹贰叁肆伍陆柒捌玖拾ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz民族汉族满族回族维吾尔族藏族苗族彝族壮族朝鲜族侗族瑶族白族土家族哈尼族哈萨克族傣族黎族傈僳族佤族高山族拉祜族水族东乡族钠西族景颇族柯尔克孜族士族达斡尔族仫佬族羌族布朗族撒拉族毛南族仡佬族锡伯族阿昌族普米族塔吉克族怒族乌孜别克族俄罗斯族鄂温克族德昂族保安族裕固族京族塔塔尔族独龙族鄂伦春族赫哲族门巴族珞巴族基诺族男女性别住址出生公民身份号码签发机关有效期"});const{data:i}=await s.recognize(t.imageBase64),a=function(t){const e={},i=t.split("\n").filter((t=>t.trim())),s=/(\d{17}[\dX])/,a=t.match(s);a&&(e.idNumber=a[1]);for(const t of i)if(t.includes("姓名")||t.length<10&&t.length>1&&!/\d/.test(t)){e.name=t.replace("姓名","").trim();break}const r=/(男|女).*(族)/,n=t.match(r);if(n){e.gender=n[1];const t=n[0];e.nationality=t.substring(t.indexOf(n[1])+1).trim()}const o=/(\d{4})年(\d{1,2})月(\d{1,2})日/,c=t.match(o);c&&(e.birthDate=`${c[1]}-${c[2]}-${c[3]}`);const h=/住址([\s\S]*?)公民身份号码/,d=t.match(h);d&&(e.address=d[1].replace(/\n/g,"").trim());const l=/签发机关([\s\S]*?)有效期/,m=t.match(l);m&&(e.issuingAuthority=m[1].replace(/\n/g,"").trim());const g=/有效期限([\s\S]*?)(-|至)/,u=t.match(g);u&&(e.validPeriod=u[0].replace("有效期限","").trim());return e}(i.text);await s.terminate();return{idCardInfo:a,processingTime:performance.now()-e}}catch(t){throw await s.terminate(),t}}class c{constructor(t={}){this.worker=null,this.ocrWorker=null,this.initialized=!1,this.options={useWorker:"undefined"!=typeof Worker,enableCache:!0,cacheSize:50,maxImageDimension:1e3,logger:console.log,...t},this.resultCache=new a(this.options.cacheSize)}async initialize(){this.initialized||(this.options.useWorker?(this.ocrWorker=function(t){const e=`\n self.onmessage = async function(e) {\n try {\n const result = await (${t.toString()})(e.data);\n self.postMessage({ success: true, result });\n } catch (error) {\n self.postMessage({ \n success: false, \n error: { message: error.message, stack: error.stack }\n });\n }\n }\n `,i=new Blob([e],{type:"application/javascript"}),s=URL.createObjectURL(i),a=new Worker(s),r=new Map;let n=0;return a.onmessage=t=>{0===r.size&&URL.revokeObjectURL(s);const{id:e,success:i,result:a,error:n}=t.data,o=r.get(e);if(o)if(r.delete(e),i)o.resolve(a);else{const t=new Error(n.message);t.stack=n.stack,o.reject(t)}},{postMessage:t=>new Promise(((e,i)=>{const s=n++;r.set(s,{resolve:e,reject:i}),a.postMessage({id:s,data:t})})),terminate:()=>{a.terminate(),r.clear(),URL.revokeObjectURL(s)}}}(o),this.initialized=!0,this.options.logger?.("OCR Worker 初始化完成")):(this.worker=e.createWorker({logger:this.options.logger}),await this.worker.load(),await this.worker.loadLanguage("chi_sim"),await this.worker.initialize("chi_sim"),await this.worker.setParameters({tessedit_char_whitelist:"0123456789X-年月日一二三四五六七八九十零壹贰叁肆伍陆柒捌玖拾ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz民族汉族满族回族维吾尔族藏族苗族彝族壮族朝鲜族侗族瑶族白族土家族哈尼族哈萨克族傣族黎族傈僳族佤族高山族拉祜族水族东乡族钠西族景颇族柯尔克孜族士族达斡尔族仫佬族羌族布朗族撒拉族毛南族仡佬族锡伯族阿昌族普米族塔吉克族怒族乌孜别克族俄罗斯族鄂温克族德昂族保安族裕固族京族塔塔尔族独龙族鄂伦春族赫哲族门巴族珞巴族基诺族男女性别住址出生公民身份号码签发机关有效期"}),this.initialized=!0,this.options.logger?.("OCR引擎初始化完成")))}async processIDCard(t){if(this.initialized||await this.initialize(),this.options.enableCache){const e=r(t),i=this.resultCache.get(e);if(i)return this.options.logger?.("使用缓存的OCR结果"),i}const e=s.downsampleForProcessing(t,this.options.maxImageDimension),i=s.adjustBrightnessContrast(e,15,25);try{let e;if(this.options.useWorker&&this.ocrWorker){const t=s.imageDataToBase64(i),a=await this.ocrWorker.postMessage({imageBase64:t,tessWorkerOptions:{logger:this.options.logger}});e=a.idCardInfo,this.options.logger?.(`OCR处理完成,用时: ${a.processingTime.toFixed(2)}ms`)}else{const t=performance.now(),a=s.imageDataToCanvas(i),{data:r}=await this.worker.recognize(a);e=this.parseIDCardText(r.text);const n=performance.now()-t;this.options.logger?.(`OCR处理完成,用时: ${n.toFixed(2)}ms`)}if(this.options.enableCache){const i=r(t);this.resultCache.set(i,e)}return e}catch(t){return this.options.logger?.(`OCR识别错误: ${t}`),{}}}parseIDCardText(t){const e={},i=t.split("\n").filter((t=>t.trim())),s=t.match(/(\d{17}[\dX])/);s&&(e.idNumber=s[1]);for(const t of i)if(t.includes("姓名")||t.length<10&&t.length>1&&!/\d/.test(t)){e.name=t.replace("姓名","").trim();break}const a=t.match(/(男|女).*(族)/);if(a){e.gender=a[1];const t=a[0];e.nationality=t.substring(t.indexOf(a[1])+1).trim()}const r=t.match(/(\d{4})年(\d{1,2})月(\d{1,2})日/);r&&(e.birthDate=`${r[1]}-${r[2]}-${r[3]}`);const n=t.match(/住址([\s\S]*?)公民身份号码/);n&&(e.address=n[1].replace(/\n/g,"").trim());const o=t.match(/签发机关([\s\S]*?)有效期/);o&&(e.issuingAuthority=o[1].replace(/\n/g,"").trim());const c=t.match(/有效期限([\s\S]*?)(-|至)/);return c&&(e.validPeriod=c[0].replace("有效期限","").trim()),e}clearCache(){this.resultCache.clear(),this.options.logger?.("OCR结果缓存已清除")}async terminate(){this.worker&&(await this.worker.terminate(),this.worker=null),this.ocrWorker&&(this.ocrWorker.terminate(),this.ocrWorker=null),this.initialized=!1,this.options.logger?.("OCR引擎已终止")}dispose(){return this.terminate()}}class h{static validateIDNumber(t){if(!t||18!==t.length)return!1;if(!/^\d{17}[\dX]$/.test(t))return!1;const e=parseInt(t.substr(6,4)),i=parseInt(t.substr(10,2)),s=parseInt(t.substr(12,2)),a=new Date(e,i-1,s);return a.getFullYear()===e&&a.getMonth()+1===i&&a.getDate()===s}static extractBirthDateFromID(t){if(!this.validateIDNumber(t))return null;return`${t.substr(6,4)}-${t.substr(10,2)}-${t.substr(12,2)}`}static extractGenderFromID(t){if(!this.validateIDNumber(t))return null;return parseInt(t.charAt(16))%2==1?"男":"女"}static extractRegionFromID(t){return this.validateIDNumber(t)?t.substr(0,6):null}static enhanceIDCardInfo(t,e){const i={...t};if(i.idNumber&&this.validateIDNumber(i.idNumber)&&(i.birthDate||(i.birthDate=this.extractBirthDateFromID(i.idNumber)||void 0),i.gender||(i.gender=this.extractGenderFromID(i.idNumber)||void 0)),e&&this.validateIDNumber(e)){i.idNumber=e;const t=this.extractBirthDateFromID(e);t&&(i.birthDate=t);const s=this.extractGenderFromID(e);s&&(i.gender=s)}return i}extractAndValidate(t){const e={...t};return e.idNumber&&(e.idNumber=this.normalizeIDNumber(e.idNumber),this.validateIDNumber(e.idNumber)&&(e.birthDate||(e.birthDate=this.extractBirthDateFromID(e.idNumber)),e.gender||(e.gender=this.extractGenderFromID(e.idNumber)))),e.birthDate&&(e.birthDate=this.normalizeDate(e.birthDate)),e.address&&(e.address=this.normalizeAddress(e.address)),e}normalizeIDNumber(t){return t.replace(/[\s\-]/g,"").toUpperCase()}validateIDNumber(t){return/(^\d{15}$)|(^\d{17}([0-9]|X)$)/.test(t)}extractBirthDateFromID(t){return 18===t.length?`${t.substring(6,10)}-${t.substring(10,12)}-${t.substring(12,14)}`:15===t.length?`19${t.substring(6,8)}-${t.substring(8,10)}-${t.substring(10,12)}`:""}extractGenderFromID(t){let e;return e=18===t.length?parseInt(t.charAt(16)):parseInt(t.charAt(14)),e%2==1?"男":"女"}normalizeDate(t){return t.replace(/(\d{4})(\d{2})(\d{2})/,"$1-$2-$3")}normalizeAddress(t){return t.trim()}}
|
|
2
2
|
/**
|
|
3
3
|
* @file OCR模块入口文件
|
|
4
4
|
* @description 包含身份证OCR识别相关功能
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"id-scanner-ocr.min.js","sources":["../src/utils/camera.ts","../src/utils/image-processing.ts","../src/utils/performance.ts","../src/id-recognition/id-detector.ts","../src/id-recognition/ocr-worker.ts","../src/id-recognition/ocr-processor.ts","../src/utils/worker.ts","../src/id-recognition/data-extractor.ts","../src/ocr-module.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null],"names":["Camera","constructor","options","this","stream","videoElement","width","height","facingMode","start","initialize","stop","release","constraints","video","ideal","navigator","mediaDevices","getUserMedia","srcObject","Promise","resolve","onloadedmetadata","play","then","error","console","Error","captureFrame","canvas","document","createElement","videoWidth","videoHeight","context","getContext","drawImage","getImageData","getTracks","forEach","track","ImageProcessor","imageDataToCanvas","imageData","ctx","putImageData","canvasToImageData","adjustBrightnessContrast","brightness","contrast","imgData","data","factor","i","length","truncate","value","Math","min","max","toGrayscale","avg","resize","newWidth","newHeight","tempCanvas","downsampleForProcessing","maxDimension","scale","round","imageDataToBase64","toDataURL","base64ToImageData","base64","reject","img","Image","onload","onerror","src","processImageInParallel","processingFunction","chunks","Worker","resultCanvas","resultCtx","isWide","chunkSize","floor","promises","chunkCanvas","chunkCtx","chunkImageData","startX","startY","workerCode","toString","blob","Blob","type","workerUrl","URL","createObjectURL","worker","promise","onmessage","e","terminate","revokeObjectURL","postMessage","index","buffer","push","results","all","sort","a","b","result","LRUCache","maxSize","cache","Map","get","key","has","delete","set","size","oldestKey","keys","next","clear","calculateImageFingerprint","tempCtx","smallImgData","grayValues","r","g","gray","reduce","sum","val","fingerprint","IDCardDetector","detecting","detectTimer","frameCount","lastDetectionTime","camera","onDetected","detectionInterval","maxImageDimension","enableCache","cacheSize","logger","log","onDetection","onError","resultCache","throttledDetect","fn","delay","lastCall","timeoutId","args","now","Date","remaining","clearTimeout","apply","window","setTimeout","throttle","performDetection","bind","detect","cancelAnimationFrame","requestAnimationFrame","performance","frame","cachedResult","updatedResult","downsampledFrame","detectIDCard","success","detectionResult","random","message","rectWidth","rectHeight","rectX","rectY","corners","x","y","boundingBox","croppedImage","confidence","clearCache","dispose","async","processOCRInWorker","input","startTime","createWorker","import","tessWorkerOptions","m","load","loadLanguage","setParameters","tessedit_char_whitelist","recognize","imageBase64","idCardInfo","text","info","lines","split","filter","line","trim","idNumberRegex","idNumberMatch","match","idNumber","includes","test","name","replace","genderNationalityRegex","genderMatch","gender","nationalityText","nationality","substring","indexOf","birthDateRegex","birthDateMatch","birthDate","addressRegex","addressMatch","address","authorityRegex","authorityMatch","issuingAuthority","validPeriodRegex","validPeriodMatch","validPeriod","parseIDCardText","processingTime","OCRProcessor","ocrWorker","initialized","useWorker","workerFunction","promiseMap","messageCounter","id","promiseHandlers","workerError","stack","createCustomWorker","processIDCard","downsampledImage","enhancedImage","base64Image","toFixed","DataExtractor","validateIDNumber","year","parseInt","substr","month","day","date","getFullYear","getMonth","getDate","extractBirthDateFromID","extractGenderFromID","charAt","extractRegionFromID","enhanceIDCardInfo","ocrInfo","undefined","extractAndValidate","enhancedInfo","normalizeIDNumber","normalizeDate","normalizeAddress","toUpperCase","sexCode","isRunning","cameraOptions","idDetector","handleIDDetection","handleError","ocrProcessor","dataExtractor","startIDCardScanner","extractedInfo","onIDCardScanned"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"id-scanner-ocr.min.js","sources":["../src/utils/camera.ts","../src/utils/image-processing.ts","../src/utils/performance.ts","../src/id-recognition/id-detector.ts","../src/id-recognition/ocr-worker.ts","../src/id-recognition/ocr-processor.ts","../src/utils/worker.ts","../src/id-recognition/data-extractor.ts","../src/ocr-module.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null],"names":["Camera","constructor","options","this","stream","videoElement","width","height","facingMode","start","initialize","stop","release","constraints","video","ideal","navigator","mediaDevices","getUserMedia","srcObject","Promise","resolve","onloadedmetadata","play","then","error","console","Error","captureFrame","canvas","document","createElement","videoWidth","videoHeight","context","getContext","drawImage","getImageData","getTracks","forEach","track","ImageProcessor","imageDataToCanvas","imageData","ctx","putImageData","canvasToImageData","adjustBrightnessContrast","brightness","contrast","imgData","data","factor","i","length","truncate","value","Math","min","max","toGrayscale","avg","resize","newWidth","newHeight","tempCanvas","downsampleForProcessing","maxDimension","scale","round","imageDataToBase64","toDataURL","base64ToImageData","base64","reject","img","Image","onload","onerror","src","processImageInParallel","processingFunction","chunks","Worker","resultCanvas","resultCtx","isWide","chunkSize","floor","promises","chunkCanvas","chunkCtx","chunkImageData","startX","startY","workerCode","toString","blob","Blob","type","workerUrl","URL","createObjectURL","worker","promise","onmessage","e","terminate","revokeObjectURL","postMessage","index","buffer","push","results","all","sort","a","b","result","LRUCache","maxSize","cache","Map","get","key","has","delete","set","size","oldestKey","keys","next","undefined","clear","calculateImageFingerprint","tempCtx","smallImgData","grayValues","r","g","gray","reduce","sum","val","fingerprint","IDCardDetector","detecting","detectTimer","frameCount","lastDetectionTime","camera","onDetected","detectionInterval","maxImageDimension","enableCache","cacheSize","logger","log","onDetection","onError","resultCache","throttledDetect","fn","delay","lastCall","timeoutId","args","now","Date","remaining","clearTimeout","apply","window","setTimeout","throttle","performDetection","bind","detect","cancelAnimationFrame","requestAnimationFrame","performance","frame","cachedResult","updatedResult","downsampledFrame","detectIDCard","success","detectionResult","random","message","rectWidth","rectHeight","rectX","rectY","corners","x","y","boundingBox","croppedImage","confidence","clearCache","dispose","async","processOCRInWorker","input","startTime","createWorker","import","tessWorkerOptions","m","load","loadLanguage","setParameters","tessedit_char_whitelist","recognize","imageBase64","idCardInfo","text","info","lines","split","filter","line","trim","idNumberRegex","idNumberMatch","match","idNumber","includes","test","name","replace","genderNationalityRegex","genderMatch","gender","nationalityText","nationality","substring","indexOf","birthDateRegex","birthDateMatch","birthDate","addressRegex","addressMatch","address","authorityRegex","authorityMatch","issuingAuthority","validPeriodRegex","validPeriodMatch","validPeriod","parseIDCardText","processingTime","OCRProcessor","ocrWorker","initialized","useWorker","workerFunction","promiseMap","messageCounter","id","promiseHandlers","workerError","stack","createCustomWorker","processIDCard","downsampledImage","enhancedImage","base64Image","toFixed","DataExtractor","validateIDNumber","year","parseInt","substr","month","day","date","getFullYear","getMonth","getDate","extractBirthDateFromID","extractGenderFromID","charAt","extractRegionFromID","enhanceIDCardInfo","ocrInfo","extractAndValidate","enhancedInfo","normalizeIDNumber","normalizeDate","normalizeAddress","toUpperCase","sexCode","isRunning","cameraOptions","idDetector","handleIDDetection","handleError","ocrProcessor","dataExtractor","startIDCardScanner","extractedInfo","onIDCardScanned"],"mappings":"+SA6CaA,EAQX,WAAAC,CAAoBC,EAAyB,IAAzBC,KAAOD,QAAPA,EAPZC,KAAMC,OAAuB,KAC7BD,KAAYE,aAA4B,KAO9CF,KAAKD,QAAU,CACbI,MAAO,IACPC,OAAQ,IACRC,WAAY,iBACTN,GASP,WAAMO,CAAMJ,GACV,OAAOF,KAAKO,WAAWL,GAMzB,IAAAM,GACER,KAAKS,UAUP,gBAAMF,CAAWL,GACfF,KAAKE,aAAeA,EAEpB,IAEE,MAAMQ,EAAsC,CAC1CC,MAAO,CACLR,MAAO,CAAES,MAAOZ,KAAKD,QAAQI,OAC7BC,OAAQ,CAAEQ,MAAOZ,KAAKD,QAAQK,QAC9BC,WAAYL,KAAKD,QAAQM,aAK7BL,KAAKC,aAAeY,UAAUC,aAAaC,aAAaL,GAGpDV,KAAKE,eACPF,KAAKE,aAAac,UAAYhB,KAAKC,aAC7B,IAAIgB,SAAeC,IACnBlB,KAAKE,eACPF,KAAKE,aAAaiB,iBAAmB,KAC/BnB,KAAKE,cACPF,KAAKE,aAAakB,OAAOC,MAAK,IAAMH,YAM9C,MAAOI,GAEP,MADAC,QAAQD,MAAM,WAAYA,GACpB,IAAIE,MAAM,2CASpB,YAAAC,GACE,IAAKzB,KAAKE,aACR,OAAO,KAIT,MAAMwB,EAASC,SAASC,cAAc,UACtCF,EAAOvB,MAAQH,KAAKE,aAAa2B,WACjCH,EAAOtB,OAASJ,KAAKE,aAAa4B,YAElC,MAAMC,EAAUL,EAAOM,WAAW,MAClC,OAAKD,GAKLA,EAAQE,UAAUjC,KAAKE,aAAc,EAAG,EAAGwB,EAAOvB,MAAOuB,EAAOtB,QAGzD2B,EAAQG,aAAa,EAAG,EAAGR,EAAOvB,MAAOuB,EAAOtB,SAP9C,KAaX,OAAAK,GAEMT,KAAKC,SACPD,KAAKC,OAAOkC,YAAYC,SAAQC,GAASA,EAAM7B,SAC/CR,KAAKC,OAAS,MAIZD,KAAKE,eACPF,KAAKE,aAAac,UAAY,KAC9BhB,KAAKE,aAAe,aCvIboC,EAOX,wBAAOC,CAAkBC,GACvB,MAAMd,EAASC,SAASC,cAAc,UACtCF,EAAOvB,MAAQqC,EAAUrC,MACzBuB,EAAOtB,OAASoC,EAAUpC,OAC1B,MAAMqC,EAAMf,EAAOM,WAAW,MAM9B,OAJIS,GACFA,EAAIC,aAAaF,EAAW,EAAG,GAG1Bd,EAST,wBAAOiB,CAAkBjB,GACvB,MAAMe,EAAMf,EAAOM,WAAW,MAC9B,OAAOS,EAAMA,EAAIP,aAAa,EAAG,EAAGR,EAAOvB,MAAOuB,EAAOtB,QAAU,KAWrE,+BAAOwC,CAAyBJ,EAAsBK,EAAqB,EAAGC,EAAmB,GAC/F,MAAMpB,EAAS1B,KAAKuC,kBAAkBC,GAChCC,EAAMf,EAAOM,WAAW,MAE9B,GAAIS,EAAK,CACP,MAAMM,EAAUN,EAAIP,aAAa,EAAG,EAAGR,EAAOvB,MAAOuB,EAAOtB,QACtD4C,EAAOD,EAAQC,KAGfC,EAAU,KAAOH,EAAW,MAAS,KAAO,IAAMA,IAExD,IAAK,IAAII,EAAI,EAAGA,EAAIF,EAAKG,OAAQD,GAAK,EAEpCF,EAAKE,GAAKlD,KAAKoD,SAASH,GAAUD,EAAKE,GAAK,KAAO,IAAML,GAEzDG,EAAKE,EAAI,GAAKlD,KAAKoD,SAASH,GAAUD,EAAKE,EAAI,GAAK,KAAO,IAAML,GAEjEG,EAAKE,EAAI,GAAKlD,KAAKoD,SAASH,GAAUD,EAAKE,EAAI,GAAK,KAAO,IAAML,GAKnE,OADAJ,EAAIC,aAAaK,EAAS,EAAG,GACtBA,EAGT,OAAOP,EAUD,eAAOY,CAASC,GACtB,OAAOC,KAAKC,IAAI,IAAKD,KAAKE,IAAI,EAAGH,IAWnC,kBAAOI,CAAYjB,GACjB,MAAMd,EAAS1B,KAAKuC,kBAAkBC,GAChCC,EAAMf,EAAOM,WAAW,MAE9B,GAAIS,EAAK,CACP,MAAMM,EAAUN,EAAIP,aAAa,EAAG,EAAGR,EAAOvB,MAAOuB,EAAOtB,QACtD4C,EAAOD,EAAQC,KAErB,IAAK,IAAIE,EAAI,EAAGA,EAAIF,EAAKG,OAAQD,GAAK,EAAG,CACvC,MAAMQ,GAAOV,EAAKE,GAAKF,EAAKE,EAAI,GAAKF,EAAKE,EAAI,IAAM,EACpDF,EAAKE,GAAKQ,EACVV,EAAKE,EAAI,GAAKQ,EACdV,EAAKE,EAAI,GAAKQ,EAKhB,OADAjB,EAAIC,aAAaK,EAAS,EAAG,GACtBA,EAGT,OAAOP,EAWT,aAAOmB,CAAOnB,EAAsBoB,EAAkBC,GACpD,MAAMnC,EAASC,SAASC,cAAc,UACtCF,EAAOvB,MAAQyD,EACflC,EAAOtB,OAASyD,EAChB,MAAMpB,EAAMf,EAAOM,WAAW,MAE9B,GAAIS,EAAK,CACP,MAAMqB,EAAa9D,KAAKuC,kBAAkBC,GAE1C,OADAC,EAAIR,UAAU6B,EAAY,EAAG,EAAGtB,EAAUrC,MAAOqC,EAAUpC,OAAQ,EAAG,EAAGwD,EAAUC,GAC5EpB,EAAIP,aAAa,EAAG,EAAG0B,EAAUC,GAG1C,OAAOrB,EAYT,8BAAOuB,CAAwBvB,EAAsBwB,EAAuB,KAC1E,MAAM7D,MAAEA,EAAKC,OAAEA,GAAWoC,EAG1B,GAAIrC,GAAS6D,GAAgB5D,GAAU4D,EACrC,OAAOxB,EAIT,MAAMyB,EAAQD,EAAeV,KAAKE,IAAIrD,EAAOC,GACvCwD,EAAWN,KAAKY,MAAM/D,EAAQ8D,GAC9BJ,EAAYP,KAAKY,MAAM9D,EAAS6D,GAGtC,OAAOjE,KAAK2D,OAAOnB,EAAWoB,EAAUC,GAS1C,wBAAOM,CAAkB3B,GAEvB,OADexC,KAAKuC,kBAAkBC,GACxB4B,UAAU,aAAc,IASxC,8BAAaC,CAAkBC,GAC7B,OAAO,IAAIrD,SAAQ,CAACC,EAASqD,KAC3B,MAAMC,EAAM,IAAIC,MAChBD,EAAIE,OAAS,KACX,MAAMhD,EAASC,SAASC,cAAc,UACtCF,EAAOvB,MAAQqE,EAAIrE,MACnBuB,EAAOtB,OAASoE,EAAIpE,OACpB,MAAMqC,EAAMf,EAAOM,WAAW,MAE9B,IAAKS,EAEH,YADA8B,EAAO,IAAI/C,MAAM,kBAInBiB,EAAIR,UAAUuC,EAAK,EAAG,GACtB,MAAMhC,EAAYC,EAAIP,aAAa,EAAG,EAAGR,EAAOvB,MAAOuB,EAAOtB,QAC9Dc,EAAQsB,EAAU,EAGpBgC,EAAIG,QAAU,KACZJ,EAAO,IAAI/C,MAAM,UAAU,EAG7BgD,EAAII,IAAMN,CAAM,IAapB,mCAAaO,CACXrC,EACAsC,EACAC,EAAiB,GAGjB,GAAsB,oBAAXC,QAA0BxC,EAAUrC,MAAQqC,EAAUpC,OAAS,IACxE,OAAO0E,EAAmBtC,GAI5B,MAAMyC,EAAetD,SAASC,cAAc,UAC5CqD,EAAa9E,MAAQqC,EAAUrC,MAC/B8E,EAAa7E,OAASoC,EAAUpC,OAChC,MAAM8E,EAAYD,EAAajD,WAAW,MAE1C,IAAKkD,EACH,MAAM,IAAI1D,MAAM,iBAIlB,MAAM2D,EAAS3C,EAAUrC,MAAQqC,EAAUpC,OACrCgF,EAAY9B,KAAK+B,OAAOF,EAAS3C,EAAUrC,MAAQqC,EAAUpC,QAAU2E,GAGvEO,EAAW,GAEjB,IAAK,IAAIpC,EAAI,EAAGA,EAAI6B,EAAQ7B,IAAK,CAC/B,MAAMqC,EAAc5D,SAASC,cAAc,UACrC4D,EAAWD,EAAYvD,WAAW,MAExC,IAAKwD,EAAU,SAEf,IAAIC,EAEJ,GAAIN,EAAQ,CAEV,MAAMO,EAASxC,EAAIkC,EACbjF,EAAS+C,IAAM6B,EAAS,EAAKvC,EAAUrC,MAAQuF,EAASN,EAE9DG,EAAYpF,MAAQA,EACpBoF,EAAYnF,OAASoC,EAAUpC,OAG/B,MAAM0D,EAAa9D,KAAKuC,kBAAkBC,GAC1CgD,EAASvD,UACP6B,EACA4B,EAAQ,EAAGvF,EAAOqC,EAAUpC,OAC5B,EAAG,EAAGD,EAAOqC,EAAUpC,QAGzBqF,EAAiBD,EAAStD,aAAa,EAAG,EAAG/B,EAAOqC,EAAUpC,YACzD,CAEL,MAAMuF,EAASzC,EAAIkC,EACbhF,EAAU8C,IAAM6B,EAAS,EAAKvC,EAAUpC,OAASuF,EAASP,EAEhEG,EAAYpF,MAAQqC,EAAUrC,MAC9BoF,EAAYnF,OAASA,EAGrB,MAAM0D,EAAa9D,KAAKuC,kBAAkBC,GAC1CgD,EAASvD,UACP6B,EACA,EAAG6B,EAAQnD,EAAUrC,MAAOC,EAC5B,EAAG,EAAGoC,EAAUrC,MAAOC,GAGzBqF,EAAiBD,EAAStD,aAAa,EAAG,EAAGM,EAAUrC,MAAOC,GAIhE,MAAMwF,EAAa,iIAGcd,EAAmBe,8KAM9CC,EAAO,IAAIC,KAAK,CAACH,GAAa,CAAEI,KAAM,2BACtCC,EAAYC,IAAIC,gBAAgBL,GAChCM,EAAS,IAAIpB,OAAOiB,GAEpBI,EAAU,IAAIpF,SAA+CC,IACjEkF,EAAOE,UAAY,SAASC,GAC1BrF,EAAQqF,EAAEvD,MACVoD,EAAOI,YACPN,IAAIO,gBAAgBR,EACrB,EAGDG,EAAOM,YAAY,CACjBlE,UAAWiD,EACXkB,MAAOzD,GACN,CAACuC,EAAezC,KAAK4D,QAAQ,IAGlCtB,EAASuB,KAAKR,GAIhB,MAAMS,QAAgB7F,QAAQ8F,IAAIzB,GAGlCwB,EAAQE,MAAK,CAACC,EAAGC,IAAMD,EAAEN,MAAQO,EAAEP,QAGnC,IAAK,IAAIzD,EAAI,EAAGA,EAAI4D,EAAQ3D,OAAQD,IAAK,CACvC,MAAMiE,OAAEA,GAAWL,EAAQ5D,GACrBY,EAAa9D,KAAKuC,kBAAkB4E,GAE1C,GAAIhC,EAAQ,CACV,MAAMO,EAASxC,EAAIkC,EACnBF,EAAUjD,UAAU6B,EAAY4B,EAAQ,OACnC,CACL,MAAMC,EAASzC,EAAIkC,EACnBF,EAAUjD,UAAU6B,EAAY,EAAG6B,IAIvC,OAAOT,EAAUhD,aAAa,EAAG,EAAGM,EAAUrC,MAAOqC,EAAUpC,eCjStDgH,EAOX,WAAAtH,CAAoBuH,EAAkB,KAAlBrH,KAAOqH,QAAPA,EANZrH,KAAAsH,MAAQ,IAAIC,IAapB,GAAAC,CAAIC,GACF,IAAKzH,KAAKsH,MAAMI,IAAID,GAClB,OAIF,MAAMpE,EAAQrD,KAAKsH,MAAME,IAAIC,GAM7B,OAHAzH,KAAKsH,MAAMK,OAAOF,GAClBzH,KAAKsH,MAAMM,IAAIH,EAAKpE,GAEbA,EAQT,GAAAuE,CAAIH,EAAQpE,GAOV,GALIrD,KAAKsH,MAAMI,IAAID,IACjBzH,KAAKsH,MAAMK,OAAOF,GAIhBzH,KAAKsH,MAAMO,MAAQ7H,KAAKqH,QAAS,CACnC,MAAMS,EAAY9H,KAAKsH,MAAMS,OAAOC,OAAO3E,WACzB4E,IAAdH,GACF9H,KAAKsH,MAAMK,OAAOG,GAKtB9H,KAAKsH,MAAMM,IAAIH,EAAKpE,GAQtB,OAAOoE,GACL,OAAOzH,KAAKsH,MAAMK,OAAOF,GAM3B,KAAAS,GACElI,KAAKsH,MAAMY,QAMb,QAAIL,GACF,OAAO7H,KAAKsH,MAAMO,KAOpB,GAAAH,CAAID,GACF,OAAOzH,KAAKsH,MAAMI,IAAID,aAWVU,EAA0B3F,EAAsBqF,EAAe,GAE7E,MAAMnG,EAASC,SAASC,cAAc,UACtCF,EAAOvB,MAAQ0H,EACfnG,EAAOtB,OAASyH,EAChB,MAAMpF,EAAMf,EAAOM,WAAW,MAE9B,IAAKS,EACH,MAAO,GAIT,MAAMqB,EAAanC,SAASC,cAAc,UAC1CkC,EAAW3D,MAAQqC,EAAUrC,MAC7B2D,EAAW1D,OAASoC,EAAUpC,OAC9B,MAAMgI,EAAUtE,EAAW9B,WAAW,MAEtC,IAAKoG,EACH,MAAO,GAGTA,EAAQ1F,aAAaF,EAAW,EAAG,GAGnCC,EAAIR,UAAU6B,EAAY,EAAG,EAAGtB,EAAUrC,MAAOqC,EAAUpC,OAAQ,EAAG,EAAGyH,EAAMA,GAG/E,MAAMQ,EAAe5F,EAAIP,aAAa,EAAG,EAAG2F,EAAMA,GAC5CS,EAAa,GAEnB,IAAK,IAAIpF,EAAI,EAAGA,EAAImF,EAAarF,KAAKG,OAAQD,GAAK,EAAG,CACpD,MAAMqF,EAAIF,EAAarF,KAAKE,GACtBsF,EAAIH,EAAarF,KAAKE,EAAI,GAC1BgE,EAAImB,EAAarF,KAAKE,EAAI,GAE1BuF,EAAOnF,KAAKY,MAAM,KAAQqE,EAAI,KAAQC,EAAI,KAAQtB,GACxDoB,EAAWzB,KAAK4B,GAIlB,MAAM/E,EAAM4E,EAAWI,QAAO,CAACC,EAAKC,IAAQD,EAAMC,GAAK,GAAKN,EAAWnF,OAGvE,IAAI0F,EAAc,GAClB,IAAK,MAAMJ,KAAQH,EACjBO,GAAeJ,GAAQ/E,EAAM,IAAM,IAGrC,OAAOmF,CACT,OC/JaC,EAmBX,WAAAhJ,CAAYC,GAjBJC,KAAS+I,WAAG,EACZ/I,KAAWgJ,YAAkB,KAO7BhJ,KAAUiJ,WAAW,EACrBjJ,KAAiBkJ,kBAAW,EASlClJ,KAAKmJ,OAAS,IAAItJ,EAEK,mBAAZE,GAETC,KAAKoJ,WAAarJ,EAClBC,KAAKD,QAAU,CACbsJ,kBAAmB,IACnBC,kBAAmB,IACnBC,aAAa,EACbC,UAAW,GACXC,OAAQlI,QAAQmI,MAET3J,GAETC,KAAKD,QAAU,CACbsJ,kBAAmB,IACnBC,kBAAmB,IACnBC,aAAa,EACbC,UAAW,GACXC,OAAQlI,QAAQmI,OACb3J,GAELC,KAAKoJ,WAAarJ,EAAQ4J,YAC1B3J,KAAK4J,QAAU7J,EAAQ6J,SAEvB5J,KAAKD,QAAU,CACbsJ,kBAAmB,IACnBC,kBAAmB,IACnBC,aAAa,EACbC,UAAW,GACXC,OAAQlI,QAAQmI,KAIpB1J,KAAKqJ,kBAAoBrJ,KAAKD,QAAQsJ,kBACtCrJ,KAAKsJ,kBAAoBtJ,KAAKD,QAAQuJ,kBAGtCtJ,KAAK6J,YAAc,IAAIzC,EAAkCpH,KAAKD,QAAQyJ,WAGtExJ,KAAK8J,gBDlGO,SACdC,EACAC,GAEA,IAAIC,EAAW,EACXC,EAA2B,KAE/B,OAAO,YAAuBC,GAC5B,MAAMC,EAAMC,KAAKD,MACXE,EAAYN,GAASI,EAAMH,GAE7BK,GAAa,GACXJ,IACFK,aAAaL,GACbA,EAAY,MAEdD,EAAWG,EACXL,EAAGS,MAAMxK,KAAMmK,IACLD,IACVA,EAAYO,OAAOC,YAAW,KAC5BT,EAAWI,KAAKD,MAChBF,EAAY,KACZH,EAAGS,MAAMxK,KAAMmK,EAAK,GACnBG,GAEN,CACH,CCwE2BK,CAAS3K,KAAK4K,iBAAiBC,KAAK7K,MAAOA,KAAKqJ,mBAWzE,WAAM/I,CAAMJ,SACJF,KAAKmJ,OAAO5I,WAAWL,GAC7BF,KAAK+I,WAAY,EACjB/I,KAAKiJ,WAAa,EAClBjJ,KAAKkJ,kBAAoB,EACzBlJ,KAAK8K,SAMP,IAAAtK,GACER,KAAK+I,WAAY,EACQ,OAArB/I,KAAKgJ,cACP+B,qBAAqB/K,KAAKgJ,aAC1BhJ,KAAKgJ,YAAc,MASf,MAAA8B,GACD9K,KAAK+I,YAEV/I,KAAKgJ,YAAcgC,uBAAsB,KACvC,IACEhL,KAAKiJ,aACL,MAAMmB,EAAMa,YAAYb,OAIpBpK,KAAKiJ,WAAa,GAAM,GAAKmB,EAAMpK,KAAKkJ,mBAAqBlJ,KAAKqJ,qBACpErJ,KAAK8J,kBACL9J,KAAKkJ,kBAAoBkB,GAI3BpK,KAAK8K,SACL,MAAOxJ,GACHtB,KAAK4J,QACP5J,KAAK4J,QAAQtI,GAEbC,QAAQD,MAAM,WAAYA,GAI5BoJ,YAAW,KACL1K,KAAK+I,WACP/I,KAAK8K,WAEN,UAUD,sBAAMF,GACZ,IAAK5K,KAAK+I,YAAc/I,KAAKmJ,OAAQ,OAGrC,MAAM+B,EAAQlL,KAAKmJ,OAAO1H,eAC1B,IAAKyJ,EAAO,OAGZ,GAAIlL,KAAKD,QAAQwJ,YAAa,CAC5B,MAAMV,EAAcV,EAA0B+C,EAAO,IAC/CC,EAAenL,KAAK6J,YAAYrC,IAAIqB,GAE1C,GAAIsC,EAAc,CAChBnL,KAAKD,QAAQ0J,SAAS,aAGtB,MAAM2B,EAAgB,IACjBD,EACH3I,UAAW0I,GAMb,YAHIlL,KAAKoJ,YACPpJ,KAAKoJ,WAAWgC,KAOtB,MAAMC,EAAmB/I,EAAeyB,wBAAwBmH,EAAOlL,KAAKsJ,mBAE5E,IAEE,MAAMnC,QAAenH,KAAKsL,aAAaD,GAGvC,GAAIlE,EAAOoE,UACTpE,EAAO3E,UAAY0I,EAGflL,KAAKD,QAAQwJ,aAAa,CAC5B,MAAMV,EAAcV,EAA0B+C,EAAO,IACrDlL,KAAK6J,YAAYjC,IAAIiB,EAAa1B,GAKlCnH,KAAKoJ,YACPpJ,KAAKoJ,WAAWjC,GAElB,MAAO7F,GACHtB,KAAK4J,QACP5J,KAAK4J,QAAQtI,GAEbC,QAAQD,MAAM,WAAYA,IAYxB,kBAAMgK,CAAa9I,GAEPF,EAAemB,YAAYjB,GAQ7C,MAAMgJ,EAAmC,CACvCD,QAASjI,KAAKmI,SAAW,GACzBC,QAAS,WAGX,GAAIF,EAAgBD,QAAS,CAE3B,MAAMpL,EAAQqC,EAAUrC,MAClBC,EAASoC,EAAUpC,OAGnBuL,EAAYrI,KAAKY,MAAc,GAAR/D,GACvByL,EAAatI,KAAKY,MAAkB,KAAZyH,GACxBE,EAAQvI,KAAKY,OAAO/D,EAAQwL,GAAa,GACzCG,EAAQxI,KAAKY,OAAO9D,EAASwL,GAAc,GAGjDJ,EAAgBO,QAAU,CACxB,CAAEC,EAAGH,EAAOI,EAAGH,GACf,CAAEE,EAAGH,EAAQF,EAAWM,EAAGH,GAC3B,CAAEE,EAAGH,EAAQF,EAAWM,EAAGH,EAAQF,GACnC,CAAEI,EAAGH,EAAOI,EAAGH,EAAQF,IAIzBJ,EAAgBU,YAAc,CAC5BF,EAAGH,EACHI,EAAGH,EACH3L,MAAOwL,EACPvL,OAAQwL,GAIV,MAAMlK,EAASC,SAASC,cAAc,UACtCF,EAAOvB,MAAQwL,EACfjK,EAAOtB,OAASwL,EAChB,MAAMnJ,EAAMf,EAAOM,WAAW,MAE9B,GAAIS,EAAK,CACP,MAAMqB,EAAaxB,EAAeC,kBAAkBC,GACpDC,EAAIR,UACF6B,EACA+H,EAAOC,EAAOH,EAAWC,EACzB,EAAG,EAAGD,EAAWC,GAGnBJ,EAAgBW,aAAe1J,EAAIP,aAAa,EAAG,EAAGyJ,EAAWC,GAInEJ,EAAgBY,WAAa,GAAsB,GAAhB9I,KAAKmI,SAG1C,OAAOD,EAMT,UAAAa,GACErM,KAAK6J,YAAY3B,QACjBlI,KAAKD,QAAQ0J,SAAS,aAMxB,OAAA6C,GACEtM,KAAKQ,OACLR,KAAKmJ,OAAO1I,UACZT,KAAK6J,YAAY3B,SC3SdqE,eAAeC,EAAmBC,GAEvC,MAAMC,EAAYzB,YAAYb,OAGxBuC,aAAEA,SAAuBC,OAAO,gBAGhCxG,QAAeuG,EAAaF,EAAMI,mBAAqB,CAC3DpD,OAASqD,GAAWvL,QAAQmI,IAAIoD,KAGlC,UAEQ1G,EAAO2G,aACP3G,EAAO4G,aAAa,iBACpB5G,EAAO7F,WAAW,iBAClB6F,EAAO6G,cAAc,CACzBC,wBAAyB,6QAI3B,MAAMlK,KAAEA,SAAeoD,EAAO+G,UAAUV,EAAMW,aAGxCC,EA6BV,SAAyBC,GACvB,MAAMC,EAAmB,CAAE,EAGrBC,EAAQF,EAAKG,MAAM,MAAMC,QAAOC,GAAQA,EAAKC,SAG7CC,EAAgB,gBAChBC,EAAgBR,EAAKS,MAAMF,GAC7BC,IACFP,EAAKS,SAAWF,EAAc,IAIhC,IAAK,MAAMH,KAAQH,EACjB,GAAIG,EAAKM,SAAS,OAASN,EAAKxK,OAAS,IAAMwK,EAAKxK,OAAS,IAAM,KAAK+K,KAAKP,GAAO,CAClFJ,EAAKY,KAAOR,EAAKS,QAAQ,KAAM,IAAIR,OACnC,MAKJ,MAAMS,EAAyB,aACzBC,EAAchB,EAAKS,MAAMM,GAC/B,GAAIC,EAAa,CACff,EAAKgB,OAASD,EAAY,GAC1B,MAAME,EAAkBF,EAAY,GACpCf,EAAKkB,YAAcD,EAAgBE,UAAUF,EAAgBG,QAAQL,EAAY,IAAM,GAAGV,OAI5F,MAAMgB,EAAiB,+BACjBC,EAAiBvB,EAAKS,MAAMa,GAC9BC,IACFtB,EAAKuB,UAAY,GAAGD,EAAe,MAAMA,EAAe,MAAMA,EAAe,MAI/E,MAAME,EAAe,qBACfC,EAAe1B,EAAKS,MAAMgB,GAC5BC,IACFzB,EAAK0B,QAAUD,EAAa,GAAGZ,QAAQ,MAAO,IAAIR,QAIpD,MAAMsB,EAAiB,oBACjBC,EAAiB7B,EAAKS,MAAMmB,GAC9BC,IACF5B,EAAK6B,iBAAmBD,EAAe,GAAGf,QAAQ,MAAO,IAAIR,QAI/D,MAAMyB,EAAmB,sBACnBC,EAAmBhC,EAAKS,MAAMsB,GAChCC,IACF/B,EAAKgC,YAAcD,EAAiB,GAAGlB,QAAQ,OAAQ,IAAIR,QAG7D,OAAOL,CACT,CAxFuBiC,CAAgBxM,EAAKsK,YAGlClH,EAAOI,YAMb,MAAO,CACL6G,aACAoC,eALqBxE,YAAYb,MAAQsC,GAO3C,MAAOpL,GAGP,YADM8E,EAAOI,YACPlF,EAEV,OCxBaoO,EAYX,WAAA5P,CAAYC,EAA+B,IAXnCC,KAAMoG,OAAQ,KACdpG,KAAS2P,UAAsH,KAC/H3P,KAAW4P,aAAY,EAU7B5P,KAAKD,QAAU,CACb8P,UCsBqB,oBAAX7K,ODrBVuE,aAAa,EACbC,UAAW,GACXF,kBAAmB,IACnBG,OAAQlI,QAAQmI,OACb3J,GAILC,KAAK6J,YAAc,IAAIzC,EAA6BpH,KAAKD,QAAQyJ,WAUnE,gBAAMjJ,GACAP,KAAK4P,cAEL5P,KAAKD,QAAQ8P,WAEf7P,KAAK2P,UC7EL,SAA6BG,GAKjC,MAAMlK,EAAa,0FAGWkK,EAAejK,iQAWvCC,EAAO,IAAIC,KAAK,CAACH,GAAa,CAAEI,KAAM,2BACtCC,EAAYC,IAAIC,gBAAgBL,GAChCM,EAAS,IAAIpB,OAAOiB,GAGpB8J,EAAa,IAAIxI,IAKvB,IAAIyI,EAAiB,EAwBrB,OAtBA5J,EAAOE,UAAaC,IAEM,IAApBwJ,EAAWlI,MACb3B,IAAIO,gBAAgBR,GAGtB,MAAMgK,GAAEA,EAAE1E,QAAEA,EAAOpE,OAAEA,EAAM7F,MAAEA,GAAUiF,EAAEvD,KAEnCkN,EAAkBH,EAAWvI,IAAIyI,GACvC,GAAIC,EAGF,GAFAH,EAAWpI,OAAOsI,GAEd1E,EACF2E,EAAgBhP,QAAQiG,OACnB,CACL,MAAMgJ,EAAc,IAAI3O,MAAMF,EAAMoK,SACpCyE,EAAYC,MAAQ9O,EAAM8O,MAC1BF,EAAgB3L,OAAO4L,KAKtB,CACLzJ,YAAc1D,GACL,IAAI/B,SAAQ,CAACC,EAASqD,KAC3B,MAAM0L,EAAKD,IACXD,EAAWnI,IAAIqI,EAAI,CAAE/O,UAASqD,WAC9B6B,EAAOM,YAAY,CAAEuJ,KAAIjN,QAAO,IAGpCwD,UAAW,KACTJ,EAAOI,YACPuJ,EAAW7H,QACXhC,IAAIO,gBAAgBR,EAAU,EAGpC,CDUuBoK,CAAwF7D,GACzGxM,KAAK4P,aAAc,EACnB5P,KAAKD,QAAQ0J,SAAS,sBAGtBzJ,KAAKoG,OAASuG,eAAa,CACzBlD,OAAQzJ,KAAKD,QAAQ0J,eAGjBzJ,KAAKoG,OAAO2G,aACZ/M,KAAKoG,OAAO4G,aAAa,iBACzBhN,KAAKoG,OAAO7F,WAAW,iBACvBP,KAAKoG,OAAO6G,cAAc,CAC9BC,wBAAyB,6QAG3BlN,KAAK4P,aAAc,EACnB5P,KAAKD,QAAQ0J,SAAS,gBAS1B,mBAAM6G,CAAc9N,GAMlB,GALKxC,KAAK4P,mBACF5P,KAAKO,aAITP,KAAKD,QAAQwJ,YAAa,CAC5B,MAAMV,EAAcV,EAA0B3F,GAGxC2I,EAAenL,KAAK6J,YAAYrC,IAAIqB,GAC1C,GAAIsC,EAEF,OADAnL,KAAKD,QAAQ0J,SAAS,cACf0B,EAKX,MAAMoF,EAAmBjO,EAAeyB,wBAAwBvB,EAAWxC,KAAKD,QAAQuJ,mBAClFkH,EAAgBlO,EAAeM,yBAAyB2N,EAAkB,GAAI,IAGpF,IACE,IAAIlD,EAEJ,GAAIrN,KAAKD,QAAQ8P,WAAa7P,KAAK2P,UAAW,CAE5C,MAAMc,EAAcnO,EAAe6B,kBAAkBqM,GAE/CrJ,QAAenH,KAAK2P,UAAUjJ,YAAY,CAC9C0G,YAAaqD,EACb5D,kBAAmB,CACjBpD,OAAQzJ,KAAKD,QAAQ0J,UAIzB4D,EAAalG,EAAOkG,WACpBrN,KAAKD,QAAQ0J,SAAS,eAAetC,EAAOsI,eAAeiB,QAAQ,YAC9D,CAEL,MAAMhE,EAAYzB,YAAYb,MAGxB1I,EAASY,EAAeC,kBAAkBiO,IAE1CxN,KAAEA,SAAehD,KAAKoG,OAAO+G,UAAUzL,GAG7C2L,EAAarN,KAAKwP,gBAAgBxM,EAAKsK,MAEvC,MAAMmC,EAAiBxE,YAAYb,MAAQsC,EAC3C1M,KAAKD,QAAQ0J,SAAS,eAAegG,EAAeiB,QAAQ,QAI9D,GAAI1Q,KAAKD,QAAQwJ,YAAa,CAC5B,MAAMV,EAAcV,EAA0B3F,GAC9CxC,KAAK6J,YAAYjC,IAAIiB,EAAawE,GAGpC,OAAOA,EACP,MAAO/L,GAEP,OADAtB,KAAKD,QAAQ0J,SAAS,YAAYnI,KAC3B,CAAgB,GAanB,eAAAkO,CAAgBlC,GACtB,MAAMC,EAAmB,CAAE,EAGrBC,EAAQF,EAAKG,MAAM,MAAMC,QAAOC,GAAQA,EAAKC,SAI7CE,EAAgBR,EAAKS,MADL,iBAElBD,IACFP,EAAKS,SAAWF,EAAc,IAIhC,IAAK,MAAMH,KAAQH,EACjB,GAAIG,EAAKM,SAAS,OAASN,EAAKxK,OAAS,IAAMwK,EAAKxK,OAAS,IAAM,KAAK+K,KAAKP,GAAO,CAClFJ,EAAKY,KAAOR,EAAKS,QAAQ,KAAM,IAAIR,OACnC,MAKJ,MACMU,EAAchB,EAAKS,MADM,cAE/B,GAAIO,EAAa,CACff,EAAKgB,OAASD,EAAY,GAC1B,MAAME,EAAkBF,EAAY,GACpCf,EAAKkB,YAAcD,EAAgBE,UAAUF,EAAgBG,QAAQL,EAAY,IAAM,GAAGV,OAI5F,MACMiB,EAAiBvB,EAAKS,MADL,gCAEnBc,IACFtB,EAAKuB,UAAY,GAAGD,EAAe,MAAMA,EAAe,MAAMA,EAAe,MAI/E,MACMG,EAAe1B,EAAKS,MADL,sBAEjBiB,IACFzB,EAAK0B,QAAUD,EAAa,GAAGZ,QAAQ,MAAO,IAAIR,QAIpD,MACMuB,EAAiB7B,EAAKS,MADL,qBAEnBoB,IACF5B,EAAK6B,iBAAmBD,EAAe,GAAGf,QAAQ,MAAO,IAAIR,QAI/D,MACM0B,EAAmBhC,EAAKS,MADL,uBAMzB,OAJIuB,IACF/B,EAAKgC,YAAcD,EAAiB,GAAGlB,QAAQ,OAAQ,IAAIR,QAGtDL,EAMT,UAAAlB,GACErM,KAAK6J,YAAY3B,QACjBlI,KAAKD,QAAQ0J,SAAS,cAQxB,eAAMjD,GACAxG,KAAKoG,eACDpG,KAAKoG,OAAOI,YAClBxG,KAAKoG,OAAS,MAGZpG,KAAK2P,YACP3P,KAAK2P,UAAUnJ,YACfxG,KAAK2P,UAAY,MAGnB3P,KAAK4P,aAAc,EACnB5P,KAAKD,QAAQ0J,SAAS,YAMxB,OAAA6C,GACE,OAAOtM,KAAKwG,mBE7PHmK,EASX,uBAAOC,CAAiB5C,GAEtB,IAAKA,GAAgC,KAApBA,EAAS7K,OACxB,OAAO,EAKT,IADgB,gBACH+K,KAAKF,GAChB,OAAO,EAIT,MAAM6C,EAAOC,SAAS9C,EAAS+C,OAAO,EAAG,IACnCC,EAAQF,SAAS9C,EAAS+C,OAAO,GAAI,IACrCE,EAAMH,SAAS9C,EAAS+C,OAAO,GAAI,IAEnCG,EAAO,IAAI7G,KAAKwG,EAAMG,EAAQ,EAAGC,GACvC,OACEC,EAAKC,gBAAkBN,GACvBK,EAAKE,WAAa,IAAMJ,GACxBE,EAAKG,YAAcJ,EAevB,6BAAOK,CAAuBtD,GAC5B,IAAKhO,KAAK4Q,iBAAiB5C,GACzB,OAAO,KAOT,MAAO,GAJMA,EAAS+C,OAAO,EAAG,MAClB/C,EAAS+C,OAAO,GAAI,MACtB/C,EAAS+C,OAAO,GAAI,KAalC,0BAAOQ,CAAoBvD,GACzB,IAAKhO,KAAK4Q,iBAAiB5C,GACzB,OAAO,KAKT,OADmB8C,SAAS9C,EAASwD,OAAO,KACxB,GAAM,EAAI,IAAM,IAStC,0BAAOC,CAAoBzD,GACzB,OAAKhO,KAAK4Q,iBAAiB5C,GAIpBA,EAAS+C,OAAO,EAAG,GAHjB,KAgBX,wBAAOW,CAAkBC,EAAqB3D,GAC5C,MAAM7G,EAAS,IAAKwK,GAgBpB,GAbIxK,EAAO6G,UAAYhO,KAAK4Q,iBAAiBzJ,EAAO6G,YAE7C7G,EAAO2H,YACV3H,EAAO2H,UAAY9O,KAAKsR,uBAAuBnK,EAAO6G,gBAAa/F,GAIhEd,EAAOoH,SACVpH,EAAOoH,OAASvO,KAAKuR,oBAAoBpK,EAAO6G,gBAAa/F,IAK7D+F,GAAYhO,KAAK4Q,iBAAiB5C,GAAW,CAC/C7G,EAAO6G,SAAWA,EAGlB,MAAMc,EAAY9O,KAAKsR,uBAAuBtD,GAC1Cc,IACF3H,EAAO2H,UAAYA,GAGrB,MAAMP,EAASvO,KAAKuR,oBAAoBvD,GACpCO,IACFpH,EAAOoH,OAASA,GAIpB,OAAOpH,EAST,kBAAAyK,CAAmBvE,GACjB,MAAMwE,EAAe,IAAIxE,GA6BzB,OA1BIwE,EAAa7D,WACf6D,EAAa7D,SAAWhO,KAAK8R,kBAAkBD,EAAa7D,UAGxDhO,KAAK4Q,iBAAiBiB,EAAa7D,YAChC6D,EAAa/C,YAChB+C,EAAa/C,UAAY9O,KAAKsR,uBAAuBO,EAAa7D,WAI/D6D,EAAatD,SAChBsD,EAAatD,OAASvO,KAAKuR,oBAAoBM,EAAa7D,aAM9D6D,EAAa/C,YACf+C,EAAa/C,UAAY9O,KAAK+R,cAAcF,EAAa/C,YAIvD+C,EAAa5C,UACf4C,EAAa5C,QAAUjP,KAAKgS,iBAAiBH,EAAa5C,UAGrD4C,EAMD,iBAAAC,CAAkB9D,GAExB,OAAOA,EAASI,QAAQ,UAAW,IAAI6D,cAMjC,gBAAArB,CAAiB5C,GAGvB,MADgB,iCACDE,KAAKF,GAMd,sBAAAsD,CAAuBtD,GAC7B,OAAwB,KAApBA,EAAS7K,OACJ,GAAG6K,EAASU,UAAU,EAAG,OAAOV,EAASU,UAAU,GAAI,OAAOV,EAASU,UAAU,GAAI,MAC/D,KAApBV,EAAS7K,OACX,KAAK6K,EAASU,UAAU,EAAG,MAAMV,EAASU,UAAU,EAAG,OAAOV,EAASU,UAAU,GAAI,MAEvF,GAMD,mBAAA6C,CAAoBvD,GAC1B,IAAIkE,EAMJ,OAJEA,EADsB,KAApBlE,EAAS7K,OACD2N,SAAS9C,EAASwD,OAAO,KAEzBV,SAAS9C,EAASwD,OAAO,KAE9BU,EAAU,GAAM,EAAI,IAAM,IAM3B,aAAAH,CAAcb,GAEpB,OAAOA,EAAK9C,QAAQ,wBAAyB,YAMvC,gBAAA4D,CAAiB/C,GAEvB,OAAOA,EAAQrB;;;;;;;8DC1NjB,WAAA9N,CAAoBC,EAA4B,IAA5BC,KAAOD,QAAPA,EAPZC,KAASmS,WAAY,EACrBnS,KAAYE,aAA4B,KAO9CF,KAAKmJ,OAAS,IAAItJ,EAAOE,EAAQqS,eACjCpS,KAAKqS,WAAa,IAAIvJ,EAAe,CACnCa,YAAa3J,KAAKsS,kBAAkBzH,KAAK7K,MACzC4J,QAAS5J,KAAKuS,YAAY1H,KAAK7K,QAEjCA,KAAKwS,aAAe,IAAI9C,EACxB1P,KAAKyS,cAAgB,IAAI9B,EAQ3B,gBAAMpQ,GACJ,UACQP,KAAKwS,aAAajS,aACxBgB,QAAQmI,IAAI,0BACZ,MAAOpI,GAEP,MADAtB,KAAKuS,YAAYjR,GACXA,GAQV,wBAAMoR,CAAmBxS,GACvB,IAAKF,KAAKwS,aACR,MAAM,IAAIhR,MAAM,wDAGlBxB,KAAKE,aAAeA,EACpBF,KAAKmS,WAAY,QACXnS,KAAKmJ,OAAO7I,MAAMJ,GACxBF,KAAKqS,WAAW/R,MAAMJ,GAMxB,IAAAM,GACER,KAAKmS,WAAY,EACjBnS,KAAKqS,WAAW7R,OAChBR,KAAKmJ,OAAO3I,OAMN,uBAAM8R,CAAkBnL,GAC9B,GAAKnH,KAAKmS,UAEV,IAEE,IAAKhL,EAAO3E,UAEV,YADAxC,KAAKuS,YAAY,IAAI/Q,MAAM,YAI7B,MAAM6L,QAAmBrN,KAAKwS,aAAalC,cAAcnJ,EAAO3E,WAC1DmQ,EAAgB3S,KAAKyS,cAAcb,mBAAmBvE,GAExDrN,KAAKD,QAAQ6S,iBACf5S,KAAKD,QAAQ6S,gBAAgBD,GAE/B,MAAOrR,GACPtB,KAAKuS,YAAYjR,IAOb,WAAAiR,CAAYjR,GACdtB,KAAKD,QAAQ6J,QACf5J,KAAKD,QAAQ6J,QAAQtI,GAErBC,QAAQD,MAAM,mBAAoBA,GAOtC,eAAMkF,GACJxG,KAAKQ,aACCR,KAAKwS,aAAahM"}
|
package/dist/id-scanner.js
CHANGED
|
@@ -752,7 +752,9 @@
|
|
|
752
752
|
// 如果缓存已满,移除最老的项
|
|
753
753
|
if (this.cache.size >= this.maxSize) {
|
|
754
754
|
const oldestKey = this.cache.keys().next().value;
|
|
755
|
-
|
|
755
|
+
if (oldestKey !== undefined) {
|
|
756
|
+
this.cache.delete(oldestKey);
|
|
757
|
+
}
|
|
756
758
|
}
|
|
757
759
|
// 添加新项
|
|
758
760
|
this.cache.set(key, value);
|
|
@@ -1202,9 +1204,9 @@
|
|
|
1202
1204
|
// 加载Tesseract.js (Worker 环境下动态导入)
|
|
1203
1205
|
const { createWorker } = await import('tesseract.js');
|
|
1204
1206
|
// 创建OCR Worker
|
|
1205
|
-
const worker = createWorker(input.tessWorkerOptions || {
|
|
1207
|
+
const worker = await createWorker(input.tessWorkerOptions || {
|
|
1206
1208
|
logger: (m) => console.log(m)
|
|
1207
|
-
});
|
|
1209
|
+
}); // 添加类型断言,避免TypeScript错误
|
|
1208
1210
|
try {
|
|
1209
1211
|
// 初始化OCR引擎
|
|
1210
1212
|
await worker.load();
|
package/dist/id-scanner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"id-scanner.js","sources":["../src/utils/camera.ts","../src/scanner/qr-scanner.ts","../src/utils/image-processing.ts","../src/scanner/barcode-scanner.ts","../src/utils/performance.ts","../src/id-recognition/id-detector.ts","../src/utils/worker.ts","../src/id-recognition/ocr-worker.ts","../src/id-recognition/ocr-processor.ts","../src/id-recognition/data-extractor.ts","../src/index-umd.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["createCustomWorker","createWorker"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"id-scanner.js","sources":["../src/utils/camera.ts","../src/scanner/qr-scanner.ts","../src/utils/image-processing.ts","../src/scanner/barcode-scanner.ts","../src/utils/performance.ts","../src/id-recognition/id-detector.ts","../src/utils/worker.ts","../src/id-recognition/ocr-worker.ts","../src/id-recognition/ocr-processor.ts","../src/id-recognition/data-extractor.ts","../src/index-umd.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["createCustomWorker","createWorker"],"mappings":"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"}
|
package/dist/id-scanner.min.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("jsqr"),require("tesseract.js")):"function"==typeof define&&define.amd?define(["exports","jsqr","tesseract.js"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).IDScanner={},t.jsQR,t.Tesseract)}(this,(function(t,e,i){"use strict";class s{constructor(t={}){this.options=t,this.stream=null,this.videoElement=null,this.options={width:640,height:480,facingMode:"environment",...t}}async start(t){return this.initialize(t)}stop(){this.release()}async initialize(t){this.videoElement=t;try{const t={video:{width:{ideal:this.options.width},height:{ideal:this.options.height},facingMode:this.options.facingMode}};this.stream=await navigator.mediaDevices.getUserMedia(t),this.videoElement&&(this.videoElement.srcObject=this.stream,await new Promise((t=>{this.videoElement&&(this.videoElement.onloadedmetadata=()=>{this.videoElement&&this.videoElement.play().then((()=>t()))})})))}catch(t){throw console.error("无法访问摄像头:",t),new Error("无法访问摄像头。请确保已授予摄像头访问权限,并且摄像头未被其他应用程序占用。")}}captureFrame(){if(!this.videoElement)return null;const t=document.createElement("canvas");t.width=this.videoElement.videoWidth,t.height=this.videoElement.videoHeight;const e=t.getContext("2d");return e?(e.drawImage(this.videoElement,0,0,t.width,t.height),e.getImageData(0,0,t.width,t.height)):null}release(){this.stream&&(this.stream.getTracks().forEach((t=>t.stop())),this.stream=null),this.videoElement&&(this.videoElement.srcObject=null,this.videoElement=null)}}class a{constructor(t={}){this.options=t,this.scanning=!1,this.scanTimer=null,this.options={scanInterval:200,...t},this.camera=new s}async start(t){try{await this.camera.initialize(t),this.scanning=!0,this.scan()}catch(t){this.options.onError&&this.options.onError(t instanceof Error?t:new Error(String(t)))}}scan(){if(!this.scanning)return;const t=this.camera.captureFrame();if(t){const i=e(t.data,t.width,t.height);i&&this.options.onScan&&this.options.onScan(i.data)}this.scanTimer=window.setTimeout((()=>this.scan()),this.options.scanInterval)}stop(){this.scanning=!1,this.scanTimer&&(clearTimeout(this.scanTimer),this.scanTimer=null),this.camera.release()}}class r{static imageDataToCanvas(t){const e=document.createElement("canvas");e.width=t.width,e.height=t.height;const i=e.getContext("2d");return i&&i.putImageData(t,0,0),e}static canvasToImageData(t){const e=t.getContext("2d");return e?e.getImageData(0,0,t.width,t.height):null}static adjustBrightnessContrast(t,e=0,i=0){const s=this.imageDataToCanvas(t),a=s.getContext("2d");if(a){const t=a.getImageData(0,0,s.width,s.height),r=t.data,n=259*(i+255)/(255*(259-i));for(let t=0;t<r.length;t+=4)r[t]=this.truncate(n*(r[t]-128)+128+e),r[t+1]=this.truncate(n*(r[t+1]-128)+128+e),r[t+2]=this.truncate(n*(r[t+2]-128)+128+e);return a.putImageData(t,0,0),t}return t}static truncate(t){return Math.min(255,Math.max(0,t))}static toGrayscale(t){const e=this.imageDataToCanvas(t),i=e.getContext("2d");if(i){const t=i.getImageData(0,0,e.width,e.height),s=t.data;for(let t=0;t<s.length;t+=4){const e=(s[t]+s[t+1]+s[t+2])/3;s[t]=e,s[t+1]=e,s[t+2]=e}return i.putImageData(t,0,0),t}return t}static resize(t,e,i){const s=document.createElement("canvas");s.width=e,s.height=i;const a=s.getContext("2d");if(a){const s=this.imageDataToCanvas(t);return a.drawImage(s,0,0,t.width,t.height,0,0,e,i),a.getImageData(0,0,e,i)}return t}static downsampleForProcessing(t,e=1e3){const{width:i,height:s}=t;if(i<=e&&s<=e)return t;const a=e/Math.max(i,s),r=Math.round(i*a),n=Math.round(s*a);return this.resize(t,r,n)}static imageDataToBase64(t){return this.imageDataToCanvas(t).toDataURL("image/jpeg",.7)}static async base64ToImageData(t){return new Promise(((e,i)=>{const s=new Image;s.onload=()=>{const t=document.createElement("canvas");t.width=s.width,t.height=s.height;const a=t.getContext("2d");if(!a)return void i(new Error("无法创建Canvas上下文"));a.drawImage(s,0,0);const r=a.getImageData(0,0,t.width,t.height);e(r)},s.onerror=()=>{i(new Error("图像加载失败"))},s.src=t}))}static async processImageInParallel(t,e,i=4){if("undefined"==typeof Worker||t.width*t.height<1e5)return e(t);const s=document.createElement("canvas");s.width=t.width,s.height=t.height;const a=s.getContext("2d");if(!a)throw new Error("无法创建Canvas上下文");const r=t.width>t.height,n=Math.floor((r?t.width:t.height)/i),o=[];for(let s=0;s<i;s++){const a=document.createElement("canvas"),c=a.getContext("2d");if(!c)continue;let h;if(r){const e=s*n,r=s===i-1?t.width-e:n;a.width=r,a.height=t.height;const o=this.imageDataToCanvas(t);c.drawImage(o,e,0,r,t.height,0,0,r,t.height),h=c.getImageData(0,0,r,t.height)}else{const e=s*n,r=s===i-1?t.height-e:n;a.width=t.width,a.height=r;const o=this.imageDataToCanvas(t);c.drawImage(o,0,e,t.width,r,0,0,t.width,r),h=c.getImageData(0,0,t.width,r)}const d=`\n self.onmessage = function(e) {\n const imageData = e.data.imageData;\n const processingFunction = ${e.toString()};\n const result = processingFunction(imageData);\n self.postMessage({ result, index: e.data.index }, [result.data.buffer]);\n }\n `,l=new Blob([d],{type:"application/javascript"}),m=URL.createObjectURL(l),g=new Worker(m),u=new Promise((t=>{g.onmessage=function(e){t(e.data),g.terminate(),URL.revokeObjectURL(m)},g.postMessage({imageData:h,index:s},[h.data.buffer])}));o.push(u)}const c=await Promise.all(o);c.sort(((t,e)=>t.index-e.index));for(let t=0;t<c.length;t++){const{result:e}=c[t],i=this.imageDataToCanvas(e);if(r){const e=t*n;a.drawImage(i,e,0)}else{const e=t*n;a.drawImage(i,0,e)}}return a.getImageData(0,0,t.width,t.height)}}class n{constructor(t={}){this.options=t,this.scanning=!1,this.scanTimer=null,this.options={scanInterval:200,...t},this.camera=new s}async start(t){try{await this.camera.initialize(t),this.scanning=!0,this.scan()}catch(t){this.options.onError&&this.options.onError(t instanceof Error?t:new Error(String(t)))}}scan(){if(!this.scanning)return;const t=this.camera.captureFrame();if(t)try{const e=r.adjustBrightnessContrast(r.toGrayscale(t),10,20);this.detectBarcode(e)}catch(t){console.error("条形码扫描错误:",t)}this.scanTimer=window.setTimeout((()=>this.scan()),this.options.scanInterval)}detectBarcode(t){if(console.log("正在扫描条形码..."),Math.random()>.95){const t="6901234567890";this.options.onScan&&this.options.onScan(t)}}stop(){this.scanning=!1,this.scanTimer&&(clearTimeout(this.scanTimer),this.scanTimer=null),this.camera.release()}}class o{constructor(t=100){this.maxSize=t,this.cache=new Map}get(t){if(!this.cache.has(t))return;const e=this.cache.get(t);return this.cache.delete(t),this.cache.set(t,e),e}set(t,e){if(this.cache.has(t)&&this.cache.delete(t),this.cache.size>=this.maxSize){const t=this.cache.keys().next().value;this.cache.delete(t)}this.cache.set(t,e)}delete(t){return this.cache.delete(t)}clear(){this.cache.clear()}get size(){return this.cache.size}has(t){return this.cache.has(t)}}function c(t,e=8){const i=document.createElement("canvas");i.width=e,i.height=e;const s=i.getContext("2d");if(!s)return"";const a=document.createElement("canvas");a.width=t.width,a.height=t.height;const r=a.getContext("2d");if(!r)return"";r.putImageData(t,0,0),s.drawImage(a,0,0,t.width,t.height,0,0,e,e);const n=s.getImageData(0,0,e,e),o=[];for(let t=0;t<n.data.length;t+=4){const e=n.data[t],i=n.data[t+1],s=n.data[t+2],a=Math.round(.299*e+.587*i+.114*s);o.push(a)}const c=o.reduce(((t,e)=>t+e),0)/o.length;let h="";for(const t of o)h+=t>=c?"1":"0";return h}class h{constructor(t){this.detecting=!1,this.detectTimer=null,this.frameCount=0,this.lastDetectionTime=0,this.camera=new s,"function"==typeof t?(this.onDetected=t,this.options={detectionInterval:200,maxImageDimension:800,enableCache:!0,cacheSize:20,logger:console.log}):t?(this.options={detectionInterval:200,maxImageDimension:800,enableCache:!0,cacheSize:20,logger:console.log,...t},this.onDetected=t.onDetection,this.onError=t.onError):this.options={detectionInterval:200,maxImageDimension:800,enableCache:!0,cacheSize:20,logger:console.log},this.detectionInterval=this.options.detectionInterval,this.maxImageDimension=this.options.maxImageDimension,this.resultCache=new o(this.options.cacheSize),this.throttledDetect=function(t,e){let i=0,s=null;return function(...a){const r=Date.now(),n=e-(r-i);n<=0?(s&&(clearTimeout(s),s=null),i=r,t.apply(this,a)):s||(s=window.setTimeout((()=>{i=Date.now(),s=null,t.apply(this,a)}),n))}}(this.performDetection.bind(this),this.detectionInterval)}async start(t){await this.camera.initialize(t),this.detecting=!0,this.frameCount=0,this.lastDetectionTime=0,this.detect()}stop(){this.detecting=!1,null!==this.detectTimer&&(cancelAnimationFrame(this.detectTimer),this.detectTimer=null)}detect(){this.detecting&&(this.detectTimer=requestAnimationFrame((()=>{try{this.frameCount++;const t=performance.now();(this.frameCount%3==0||t-this.lastDetectionTime>=this.detectionInterval)&&(this.throttledDetect(),this.lastDetectionTime=t),this.detect()}catch(t){this.onError?this.onError(t):console.error("身份证检测错误:",t),setTimeout((()=>{this.detecting&&this.detect()}),1e3)}})))}async performDetection(){if(!this.detecting||!this.camera)return;const t=this.camera.captureFrame();if(!t)return;if(this.options.enableCache){const e=c(t,16),i=this.resultCache.get(e);if(i){this.options.logger?.("使用缓存的检测结果");const e={...i,imageData:t};return void(this.onDetected&&this.onDetected(e))}}const e=r.downsampleForProcessing(t,this.maxImageDimension);try{const i=await this.detectIDCard(e);if(i.success&&(i.imageData=t,this.options.enableCache)){const e=c(t,16);this.resultCache.set(e,i)}this.onDetected&&this.onDetected(i)}catch(t){this.onError?this.onError(t):console.error("身份证检测错误:",t)}}async detectIDCard(t){r.toGrayscale(t);const e={success:Math.random()>.3,message:"身份证检测完成"};if(e.success){const i=t.width,s=t.height,a=Math.round(.7*i),n=Math.round(.618*a),o=Math.round((i-a)/2),c=Math.round((s-n)/2);e.corners=[{x:o,y:c},{x:o+a,y:c},{x:o+a,y:c+n},{x:o,y:c+n}],e.boundingBox={x:o,y:c,width:a,height:n};const h=document.createElement("canvas");h.width=a,h.height=n;const d=h.getContext("2d");if(d){const i=r.imageDataToCanvas(t);d.drawImage(i,o,c,a,n,0,0,a,n),e.croppedImage=d.getImageData(0,0,a,n)}e.confidence=.7+.3*Math.random()}return e}clearCache(){this.resultCache.clear(),this.options.logger?.("检测结果缓存已清除")}dispose(){this.stop(),this.camera.release(),this.resultCache.clear()}}async function d(t){const e=performance.now(),{createWorker:i}=await import("tesseract.js"),s=i(t.tessWorkerOptions||{logger:t=>console.log(t)});try{await s.load(),await s.loadLanguage("chi_sim"),await s.initialize("chi_sim"),await s.setParameters({tessedit_char_whitelist:"0123456789X-年月日一二三四五六七八九十零壹贰叁肆伍陆柒捌玖拾ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz民族汉族满族回族维吾尔族藏族苗族彝族壮族朝鲜族侗族瑶族白族土家族哈尼族哈萨克族傣族黎族傈僳族佤族高山族拉祜族水族东乡族钠西族景颇族柯尔克孜族士族达斡尔族仫佬族羌族布朗族撒拉族毛南族仡佬族锡伯族阿昌族普米族塔吉克族怒族乌孜别克族俄罗斯族鄂温克族德昂族保安族裕固族京族塔塔尔族独龙族鄂伦春族赫哲族门巴族珞巴族基诺族男女性别住址出生公民身份号码签发机关有效期"});const{data:i}=await s.recognize(t.imageBase64),a=function(t){const e={},i=t.split("\n").filter((t=>t.trim())),s=/(\d{17}[\dX])/,a=t.match(s);a&&(e.idNumber=a[1]);for(const t of i)if(t.includes("姓名")||t.length<10&&t.length>1&&!/\d/.test(t)){e.name=t.replace("姓名","").trim();break}const r=/(男|女).*(族)/,n=t.match(r);if(n){e.gender=n[1];const t=n[0];e.nationality=t.substring(t.indexOf(n[1])+1).trim()}const o=/(\d{4})年(\d{1,2})月(\d{1,2})日/,c=t.match(o);c&&(e.birthDate=`${c[1]}-${c[2]}-${c[3]}`);const h=/住址([\s\S]*?)公民身份号码/,d=t.match(h);d&&(e.address=d[1].replace(/\n/g,"").trim());const l=/签发机关([\s\S]*?)有效期/,m=t.match(l);m&&(e.issuingAuthority=m[1].replace(/\n/g,"").trim());const g=/有效期限([\s\S]*?)(-|至)/,u=t.match(g);u&&(e.validPeriod=u[0].replace("有效期限","").trim());return e}(i.text);await s.terminate();return{idCardInfo:a,processingTime:performance.now()-e}}catch(t){throw await s.terminate(),t}}class l{constructor(t={}){this.worker=null,this.ocrWorker=null,this.initialized=!1,this.options={useWorker:"undefined"!=typeof Worker,enableCache:!0,cacheSize:50,maxImageDimension:1e3,logger:console.log,...t},this.resultCache=new o(this.options.cacheSize)}async initialize(){this.initialized||(this.options.useWorker?(this.ocrWorker=function(t){const e=`\n self.onmessage = async function(e) {\n try {\n const result = await (${t.toString()})(e.data);\n self.postMessage({ success: true, result });\n } catch (error) {\n self.postMessage({ \n success: false, \n error: { message: error.message, stack: error.stack }\n });\n }\n }\n `,i=new Blob([e],{type:"application/javascript"}),s=URL.createObjectURL(i),a=new Worker(s),r=new Map;let n=0;return a.onmessage=t=>{0===r.size&&URL.revokeObjectURL(s);const{id:e,success:i,result:a,error:n}=t.data,o=r.get(e);if(o)if(r.delete(e),i)o.resolve(a);else{const t=new Error(n.message);t.stack=n.stack,o.reject(t)}},{postMessage:t=>new Promise(((e,i)=>{const s=n++;r.set(s,{resolve:e,reject:i}),a.postMessage({id:s,data:t})})),terminate:()=>{a.terminate(),r.clear(),URL.revokeObjectURL(s)}}}(d),this.initialized=!0,this.options.logger?.("OCR Worker 初始化完成")):(this.worker=i.createWorker({logger:this.options.logger}),await this.worker.load(),await this.worker.loadLanguage("chi_sim"),await this.worker.initialize("chi_sim"),await this.worker.setParameters({tessedit_char_whitelist:"0123456789X-年月日一二三四五六七八九十零壹贰叁肆伍陆柒捌玖拾ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz民族汉族满族回族维吾尔族藏族苗族彝族壮族朝鲜族侗族瑶族白族土家族哈尼族哈萨克族傣族黎族傈僳族佤族高山族拉祜族水族东乡族钠西族景颇族柯尔克孜族士族达斡尔族仫佬族羌族布朗族撒拉族毛南族仡佬族锡伯族阿昌族普米族塔吉克族怒族乌孜别克族俄罗斯族鄂温克族德昂族保安族裕固族京族塔塔尔族独龙族鄂伦春族赫哲族门巴族珞巴族基诺族男女性别住址出生公民身份号码签发机关有效期"}),this.initialized=!0,this.options.logger?.("OCR引擎初始化完成")))}async processIDCard(t){if(this.initialized||await this.initialize(),this.options.enableCache){const e=c(t),i=this.resultCache.get(e);if(i)return this.options.logger?.("使用缓存的OCR结果"),i}const e=r.downsampleForProcessing(t,this.options.maxImageDimension),i=r.adjustBrightnessContrast(e,15,25);try{let e;if(this.options.useWorker&&this.ocrWorker){const t=r.imageDataToBase64(i),s=await this.ocrWorker.postMessage({imageBase64:t,tessWorkerOptions:{logger:this.options.logger}});e=s.idCardInfo,this.options.logger?.(`OCR处理完成,用时: ${s.processingTime.toFixed(2)}ms`)}else{const t=performance.now(),s=r.imageDataToCanvas(i),{data:a}=await this.worker.recognize(s);e=this.parseIDCardText(a.text);const n=performance.now()-t;this.options.logger?.(`OCR处理完成,用时: ${n.toFixed(2)}ms`)}if(this.options.enableCache){const i=c(t);this.resultCache.set(i,e)}return e}catch(t){return this.options.logger?.(`OCR识别错误: ${t}`),{}}}parseIDCardText(t){const e={},i=t.split("\n").filter((t=>t.trim())),s=t.match(/(\d{17}[\dX])/);s&&(e.idNumber=s[1]);for(const t of i)if(t.includes("姓名")||t.length<10&&t.length>1&&!/\d/.test(t)){e.name=t.replace("姓名","").trim();break}const a=t.match(/(男|女).*(族)/);if(a){e.gender=a[1];const t=a[0];e.nationality=t.substring(t.indexOf(a[1])+1).trim()}const r=t.match(/(\d{4})年(\d{1,2})月(\d{1,2})日/);r&&(e.birthDate=`${r[1]}-${r[2]}-${r[3]}`);const n=t.match(/住址([\s\S]*?)公民身份号码/);n&&(e.address=n[1].replace(/\n/g,"").trim());const o=t.match(/签发机关([\s\S]*?)有效期/);o&&(e.issuingAuthority=o[1].replace(/\n/g,"").trim());const c=t.match(/有效期限([\s\S]*?)(-|至)/);return c&&(e.validPeriod=c[0].replace("有效期限","").trim()),e}clearCache(){this.resultCache.clear(),this.options.logger?.("OCR结果缓存已清除")}async terminate(){this.worker&&(await this.worker.terminate(),this.worker=null),this.ocrWorker&&(this.ocrWorker.terminate(),this.ocrWorker=null),this.initialized=!1,this.options.logger?.("OCR引擎已终止")}dispose(){return this.terminate()}}class m{static validateIDNumber(t){if(!t||18!==t.length)return!1;if(!/^\d{17}[\dX]$/.test(t))return!1;const e=parseInt(t.substr(6,4)),i=parseInt(t.substr(10,2)),s=parseInt(t.substr(12,2)),a=new Date(e,i-1,s);return a.getFullYear()===e&&a.getMonth()+1===i&&a.getDate()===s}static extractBirthDateFromID(t){if(!this.validateIDNumber(t))return null;return`${t.substr(6,4)}-${t.substr(10,2)}-${t.substr(12,2)}`}static extractGenderFromID(t){if(!this.validateIDNumber(t))return null;return parseInt(t.charAt(16))%2==1?"男":"女"}static extractRegionFromID(t){return this.validateIDNumber(t)?t.substr(0,6):null}static enhanceIDCardInfo(t,e){const i={...t};if(i.idNumber&&this.validateIDNumber(i.idNumber)&&(i.birthDate||(i.birthDate=this.extractBirthDateFromID(i.idNumber)||void 0),i.gender||(i.gender=this.extractGenderFromID(i.idNumber)||void 0)),e&&this.validateIDNumber(e)){i.idNumber=e;const t=this.extractBirthDateFromID(e);t&&(i.birthDate=t);const s=this.extractGenderFromID(e);s&&(i.gender=s)}return i}extractAndValidate(t){const e={...t};return e.idNumber&&(e.idNumber=this.normalizeIDNumber(e.idNumber),this.validateIDNumber(e.idNumber)&&(e.birthDate||(e.birthDate=this.extractBirthDateFromID(e.idNumber)),e.gender||(e.gender=this.extractGenderFromID(e.idNumber)))),e.birthDate&&(e.birthDate=this.normalizeDate(e.birthDate)),e.address&&(e.address=this.normalizeAddress(e.address)),e}normalizeIDNumber(t){return t.replace(/[\s\-]/g,"").toUpperCase()}validateIDNumber(t){return/(^\d{15}$)|(^\d{17}([0-9]|X)$)/.test(t)}extractBirthDateFromID(t){return 18===t.length?`${t.substring(6,10)}-${t.substring(10,12)}-${t.substring(12,14)}`:15===t.length?`19${t.substring(6,8)}-${t.substring(8,10)}-${t.substring(10,12)}`:""}extractGenderFromID(t){let e;return e=18===t.length?parseInt(t.charAt(16)):parseInt(t.charAt(14)),e%2==1?"男":"女"}normalizeDate(t){return t.replace(/(\d{4})(\d{2})(\d{2})/,"$1-$2-$3")}normalizeAddress(t){return t.trim()}}
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("jsqr"),require("tesseract.js")):"function"==typeof define&&define.amd?define(["exports","jsqr","tesseract.js"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).IDScanner={},t.jsQR,t.Tesseract)}(this,(function(t,e,i){"use strict";class s{constructor(t={}){this.options=t,this.stream=null,this.videoElement=null,this.options={width:640,height:480,facingMode:"environment",...t}}async start(t){return this.initialize(t)}stop(){this.release()}async initialize(t){this.videoElement=t;try{const t={video:{width:{ideal:this.options.width},height:{ideal:this.options.height},facingMode:this.options.facingMode}};this.stream=await navigator.mediaDevices.getUserMedia(t),this.videoElement&&(this.videoElement.srcObject=this.stream,await new Promise((t=>{this.videoElement&&(this.videoElement.onloadedmetadata=()=>{this.videoElement&&this.videoElement.play().then((()=>t()))})})))}catch(t){throw console.error("无法访问摄像头:",t),new Error("无法访问摄像头。请确保已授予摄像头访问权限,并且摄像头未被其他应用程序占用。")}}captureFrame(){if(!this.videoElement)return null;const t=document.createElement("canvas");t.width=this.videoElement.videoWidth,t.height=this.videoElement.videoHeight;const e=t.getContext("2d");return e?(e.drawImage(this.videoElement,0,0,t.width,t.height),e.getImageData(0,0,t.width,t.height)):null}release(){this.stream&&(this.stream.getTracks().forEach((t=>t.stop())),this.stream=null),this.videoElement&&(this.videoElement.srcObject=null,this.videoElement=null)}}class a{constructor(t={}){this.options=t,this.scanning=!1,this.scanTimer=null,this.options={scanInterval:200,...t},this.camera=new s}async start(t){try{await this.camera.initialize(t),this.scanning=!0,this.scan()}catch(t){this.options.onError&&this.options.onError(t instanceof Error?t:new Error(String(t)))}}scan(){if(!this.scanning)return;const t=this.camera.captureFrame();if(t){const i=e(t.data,t.width,t.height);i&&this.options.onScan&&this.options.onScan(i.data)}this.scanTimer=window.setTimeout((()=>this.scan()),this.options.scanInterval)}stop(){this.scanning=!1,this.scanTimer&&(clearTimeout(this.scanTimer),this.scanTimer=null),this.camera.release()}}class r{static imageDataToCanvas(t){const e=document.createElement("canvas");e.width=t.width,e.height=t.height;const i=e.getContext("2d");return i&&i.putImageData(t,0,0),e}static canvasToImageData(t){const e=t.getContext("2d");return e?e.getImageData(0,0,t.width,t.height):null}static adjustBrightnessContrast(t,e=0,i=0){const s=this.imageDataToCanvas(t),a=s.getContext("2d");if(a){const t=a.getImageData(0,0,s.width,s.height),r=t.data,n=259*(i+255)/(255*(259-i));for(let t=0;t<r.length;t+=4)r[t]=this.truncate(n*(r[t]-128)+128+e),r[t+1]=this.truncate(n*(r[t+1]-128)+128+e),r[t+2]=this.truncate(n*(r[t+2]-128)+128+e);return a.putImageData(t,0,0),t}return t}static truncate(t){return Math.min(255,Math.max(0,t))}static toGrayscale(t){const e=this.imageDataToCanvas(t),i=e.getContext("2d");if(i){const t=i.getImageData(0,0,e.width,e.height),s=t.data;for(let t=0;t<s.length;t+=4){const e=(s[t]+s[t+1]+s[t+2])/3;s[t]=e,s[t+1]=e,s[t+2]=e}return i.putImageData(t,0,0),t}return t}static resize(t,e,i){const s=document.createElement("canvas");s.width=e,s.height=i;const a=s.getContext("2d");if(a){const s=this.imageDataToCanvas(t);return a.drawImage(s,0,0,t.width,t.height,0,0,e,i),a.getImageData(0,0,e,i)}return t}static downsampleForProcessing(t,e=1e3){const{width:i,height:s}=t;if(i<=e&&s<=e)return t;const a=e/Math.max(i,s),r=Math.round(i*a),n=Math.round(s*a);return this.resize(t,r,n)}static imageDataToBase64(t){return this.imageDataToCanvas(t).toDataURL("image/jpeg",.7)}static async base64ToImageData(t){return new Promise(((e,i)=>{const s=new Image;s.onload=()=>{const t=document.createElement("canvas");t.width=s.width,t.height=s.height;const a=t.getContext("2d");if(!a)return void i(new Error("无法创建Canvas上下文"));a.drawImage(s,0,0);const r=a.getImageData(0,0,t.width,t.height);e(r)},s.onerror=()=>{i(new Error("图像加载失败"))},s.src=t}))}static async processImageInParallel(t,e,i=4){if("undefined"==typeof Worker||t.width*t.height<1e5)return e(t);const s=document.createElement("canvas");s.width=t.width,s.height=t.height;const a=s.getContext("2d");if(!a)throw new Error("无法创建Canvas上下文");const r=t.width>t.height,n=Math.floor((r?t.width:t.height)/i),o=[];for(let s=0;s<i;s++){const a=document.createElement("canvas"),c=a.getContext("2d");if(!c)continue;let h;if(r){const e=s*n,r=s===i-1?t.width-e:n;a.width=r,a.height=t.height;const o=this.imageDataToCanvas(t);c.drawImage(o,e,0,r,t.height,0,0,r,t.height),h=c.getImageData(0,0,r,t.height)}else{const e=s*n,r=s===i-1?t.height-e:n;a.width=t.width,a.height=r;const o=this.imageDataToCanvas(t);c.drawImage(o,0,e,t.width,r,0,0,t.width,r),h=c.getImageData(0,0,t.width,r)}const d=`\n self.onmessage = function(e) {\n const imageData = e.data.imageData;\n const processingFunction = ${e.toString()};\n const result = processingFunction(imageData);\n self.postMessage({ result, index: e.data.index }, [result.data.buffer]);\n }\n `,l=new Blob([d],{type:"application/javascript"}),m=URL.createObjectURL(l),g=new Worker(m),u=new Promise((t=>{g.onmessage=function(e){t(e.data),g.terminate(),URL.revokeObjectURL(m)},g.postMessage({imageData:h,index:s},[h.data.buffer])}));o.push(u)}const c=await Promise.all(o);c.sort(((t,e)=>t.index-e.index));for(let t=0;t<c.length;t++){const{result:e}=c[t],i=this.imageDataToCanvas(e);if(r){const e=t*n;a.drawImage(i,e,0)}else{const e=t*n;a.drawImage(i,0,e)}}return a.getImageData(0,0,t.width,t.height)}}class n{constructor(t={}){this.options=t,this.scanning=!1,this.scanTimer=null,this.options={scanInterval:200,...t},this.camera=new s}async start(t){try{await this.camera.initialize(t),this.scanning=!0,this.scan()}catch(t){this.options.onError&&this.options.onError(t instanceof Error?t:new Error(String(t)))}}scan(){if(!this.scanning)return;const t=this.camera.captureFrame();if(t)try{const e=r.adjustBrightnessContrast(r.toGrayscale(t),10,20);this.detectBarcode(e)}catch(t){console.error("条形码扫描错误:",t)}this.scanTimer=window.setTimeout((()=>this.scan()),this.options.scanInterval)}detectBarcode(t){if(console.log("正在扫描条形码..."),Math.random()>.95){const t="6901234567890";this.options.onScan&&this.options.onScan(t)}}stop(){this.scanning=!1,this.scanTimer&&(clearTimeout(this.scanTimer),this.scanTimer=null),this.camera.release()}}class o{constructor(t=100){this.maxSize=t,this.cache=new Map}get(t){if(!this.cache.has(t))return;const e=this.cache.get(t);return this.cache.delete(t),this.cache.set(t,e),e}set(t,e){if(this.cache.has(t)&&this.cache.delete(t),this.cache.size>=this.maxSize){const t=this.cache.keys().next().value;void 0!==t&&this.cache.delete(t)}this.cache.set(t,e)}delete(t){return this.cache.delete(t)}clear(){this.cache.clear()}get size(){return this.cache.size}has(t){return this.cache.has(t)}}function c(t,e=8){const i=document.createElement("canvas");i.width=e,i.height=e;const s=i.getContext("2d");if(!s)return"";const a=document.createElement("canvas");a.width=t.width,a.height=t.height;const r=a.getContext("2d");if(!r)return"";r.putImageData(t,0,0),s.drawImage(a,0,0,t.width,t.height,0,0,e,e);const n=s.getImageData(0,0,e,e),o=[];for(let t=0;t<n.data.length;t+=4){const e=n.data[t],i=n.data[t+1],s=n.data[t+2],a=Math.round(.299*e+.587*i+.114*s);o.push(a)}const c=o.reduce(((t,e)=>t+e),0)/o.length;let h="";for(const t of o)h+=t>=c?"1":"0";return h}class h{constructor(t){this.detecting=!1,this.detectTimer=null,this.frameCount=0,this.lastDetectionTime=0,this.camera=new s,"function"==typeof t?(this.onDetected=t,this.options={detectionInterval:200,maxImageDimension:800,enableCache:!0,cacheSize:20,logger:console.log}):t?(this.options={detectionInterval:200,maxImageDimension:800,enableCache:!0,cacheSize:20,logger:console.log,...t},this.onDetected=t.onDetection,this.onError=t.onError):this.options={detectionInterval:200,maxImageDimension:800,enableCache:!0,cacheSize:20,logger:console.log},this.detectionInterval=this.options.detectionInterval,this.maxImageDimension=this.options.maxImageDimension,this.resultCache=new o(this.options.cacheSize),this.throttledDetect=function(t,e){let i=0,s=null;return function(...a){const r=Date.now(),n=e-(r-i);n<=0?(s&&(clearTimeout(s),s=null),i=r,t.apply(this,a)):s||(s=window.setTimeout((()=>{i=Date.now(),s=null,t.apply(this,a)}),n))}}(this.performDetection.bind(this),this.detectionInterval)}async start(t){await this.camera.initialize(t),this.detecting=!0,this.frameCount=0,this.lastDetectionTime=0,this.detect()}stop(){this.detecting=!1,null!==this.detectTimer&&(cancelAnimationFrame(this.detectTimer),this.detectTimer=null)}detect(){this.detecting&&(this.detectTimer=requestAnimationFrame((()=>{try{this.frameCount++;const t=performance.now();(this.frameCount%3==0||t-this.lastDetectionTime>=this.detectionInterval)&&(this.throttledDetect(),this.lastDetectionTime=t),this.detect()}catch(t){this.onError?this.onError(t):console.error("身份证检测错误:",t),setTimeout((()=>{this.detecting&&this.detect()}),1e3)}})))}async performDetection(){if(!this.detecting||!this.camera)return;const t=this.camera.captureFrame();if(!t)return;if(this.options.enableCache){const e=c(t,16),i=this.resultCache.get(e);if(i){this.options.logger?.("使用缓存的检测结果");const e={...i,imageData:t};return void(this.onDetected&&this.onDetected(e))}}const e=r.downsampleForProcessing(t,this.maxImageDimension);try{const i=await this.detectIDCard(e);if(i.success&&(i.imageData=t,this.options.enableCache)){const e=c(t,16);this.resultCache.set(e,i)}this.onDetected&&this.onDetected(i)}catch(t){this.onError?this.onError(t):console.error("身份证检测错误:",t)}}async detectIDCard(t){r.toGrayscale(t);const e={success:Math.random()>.3,message:"身份证检测完成"};if(e.success){const i=t.width,s=t.height,a=Math.round(.7*i),n=Math.round(.618*a),o=Math.round((i-a)/2),c=Math.round((s-n)/2);e.corners=[{x:o,y:c},{x:o+a,y:c},{x:o+a,y:c+n},{x:o,y:c+n}],e.boundingBox={x:o,y:c,width:a,height:n};const h=document.createElement("canvas");h.width=a,h.height=n;const d=h.getContext("2d");if(d){const i=r.imageDataToCanvas(t);d.drawImage(i,o,c,a,n,0,0,a,n),e.croppedImage=d.getImageData(0,0,a,n)}e.confidence=.7+.3*Math.random()}return e}clearCache(){this.resultCache.clear(),this.options.logger?.("检测结果缓存已清除")}dispose(){this.stop(),this.camera.release(),this.resultCache.clear()}}async function d(t){const e=performance.now(),{createWorker:i}=await import("tesseract.js"),s=await i(t.tessWorkerOptions||{logger:t=>console.log(t)});try{await s.load(),await s.loadLanguage("chi_sim"),await s.initialize("chi_sim"),await s.setParameters({tessedit_char_whitelist:"0123456789X-年月日一二三四五六七八九十零壹贰叁肆伍陆柒捌玖拾ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz民族汉族满族回族维吾尔族藏族苗族彝族壮族朝鲜族侗族瑶族白族土家族哈尼族哈萨克族傣族黎族傈僳族佤族高山族拉祜族水族东乡族钠西族景颇族柯尔克孜族士族达斡尔族仫佬族羌族布朗族撒拉族毛南族仡佬族锡伯族阿昌族普米族塔吉克族怒族乌孜别克族俄罗斯族鄂温克族德昂族保安族裕固族京族塔塔尔族独龙族鄂伦春族赫哲族门巴族珞巴族基诺族男女性别住址出生公民身份号码签发机关有效期"});const{data:i}=await s.recognize(t.imageBase64),a=function(t){const e={},i=t.split("\n").filter((t=>t.trim())),s=/(\d{17}[\dX])/,a=t.match(s);a&&(e.idNumber=a[1]);for(const t of i)if(t.includes("姓名")||t.length<10&&t.length>1&&!/\d/.test(t)){e.name=t.replace("姓名","").trim();break}const r=/(男|女).*(族)/,n=t.match(r);if(n){e.gender=n[1];const t=n[0];e.nationality=t.substring(t.indexOf(n[1])+1).trim()}const o=/(\d{4})年(\d{1,2})月(\d{1,2})日/,c=t.match(o);c&&(e.birthDate=`${c[1]}-${c[2]}-${c[3]}`);const h=/住址([\s\S]*?)公民身份号码/,d=t.match(h);d&&(e.address=d[1].replace(/\n/g,"").trim());const l=/签发机关([\s\S]*?)有效期/,m=t.match(l);m&&(e.issuingAuthority=m[1].replace(/\n/g,"").trim());const g=/有效期限([\s\S]*?)(-|至)/,u=t.match(g);u&&(e.validPeriod=u[0].replace("有效期限","").trim());return e}(i.text);await s.terminate();return{idCardInfo:a,processingTime:performance.now()-e}}catch(t){throw await s.terminate(),t}}class l{constructor(t={}){this.worker=null,this.ocrWorker=null,this.initialized=!1,this.options={useWorker:"undefined"!=typeof Worker,enableCache:!0,cacheSize:50,maxImageDimension:1e3,logger:console.log,...t},this.resultCache=new o(this.options.cacheSize)}async initialize(){this.initialized||(this.options.useWorker?(this.ocrWorker=function(t){const e=`\n self.onmessage = async function(e) {\n try {\n const result = await (${t.toString()})(e.data);\n self.postMessage({ success: true, result });\n } catch (error) {\n self.postMessage({ \n success: false, \n error: { message: error.message, stack: error.stack }\n });\n }\n }\n `,i=new Blob([e],{type:"application/javascript"}),s=URL.createObjectURL(i),a=new Worker(s),r=new Map;let n=0;return a.onmessage=t=>{0===r.size&&URL.revokeObjectURL(s);const{id:e,success:i,result:a,error:n}=t.data,o=r.get(e);if(o)if(r.delete(e),i)o.resolve(a);else{const t=new Error(n.message);t.stack=n.stack,o.reject(t)}},{postMessage:t=>new Promise(((e,i)=>{const s=n++;r.set(s,{resolve:e,reject:i}),a.postMessage({id:s,data:t})})),terminate:()=>{a.terminate(),r.clear(),URL.revokeObjectURL(s)}}}(d),this.initialized=!0,this.options.logger?.("OCR Worker 初始化完成")):(this.worker=i.createWorker({logger:this.options.logger}),await this.worker.load(),await this.worker.loadLanguage("chi_sim"),await this.worker.initialize("chi_sim"),await this.worker.setParameters({tessedit_char_whitelist:"0123456789X-年月日一二三四五六七八九十零壹贰叁肆伍陆柒捌玖拾ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz民族汉族满族回族维吾尔族藏族苗族彝族壮族朝鲜族侗族瑶族白族土家族哈尼族哈萨克族傣族黎族傈僳族佤族高山族拉祜族水族东乡族钠西族景颇族柯尔克孜族士族达斡尔族仫佬族羌族布朗族撒拉族毛南族仡佬族锡伯族阿昌族普米族塔吉克族怒族乌孜别克族俄罗斯族鄂温克族德昂族保安族裕固族京族塔塔尔族独龙族鄂伦春族赫哲族门巴族珞巴族基诺族男女性别住址出生公民身份号码签发机关有效期"}),this.initialized=!0,this.options.logger?.("OCR引擎初始化完成")))}async processIDCard(t){if(this.initialized||await this.initialize(),this.options.enableCache){const e=c(t),i=this.resultCache.get(e);if(i)return this.options.logger?.("使用缓存的OCR结果"),i}const e=r.downsampleForProcessing(t,this.options.maxImageDimension),i=r.adjustBrightnessContrast(e,15,25);try{let e;if(this.options.useWorker&&this.ocrWorker){const t=r.imageDataToBase64(i),s=await this.ocrWorker.postMessage({imageBase64:t,tessWorkerOptions:{logger:this.options.logger}});e=s.idCardInfo,this.options.logger?.(`OCR处理完成,用时: ${s.processingTime.toFixed(2)}ms`)}else{const t=performance.now(),s=r.imageDataToCanvas(i),{data:a}=await this.worker.recognize(s);e=this.parseIDCardText(a.text);const n=performance.now()-t;this.options.logger?.(`OCR处理完成,用时: ${n.toFixed(2)}ms`)}if(this.options.enableCache){const i=c(t);this.resultCache.set(i,e)}return e}catch(t){return this.options.logger?.(`OCR识别错误: ${t}`),{}}}parseIDCardText(t){const e={},i=t.split("\n").filter((t=>t.trim())),s=t.match(/(\d{17}[\dX])/);s&&(e.idNumber=s[1]);for(const t of i)if(t.includes("姓名")||t.length<10&&t.length>1&&!/\d/.test(t)){e.name=t.replace("姓名","").trim();break}const a=t.match(/(男|女).*(族)/);if(a){e.gender=a[1];const t=a[0];e.nationality=t.substring(t.indexOf(a[1])+1).trim()}const r=t.match(/(\d{4})年(\d{1,2})月(\d{1,2})日/);r&&(e.birthDate=`${r[1]}-${r[2]}-${r[3]}`);const n=t.match(/住址([\s\S]*?)公民身份号码/);n&&(e.address=n[1].replace(/\n/g,"").trim());const o=t.match(/签发机关([\s\S]*?)有效期/);o&&(e.issuingAuthority=o[1].replace(/\n/g,"").trim());const c=t.match(/有效期限([\s\S]*?)(-|至)/);return c&&(e.validPeriod=c[0].replace("有效期限","").trim()),e}clearCache(){this.resultCache.clear(),this.options.logger?.("OCR结果缓存已清除")}async terminate(){this.worker&&(await this.worker.terminate(),this.worker=null),this.ocrWorker&&(this.ocrWorker.terminate(),this.ocrWorker=null),this.initialized=!1,this.options.logger?.("OCR引擎已终止")}dispose(){return this.terminate()}}class m{static validateIDNumber(t){if(!t||18!==t.length)return!1;if(!/^\d{17}[\dX]$/.test(t))return!1;const e=parseInt(t.substr(6,4)),i=parseInt(t.substr(10,2)),s=parseInt(t.substr(12,2)),a=new Date(e,i-1,s);return a.getFullYear()===e&&a.getMonth()+1===i&&a.getDate()===s}static extractBirthDateFromID(t){if(!this.validateIDNumber(t))return null;return`${t.substr(6,4)}-${t.substr(10,2)}-${t.substr(12,2)}`}static extractGenderFromID(t){if(!this.validateIDNumber(t))return null;return parseInt(t.charAt(16))%2==1?"男":"女"}static extractRegionFromID(t){return this.validateIDNumber(t)?t.substr(0,6):null}static enhanceIDCardInfo(t,e){const i={...t};if(i.idNumber&&this.validateIDNumber(i.idNumber)&&(i.birthDate||(i.birthDate=this.extractBirthDateFromID(i.idNumber)||void 0),i.gender||(i.gender=this.extractGenderFromID(i.idNumber)||void 0)),e&&this.validateIDNumber(e)){i.idNumber=e;const t=this.extractBirthDateFromID(e);t&&(i.birthDate=t);const s=this.extractGenderFromID(e);s&&(i.gender=s)}return i}extractAndValidate(t){const e={...t};return e.idNumber&&(e.idNumber=this.normalizeIDNumber(e.idNumber),this.validateIDNumber(e.idNumber)&&(e.birthDate||(e.birthDate=this.extractBirthDateFromID(e.idNumber)),e.gender||(e.gender=this.extractGenderFromID(e.idNumber)))),e.birthDate&&(e.birthDate=this.normalizeDate(e.birthDate)),e.address&&(e.address=this.normalizeAddress(e.address)),e}normalizeIDNumber(t){return t.replace(/[\s\-]/g,"").toUpperCase()}validateIDNumber(t){return/(^\d{15}$)|(^\d{17}([0-9]|X)$)/.test(t)}extractBirthDateFromID(t){return 18===t.length?`${t.substring(6,10)}-${t.substring(10,12)}-${t.substring(12,14)}`:15===t.length?`19${t.substring(6,8)}-${t.substring(8,10)}-${t.substring(10,12)}`:""}extractGenderFromID(t){let e;return e=18===t.length?parseInt(t.charAt(16)):parseInt(t.charAt(14)),e%2==1?"男":"女"}normalizeDate(t){return t.replace(/(\d{4})(\d{2})(\d{2})/,"$1-$2-$3")}normalizeAddress(t){return t.trim()}}
|
|
2
2
|
/**
|
|
3
3
|
* @file ID扫描识别库UMD格式入口文件
|
|
4
4
|
* @description 专门为UMD格式构建的入口,使用静态导入而非动态导入
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"id-scanner.min.js","sources":["../src/utils/camera.ts","../src/scanner/qr-scanner.ts","../src/utils/image-processing.ts","../src/scanner/barcode-scanner.ts","../src/utils/performance.ts","../src/id-recognition/id-detector.ts","../src/id-recognition/ocr-worker.ts","../src/id-recognition/ocr-processor.ts","../src/utils/worker.ts","../src/id-recognition/data-extractor.ts","../src/index-umd.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["Camera","constructor","options","this","stream","videoElement","width","height","facingMode","start","initialize","stop","release","constraints","video","ideal","navigator","mediaDevices","getUserMedia","srcObject","Promise","resolve","onloadedmetadata","play","then","error","console","Error","captureFrame","canvas","document","createElement","videoWidth","videoHeight","context","getContext","drawImage","getImageData","getTracks","forEach","track","QRScanner","scanning","scanTimer","scanInterval","camera","scan","onError","String","imageData","code","jsQR","data","onScan","window","setTimeout","clearTimeout","ImageProcessor","imageDataToCanvas","ctx","putImageData","canvasToImageData","adjustBrightnessContrast","brightness","contrast","imgData","factor","i","length","truncate","value","Math","min","max","toGrayscale","avg","resize","newWidth","newHeight","tempCanvas","downsampleForProcessing","maxDimension","scale","round","imageDataToBase64","toDataURL","base64ToImageData","base64","reject","img","Image","onload","onerror","src","processImageInParallel","processingFunction","chunks","Worker","resultCanvas","resultCtx","isWide","chunkSize","floor","promises","chunkCanvas","chunkCtx","chunkImageData","startX","startY","workerCode","toString","blob","Blob","type","workerUrl","URL","createObjectURL","worker","promise","onmessage","e","terminate","revokeObjectURL","postMessage","index","buffer","push","results","all","sort","a","b","result","BarcodeScanner","enhancedImage","detectBarcode","log","random","mockResult","LRUCache","maxSize","cache","Map","get","key","has","delete","set","size","oldestKey","keys","next","clear","calculateImageFingerprint","tempCtx","smallImgData","grayValues","r","g","gray","reduce","sum","val","fingerprint","IDCardDetector","detecting","detectTimer","frameCount","lastDetectionTime","onDetected","detectionInterval","maxImageDimension","enableCache","cacheSize","logger","onDetection","resultCache","throttledDetect","fn","delay","lastCall","timeoutId","args","now","Date","remaining","apply","throttle","performDetection","bind","detect","cancelAnimationFrame","requestAnimationFrame","performance","frame","cachedResult","updatedResult","downsampledFrame","detectIDCard","success","detectionResult","message","rectWidth","rectHeight","rectX","rectY","corners","x","y","boundingBox","croppedImage","confidence","clearCache","dispose","async","processOCRInWorker","input","startTime","createWorker","import","tessWorkerOptions","m","load","loadLanguage","setParameters","tessedit_char_whitelist","recognize","imageBase64","idCardInfo","text","info","lines","split","filter","line","trim","idNumberRegex","idNumberMatch","match","idNumber","includes","test","name","replace","genderNationalityRegex","genderMatch","gender","nationalityText","nationality","substring","indexOf","birthDateRegex","birthDateMatch","birthDate","addressRegex","addressMatch","address","authorityRegex","authorityMatch","issuingAuthority","validPeriodRegex","validPeriodMatch","validPeriod","parseIDCardText","processingTime","OCRProcessor","ocrWorker","initialized","useWorker","workerFunction","promiseMap","messageCounter","id","promiseHandlers","workerError","stack","createCustomWorker","processIDCard","downsampledImage","base64Image","toFixed","DataExtractor","validateIDNumber","year","parseInt","substr","month","day","date","getFullYear","getMonth","getDate","extractBirthDateFromID","extractGenderFromID","charAt","extractRegionFromID","enhanceIDCardInfo","ocrInfo","undefined","extractAndValidate","enhancedInfo","normalizeIDNumber","normalizeDate","normalizeAddress","toUpperCase","sexCode","qrScanner","barcodeScanner","idDetector","ocrProcessor","dataExtractor","scanMode","cameraOptions","handleError","startQRScanner","qrScannerOptions","handleQRScan","startBarcodeScanner","barcodeScannerOptions","handleBarcodeScan","startIDCardScanner","handleIDDetection","onQRCodeScanned","onBarcodeScanned","extractedInfo","onIDCardScanned"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"id-scanner.min.js","sources":["../src/utils/camera.ts","../src/scanner/qr-scanner.ts","../src/utils/image-processing.ts","../src/scanner/barcode-scanner.ts","../src/utils/performance.ts","../src/id-recognition/id-detector.ts","../src/id-recognition/ocr-worker.ts","../src/id-recognition/ocr-processor.ts","../src/utils/worker.ts","../src/id-recognition/data-extractor.ts","../src/index-umd.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["Camera","constructor","options","this","stream","videoElement","width","height","facingMode","start","initialize","stop","release","constraints","video","ideal","navigator","mediaDevices","getUserMedia","srcObject","Promise","resolve","onloadedmetadata","play","then","error","console","Error","captureFrame","canvas","document","createElement","videoWidth","videoHeight","context","getContext","drawImage","getImageData","getTracks","forEach","track","QRScanner","scanning","scanTimer","scanInterval","camera","scan","onError","String","imageData","code","jsQR","data","onScan","window","setTimeout","clearTimeout","ImageProcessor","imageDataToCanvas","ctx","putImageData","canvasToImageData","adjustBrightnessContrast","brightness","contrast","imgData","factor","i","length","truncate","value","Math","min","max","toGrayscale","avg","resize","newWidth","newHeight","tempCanvas","downsampleForProcessing","maxDimension","scale","round","imageDataToBase64","toDataURL","base64ToImageData","base64","reject","img","Image","onload","onerror","src","processImageInParallel","processingFunction","chunks","Worker","resultCanvas","resultCtx","isWide","chunkSize","floor","promises","chunkCanvas","chunkCtx","chunkImageData","startX","startY","workerCode","toString","blob","Blob","type","workerUrl","URL","createObjectURL","worker","promise","onmessage","e","terminate","revokeObjectURL","postMessage","index","buffer","push","results","all","sort","a","b","result","BarcodeScanner","enhancedImage","detectBarcode","log","random","mockResult","LRUCache","maxSize","cache","Map","get","key","has","delete","set","size","oldestKey","keys","next","undefined","clear","calculateImageFingerprint","tempCtx","smallImgData","grayValues","r","g","gray","reduce","sum","val","fingerprint","IDCardDetector","detecting","detectTimer","frameCount","lastDetectionTime","onDetected","detectionInterval","maxImageDimension","enableCache","cacheSize","logger","onDetection","resultCache","throttledDetect","fn","delay","lastCall","timeoutId","args","now","Date","remaining","apply","throttle","performDetection","bind","detect","cancelAnimationFrame","requestAnimationFrame","performance","frame","cachedResult","updatedResult","downsampledFrame","detectIDCard","success","detectionResult","message","rectWidth","rectHeight","rectX","rectY","corners","x","y","boundingBox","croppedImage","confidence","clearCache","dispose","async","processOCRInWorker","input","startTime","createWorker","import","tessWorkerOptions","m","load","loadLanguage","setParameters","tessedit_char_whitelist","recognize","imageBase64","idCardInfo","text","info","lines","split","filter","line","trim","idNumberRegex","idNumberMatch","match","idNumber","includes","test","name","replace","genderNationalityRegex","genderMatch","gender","nationalityText","nationality","substring","indexOf","birthDateRegex","birthDateMatch","birthDate","addressRegex","addressMatch","address","authorityRegex","authorityMatch","issuingAuthority","validPeriodRegex","validPeriodMatch","validPeriod","parseIDCardText","processingTime","OCRProcessor","ocrWorker","initialized","useWorker","workerFunction","promiseMap","messageCounter","id","promiseHandlers","workerError","stack","createCustomWorker","processIDCard","downsampledImage","base64Image","toFixed","DataExtractor","validateIDNumber","year","parseInt","substr","month","day","date","getFullYear","getMonth","getDate","extractBirthDateFromID","extractGenderFromID","charAt","extractRegionFromID","enhanceIDCardInfo","ocrInfo","extractAndValidate","enhancedInfo","normalizeIDNumber","normalizeDate","normalizeAddress","toUpperCase","sexCode","qrScanner","barcodeScanner","idDetector","ocrProcessor","dataExtractor","scanMode","cameraOptions","handleError","startQRScanner","qrScannerOptions","handleQRScan","startBarcodeScanner","barcodeScannerOptions","handleBarcodeScan","startIDCardScanner","handleIDDetection","onQRCodeScanned","onBarcodeScanned","extractedInfo","onIDCardScanned"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -38,9 +38,9 @@ export async function processOCRInWorker(input: OCRProcessInput): Promise<OCRPro
|
|
|
38
38
|
const { createWorker } = await import('tesseract.js');
|
|
39
39
|
|
|
40
40
|
// 创建OCR Worker
|
|
41
|
-
const worker = createWorker(input.tessWorkerOptions || {
|
|
41
|
+
const worker = await createWorker(input.tessWorkerOptions || {
|
|
42
42
|
logger: (m: any) => console.log(m)
|
|
43
|
-
});
|
|
43
|
+
}) as any; // 添加类型断言,避免TypeScript错误
|
|
44
44
|
|
|
45
45
|
try {
|
|
46
46
|
// 初始化OCR引擎
|
package/src/utils/performance.ts
CHANGED
|
@@ -18,7 +18,7 @@ export function throttle<T extends (...args: any[]) => any>(
|
|
|
18
18
|
let lastCall = 0;
|
|
19
19
|
let timeoutId: number | null = null;
|
|
20
20
|
|
|
21
|
-
return function(...args: Parameters<T>) {
|
|
21
|
+
return function(this: any, ...args: Parameters<T>) {
|
|
22
22
|
const now = Date.now();
|
|
23
23
|
const remaining = delay - (now - lastCall);
|
|
24
24
|
|
|
@@ -52,7 +52,7 @@ export function debounce<T extends (...args: any[]) => any>(
|
|
|
52
52
|
): (...args: Parameters<T>) => void {
|
|
53
53
|
let timeoutId: number | null = null;
|
|
54
54
|
|
|
55
|
-
return function(...args: Parameters<T>) {
|
|
55
|
+
return function(this: any, ...args: Parameters<T>) {
|
|
56
56
|
if (timeoutId) {
|
|
57
57
|
clearTimeout(timeoutId);
|
|
58
58
|
}
|
|
@@ -110,7 +110,9 @@ export class LRUCache<K, V> {
|
|
|
110
110
|
// 如果缓存已满,移除最老的项
|
|
111
111
|
if (this.cache.size >= this.maxSize) {
|
|
112
112
|
const oldestKey = this.cache.keys().next().value;
|
|
113
|
-
|
|
113
|
+
if (oldestKey !== undefined) {
|
|
114
|
+
this.cache.delete(oldestKey);
|
|
115
|
+
}
|
|
114
116
|
}
|
|
115
117
|
|
|
116
118
|
// 添加新项
|