e-virt-table 1.2.34 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/dist/index.cjs.js +5 -5
  2. package/dist/index.cjs.js.map +1 -1
  3. package/dist/index.es.js +1772 -1165
  4. package/dist/index.es.js.map +1 -1
  5. package/dist/index.umd.js +5 -5
  6. package/dist/index.umd.js.map +1 -1
  7. package/dist/lib/Cell.js +1 -1
  8. package/dist/lib/Cell.js.map +1 -1
  9. package/dist/lib/CellHeader.d.ts +2 -1
  10. package/dist/lib/CellHeader.js +27 -9
  11. package/dist/lib/CellHeader.js.map +1 -1
  12. package/dist/lib/Config.d.ts +17 -1
  13. package/dist/lib/Config.js +72 -1
  14. package/dist/lib/Config.js.map +1 -1
  15. package/dist/lib/Context.d.ts +5 -0
  16. package/dist/lib/Context.js +25 -0
  17. package/dist/lib/Context.js.map +1 -1
  18. package/dist/lib/ContextMenu.d.ts +3 -5
  19. package/dist/lib/ContextMenu.js +172 -88
  20. package/dist/lib/ContextMenu.js.map +1 -1
  21. package/dist/lib/DOMTreeMenu.d.ts +44 -0
  22. package/dist/lib/DOMTreeMenu.js +348 -0
  23. package/dist/lib/DOMTreeMenu.js.map +1 -0
  24. package/dist/lib/Database.d.ts +13 -3
  25. package/dist/lib/Database.js +138 -24
  26. package/dist/lib/Database.js.map +1 -1
  27. package/dist/lib/EVirtTable.d.ts +6 -1
  28. package/dist/lib/EVirtTable.js +10 -2
  29. package/dist/lib/EVirtTable.js.map +1 -1
  30. package/dist/lib/EventBrowser.js +10 -0
  31. package/dist/lib/EventBrowser.js.map +1 -1
  32. package/dist/lib/EventTable.d.ts +1 -0
  33. package/dist/lib/EventTable.js +32 -0
  34. package/dist/lib/EventTable.js.map +1 -1
  35. package/dist/lib/Header.d.ts +11 -0
  36. package/dist/lib/Header.js +236 -14
  37. package/dist/lib/Header.js.map +1 -1
  38. package/dist/lib/Icons.d.ts +7 -1
  39. package/dist/lib/Icons.js +3 -1
  40. package/dist/lib/Icons.js.map +1 -1
  41. package/dist/lib/Selector.js +27 -16
  42. package/dist/lib/Selector.js.map +1 -1
  43. package/dist/lib/Tooltip.js +19 -0
  44. package/dist/lib/Tooltip.js.map +1 -1
  45. package/dist/lib/TreeUtil.d.ts +18 -0
  46. package/dist/lib/TreeUtil.js +85 -0
  47. package/dist/lib/TreeUtil.js.map +1 -0
  48. package/dist/lib/types.d.ts +21 -3
  49. package/dist/lib/util.d.ts +4 -2
  50. package/dist/lib/util.js +44 -8
  51. package/dist/lib/util.js.map +1 -1
  52. package/package.json +1 -1
@@ -28,7 +28,11 @@ export default class Selector {
28
28
  });
29
29
  // 鼠标移动fixed边界时,调整滚动条位置
30
30
  this.ctx.on('mousemove', throttle((e) => {
31
- if (this.ctx.selectorMove) {
31
+ // focus为fixed的不处理
32
+ if (this.ctx.focusCell?.fixed || this.ctx.focusCellHeader?.fixed) {
33
+ return;
34
+ }
35
+ if (!this.ctx.dragHeaderIng && this.ctx.selectorMove) {
32
36
  this.ctx.startAdjustPosition(e);
33
37
  }
34
38
  }, 100));
@@ -92,6 +96,11 @@ export default class Selector {
92
96
  this.selectCols(cell);
93
97
  }
94
98
  });
99
+ this.ctx.on('cellHoverChange', (cell) => {
100
+ if (this.ctx.mousedown) {
101
+ this.selectCols(cell);
102
+ }
103
+ });
95
104
  this.ctx.on('cellHeaderMousedown', (cell, e) => {
96
105
  // 如果是选中就不处理,比如chexkbox
97
106
  if (this.ctx.stageElement.style.cursor === 'pointer') {
@@ -105,7 +114,13 @@ export default class Selector {
105
114
  if (style.userSelect !== 'text') {
106
115
  e.preventDefault();
107
116
  }
108
- this.selectCols(cell);
117
+ this.ctx.clearSelector();
118
+ if (cell.operation) {
119
+ this.selectAll();
120
+ }
121
+ else {
122
+ this.selectCols(cell);
123
+ }
109
124
  });
110
125
  this.ctx.on('keydown', (e) => {
111
126
  if (this.ctx.editing) {
@@ -178,8 +193,15 @@ export default class Selector {
178
193
  this.ctx.setFocusCell(cell);
179
194
  this.click();
180
195
  });
196
+ //解耦:外部调用选择单元格
197
+ this.ctx.on('selectCols', (cell) => {
198
+ this.selectCols(cell);
199
+ });
181
200
  }
182
201
  setSelector(xArr, yArr) {
202
+ if (this.ctx.dragHeaderIng) {
203
+ return;
204
+ }
183
205
  const { ENABLE_SELECTOR_SPAN_COL, ENABLE_SELECTOR_SPAN_ROW } = this.ctx.config;
184
206
  let _xArr = xArr;
185
207
  let _yArr = yArr;
@@ -359,34 +381,23 @@ export default class Selector {
359
381
  if (this.ctx.editing) {
360
382
  return;
361
383
  }
362
- // 是可操作列就全选
363
- if (cell.operation) {
364
- this.selectAll();
365
- return;
366
- }
367
384
  const { SELECTOR_AREA_MIN_Y, SELECTOR_AREA_MAX_Y, SELECTOR_AREA_MAX_Y_OFFSET } = this.ctx.config;
368
385
  const minY = SELECTOR_AREA_MIN_Y;
369
386
  const maxY = SELECTOR_AREA_MAX_Y || this.ctx.maxRowIndex - SELECTOR_AREA_MAX_Y_OFFSET;
370
- if (this.ctx.mousedown && this.ctx.focusCellHeader) {
387
+ if (this.ctx.focusCellHeader) {
371
388
  const { colIndex } = this.ctx.focusCellHeader;
372
389
  this.ctx.clearSelector();
373
- if (cell.colIndex >= colIndex) {
390
+ if (this.ctx.mousedown && cell.colIndex >= colIndex) {
374
391
  const xArr = [colIndex, cell.colIndex + cell.colspan - 1];
375
392
  const yArr = [minY, maxY];
376
393
  this.setSelector(xArr, yArr);
377
394
  }
378
395
  else {
379
- const xArr = [cell.colIndex, colIndex];
396
+ const xArr = [cell.colIndex, colIndex + cell.colspan - 1];
380
397
  const yArr = [minY, maxY];
381
398
  this.setSelector(xArr, yArr);
382
399
  }
383
400
  }
384
- else {
385
- // this.setFocusCellHeader(cell);
386
- const xArr = [cell.colIndex, cell.colIndex + cell.colspan - 1];
387
- const yArr = [minY, maxY];
388
- this.setSelector(xArr, yArr);
389
- }
390
401
  }
391
402
  selectAll() {
392
403
  if (this.ctx.autofillMove) {
@@ -1 +1 @@
1
- {"version":3,"file":"Selector.js","sourceRoot":"","sources":["../../src/Selector.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAChF,MAAM,CAAC,OAAO,OAAO,QAAQ;IAKzB,YAAY,GAAY;QAJhB;;;;mBAAQ,KAAK;WAAC;QACd;;;;mBAAgB,KAAK;WAAC;QACtB;;;;;WAAa;QAGjB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;IACO,IAAI;QACR,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,GAAwC,EAAE,EAAE;YACrE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;QACH,uBAAuB;QACvB,IAAI,CAAC,GAAG,CAAC,EAAE,CACP,WAAW,EACX,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE;YACX,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;gBACxB,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;YACpC,CAAC;QACL,CAAC,EAAE,GAAG,CAAC,CACV,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE;YACpC,gBAAgB;YAChB,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;gBACxB,OAAO;YACX,CAAC;YACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjB,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC7B,cAAc;gBACd,OAAO;YACX,CAAC;YACD,MAAM;YACN,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,OAAO;YACX,CAAC;YACD,IAAI,CAAC,UAAU,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACrC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxB,OAAO;YACX,CAAC;YACD,uBAAuB;YACvB,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACnD,OAAO;YACX,CAAC;YACD,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;gBACrB,OAAO;YACX,CAAC;YACD,UAAU;YACV,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;gBACrD,OAAO;YACX,CAAC;YACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;gBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACtB,OAAO;YACX,CAAC;YACD,cAAc;YACd,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAChD,IAAI,KAAK,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;gBAC9B,CAAC,CAAC,cAAc,EAAE,CAAC;YACvB,CAAC;YACD,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YACvB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;YACxB,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,KAAK,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC;YAC9B,6BAA6B;YAC7B,6DAA6D;YAC7D,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC1B,IAAI,CAAC,GAAG,CAAC,iBAAiB,GAAG,KAAK,CAAC;gBACnC,YAAY,CAAC,KAAK,CAAC,CAAC;YACxB,CAAC,EAAE,CAAC,CAAC,CAAC;QACV,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,uBAAuB,EAAE,CAAC,IAAI,EAAE,EAAE;YAC1C,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;gBACrB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAC1B,CAAC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,qBAAqB,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YAC3C,uBAAuB;YACvB,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACnD,OAAO;YACX,CAAC;YACD,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;gBACrB,OAAO;YACX,CAAC;YACD,cAAc;YACd,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAChD,IAAI,KAAK,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;gBAC9B,CAAC,CAAC,cAAc,EAAE,CAAC;YACvB,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;YACzB,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;gBACnB,OAAO;YACX,CAAC;YACD,mBAAmB;YACnB,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC;gBACvE,IAAI,CAAC,KAAK,EAAE,CAAC;gBACb,OAAO;YACX,CAAC;YACD,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC;gBACvE,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,OAAO;YACX,CAAC;YACD,mBAAmB;YACnB,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC;gBACvE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;gBAClB,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,OAAO;YACX,CAAC;YACD,mBAAmB;YACnB,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC;gBACvE,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC,SAAS,EAAE,CAAC;YACrB,CAAC;YACD,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBAC7D,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBACvB,OAAO;YACX,CAAC;YACD,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBACtB,OAAO;YACX,CAAC;YACD,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;gBAC9C,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBACxB,OAAO;YACX,CAAC;YACD,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACzB,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBACzB,OAAO;YACX,CAAC;YACD,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAChD,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;gBACzC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACnC,OAAO;YACX,CAAC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YACzC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;YACzC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;YAChC,IAAI,CAAC,IAAI,EAAE,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE;YACjC,IAAI,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,gBAAgB,EAAE,GAAG,EAAE;YAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,IAAI,CAAC,IAAI,EAAE,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,cAAc;QACd,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,IAAU,EAAE,EAAE;YAC1C,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;IACP,CAAC;IACO,WAAW,CAAC,IAAc,EAAE,IAAc;QAC9C,MAAM,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;QAC/E,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;YACzB,KAAK,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC5B,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;YACzB,KAAK,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACjC,CAAC;QACD,OAAO;QACP,IACI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAChE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAClE,CAAC;YACC,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;gBACrB,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC;YACjC,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;YAChC,MAAM,EACF,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,GAC7B,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;YACpB,MAAM,QAAQ,GAAG,mBAAmB,CAAC;YACrC,MAAM,QAAQ,GAAG,mBAAmB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,0BAA0B,CAAC;YAC1F,MAAM,QAAQ,GAAG,mBAAmB,CAAC;YACrC,MAAM,QAAQ,GAAG,mBAAmB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,0BAA0B,CAAC;YAC1F,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;YACzB,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;YACzB,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;gBAClB,OAAO;YACX,CAAC;YACD,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;gBAClB,OAAO;YACX,CAAC;YACD,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;gBAClB,OAAO;YACX,CAAC;YACD,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;gBAClB,OAAO;YACX,CAAC;YACD,qBAAqB;YACrB,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;YACrD,YAAY;YACZ,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;gBACzC,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBACxD,kBAAkB;gBAClB,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC3B,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC3B,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC3B,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC3B,aAAa;gBACb,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,WAAW,CAAC,aAAa,CAAC;YACvD,CAAC;YACD,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBACjC,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,KAAK,CAAC;YACnC,CAAC;YACD,KAAK,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;YAC7D,KAAK,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;YAC7D,cAAc;YACd,MAAM,EAAE,0BAA0B,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;YACvD,IAAI,OAAO,0BAA0B,KAAK,UAAU,EAAE,CAAC;gBACnD,MAAM,uBAAuB,GAA4B,0BAA0B,CAAC;gBACpF,MAAM,GAAG,GAAG,uBAAuB,CAAC;oBAChC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS;oBAC7B,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,KAAK;iBACd,CAAC,CAAC;gBACH,IAAI,CAAC,GAAG,EAAE,CAAC;oBACP,OAAO;gBACX,CAAC;gBACD,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC;gBACjB,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC;YACrB,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC;YAC/B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC;YAC/B,WAAW;YACX,IAAI,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBAC9C,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,KAAK,CAAC;YACnC,CAAC;YACD,WAAW;YACX,IAAI,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBAC9C,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,KAAK,CAAC;YACnC,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAChD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9B,CAAC;IACL,CAAC;IACO,gBAAgB,CAAC,IAAc,EAAE,IAAc;QACnD,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC;QAC1B,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC;QAC1B,0BAA0B;QAC1B,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC;YACjG,OAAO;gBACH,IAAI;gBACJ,IAAI;gBACJ,aAAa,EAAE,KAAK;aACvB,CAAC;QACN,CAAC;QACD,IAAI,cAAc,GAAW,EAAE,CAAC;QAChC,IAAI,cAAc,GAAW,EAAE,CAAC;QAChC,YAAY;QACZ,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;YAC7C,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;gBAC7C,MAAM,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC9B,MAAM,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;gBACtE,IAAI,IAAI,EAAE,CAAC;oBACP,YAAY;oBACZ,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;wBACzC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC9B,CAAC;oBACD,SAAS;oBACT,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;wBACzC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC9B,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QACD,MAAM,iBAAiB,GAAG,cAAc,CAAC,MAAM,CAC3C,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;YACX,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACpC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAI,CAAC;YACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC1C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;YAC7C,OAAO,IAAI,CAAC;QAChB,CAAC,EACD;YACI,IAAI;YACJ,IAAI;SACP,CACJ,CAAC;QACF,MAAM,iBAAiB,GAAG,cAAc,CAAC,MAAM,CAC3C,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;YACX,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACpC,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,IAAI,CAAC;YACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YAC3C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC;QAChB,CAAC,EACD;YACI,IAAI;YACJ,IAAI;SACP,CACJ,CAAC;QACF,MAAM,KAAK,GAAG,CAAC,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC/D,MAAM,KAAK,GAAG,CAAC,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC/D,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,qDAAqD;QACrD,IAAI,iBAAiB,CAAC,IAAI,KAAK,iBAAiB,CAAC,IAAI,IAAI,iBAAiB,CAAC,IAAI,KAAK,iBAAiB,CAAC,IAAI,EAAE,CAAC;YACzG,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC;YACnD,MAAM,OAAO,GAAG,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1F,aAAa,GAAG,OAAO,KAAK,WAAW,CAAC;QAC5C,CAAC;QACD,OAAO;YACH,IAAI,EAAE,KAAK;YACX,IAAI,EAAE,KAAK;YACX,aAAa;SAChB,CAAC;IACN,CAAC;IACO,UAAU,CAAC,IAAgB;QAC/B,cAAc;QACd,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;YACzC,OAAO;QACX,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,wBAAwB,EAAE,CAAC;YAC5C,OAAO;QACX,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;YACxB,OAAO;QACX,CAAC;QACD,gBAAgB;QAChB,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;YAC1B,OAAO;QACX,CAAC;QACD,MAAM;QACN,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;QACX,CAAC;QACD,WAAW;QACX,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO;QACX,CAAC;QACD,MAAM,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;QACjG,MAAM,IAAI,GAAG,mBAAmB,CAAC;QACjC,MAAM,IAAI,GAAG,mBAAmB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,0BAA0B,CAAC;QACtF,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;YACjD,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC;YAC9C,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,QAAQ,IAAI,QAAQ,EAAE,CAAC;gBAC5B,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;gBAC1D,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACJ,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;gBACvC,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACjC,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,iCAAiC;YACjC,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YAC/D,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACjC,CAAC;IACL,CAAC;IACO,SAAS;QACb,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;YACxB,OAAO;QACX,CAAC;QACD,MAAM;QACN,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;QACX,CAAC;QACD,gBAAgB;QAChB,MAAM,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;QAC/E,IAAI,wBAAwB,IAAI,wBAAwB,EAAE,CAAC;YACvD,MAAM,EACF,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,GAC7B,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;YACpB,MAAM,IAAI,GAAG,mBAAmB,CAAC;YACjC,MAAM,IAAI,GAAG,mBAAmB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,0BAA0B,CAAC;YACtF,MAAM,IAAI,GAAG,mBAAmB,CAAC;YACjC,MAAM,IAAI,GAAG,mBAAmB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,0BAA0B,CAAC;YACtF,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1B,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACjC,CAAC;IACL,CAAC;IACO,UAAU,CAAC,IAAU,EAAE,UAAU,GAAG,IAAI;QAC5C,cAAc;QACd,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;YACzC,OAAO;QACX,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,wBAAwB,EAAE,CAAC;YAC5C,OAAO;QACX,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;YACxB,OAAO;QACX,CAAC;QACD,MAAM;QACN,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;QACX,CAAC;QACD,MAAM,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;QACjG,MAAM,IAAI,GAAG,mBAAmB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,0BAA0B,CAAC;QACtF,MAAM,IAAI,GAAG,mBAAmB,CAAC;QACjC,IAAI,UAAU,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1B,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;YAC3C,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;YACxC,IAAI,IAAI,CAAC,QAAQ,IAAI,QAAQ,EAAE,CAAC;gBAC5B,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC1B,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACJ,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC1B,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;gBACvC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACjC,CAAC;QACL,CAAC;IACL,CAAC;IAEO,UAAU;QACd,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;YACzC,OAAO;QACX,CAAC;QACD,MAAM;QACN,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;QACX,CAAC;QACD,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QACrD,IAAI,SAAS,IAAI,SAAS,IAAI,SAAS,EAAE,CAAC;YACtC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;YACzC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACpD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACpD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACpD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACpD,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1B,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACjC,CAAC;IACL,CAAC;IACO,KAAK,CAAC,QAAQ,GAAG,KAAK;QAC1B,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC1C,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO;QACX,CAAC;QACD,YAAY;QACZ,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjE,OAAO;QACX,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;QAChC,IAAI,SAAS,IAAI,QAAQ,EAAE,CAAC;YACxB,cAAc;YACd,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;gBACzC,OAAO;YACX,CAAC;YACD,eAAe;YACf,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;YACzC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC;YACrD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1B,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAAC;YAC9C,MAAM,IAAI,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;YACtD,MAAM,IAAI,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;YACtD,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC7B,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAClC,CAAC;IACL,CAAC;IAEO,aAAa;QACjB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC;IACD;;;;;OAKG;IACK,OAAO,CAAC,QAAgB,EAAE,QAAgB;QAC9C,gBAAgB;QAChB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;QAC9E,MAAM,IAAI,GAAG,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,IAA0B,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;QACzF,OAAO,IAAI,CAAC;IAChB,CAAC;IACD;;;OAGG;IACK,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC/B,OAAO;QACX,CAAC;QACD,cAAc;QACd,IAAI,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;YAC3B,OAAO;QACX,CAAC;QACD,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;QACvD,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,sBAAsB,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;YACvF,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;gBAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;gBAChC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBAC5B,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACtC,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACJ,MAAM,GAAG,GAAc;oBACnB,IAAI,EAAE,uBAAuB;oBAC7B,OAAO,EAAE,oCAAoC;iBAChD,CAAC;gBACF,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC7B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBAChC,CAAC;qBAAM,CAAC;oBACJ,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC;gBACD,OAAO;YACX,CAAC;QACL,CAAC;QACD,QAAQ;QACR,MAAM,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;QAC/C,IAAI,OAAO,kBAAkB,KAAK,UAAU,EAAE,CAAC;YAC3C,MAAM,gBAAgB,GAAqB,kBAAkB,CAAC;YAC9D,MAAM,GAAG,GAAG,gBAAgB,CAAC;gBACzB,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS;gBAC7B,IAAI,EAAE,KAAK;gBACX,IAAI;gBACJ,IAAI;aACP,CAAC,CAAC;YACH,IAAI,CAAC,GAAG,EAAE,CAAC;gBACP,OAAO;YACX,CAAC;YACD,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC;QACrB,CAAC;QACD,MAAM,IAAI,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;YACtB,SAAS,CAAC,SAAS;iBACd,SAAS,CAAC,IAAI,CAAC;iBACf,IAAI,CAAC,GAAG,EAAE;gBACP,QAAQ;gBACR,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC5D,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC5D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE;oBACxB,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ;oBAChC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ;oBAChC,IAAI,EAAE,KAAK;iBACd,CAAC,CAAC;gBACH,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC;QACjE,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;IACL,CAAC;IACD,iBAAiB,CAAC,IAAc,EAAE,IAAc,EAAE,SAAS,GAAG,KAAK,EAAE,KAAK,GAAG,IAAI;QAC7E,IAAI,UAAU,GAAiB,EAAE,CAAC;QAClC,MAAM,UAAU,GAAgB,IAAI,GAAG,EAAE,CAAC;QAC1C,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;YAC7C,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;gBAC7C,MAAM,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC/B,MAAM,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,kCAAkC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;gBAC7F,IAAI,SAAS,EAAE,CAAC;oBACZ,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,SAAS,CAAC;oBAClC,QAAQ;oBACR,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;wBAC9C,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;wBACvB,UAAU,CAAC,IAAI,CAAC;4BACZ,MAAM;4BACN,GAAG;4BACH,KAAK;4BACL,GAAG,EAAE,EAAE,EAAE,OAAO;yBACnB,CAAC,CAAC;oBACP,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QACD,UAAU;QACV,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YACrB,OAAO,EAAE,CAAC;QACd,CAAC;QACD,mBAAmB;QACnB,IAAI,SAAS,EAAE,CAAC;YACZ,OAAO,UAAU,CAAC;QACtB,CAAC;QACD,eAAe;QACf,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACtD,IAAI,IAAI,GAAU,EAAE,CAAC;QACrB,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC1B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,yBAAyB,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QAC3D,OAAO,UAAU,CAAC;IACtB,CAAC;IACO,KAAK;QACT,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;YACpE,OAAO;QACX,CAAC;QACD,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;QAC1C,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,IAAI,aAAa,EAAE,CAAC;YAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAgB,IAAI,GAAG,EAAE,CAAC;YAC1C,SAAS,CAAC,SAAS;iBACd,QAAQ,EAAE;iBACV,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBAChB,IAAI,OAAO,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;gBACxC,MAAM,KAAK,GAAG,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC3D,MAAM,KAAK,GAAG,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACxD,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;gBAC3B,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;gBAC3B,MAAM,gBAAgB,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;gBACrD,MAAM,gBAAgB,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;gBACrD,WAAW;gBACX,IAAI,gBAAgB,GAAG,CAAC,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;oBAC/C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,sBAAsB,EAAE;wBAClC,IAAI;wBACJ,IAAI;wBACJ,IAAI;wBACJ,IAAI;wBACJ,gBAAgB;wBAChB,gBAAgB;wBAChB,OAAO;qBACV,CAAC,CAAC;gBACP,CAAC;gBACD,cAAc;gBACd,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;gBAClE,cAAc;gBACd,IACI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,sBAAsB;oBACtC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC;oBAC5C,CAAC,SAAS,EACZ,CAAC;oBACC,MAAM,GAAG,GAAc;wBACnB,IAAI,EAAE,wBAAwB;wBAC9B,OAAO,EAAE,qCAAqC;qBACjD,CAAC;oBACF,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC7B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;oBAChC,CAAC;yBAAM,CAAC;wBACJ,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBACvB,CAAC;oBACD,OAAO;gBACX,CAAC;gBACD,IAAI,UAAU,GAAiB,EAAE,CAAC;gBAClC,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;oBAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC;oBAC/B,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,GAAG,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC;wBACnC,MAAM,SAAS,GAAG,EAAE,GAAG,QAAQ,CAAC;wBAChC,MAAM,SAAS,GAAG,EAAE,GAAG,QAAQ,CAAC;wBAChC,MAAM,KAAK,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;wBAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,kCAAkC,CAClE,SAAS,EACT,SAAS,CACZ,CAAC;wBACF,IAAI,SAAS,EAAE,CAAC;4BACZ,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,SAAS,CAAC;4BAClC,QAAQ;4BACR,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;gCAC9C,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gCACvB,UAAU,CAAC,IAAI,CAAC;oCACZ,MAAM;oCACN,GAAG;oCACH,KAAK;oCACL,GAAG,EAAE,EAAE,EAAE,OAAO;iCACnB,CAAC,CAAC;4BACP,CAAC;wBACL,CAAC;oBACL,CAAC;gBACL,CAAC;gBACD,YAAY;gBACZ,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACb,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAClC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAC1B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAC1B,IAAI,CACP,CAAC;oBACF,MAAM,iBAAiB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oBACjF,UAAU;oBACV,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;wBACrB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;4BAC5D,aAAa;4BACb,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;wBAC7B,CAAC;oBACL,CAAC,CAAC,CAAC;oBACH,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACvB,CAAC;gBACD,UAAU;gBACV,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;oBACrB,OAAO;gBACX,CAAC;gBACD,aAAa;gBACb,MAAM,EAAE,wBAAwB,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;gBACrD,IAAI,OAAO,wBAAwB,KAAK,UAAU,EAAE,CAAC;oBACjD,MAAM,qBAAqB,GAA0B,wBAAwB,CAAC;oBAC9E,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBAC1C,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,GAAG,EAAE,IAAI,CAAC,GAAG;wBACb,KAAK,EAAE,IAAI,CAAC,KAAK;wBACjB,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC;wBAC/D,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC;qBAC9D,CAAC,CAAC,CAAC;oBACJ,UAAU,GAAG,MAAM,qBAAqB,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;oBAC7E,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;wBACnC,OAAO;oBACX,CAAC;gBACL,CAAC;gBACD,QAAQ;gBACR,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,eAAe;gBACf,IAAI,CAAC,GAAG,CAAC,yBAAyB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;gBACrD,IAAI,IAAI,GAAU,EAAE,CAAC;gBACrB,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC1B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;gBACjE,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;gBAC/C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACb,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;YACjE,CAAC,CAAC,CAAC;QACX,CAAC;IACL,CAAC;IACD;;OAEG;IACK,SAAS,CAAC,GAAwC;QACtD,UAAU;QACV,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;QACX,CAAC;QACD,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC/B,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO;QACX,CAAC;QACD,IAAI,EAAE,QAAQ,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,GAAG,SAAS,CAAC;QAC/C,MAAM,IAAI,GAAG,CAAC,CAAC;QACf,MAAM,IAAI,GAAG,CAAC,CAAC;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;QAClC,QAAQ,GAAG,EAAE,CAAC;YACV,KAAK,MAAM;gBACP,IAAI,QAAQ,GAAG,IAAI,EAAE,CAAC;oBAClB,QAAQ,EAAE,CAAC;gBACf,CAAC;gBACD,MAAM;YACV,KAAK,KAAK;gBACN,IAAI,QAAQ,GAAG,IAAI,EAAE,CAAC;oBAClB,QAAQ,EAAE,CAAC;gBACf,CAAC;gBACD,MAAM;YACV,KAAK,OAAO;gBACR,IAAI,QAAQ,GAAG,IAAI,EAAE,CAAC;oBAClB,QAAQ,EAAE,CAAC;gBACf,CAAC;gBACD,MAAM;YACV,KAAK,QAAQ;gBACT,IAAI,QAAQ,GAAG,IAAI,EAAE,CAAC;oBAClB,QAAQ,EAAE,CAAC;gBACf,CAAC;gBACD,MAAM;YACV,QAAQ;QACZ,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO;QACX,CAAC;QACD,SAAS;QACT,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO;QACX,CAAC;QACD,iBAAiB;QACjB,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvD,OAAO;QACX,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IACD,aAAa;IACL,gBAAgB,CAAC,QAAgB,EAAE,QAAgB;QACvD,MAAM,EACF,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,GAC7B,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;QACpB,MAAM,QAAQ,GAAG,mBAAmB,CAAC;QACrC,MAAM,QAAQ,GAAG,mBAAmB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,0BAA0B,CAAC;QAC1F,MAAM,QAAQ,GAAG,mBAAmB,CAAC;QACrC,MAAM,QAAQ,GAAG,mBAAmB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,0BAA0B,CAAC;QAC1F,IAAI,QAAQ,GAAG,QAAQ,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,IAAI,QAAQ,GAAG,QAAQ,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,IAAI,QAAQ,GAAG,QAAQ,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,IAAI,QAAQ,GAAG,QAAQ,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IACD;;OAEG;IACK,sBAAsB;QAC1B,MAAM,EACF,WAAW,EACX,UAAU,EACV,SAAS,EACT,eAAe,EACf,cAAc,EACd,MAAM,EACN,MAAM,EACN,IAAI,EACJ,OAAO,EACP,OAAO,EACP,MAAM,EAAE,EAAE,mBAAmB,EAAE,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,GACzF,GAAG,IAAI,CAAC,GAAG,CAAC;QACb,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO;QACX,CAAC;QACD,cAAc;QACd,IAAI,sBAAsB,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACnD,SAAS,CAAC,cAAc,EAAE,CAAC;QAC/B,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC;QACzD,wCAAwC;QACxC,MAAM,QAAQ,GAAG,cAAc,GAAG,KAAK,GAAG,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;QAC/E,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;QACpC,wBAAwB;QACxB,IAAI,UAAU,GAAG,MAAM,CAAC;QACxB,IAAI,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YAClC,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC;QACpC,CAAC;QACD,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,YAAY,EAAE,CAAC;YACf,IAAI,eAAe,KAAK,KAAK,EAAE,CAAC;gBAC5B,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;YACpD,CAAC;iBAAM,CAAC;gBACJ,YAAY,GAAG,MAAM,CAAC,aAAa,CAAC;YACxC,CAAC;QACL,CAAC;QACD,MAAM,UAAU,GAAG,KAAK,GAAG,UAAU,GAAG,CAAC,WAAW,GAAG,YAAY,GAAG,mBAAmB,CAAC,CAAC;QAC3F,IAAI,QAAQ,GAAG,OAAO,CAAC;QACvB,IAAI,QAAQ,GAAG,OAAO,CAAC;QACvB,gBAAgB;QAChB,IAAI,SAAS,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC1B,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;QAC/C,CAAC;aAAM,IAAI,QAAQ,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,QAAQ,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YACd,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC,CAAC;QAC7C,CAAC;aAAM,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACxB,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,UAAU,CAAC,CAAC;QAChD,CAAC;QACD,gCAAgC;QAChC,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACvE,IAAI,CAAC,GAAG,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAClC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACvC,gCAAgC;YAChC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAC;QACvD,CAAC;IACL,CAAC;IACD,OAAO,KAAI,CAAC;CACf"}
1
+ {"version":3,"file":"Selector.js","sourceRoot":"","sources":["../../src/Selector.ts"],"names":[],"mappings":"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"}
@@ -116,9 +116,28 @@ export default class Tooltip {
116
116
  this.show(cell);
117
117
  }
118
118
  });
119
+ this.ctx.on('cellFooterMouseleave', (_, e) => {
120
+ const contains = this.floatingEl.contains(e.target);
121
+ if (contains) {
122
+ return;
123
+ }
124
+ this.hide();
125
+ });
126
+ this.ctx.on('cellFooterHoverChange', (cell, e) => {
127
+ const contains = this.floatingEl.contains(e.target);
128
+ if (contains) {
129
+ return;
130
+ }
131
+ if (cell.ellipsis) {
132
+ this.show(cell);
133
+ }
134
+ });
119
135
  }
120
136
  show(cell) {
121
137
  // 如果没有设置overflowTooltipShow=true,则不显示
138
+ if (this.ctx.contextMenuIng) {
139
+ return;
140
+ }
122
141
  if (!cell.overflowTooltipShow) {
123
142
  return;
124
143
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../../src/Tooltip.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../../src/Tooltip.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ type Position = 'before' | 'after';
2
+ interface TreeConfig {
3
+ key?: string;
4
+ childrenKey?: string;
5
+ }
6
+ export declare class TreeUtil<T extends Record<string, any> = any> {
7
+ private root;
8
+ private key;
9
+ private childrenKey;
10
+ constructor(initialData: T[], config?: TreeConfig);
11
+ /** 获取当前树 */
12
+ getTree(): T[];
13
+ /** 移动节点 */
14
+ treeMove(sourceNode: T, targetNode: T, position: Position): void;
15
+ /** 在树中找到节点及其父节点 */
16
+ private findNodeWithParent;
17
+ }
18
+ export {};
@@ -0,0 +1,85 @@
1
+ export class TreeUtil {
2
+ constructor(initialData, config) {
3
+ Object.defineProperty(this, "root", {
4
+ enumerable: true,
5
+ configurable: true,
6
+ writable: true,
7
+ value: void 0
8
+ });
9
+ Object.defineProperty(this, "key", {
10
+ enumerable: true,
11
+ configurable: true,
12
+ writable: true,
13
+ value: void 0
14
+ });
15
+ Object.defineProperty(this, "childrenKey", {
16
+ enumerable: true,
17
+ configurable: true,
18
+ writable: true,
19
+ value: void 0
20
+ });
21
+ this.root = initialData;
22
+ this.key = config?.key || 'key';
23
+ this.childrenKey = config?.childrenKey || 'children';
24
+ }
25
+ /** 获取当前树 */
26
+ getTree() {
27
+ return this.root;
28
+ }
29
+ /** 移动节点 */
30
+ treeMove(sourceNode, targetNode, position) {
31
+ // 找到并移除 Source
32
+ const sourceInfo = this.findNodeWithParent(this.root, sourceNode[this.key]);
33
+ if (!sourceInfo)
34
+ throw new Error('Source node not found');
35
+ const { parent: sourceParent, index: sourceIndex, node: sourceFound } = sourceInfo;
36
+ if (sourceParent) {
37
+ const childrenArr = sourceParent[this.childrenKey];
38
+ childrenArr.splice(sourceIndex, 1);
39
+ if (childrenArr.length === 0) {
40
+ delete sourceParent[this.childrenKey];
41
+ }
42
+ }
43
+ else {
44
+ this.root.splice(sourceIndex, 1);
45
+ }
46
+ // 找到 Target
47
+ const targetInfo = this.findNodeWithParent(this.root, targetNode[this.key]);
48
+ if (!targetInfo)
49
+ throw new Error('Target node not found');
50
+ const { parent: targetParent, index: targetIndex } = targetInfo;
51
+ // 插入
52
+ if (position === 'before') {
53
+ if (targetParent) {
54
+ targetParent[this.childrenKey].splice(targetIndex, 0, sourceFound);
55
+ }
56
+ else {
57
+ this.root.splice(targetIndex, 0, sourceFound);
58
+ }
59
+ }
60
+ else if (position === 'after') {
61
+ if (targetParent) {
62
+ targetParent[this.childrenKey].splice(targetIndex + 1, 0, sourceFound);
63
+ }
64
+ else {
65
+ this.root.splice(targetIndex + 1, 0, sourceFound);
66
+ }
67
+ }
68
+ }
69
+ /** 在树中找到节点及其父节点 */
70
+ findNodeWithParent(tree, nodeId, parent = null) {
71
+ for (let i = 0; i < tree.length; i++) {
72
+ const node = tree[i];
73
+ if (node[this.key] === nodeId) {
74
+ return { parent, index: i, node };
75
+ }
76
+ if (node[this.childrenKey]) {
77
+ const found = this.findNodeWithParent(node[this.childrenKey], nodeId, node);
78
+ if (found)
79
+ return found;
80
+ }
81
+ }
82
+ return null;
83
+ }
84
+ }
85
+ //# sourceMappingURL=TreeUtil.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TreeUtil.js","sourceRoot":"","sources":["../../src/TreeUtil.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,QAAQ;IAKnB,YAAY,WAAgB,EAAE,MAAmB;QAJzC;;;;;WAAU;QACV;;;;;WAAY;QACZ;;;;;WAAoB;QAG1B,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QACxB,IAAI,CAAC,GAAG,GAAG,MAAM,EAAE,GAAG,IAAI,KAAK,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,MAAM,EAAE,WAAW,IAAI,UAAU,CAAC;IACvD,CAAC;IAED,YAAY;IACZ,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,WAAW;IACX,QAAQ,CAAC,UAAa,EAAE,UAAa,EAAE,QAAkB;QACvD,eAAe;QACf,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5E,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC1D,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,UAAU,CAAC;QAEnF,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,CAAQ,CAAC;YAC1D,WAAW,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACnC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QACnC,CAAC;QAED,YAAY;QACZ,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5E,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC1D,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,UAAU,CAAC;QAEhE,KAAK;QACL,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC1B,IAAI,YAAY,EAAE,CAAC;gBAChB,YAAY,CAAC,IAAI,CAAC,WAAW,CAAS,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC;YAC9E,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YAChC,IAAI,YAAY,EAAE,CAAC;gBAChB,YAAY,CAAC,IAAI,CAAC,WAAW,CAAS,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC;YAClF,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;IACH,CAAC;IAED,mBAAmB;IACX,kBAAkB,CAAC,IAAS,EAAE,MAAW,EAAE,SAAmB,IAAI;QAExE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACrB,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,MAAM,EAAE,CAAC;gBAC9B,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;YACpC,CAAC;YACD,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBACnF,IAAI,KAAK;oBAAE,OAAO,KAAK,CAAC;YAC1B,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -25,16 +25,21 @@ export type ChangeItem = {
25
25
  export type OverflowTooltipPlacement = 'top' | 'top-start' | 'top-end' | 'right' | 'right-start' | 'right-end' | 'left' | 'left-start' | 'left-end' | 'bottom' | 'bottom-start' | 'bottom-end';
26
26
  export type VerticalAlign = 'top' | 'middle' | 'bottom';
27
27
  export type Align = 'left' | 'center' | 'right';
28
- export type Fixed = 'left' | 'right';
28
+ export type Fixed = 'left' | 'right' | '';
29
29
  export type Type = 'index' | 'selection' | 'index-selection' | 'tree' | 'selection-tree' | 'tree-selection' | 'number';
30
30
  export type TypeCheckbox = 'checkbox-uncheck' | 'checkbox-check' | 'checkbox-check-disabled' | 'checkbox-disabled' | 'checkbox-indeterminate';
31
31
  export type CellType = 'header' | 'body' | 'footer';
32
32
  export type FooterPosition = 'top' | 'bottom';
33
33
  export type RowType = CellType;
34
+ export type MenuItemEvent = 'copy' | 'paste' | 'cut' | 'clearSelected' | 'fixedLeft' | 'fixedRight' | 'fixedNone' | 'hide' | 'resetHeader' | 'visible';
34
35
  export type MenuItem = {
35
36
  label: string;
36
- value: string | 'copy' | 'paste' | 'cut' | 'clearSelected';
37
+ value: string | MenuItemEvent;
37
38
  event?: Function;
39
+ icon?: string;
40
+ divider?: boolean;
41
+ disabled?: boolean;
42
+ children?: MenuItem[];
38
43
  };
39
44
  export type OverlayerView = {
40
45
  key: 'left' | 'center' | 'right';
@@ -120,7 +125,8 @@ export interface Column {
120
125
  sortIconName?: string;
121
126
  sortAscIconName?: string;
122
127
  sortDescIconName?: string;
123
- hide?: boolean | Function;
128
+ parentKey?: string;
129
+ hide?: boolean;
124
130
  render?: Function | string;
125
131
  renderFooter?: Function | string;
126
132
  renderHeader?: Function | string;
@@ -137,6 +143,7 @@ export interface Column {
137
143
  column?: Column;
138
144
  rules?: Rules | Rule;
139
145
  options?: any;
146
+ columnDragDisabled?: boolean;
140
147
  selectorCellValueType?: SelectorCellValueType;
141
148
  maxLineClamp?: LineClampType;
142
149
  maxLineClampHeader?: LineClampType;
@@ -150,6 +157,17 @@ export type OverlayerTooltip = {
150
157
  text: string;
151
158
  show: boolean;
152
159
  };
160
+ export type CustomHeader = {
161
+ fixedData?: Record<string, Fixed | ''>;
162
+ sortData?: Record<string, number>;
163
+ hideData?: Record<string, boolean>;
164
+ resizableData?: Record<string, number>;
165
+ };
166
+ export interface ColumnDragChangeEvent {
167
+ source: CellHeader;
168
+ target: CellHeader;
169
+ columns: Column[];
170
+ }
153
171
  export type OverlayerContextmenu = {
154
172
  style: any;
155
173
  list: any[];
@@ -8,8 +8,9 @@ declare function throttle<T extends (...args: any) => any>(func: T, delay: numbe
8
8
  */
9
9
  declare function getMaxRow(data?: Column[]): number;
10
10
  declare function sortFixed(arr?: Column[]): Column[];
11
- declare function calCrossSpan(arr?: Column[], maxRow?: number, level?: number): Column[];
11
+ declare function calCrossSpan(arr?: Column[], maxRow?: number, level?: number, parentKey?: string): Column[];
12
12
  declare function toLeaf(arr?: Column[]): Column[];
13
+ declare function filterHiddenColumns(columns: Column[]): Column[];
13
14
  type DebouncedFunction<F extends (...args: any[]) => any> = (...args: Parameters<F>) => void;
14
15
  declare function debounce<F extends (...args: any[]) => any>(func: F, delay: number): DebouncedFunction<F>;
15
16
  /**
@@ -60,4 +61,5 @@ declare function parseDate(dateStr: any): Date;
60
61
  * @returns 比较结果:-1 表示 a < b,0 表示 a = b,1 表示 a > b
61
62
  */
62
63
  declare function compareDates(a: any, b: any): number;
63
- export { debounce, throttle, generateShortUUID, toLeaf, sortFixed, calCrossSpan, getMaxRow, decodeSpreadsheetStr, encodeToSpreadsheetStr, mergeRowCell, mergeColCell, getSpanArrByRow, getSpanObjByColumn, getCssVar, parseDate, compareDates };
64
+ declare function deepClone<T>(obj: T, hash?: WeakMap<object, any>): T;
65
+ export { deepClone, debounce, throttle, generateShortUUID, toLeaf, sortFixed, calCrossSpan, getMaxRow, decodeSpreadsheetStr, encodeToSpreadsheetStr, mergeRowCell, mergeColCell, getSpanArrByRow, getSpanObjByColumn, getCssVar, parseDate, compareDates, filterHiddenColumns, };
package/dist/lib/util.js CHANGED
@@ -58,15 +58,17 @@ function sortFixed(arr = []) {
58
58
  ...right.sort((a, b) => (a.sort ?? 0) - (b.sort ?? 0)),
59
59
  ];
60
60
  }
61
- function calCrossSpan(arr = [], maxRow = 1, level = 0) {
62
- return arr.map((config) => {
61
+ function calCrossSpan(arr = [], maxRow = 1, level = 0, parentKey = '') {
62
+ return arr
63
+ .sort((a, b) => (a.sort ?? 0) - (b.sort ?? 0))
64
+ .map((config) => {
63
65
  if (config.children) {
64
66
  let colspan = 0;
65
67
  let fixed = config.fixed;
66
68
  config.children.forEach((item) => {
67
69
  item.fixed = fixed;
68
70
  });
69
- const children = calCrossSpan(config.children, maxRow - 1, level + 1);
71
+ const children = calCrossSpan(config.children, maxRow - 1, level + 1, parentKey);
70
72
  if (children) {
71
73
  children.forEach((item) => {
72
74
  colspan += item.colspan ?? 0;
@@ -78,7 +80,8 @@ function calCrossSpan(arr = [], maxRow = 1, level = 0) {
78
80
  level,
79
81
  rowspan: 1,
80
82
  colspan,
81
- children,
83
+ parentKey,
84
+ children: children.sort((a, b) => (a.sort ?? 0) - (b.sort ?? 0)),
82
85
  };
83
86
  }
84
87
  return {
@@ -86,6 +89,7 @@ function calCrossSpan(arr = [], maxRow = 1, level = 0) {
86
89
  level,
87
90
  rowspan: maxRow,
88
91
  colspan: 1,
92
+ parentKey,
89
93
  };
90
94
  });
91
95
  }
@@ -101,6 +105,20 @@ function toLeaf(arr = []) {
101
105
  });
102
106
  return tmp;
103
107
  }
108
+ function filterHiddenColumns(columns) {
109
+ return columns
110
+ .filter((col) => !col.hide) // 先过滤掉自己 hide 的列
111
+ .map((col) => {
112
+ // 如果有子列
113
+ if (Array.isArray(col.children) && col.children.length > 0) {
114
+ return {
115
+ ...col,
116
+ children: filterHiddenColumns(col.children), // 递归处理
117
+ };
118
+ }
119
+ return { ...col };
120
+ });
121
+ }
104
122
  function debounce(func, delay) {
105
123
  let timeoutId = null;
106
124
  return function (...args) {
@@ -375,17 +393,23 @@ function parseDate(dateStr) {
375
393
  const match = str.match(pattern);
376
394
  if (match) {
377
395
  const groups = match.slice(1).map(Number);
378
- if (pattern.source.includes('YYYY-MM-DD') || pattern.source.includes('YYYY/MM/DD') || pattern.source.includes('YYYY.MM.DD')) {
396
+ if (pattern.source.includes('YYYY-MM-DD') ||
397
+ pattern.source.includes('YYYY/MM/DD') ||
398
+ pattern.source.includes('YYYY.MM.DD')) {
379
399
  // YYYY-MM-DD 格式
380
400
  const [year, month, day, hour = 0, minute = 0, second = 0] = groups;
381
401
  return new Date(year, month - 1, day, hour, minute, second);
382
402
  }
383
- else if (pattern.source.includes('DD-MM-YYYY') || pattern.source.includes('DD/MM/YYYY') || pattern.source.includes('DD.MM.YYYY')) {
403
+ else if (pattern.source.includes('DD-MM-YYYY') ||
404
+ pattern.source.includes('DD/MM/YYYY') ||
405
+ pattern.source.includes('DD.MM.YYYY')) {
384
406
  // DD-MM-YYYY 格式
385
407
  const [day, month, year, hour = 0, minute = 0, second = 0] = groups;
386
408
  return new Date(year, month - 1, day, hour, minute, second);
387
409
  }
388
- else if (pattern.source.includes('MM-DD-YYYY') || pattern.source.includes('MM/DD/YYYY') || pattern.source.includes('MM.DD.YYYY')) {
410
+ else if (pattern.source.includes('MM-DD-YYYY') ||
411
+ pattern.source.includes('MM/DD/YYYY') ||
412
+ pattern.source.includes('MM.DD.YYYY')) {
389
413
  // MM-DD-YYYY 格式
390
414
  const [month, day, year, hour = 0, minute = 0, second = 0] = groups;
391
415
  return new Date(year, month - 1, day, hour, minute, second);
@@ -420,5 +444,17 @@ function compareDates(a, b) {
420
444
  }
421
445
  return aDate.getTime() - bDate.getTime();
422
446
  }
423
- export { debounce, throttle, generateShortUUID, toLeaf, sortFixed, calCrossSpan, getMaxRow, decodeSpreadsheetStr, encodeToSpreadsheetStr, mergeRowCell, mergeColCell, getSpanArrByRow, getSpanObjByColumn, getCssVar, parseDate, compareDates };
447
+ function deepClone(obj, hash = new WeakMap()) {
448
+ if (obj === null || typeof obj !== 'object')
449
+ return obj;
450
+ if (hash.has(obj))
451
+ return hash.get(obj);
452
+ const result = Array.isArray(obj) ? [] : {};
453
+ hash.set(obj, result);
454
+ Reflect.ownKeys(obj).forEach((key) => {
455
+ result[key] = deepClone(obj[key], hash);
456
+ });
457
+ return result;
458
+ }
459
+ export { deepClone, debounce, throttle, generateShortUUID, toLeaf, sortFixed, calCrossSpan, getMaxRow, decodeSpreadsheetStr, encodeToSpreadsheetStr, mergeRowCell, mergeColCell, getSpanArrByRow, getSpanObjByColumn, getCssVar, parseDate, compareDates, filterHiddenColumns, };
424
460
  //# sourceMappingURL=util.js.map