@ai-table/grid 0.0.67 → 0.0.69

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 (48) hide show
  1. package/core/context.d.ts +1 -0
  2. package/core/context.d.ts.map +1 -1
  3. package/esm2022/components/drag/drag.component.mjs +3 -3
  4. package/esm2022/core/context.mjs +3 -2
  5. package/esm2022/grid.component.mjs +3 -2
  6. package/esm2022/renderer/components/frozen-heads.component.mjs +123 -38
  7. package/esm2022/renderer/components/hover-cell.component.mjs +4 -3
  8. package/esm2022/renderer/components/hover-row-heads.component.mjs +3 -3
  9. package/esm2022/renderer/creations/create-cells.mjs +10 -5
  10. package/esm2022/renderer/drawers/add-row-layout-drawer.mjs +7 -7
  11. package/esm2022/renderer/drawers/layout-drawer.mjs +7 -3
  12. package/esm2022/renderer/drawers/record-row-layout-drawer.mjs +46 -30
  13. package/esm2022/renderer/renderer.component.mjs +7 -5
  14. package/esm2022/types/grid.mjs +1 -1
  15. package/esm2022/types/layout.mjs +1 -1
  16. package/esm2022/utils/cell.mjs +4 -1
  17. package/esm2022/utils/clipboard/copy.mjs +4 -4
  18. package/esm2022/utils/field/model/date.mjs +5 -1
  19. package/esm2022/utils/field/model/rich-text.mjs +6 -3
  20. package/esm2022/utils/match-keywords.mjs +2 -3
  21. package/esm2022/utils/position.mjs +6 -6
  22. package/esm2022/utils/visible-range.mjs +3 -3
  23. package/fesm2022/ai-table-grid.mjs +217 -91
  24. package/fesm2022/ai-table-grid.mjs.map +1 -1
  25. package/grid.component.d.ts.map +1 -1
  26. package/package.json +1 -1
  27. package/renderer/components/frozen-heads.component.d.ts +39 -3
  28. package/renderer/components/frozen-heads.component.d.ts.map +1 -1
  29. package/renderer/components/hover-cell.component.d.ts.map +1 -1
  30. package/renderer/components/hover-row-heads.component.d.ts.map +1 -1
  31. package/renderer/creations/create-cells.d.ts.map +1 -1
  32. package/renderer/drawers/add-row-layout-drawer.d.ts.map +1 -1
  33. package/renderer/drawers/layout-drawer.d.ts +3 -1
  34. package/renderer/drawers/layout-drawer.d.ts.map +1 -1
  35. package/renderer/drawers/record-row-layout-drawer.d.ts.map +1 -1
  36. package/renderer/renderer.component.d.ts +1 -0
  37. package/renderer/renderer.component.d.ts.map +1 -1
  38. package/types/grid.d.ts +2 -0
  39. package/types/grid.d.ts.map +1 -1
  40. package/types/layout.d.ts +2 -0
  41. package/types/layout.d.ts.map +1 -1
  42. package/utils/cell.d.ts.map +1 -1
  43. package/utils/field/model/date.d.ts +2 -1
  44. package/utils/field/model/date.d.ts.map +1 -1
  45. package/utils/field/model/rich-text.d.ts +2 -1
  46. package/utils/field/model/rich-text.d.ts.map +1 -1
  47. package/utils/position.d.ts +1 -1
  48. package/utils/position.d.ts.map +1 -1
@@ -1,4 +1,4 @@
1
- import { AddOutlinedPath, AI_TABLE_CELL_PADDING, AI_TABLE_FIELD_ADD_BUTTON_WIDTH, AI_TABLE_ICON_COMMON_SIZE, AI_TABLE_OFFSET, AI_TABLE_ROW_DRAG_ICON_WIDTH, AI_TABLE_ROW_HEAD_SIZE, AI_TABLE_ROW_HEAD_WIDTH } from '../../constants';
1
+ import { AddOutlinedPath, AI_TABLE_CELL_PADDING, AI_TABLE_FIELD_ADD_BUTTON_WIDTH, AI_TABLE_ICON_COMMON_SIZE, AI_TABLE_OFFSET, AI_TABLE_ROW_DRAG_ICON_WIDTH, AI_TABLE_ROW_HEAD_SIZE } from '../../constants';
2
2
  import { Layout } from './layout-drawer';
3
3
  export class AddRowLayout extends Layout {
4
4
  renderAddFieldBlank({ isHoverRow, isCheckedRow }) {
@@ -41,20 +41,20 @@ export class AddRowLayout extends Layout {
41
41
  const frozenOffset = AI_TABLE_OFFSET;
42
42
  const fill = isHoverRow ? this.colors.gray80 : this.colors.transparent;
43
43
  this.rect({
44
- x: frozenOffset + AI_TABLE_ROW_DRAG_ICON_WIDTH,
44
+ x: this.hiddenIndexColumn ? frozenOffset : frozenOffset + AI_TABLE_ROW_DRAG_ICON_WIDTH,
45
45
  y: y + AI_TABLE_OFFSET,
46
- width: columnWidth + AI_TABLE_ROW_HEAD_WIDTH - frozenOffset + 1,
46
+ width: columnWidth + this.rowHeadWidth - frozenOffset + 1,
47
47
  height: rowHeight,
48
48
  fill
49
49
  });
50
50
  this.line({
51
- x: frozenOffset + AI_TABLE_ROW_DRAG_ICON_WIDTH,
51
+ x: this.hiddenIndexColumn ? frozenOffset : frozenOffset + AI_TABLE_ROW_DRAG_ICON_WIDTH,
52
52
  y,
53
- points: [0, rowHeight, columnWidth + AI_TABLE_ROW_HEAD_WIDTH - frozenOffset + 1, rowHeight],
53
+ points: [0, rowHeight, columnWidth + this.rowHeadWidth - frozenOffset + 1, rowHeight],
54
54
  stroke: this.colors.gray200
55
55
  });
56
56
  this.path({
57
- x: AI_TABLE_CELL_PADDING + AI_TABLE_ROW_DRAG_ICON_WIDTH,
57
+ x: this.hiddenIndexColumn ? AI_TABLE_CELL_PADDING : AI_TABLE_CELL_PADDING + AI_TABLE_ROW_DRAG_ICON_WIDTH,
58
58
  y: y + (rowHeight - AI_TABLE_ICON_COMMON_SIZE) / 2 - AI_TABLE_OFFSET,
59
59
  data: AddOutlinedPath,
60
60
  size: AI_TABLE_ROW_HEAD_SIZE,
@@ -95,4 +95,4 @@ export class AddRowLayout extends Layout {
95
95
  }
96
96
  }
97
97
  export const addRowLayout = new AddRowLayout();
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXJvdy1sYXlvdXQtZHJhd2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvcmVuZGVyZXIvZHJhd2Vycy9hZGQtcm93LWxheW91dC1kcmF3ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILGVBQWUsRUFDZixxQkFBcUIsRUFDckIsK0JBQStCLEVBQy9CLHlCQUF5QixFQUN6QixlQUFlLEVBQ2YsNEJBQTRCLEVBQzVCLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDMUIsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFekMsTUFBTSxPQUFPLFlBQWEsU0FBUSxNQUFNO0lBQzNCLG1CQUFtQixDQUFDLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBb0Q7UUFDdkcsS0FBSyxDQUFDLG1CQUFtQixDQUFDLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7UUFDeEQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNqQyxNQUFNLFlBQVksR0FBRywrQkFBK0IsQ0FBQztRQUNyRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN4RyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ04sQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVc7WUFDNUIsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ1QsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDO1lBQ3hDLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxD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QUMsVUFBVSxDQUFDO2dCQUNaLEtBQUs7Z0JBQ0wsVUFBVTthQUNiLENBQUMsQ0FBQztRQUNQLENBQUM7UUFDRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsRUFBRSxVQUFVLEVBQW1DO1FBQ3BFLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsTUFBTTtZQUFFLE9BQU87UUFDeEMsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUNaLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVztZQUN2QixVQUFVO1NBQ2IsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELE1BQU0sQ0FBQyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQW9EO1FBQ2pGLElBQUksQ0FBQyxlQUFlLENBQUM7WUFDakIsVUFBVTtTQUNiLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztZQUNsQixVQUFVO1NBQ2IsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGNBQWMsQ0FBQztZQUNoQixVQUFVO1lBQ1YsWUFBWTtTQUNmLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSjtBQUVELE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZGRPdXRsaW5lZFBhdGgsXG4gICAgQUlfVEFCTEVfQ0VMTF9QQURESU5HLFxuICAgIEFJX1RBQkxFX0ZJRUxEX0FERF9CVVRUT05fV0lEVEgsXG4gICAgQUlfVEFCTEVfSUNPTl9DT01NT05fU0laRSxcbiAgICBBSV9UQUJMRV9PRkZTRVQsXG4gICAgQUlfVEFCTEVfUk9XX0RSQUdfSUNPTl9XSURUSCxcbiAgICBBSV9UQUJMRV9ST1dfSEVBRF9TSVpFLFxuICAgIEFJX1RBQkxFX1JPV19IRUFEX1dJRFRIXG59IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBSVRhYmxlQ2VsbCB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IExheW91dCB9IGZyb20gJy4vbGF5b3V0LWRyYXdlcic7XG5cbmV4cG9ydCBjbGFzcyBBZGRSb3dMYXlvdXQgZXh0ZW5kcyBMYXlvdXQge1xuICAgIG92ZXJyaWRlIHJlbmRlckFkZEZpZWxkQmxhbmsoeyBpc0hvdmVyUm93LCBpc0NoZWNrZWRSb3cgfTogUGljazxBSVRhYmxlQ2VsbCwgJ2lzSG92ZXJSb3cnIHwgJ2lzQ2hlY2tlZFJvdyc+KSB7XG4gICAgICAgIHN1cGVyLnJlbmRlckFkZEZpZWxkQmxhbmsoeyBpc0hvdmVyUm93LCBpc0NoZWNrZWRSb3cgfSk7XG4gICAgICAgIGNvbnN0IHJvd0hlaWdodCA9IHRoaXMucm93SGVpZ2h0O1xuICAgICAgICBjb25zdCBkZWZhdWx0V2lkdGggPSBBSV9UQUJMRV9GSUVMRF9BRERfQlVUVE9OX1dJRFRIO1xuICAgICAgICBjb25zdCB3aWR0aCA9IHRoaXMuY29udGFpbmVyV2lkdGggLSB0aGlzLnggPCBkZWZhdWx0V2lkdGggPyBkZWZhdWx0V2lkdGggOiB0aGlzLmNvbnRhaW5lcldpZHRoIC0gdGhpcy54O1xuICAgICAgICB0aGlzLmxpbmUoe1xuICAgICAgICAgICAgeDogdGhpcy54ICsgdGhpcy5jb2x1bW5XaWR0aCxcbiAgICAgICAgICAgIHk6IHRoaXMueSxcbiAgICAgICAgICAgIHBvaW50czogWzAsIHJvd0hlaWdodCwgd2lkdGgsIHJvd0hlaWdodF0sXG4gICAgICAgICAgICBzdHJva2U6IHRoaXMuY29sb3JzLmdyYXkyMDBcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZW5kZXJDZWxsKHsgd2lkdGgsIGlzSG92ZXJSb3cgfTogUGljazxBSVRhYmxlQ2VsbCwgJ3dpZHRoJyB8ICdpc0hvdmVyUm93Jz4pIHtcbiAgICAgICAgY29uc3QgeCA9IHRoaXMueDtcbiAgICAgICAgY29uc3QgeSA9IHRoaXMueTtcbiAgICAgICAgY29uc3Qgcm93SGVpZ2h0ID0gdGhpcy5yb3dIZWlnaHQ7XG4gICAgICAgIGNvbnN0IGZpbGwgPSBpc0hvdmVyUm93ID8gdGhpcy5jb2xvcnMuZ3JheTgwIDogdGhpcy5jb2xvcnMudHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgdGhpcy5yZWN0KHtcbiAgICAgICAgICAgIHgsXG4gICAgICAgICAgICB5OiB5ICsgQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgd2lkdGg6IHdpZHRoIGFzIG51bWJlcixcbiAgICAgICAgICAgIGhlaWdodDogcm93SGVpZ2h0LFxuICAgICAgICAgICAgZmlsbFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5saW5lKHtcbiAgICAgICAgICAgIHgsXG4gICAgICAgICAgICB5OiB5ICsgcm93SGVpZ2h0LFxuICAgICAgICAgICAgcG9pbnRzOiBbMCwgMCwgd2lkdGggYXMgbnVtYmVyLCAwXSxcbiAgICAgICAgICAgIHN0cm9rZTogdGhpcy5jb2xvcnMuZ3JheTIwMFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbmRlckZpcnN0Q2VsbCh7IGlzSG92ZXJSb3cgfTogUGljazxBSVRhYmxlQ2VsbCwgJ2lzSG92ZXJSb3cnPikge1xuICAgICAgICBpZiAoIXRoaXMuaXNGaXJzdCkgcmV0dXJuO1xuICAgICAgICBjb25zdCB5ID0gdGhpcy55O1xuICAgICAgICBjb25zdCByb3dIZWlnaHQgPSB0aGlzLnJvd0hlaWdodDtcbiAgICAgICAgY29uc3QgY29sdW1uV2lkdGggPSB0aGlzLmNvbHVtbldpZHRoO1xuICAgICAgICBjb25zdCBmcm96ZW5PZmZzZXQgPSBBSV9UQUJMRV9PRkZTRVQ7XG4gICAgICAgIGNvbnN0IGZpbGwgPSBpc0hvdmVyUm93ID8gdGhpcy5jb2xvcnMuZ3JheTgwIDogdGhpcy5jb2xvcnMudHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgdGhpcy5yZWN0KHtcbiAgICAgICAgICAgIHg6IGZyb3plbk9mZnNldCArIEFJX1RBQkxFX1JPV19EUkFHX0lDT05fV0lEVEgsXG4gICAgICAgICAgICB5OiB5ICsgQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgd2lkdGg6IGNvbHVtbldpZHRoICsgQUlfVEFCTEVfUk9XX0hFQURfV0lEVEggLSBmcm96ZW5PZmZzZXQgKyAxLFxuICAgICAgICAgICAgaGVpZ2h0OiByb3dIZWlnaHQsXG4gICAgICAgICAgICBmaWxsXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmxpbmUoe1xuICAgICAgICAgICAgeDogZnJvemVuT2Zmc2V0ICsgQUlfVEFCTEVfUk9XX0RSQUdfSUNPTl9XSURUSCxcbiAgICAgICAgICAgIHksXG4gICAgICAgICAgICBwb2ludHM6IFswLCByb3dIZWlnaHQsIGNvbHVtbldpZHRoICsgQUlfVEFCTEVfUk9XX0hFQURfV0lEVEggLSBmcm96ZW5PZmZzZXQgKyAxLCByb3dIZWlnaHRdLFxuICAgICAgICAgICAgc3Ryb2tlOiB0aGlzLmNvbG9ycy5ncmF5MjAwXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMucGF0aCh7XG4gICAgICAgICAgICB4OiBBSV9UQUJMRV9DRUxMX1BBRERJTkcgKyBBSV9UQUJMRV9ST1dfRFJBR19JQ09OX1dJRFRILFxuICAgICAgICAgICAgeTogeSArIChyb3dIZWlnaHQgLSBBSV9UQUJMRV9JQ09OX0NPTU1PTl9TSVpFKSAvIDIgLSBBSV9UQUJMRV9PRkZTRVQsXG4gICAgICAgICAgICBkYXRhOiBBZGRPdXRsaW5lZFBhdGgsXG4gICAgICAgICAgICBzaXplOiBBSV9UQUJMRV9ST1dfSEVBRF9TSVpFLFxuICAgICAgICAgICAgZmlsbDogdGhpcy5jb2xvcnMuZ3JheTYwMFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbmRlckxhc3RDZWxsKHsgaXNIb3ZlclJvdywgaXNDaGVja2VkUm93IH06IFBpY2s8QUlUYWJsZUNlbGwsICdpc0hvdmVyUm93JyB8ICdpc0NoZWNrZWRSb3cnPikge1xuICAgICAgICBpZiAoIXRoaXMuaXNMYXN0KSByZXR1cm47XG4gICAgICAgIGNvbnN0IHdpZHRoID0gdGhpcy5jb2x1bW5XaWR0aDtcbiAgICAgICAgaWYgKCF0aGlzLmlzRmlyc3QpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyQ2VsbCh7XG4gICAgICAgICAgICAgICAgd2lkdGgsXG4gICAgICAgICAgICAgICAgaXNIb3ZlclJvd1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5yZW5kZXJBZGRGaWVsZEJsYW5rKHsgaXNIb3ZlclJvdywgaXNDaGVja2VkUm93IH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVuZGVyQ29tbW9uQ2VsbCh7IGlzSG92ZXJSb3cgfTogUGljazxBSVRhYmxlQ2VsbCwgJ2lzSG92ZXJSb3cnPikge1xuICAgICAgICBpZiAodGhpcy5pc0ZpcnN0IHx8IHRoaXMuaXNMYXN0KSByZXR1cm47XG4gICAgICAgIHRoaXMucmVuZGVyQ2VsbCh7XG4gICAgICAgICAgICB3aWR0aDogdGhpcy5jb2x1bW5XaWR0aCxcbiAgICAgICAgICAgIGlzSG92ZXJSb3dcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmVuZGVyKHsgaXNIb3ZlclJvdywgaXNDaGVja2VkUm93IH06IFBpY2s8QUlUYWJsZUNlbGwsICdpc0hvdmVyUm93JyB8ICdpc0NoZWNrZWRSb3cnPikge1xuICAgICAgICB0aGlzLnJlbmRlckZpcnN0Q2VsbCh7XG4gICAgICAgICAgICBpc0hvdmVyUm93XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnJlbmRlckNvbW1vbkNlbGwoe1xuICAgICAgICAgICAgaXNIb3ZlclJvd1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5yZW5kZXJMYXN0Q2VsbCh7XG4gICAgICAgICAgICBpc0hvdmVyUm93LFxuICAgICAgICAgICAgaXNDaGVja2VkUm93XG4gICAgICAgIH0pO1xuICAgIH1cbn1cblxuZXhwb3J0IGNvbnN0IGFkZFJvd0xheW91dCA9IG5ldyBBZGRSb3dMYXlvdXQoKTtcbiJdfQ==
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLXJvdy1sYXlvdXQtZHJhd2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvcmVuZGVyZXIvZHJhd2Vycy9hZGQtcm93LWxheW91dC1kcmF3ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILGVBQWUsRUFDZixxQkFBcUIsRUFDckIsK0JBQStCLEVBQy9CLHlCQUF5QixFQUN6QixlQUFlLEVBQ2YsNEJBQTRCLEVBQzVCLHNCQUFzQixFQUN6QixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV6QyxNQUFNLE9BQU8sWUFBYSxTQUFRLE1BQU07SUFDM0IsbUJBQW1CLENBQUMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFvRDtRQUN2RyxLQUFLLENBQUMsbUJBQW1CLENBQUMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUN4RCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBQ2pDLE1BQU0sWUFBWSxHQUFHLCtCQUErQixDQUFDO1FBQ3JELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3hHLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDTixDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVztZQUM1QixDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDVCxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUM7WUFDeEMsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTztTQUM5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QUFFLFVBQVUsRUFBRSxZQUFZLEVBQW9EO1FBQ2pHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTTtZQUFFLE9BQU87UUFDekIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUMvQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxVQUFVLENBQUM7Z0JBQ1osS0FBSztnQkFDTCxVQUFVO2FBQ2IsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztRQUNELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxFQUFFLFVBQVUsRUFBbUM7UUFDcEUsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxNQUFNO1lBQUUsT0FBTztRQUN4QyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQ1osS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQ3ZCLFVBQVU7U0FDYixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBb0Q7UUFDakYsSUFBSSxDQUFDLGVBQWUsQ0FBQztZQUNqQixVQUFVO1NBQ2IsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1lBQ2xCLFVBQVU7U0FDYixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsY0FBYyxDQUFDO1lBQ2hCLFVBQVU7WUFDVixZQUFZO1NBQ2YsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNKO0FBRUQsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFkZE91dGxpbmVkUGF0aCxcbiAgICBBSV9UQUJMRV9DRUxMX1BBRERJTkcsXG4gICAgQUlfVEFCTEVfRklFTERfQUREX0JVVFRPTl9XSURUSCxcbiAgICBBSV9UQUJMRV9JQ09OX0NPTU1PTl9TSVpFLFxuICAgIEFJX1RBQkxFX09GRlNFVCxcbiAgICBBSV9UQUJMRV9ST1dfRFJBR19JQ09OX1dJRFRILFxuICAgIEFJX1RBQkxFX1JPV19IRUFEX1NJWkVcbn0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IEFJVGFibGVDZWxsIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgTGF5b3V0IH0gZnJvbSAnLi9sYXlvdXQtZHJhd2VyJztcblxuZXhwb3J0IGNsYXNzIEFkZFJvd0xheW91dCBleHRlbmRzIExheW91dCB7XG4gICAgb3ZlcnJpZGUgcmVuZGVyQWRkRmllbGRCbGFuayh7IGlzSG92ZXJSb3csIGlzQ2hlY2tlZFJvdyB9OiBQaWNrPEFJVGFibGVDZWxsLCAnaXNIb3ZlclJvdycgfCAnaXNDaGVja2VkUm93Jz4pIHtcbiAgICAgICAgc3VwZXIucmVuZGVyQWRkRmllbGRCbGFuayh7IGlzSG92ZXJSb3csIGlzQ2hlY2tlZFJvdyB9KTtcbiAgICAgICAgY29uc3Qgcm93SGVpZ2h0ID0gdGhpcy5yb3dIZWlnaHQ7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRXaWR0aCA9IEFJX1RBQkxFX0ZJRUxEX0FERF9CVVRUT05fV0lEVEg7XG4gICAgICAgIGNvbnN0IHdpZHRoID0gdGhpcy5jb250YWluZXJXaWR0aCAtIHRoaXMueCA8IGRlZmF1bHRXaWR0aCA/IGRlZmF1bHRXaWR0aCA6IHRoaXMuY29udGFpbmVyV2lkdGggLSB0aGlzLng7XG4gICAgICAgIHRoaXMubGluZSh7XG4gICAgICAgICAgICB4OiB0aGlzLnggKyB0aGlzLmNvbHVtbldpZHRoLFxuICAgICAgICAgICAgeTogdGhpcy55LFxuICAgICAgICAgICAgcG9pbnRzOiBbMCwgcm93SGVpZ2h0LCB3aWR0aCwgcm93SGVpZ2h0XSxcbiAgICAgICAgICAgIHN0cm9rZTogdGhpcy5jb2xvcnMuZ3JheTIwMFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlbmRlckNlbGwoeyB3aWR0aCwgaXNIb3ZlclJvdyB9OiBQaWNrPEFJVGFibGVDZWxsLCAnd2lkdGgnIHwgJ2lzSG92ZXJSb3cnPikge1xuICAgICAgICBjb25zdCB4ID0gdGhpcy54O1xuICAgICAgICBjb25zdCB5ID0gdGhpcy55O1xuICAgICAgICBjb25zdCByb3dIZWlnaHQgPSB0aGlzLnJvd0hlaWdodDtcbiAgICAgICAgY29uc3QgZmlsbCA9IGlzSG92ZXJSb3cgPyB0aGlzLmNvbG9ycy5ncmF5ODAgOiB0aGlzLmNvbG9ycy50cmFuc3BhcmVudDtcblxuICAgICAgICB0aGlzLnJlY3Qoe1xuICAgICAgICAgICAgeCxcbiAgICAgICAgICAgIHk6IHkgKyBBSV9UQUJMRV9PRkZTRVQsXG4gICAgICAgICAgICB3aWR0aDogd2lkdGggYXMgbnVtYmVyLFxuICAgICAgICAgICAgaGVpZ2h0OiByb3dIZWlnaHQsXG4gICAgICAgICAgICBmaWxsXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmxpbmUoe1xuICAgICAgICAgICAgeCxcbiAgICAgICAgICAgIHk6IHkgKyByb3dIZWlnaHQsXG4gICAgICAgICAgICBwb2ludHM6IFswLCAwLCB3aWR0aCBhcyBudW1iZXIsIDBdLFxuICAgICAgICAgICAgc3Ryb2tlOiB0aGlzLmNvbG9ycy5ncmF5MjAwXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVuZGVyRmlyc3RDZWxsKHsgaXNIb3ZlclJvdyB9OiBQaWNrPEFJVGFibGVDZWxsLCAnaXNIb3ZlclJvdyc+KSB7XG4gICAgICAgIGlmICghdGhpcy5pc0ZpcnN0KSByZXR1cm47XG4gICAgICAgIGNvbnN0IHkgPSB0aGlzLnk7XG4gICAgICAgIGNvbnN0IHJvd0hlaWdodCA9IHRoaXMucm93SGVpZ2h0O1xuICAgICAgICBjb25zdCBjb2x1bW5XaWR0aCA9IHRoaXMuY29sdW1uV2lkdGg7XG4gICAgICAgIGNvbnN0IGZyb3plbk9mZnNldCA9IEFJX1RBQkxFX09GRlNFVDtcbiAgICAgICAgY29uc3QgZmlsbCA9IGlzSG92ZXJSb3cgPyB0aGlzLmNvbG9ycy5ncmF5ODAgOiB0aGlzLmNvbG9ycy50cmFuc3BhcmVudDtcblxuICAgICAgICB0aGlzLnJlY3Qoe1xuICAgICAgICAgICAgeDogdGhpcy5oaWRkZW5JbmRleENvbHVtbiA/IGZyb3plbk9mZnNldCA6IGZyb3plbk9mZnNldCArIEFJX1RBQkxFX1JPV19EUkFHX0lDT05fV0lEVEgsXG4gICAgICAgICAgICB5OiB5ICsgQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgd2lkdGg6IGNvbHVtbldpZHRoICsgdGhpcy5yb3dIZWFkV2lkdGggLSBmcm96ZW5PZmZzZXQgKyAxLFxuICAgICAgICAgICAgaGVpZ2h0OiByb3dIZWlnaHQsXG4gICAgICAgICAgICBmaWxsXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmxpbmUoe1xuICAgICAgICAgICAgeDogdGhpcy5oaWRkZW5JbmRleENvbHVtbiA/IGZyb3plbk9mZnNldCA6IGZyb3plbk9mZnNldCArIEFJX1RBQkxFX1JPV19EUkFHX0lDT05fV0lEVEgsXG4gICAgICAgICAgICB5LFxuICAgICAgICAgICAgcG9pbnRzOiBbMCwgcm93SGVpZ2h0LCBjb2x1bW5XaWR0aCArIHRoaXMucm93SGVhZFdpZHRoIC0gZnJvemVuT2Zmc2V0ICsgMSwgcm93SGVpZ2h0XSxcbiAgICAgICAgICAgIHN0cm9rZTogdGhpcy5jb2xvcnMuZ3JheTIwMFxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnBhdGgoe1xuICAgICAgICAgICAgeDogdGhpcy5oaWRkZW5JbmRleENvbHVtbiA/IEFJX1RBQkxFX0NFTExfUEFERElORyA6IEFJX1RBQkxFX0NFTExfUEFERElORyArIEFJX1RBQkxFX1JPV19EUkFHX0lDT05fV0lEVEgsXG4gICAgICAgICAgICB5OiB5ICsgKHJvd0hlaWdodCAtIEFJX1RBQkxFX0lDT05fQ09NTU9OX1NJWkUpIC8gMiAtIEFJX1RBQkxFX09GRlNFVCxcbiAgICAgICAgICAgIGRhdGE6IEFkZE91dGxpbmVkUGF0aCxcbiAgICAgICAgICAgIHNpemU6IEFJX1RBQkxFX1JPV19IRUFEX1NJWkUsXG4gICAgICAgICAgICBmaWxsOiB0aGlzLmNvbG9ycy5ncmF5NjAwXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVuZGVyTGFzdENlbGwoeyBpc0hvdmVyUm93LCBpc0NoZWNrZWRSb3cgfTogUGljazxBSVRhYmxlQ2VsbCwgJ2lzSG92ZXJSb3cnIHwgJ2lzQ2hlY2tlZFJvdyc+KSB7XG4gICAgICAgIGlmICghdGhpcy5pc0xhc3QpIHJldHVybjtcbiAgICAgICAgY29uc3Qgd2lkdGggPSB0aGlzLmNvbHVtbldpZHRoO1xuICAgICAgICBpZiAoIXRoaXMuaXNGaXJzdCkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJDZWxsKHtcbiAgICAgICAgICAgICAgICB3aWR0aCxcbiAgICAgICAgICAgICAgICBpc0hvdmVyUm93XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnJlbmRlckFkZEZpZWxkQmxhbmsoeyBpc0hvdmVyUm93LCBpc0NoZWNrZWRSb3cgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZW5kZXJDb21tb25DZWxsKHsgaXNIb3ZlclJvdyB9OiBQaWNrPEFJVGFibGVDZWxsLCAnaXNIb3ZlclJvdyc+KSB7XG4gICAgICAgIGlmICh0aGlzLmlzRmlyc3QgfHwgdGhpcy5pc0xhc3QpIHJldHVybjtcbiAgICAgICAgdGhpcy5yZW5kZXJDZWxsKHtcbiAgICAgICAgICAgIHdpZHRoOiB0aGlzLmNvbHVtbldpZHRoLFxuICAgICAgICAgICAgaXNIb3ZlclJvd1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByZW5kZXIoeyBpc0hvdmVyUm93LCBpc0NoZWNrZWRSb3cgfTogUGljazxBSVRhYmxlQ2VsbCwgJ2lzSG92ZXJSb3cnIHwgJ2lzQ2hlY2tlZFJvdyc+KSB7XG4gICAgICAgIHRoaXMucmVuZGVyRmlyc3RDZWxsKHtcbiAgICAgICAgICAgIGlzSG92ZXJSb3dcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucmVuZGVyQ29tbW9uQ2VsbCh7XG4gICAgICAgICAgICBpc0hvdmVyUm93XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnJlbmRlckxhc3RDZWxsKHtcbiAgICAgICAgICAgIGlzSG92ZXJSb3csXG4gICAgICAgICAgICBpc0NoZWNrZWRSb3dcbiAgICAgICAgfSk7XG4gICAgfVxufVxuXG5leHBvcnQgY29uc3QgYWRkUm93TGF5b3V0ID0gbmV3IEFkZFJvd0xheW91dCgpO1xuIl19
@@ -1,4 +1,4 @@
1
- import { AI_TABLE_FIELD_ADD_BUTTON_WIDTH, AI_TABLE_OFFSET } from '../../constants/table';
1
+ import { AI_TABLE_FIELD_ADD_BUTTON_WIDTH, AI_TABLE_OFFSET, AI_TABLE_ROW_HEAD_WIDTH } from '../../constants/table';
2
2
  import { Drawer } from './drawer';
3
3
  /**
4
4
  * 用于处理表格行或单元格的布局和绘制。
@@ -22,9 +22,11 @@ export class Layout extends Drawer {
22
22
  // 列数
23
23
  this.columnCount = 0;
24
24
  this.containerWidth = 0;
25
+ this.rowHeadWidth = AI_TABLE_ROW_HEAD_WIDTH;
26
+ this.hiddenIndexColumn = false;
25
27
  }
26
28
  // 用于初始化或重置布局的基本属性。这个方法通常在每次渲染新的一行或单元格时调用,确保布局信息是最新的
27
- init({ x, y, rowIndex, columnIndex, rowHeight, columnWidth, columnCount, containerWidth }) {
29
+ init({ x, y, rowIndex, columnIndex, rowHeight, columnWidth, columnCount, containerWidth, rowHeadWidth, hiddenIndexColumn }) {
28
30
  this.x = x;
29
31
  this.y = y;
30
32
  this.rowIndex = rowIndex;
@@ -33,6 +35,8 @@ export class Layout extends Drawer {
33
35
  this.columnWidth = columnWidth;
34
36
  this.columnCount = columnCount;
35
37
  this.containerWidth = containerWidth;
38
+ this.rowHeadWidth = rowHeadWidth;
39
+ this.hiddenIndexColumn = hiddenIndexColumn;
36
40
  }
37
41
  // 当前单元格是否是行的第一列
38
42
  get isFirst() {
@@ -57,4 +61,4 @@ export class Layout extends Drawer {
57
61
  });
58
62
  }
59
63
  }
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWRyYXdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3JlbmRlcmVyL2RyYXdlcnMvbGF5b3V0LWRyYXdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFekYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVsQzs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLE1BQU8sU0FBUSxNQUFNO0lBQWxDOztRQUNJLGVBQWU7UUFDTCxNQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ04sTUFBQyxHQUFHLENBQUMsQ0FBQztRQUNoQixLQUFLO1FBQ0ssY0FBUyxHQUFHLENBQUMsQ0FBQztRQUN4QixLQUFLO1FBQ0ssZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFDMUIsTUFBTTtRQUNJLGFBQVEsR0FBRyxDQUFDLENBQUM7UUFDdkIsTUFBTTtRQUNJLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLEtBQUs7UUFDSyxnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUVoQixtQkFBYyxHQUFHLENBQUMsQ0FBQztJQXVDakMsQ0FBQztJQXJDRyxvREFBb0Q7SUFDcEQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBaUI7UUFDcEcsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDWCxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNYLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxnQkFBZ0I7SUFDaEIsSUFBYyxPQUFPO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELGlCQUFpQjtJQUNqQixJQUFjLE1BQU07UUFDaEIsT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFUyxtQkFBbUIsQ0FBQyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQW9EO1FBQ3hHLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDakMsTUFBTSxJQUFJLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztRQUN0SCxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsZUFBZSxDQUFDO1FBQ25FLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDTixDQUFDLEVBQUUsY0FBYztZQUNqQixDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsR0FBRyxlQUFlO1lBQzNCLEtBQUssRUFDRCxJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsR0FBRywrQkFBK0I7Z0JBQ2xFLENBQUMsQ0FBQywrQkFBK0I7Z0JBQ2pDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWM7WUFDOUMsTUFBTSxFQUFFLFNBQVM7WUFDakIsSUFBSTtTQUNQLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFJX1RBQkxFX0ZJRUxEX0FERF9CVVRUT05fV0lEVEgsIEFJX1RBQkxFX09GRlNFVCB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy90YWJsZSc7XG5pbXBvcnQgeyBBSVRhYmxlQ2VsbCwgQUlUYWJsZUxheW91dCB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IERyYXdlciB9IGZyb20gJy4vZHJhd2VyJztcblxuLyoqXG4gKiDnlKjkuo7lpITnkIbooajmoLzooYzmiJbljZXlhYPmoLznmoTluIPlsYDlkoznu5jliLbjgIJcbiAqIOWug+aPkOS+m+S6huWfuuacrOeahOW4g+WxgOS/oeaBr++8iOWmguS9jee9ruOAgeWkp+Wwj+etie+8ie+8jOW5tuWumuS5ieS6huW4uOeUqOeahOe7mOWbvuaWueazle+8iOWmgua4suafk+e8qei/m+WMuuWfn+OAgea3u+WKoOaWsOWtl+auteeahOepuueZveWMuuWfn+etie+8ieOAglxuICog6K+l57G757un5om/6IeqIERyYXdlcu+8jOW5tuiiq+WFtuS7luabtOWFt+S9k+eahOW4g+WxgOexu++8iOWmgiBSZWNvcmRSb3dMYXlvdXTvvInmianlsZXlkozkvb/nlKhcbiAqL1xuZXhwb3J0IGNsYXNzIExheW91dCBleHRlbmRzIERyYXdlciB7XG4gICAgLy8g5a6a5LmJ5b2T5YmN5Y2V5YWD5qC85oiW6KGM55qE5L2N572uXG4gICAgcHJvdGVjdGVkIHggPSAwO1xuICAgIHByb3RlY3RlZCB5ID0gMDtcbiAgICAvLyDooYzpq5hcbiAgICBwcm90ZWN0ZWQgcm93SGVpZ2h0ID0gMDtcbiAgICAvLyDliJflrr1cbiAgICBwcm90ZWN0ZWQgY29sdW1uV2lkdGggPSAwO1xuICAgIC8vIOihjOe0ouW8lVxuICAgIHByb3RlY3RlZCByb3dJbmRleCA9IDA7XG4gICAgLy8g5YiX57Si5byVXG4gICAgcHJvdGVjdGVkIGNvbHVtbkluZGV4ID0gMDtcbiAgICAvLyDliJfmlbBcbiAgICBwcm90ZWN0ZWQgY29sdW1uQ291bnQgPSAwO1xuXG4gICAgcHJvdGVjdGVkIGNvbnRhaW5lcldpZHRoID0gMDtcblxuICAgIC8vIOeUqOS6juWIneWni+WMluaIlumHjee9ruW4g+WxgOeahOWfuuacrOWxnuaAp+OAgui/meS4quaWueazlemAmuW4uOWcqOavj+asoea4suafk+aWsOeahOS4gOihjOaIluWNleWFg+agvOaXtuiwg+eUqO+8jOehruS/neW4g+WxgOS/oeaBr+aYr+acgOaWsOeahFxuICAgIGluaXQoeyB4LCB5LCByb3dJbmRleCwgY29sdW1uSW5kZXgsIHJvd0hlaWdodCwgY29sdW1uV2lkdGgsIGNvbHVtbkNvdW50LCBjb250YWluZXJXaWR0aCB9OiBBSVRhYmxlTGF5b3V0KSB7XG4gICAgICAgIHRoaXMueCA9IHg7XG4gICAgICAgIHRoaXMueSA9IHk7XG4gICAgICAgIHRoaXMucm93SW5kZXggPSByb3dJbmRleDtcbiAgICAgICAgdGhpcy5jb2x1bW5JbmRleCA9IGNvbHVtbkluZGV4O1xuICAgICAgICB0aGlzLnJvd0hlaWdodCA9IHJvd0hlaWdodDtcbiAgICAgICAgdGhpcy5jb2x1bW5XaWR0aCA9IGNvbHVtbldpZHRoO1xuICAgICAgICB0aGlzLmNvbHVtbkNvdW50ID0gY29sdW1uQ291bnQ7XG4gICAgICAgIHRoaXMuY29udGFpbmVyV2lkdGggPSBjb250YWluZXJXaWR0aDtcbiAgICB9XG5cbiAgICAvLyDlvZPliY3ljZXlhYPmoLzmmK/lkKbmmK/ooYznmoTnrKzkuIDliJdcbiAgICBwcm90ZWN0ZWQgZ2V0IGlzRmlyc3QoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbHVtbkluZGV4ID09PSAwO1xuICAgIH1cblxuICAgIC8vIOW9k+WJjeWNleWFg+agvOaYr+WQpuaYr+ihjOeahOacgOWQjuS4gOWIl1xuICAgIHByb3RlY3RlZCBnZXQgaXNMYXN0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5jb2x1bW5JbmRleCA9PT0gdGhpcy5jb2x1bW5Db3VudCAtIDE7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlbmRlckFkZEZpZWxkQmxhbmsoeyBpc0hvdmVyUm93LCBpc0NoZWNrZWRSb3cgfTogUGljazxBSVRhYmxlQ2VsbCwgJ2lzSG92ZXJSb3cnIHwgJ2lzQ2hlY2tlZFJvdyc+KSB7XG4gICAgICAgIGNvbnN0IHJvd0hlaWdodCA9IHRoaXMucm93SGVpZ2h0O1xuICAgICAgICBjb25zdCBmaWxsID0gaXNDaGVja2VkUm93ID8gdGhpcy5jb2xvcnMuaXRlbUFjdGl2ZUJnQ29sb3IgOiBpc0hvdmVyUm93ID8gdGhpcy5jb2xvcnMuZ3JheTgwIDogdGhpcy5jb2xvcnMudHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbnN0IGFkZEZpZWxkQmxhbmtYID0gdGhpcy54ICsgdGhpcy5jb2x1bW5XaWR0aCArIEFJX1RBQkxFX09GRlNFVDtcbiAgICAgICAgdGhpcy5yZWN0KHtcbiAgICAgICAgICAgIHg6IGFkZEZpZWxkQmxhbmtYLFxuICAgICAgICAgICAgeTogdGhpcy55ICsgQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgd2lkdGg6XG4gICAgICAgICAgICAgICAgdGhpcy5jb250YWluZXJXaWR0aCAtIGFkZEZpZWxkQmxhbmtYIDwgQUlfVEFCTEVfRklFTERfQUREX0JVVFRPTl9XSURUSFxuICAgICAgICAgICAgICAgICAgICA/IEFJX1RBQkxFX0ZJRUxEX0FERF9CVVRUT05fV0lEVEhcbiAgICAgICAgICAgICAgICAgICAgOiB0aGlzLmNvbnRhaW5lcldpZHRoIC0gYWRkRmllbGRCbGFua1gsXG4gICAgICAgICAgICBoZWlnaHQ6IHJvd0hlaWdodCxcbiAgICAgICAgICAgIGZpbGxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LWRyYXdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3JlbmRlcmVyL2RyYXdlcnMvbGF5b3V0LWRyYXdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsZUFBZSxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFbEgsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVsQzs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLE1BQU8sU0FBUSxNQUFNO0lBQWxDOztRQUNJLGVBQWU7UUFDTCxNQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ04sTUFBQyxHQUFHLENBQUMsQ0FBQztRQUNoQixLQUFLO1FBQ0ssY0FBUyxHQUFHLENBQUMsQ0FBQztRQUN4QixLQUFLO1FBQ0ssZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFDMUIsTUFBTTtRQUNJLGFBQVEsR0FBRyxDQUFDLENBQUM7UUFDdkIsTUFBTTtRQUNJLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLEtBQUs7UUFDSyxnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUVoQixtQkFBYyxHQUFHLENBQUMsQ0FBQztRQUVuQixpQkFBWSxHQUFHLHVCQUF1QixDQUFDO1FBRXZDLHNCQUFpQixHQUFHLEtBQUssQ0FBQztJQW9EeEMsQ0FBQztJQWxERyxvREFBb0Q7SUFDcEQsSUFBSSxDQUFDLEVBQ0QsQ0FBQyxFQUNELENBQUMsRUFDRCxRQUFRLEVBQ1IsV0FBVyxFQUNYLFNBQVMsRUFDVCxXQUFXLEVBQ1gsV0FBVyxFQUNYLGNBQWMsRUFDZCxZQUFZLEVBQ1osaUJBQWlCLEVBQ0w7UUFDWixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNYLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ1gsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDekIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7UUFDckMsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUFpQixDQUFDO0lBQy9DLENBQUM7SUFFRCxnQkFBZ0I7SUFDaEIsSUFBYyxPQUFPO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELGlCQUFpQjtJQUNqQixJQUFjLE1BQU07UUFDaEIsT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFUyxtQkFBbUIsQ0FBQyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQW9EO1FBQ3hHLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDakMsTUFBTSxJQUFJLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztRQUN0SCxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsZUFBZSxDQUFDO1FBQ25FLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDTixDQUFDLEVBQUUsY0FBYztZQUNqQixDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsR0FBRyxlQUFlO1lBQzNCLEtBQUssRUFDRCxJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsR0FBRywrQkFBK0I7Z0JBQ2xFLENBQUMsQ0FBQywrQkFBK0I7Z0JBQ2pDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWM7WUFDOUMsTUFBTSxFQUFFLFNBQVM7WUFDakIsSUFBSTtTQUNQLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFJX1RBQkxFX0ZJRUxEX0FERF9CVVRUT05fV0lEVEgsIEFJX1RBQkxFX09GRlNFVCwgQUlfVEFCTEVfUk9XX0hFQURfV0lEVEggfSBmcm9tICcuLi8uLi9jb25zdGFudHMvdGFibGUnO1xuaW1wb3J0IHsgQUlUYWJsZUNlbGwsIEFJVGFibGVMYXlvdXQgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBEcmF3ZXIgfSBmcm9tICcuL2RyYXdlcic7XG5cbi8qKlxuICog55So5LqO5aSE55CG6KGo5qC86KGM5oiW5Y2V5YWD5qC855qE5biD5bGA5ZKM57uY5Yi244CCXG4gKiDlroPmj5Dkvpvkuobln7rmnKznmoTluIPlsYDkv6Hmga/vvIjlpoLkvY3nva7jgIHlpKflsI/nrYnvvInvvIzlubblrprkuYnkuobluLjnlKjnmoTnu5jlm77mlrnms5XvvIjlpoLmuLLmn5PnvKnov5vljLrln5/jgIHmt7vliqDmlrDlrZfmrrXnmoTnqbrnmb3ljLrln5/nrYnvvInjgIJcbiAqIOivpeexu+e7p+aJv+iHqiBEcmF3ZXLvvIzlubbooqvlhbbku5bmm7TlhbfkvZPnmoTluIPlsYDnsbvvvIjlpoIgUmVjb3JkUm93TGF5b3V077yJ5omp5bGV5ZKM5L2/55SoXG4gKi9cbmV4cG9ydCBjbGFzcyBMYXlvdXQgZXh0ZW5kcyBEcmF3ZXIge1xuICAgIC8vIOWumuS5ieW9k+WJjeWNleWFg+agvOaIluihjOeahOS9jee9rlxuICAgIHByb3RlY3RlZCB4ID0gMDtcbiAgICBwcm90ZWN0ZWQgeSA9IDA7XG4gICAgLy8g6KGM6auYXG4gICAgcHJvdGVjdGVkIHJvd0hlaWdodCA9IDA7XG4gICAgLy8g5YiX5a69XG4gICAgcHJvdGVjdGVkIGNvbHVtbldpZHRoID0gMDtcbiAgICAvLyDooYzntKLlvJVcbiAgICBwcm90ZWN0ZWQgcm93SW5kZXggPSAwO1xuICAgIC8vIOWIl+e0ouW8lVxuICAgIHByb3RlY3RlZCBjb2x1bW5JbmRleCA9IDA7XG4gICAgLy8g5YiX5pWwXG4gICAgcHJvdGVjdGVkIGNvbHVtbkNvdW50ID0gMDtcblxuICAgIHByb3RlY3RlZCBjb250YWluZXJXaWR0aCA9IDA7XG5cbiAgICBwcm90ZWN0ZWQgcm93SGVhZFdpZHRoID0gQUlfVEFCTEVfUk9XX0hFQURfV0lEVEg7XG5cbiAgICBwcm90ZWN0ZWQgaGlkZGVuSW5kZXhDb2x1bW4gPSBmYWxzZTtcblxuICAgIC8vIOeUqOS6juWIneWni+WMluaIlumHjee9ruW4g+WxgOeahOWfuuacrOWxnuaAp+OAgui/meS4quaWueazlemAmuW4uOWcqOavj+asoea4suafk+aWsOeahOS4gOihjOaIluWNleWFg+agvOaXtuiwg+eUqO+8jOehruS/neW4g+WxgOS/oeaBr+aYr+acgOaWsOeahFxuICAgIGluaXQoe1xuICAgICAgICB4LFxuICAgICAgICB5LFxuICAgICAgICByb3dJbmRleCxcbiAgICAgICAgY29sdW1uSW5kZXgsXG4gICAgICAgIHJvd0hlaWdodCxcbiAgICAgICAgY29sdW1uV2lkdGgsXG4gICAgICAgIGNvbHVtbkNvdW50LFxuICAgICAgICBjb250YWluZXJXaWR0aCxcbiAgICAgICAgcm93SGVhZFdpZHRoLFxuICAgICAgICBoaWRkZW5JbmRleENvbHVtblxuICAgIH06IEFJVGFibGVMYXlvdXQpIHtcbiAgICAgICAgdGhpcy54ID0geDtcbiAgICAgICAgdGhpcy55ID0geTtcbiAgICAgICAgdGhpcy5yb3dJbmRleCA9IHJvd0luZGV4O1xuICAgICAgICB0aGlzLmNvbHVtbkluZGV4ID0gY29sdW1uSW5kZXg7XG4gICAgICAgIHRoaXMucm93SGVpZ2h0ID0gcm93SGVpZ2h0O1xuICAgICAgICB0aGlzLmNvbHVtbldpZHRoID0gY29sdW1uV2lkdGg7XG4gICAgICAgIHRoaXMuY29sdW1uQ291bnQgPSBjb2x1bW5Db3VudDtcbiAgICAgICAgdGhpcy5jb250YWluZXJXaWR0aCA9IGNvbnRhaW5lcldpZHRoO1xuICAgICAgICB0aGlzLnJvd0hlYWRXaWR0aCA9IHJvd0hlYWRXaWR0aDtcbiAgICAgICAgdGhpcy5oaWRkZW5JbmRleENvbHVtbiA9IGhpZGRlbkluZGV4Q29sdW1uO1xuICAgIH1cblxuICAgIC8vIOW9k+WJjeWNleWFg+agvOaYr+WQpuaYr+ihjOeahOesrOS4gOWIl1xuICAgIHByb3RlY3RlZCBnZXQgaXNGaXJzdCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29sdW1uSW5kZXggPT09IDA7XG4gICAgfVxuXG4gICAgLy8g5b2T5YmN5Y2V5YWD5qC85piv5ZCm5piv6KGM55qE5pyA5ZCO5LiA5YiXXG4gICAgcHJvdGVjdGVkIGdldCBpc0xhc3QoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbHVtbkluZGV4ID09PSB0aGlzLmNvbHVtbkNvdW50IC0gMTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcmVuZGVyQWRkRmllbGRCbGFuayh7IGlzSG92ZXJSb3csIGlzQ2hlY2tlZFJvdyB9OiBQaWNrPEFJVGFibGVDZWxsLCAnaXNIb3ZlclJvdycgfCAnaXNDaGVja2VkUm93Jz4pIHtcbiAgICAgICAgY29uc3Qgcm93SGVpZ2h0ID0gdGhpcy5yb3dIZWlnaHQ7XG4gICAgICAgIGNvbnN0IGZpbGwgPSBpc0NoZWNrZWRSb3cgPyB0aGlzLmNvbG9ycy5pdGVtQWN0aXZlQmdDb2xvciA6IGlzSG92ZXJSb3cgPyB0aGlzLmNvbG9ycy5ncmF5ODAgOiB0aGlzLmNvbG9ycy50cmFuc3BhcmVudDtcbiAgICAgICAgY29uc3QgYWRkRmllbGRCbGFua1ggPSB0aGlzLnggKyB0aGlzLmNvbHVtbldpZHRoICsgQUlfVEFCTEVfT0ZGU0VUO1xuICAgICAgICB0aGlzLnJlY3Qoe1xuICAgICAgICAgICAgeDogYWRkRmllbGRCbGFua1gsXG4gICAgICAgICAgICB5OiB0aGlzLnkgKyBBSV9UQUJMRV9PRkZTRVQsXG4gICAgICAgICAgICB3aWR0aDpcbiAgICAgICAgICAgICAgICB0aGlzLmNvbnRhaW5lcldpZHRoIC0gYWRkRmllbGRCbGFua1ggPCBBSV9UQUJMRV9GSUVMRF9BRERfQlVUVE9OX1dJRFRIXG4gICAgICAgICAgICAgICAgICAgID8gQUlfVEFCTEVfRklFTERfQUREX0JVVFRPTl9XSURUSFxuICAgICAgICAgICAgICAgICAgICA6IHRoaXMuY29udGFpbmVyV2lkdGggLSBhZGRGaWVsZEJsYW5rWCxcbiAgICAgICAgICAgIGhlaWdodDogcm93SGVpZ2h0LFxuICAgICAgICAgICAgZmlsbFxuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
@@ -1,4 +1,4 @@
1
- import { AI_TABLE_FIELD_ADD_BUTTON_WIDTH, AI_TABLE_FIELD_HEAD_HEIGHT, AI_TABLE_OFFSET, AI_TABLE_ROW_DRAG_ICON_WIDTH, AI_TABLE_ROW_HEAD_WIDTH, DEFAULT_FONT_SIZE } from '../../constants';
1
+ import { AI_TABLE_FIELD_ADD_BUTTON_WIDTH, AI_TABLE_FIELD_HEAD_HEIGHT, AI_TABLE_OFFSET, AI_TABLE_ROW_DRAG_ICON_WIDTH, DEFAULT_FONT_SIZE } from '../../constants';
2
2
  import { DEFAULT_TEXT_ALIGN_CENTER, DEFAULT_TEXT_VERTICAL_ALIGN_MIDDLE } from '../../constants/text';
3
3
  import { AITable } from '../../core';
4
4
  import { Layout } from './layout-drawer';
@@ -36,35 +36,51 @@ export class RecordRowLayout extends Layout {
36
36
  else if (isHoverRow) {
37
37
  fillBg = colors.gray80;
38
38
  }
39
- this.customRect({
40
- x: AI_TABLE_OFFSET + AI_TABLE_ROW_DRAG_ICON_WIDTH,
41
- y,
42
- width: AI_TABLE_ROW_HEAD_WIDTH - AI_TABLE_OFFSET - AI_TABLE_ROW_DRAG_ICON_WIDTH,
43
- height: rowHeight,
44
- fill: fillBg,
45
- strokes: {
46
- right: colors.gray200,
47
- bottom: colors.gray200
39
+ if (!this.hiddenIndexColumn) {
40
+ this.customRect({
41
+ x: AI_TABLE_OFFSET + AI_TABLE_ROW_DRAG_ICON_WIDTH,
42
+ y,
43
+ width: this.rowHeadWidth - AI_TABLE_OFFSET - AI_TABLE_ROW_DRAG_ICON_WIDTH,
44
+ height: rowHeight,
45
+ fill: fillBg,
46
+ strokes: {
47
+ right: colors.gray200,
48
+ bottom: colors.gray200
49
+ }
50
+ });
51
+ if (!isCheckedRow && !isHoverRow) {
52
+ // 设置字体样式,居中绘制行号
53
+ this.setStyle({ fontSize: DEFAULT_FONT_SIZE });
54
+ this.text({
55
+ x: (this.rowHeadWidth + AI_TABLE_ROW_DRAG_ICON_WIDTH) / 2,
56
+ y: y + AI_TABLE_FIELD_HEAD_HEIGHT / 2,
57
+ text: String(row.displayIndex),
58
+ textAlign: DEFAULT_TEXT_ALIGN_CENTER,
59
+ verticalAlign: DEFAULT_TEXT_VERTICAL_ALIGN_MIDDLE
60
+ });
48
61
  }
49
- });
50
- // 第一列单元格
51
- this.rect({
52
- x: AI_TABLE_ROW_HEAD_WIDTH,
53
- y,
54
- width: columnWidth + AI_TABLE_OFFSET,
55
- height: rowHeight,
56
- fill: fill,
57
- stroke: colors.gray200
58
- });
59
- if (!isCheckedRow && !isHoverRow) {
60
- // 设置字体样式,居中绘制行号
61
- this.setStyle({ fontSize: DEFAULT_FONT_SIZE });
62
- this.text({
63
- x: (AI_TABLE_ROW_HEAD_WIDTH + AI_TABLE_ROW_DRAG_ICON_WIDTH) / 2,
64
- y: y + AI_TABLE_FIELD_HEAD_HEIGHT / 2,
65
- text: String(row.displayIndex),
66
- textAlign: DEFAULT_TEXT_ALIGN_CENTER,
67
- verticalAlign: DEFAULT_TEXT_VERTICAL_ALIGN_MIDDLE
62
+ // 第一列单元格
63
+ this.rect({
64
+ x: this.rowHeadWidth,
65
+ y,
66
+ width: columnWidth + AI_TABLE_OFFSET,
67
+ height: rowHeight,
68
+ fill: fill,
69
+ stroke: colors.gray200
70
+ });
71
+ }
72
+ else {
73
+ // 第一列单元格
74
+ this.customRect({
75
+ x: this.rowHeadWidth,
76
+ y,
77
+ width: columnWidth + AI_TABLE_OFFSET,
78
+ height: rowHeight,
79
+ fill: fill,
80
+ strokes: {
81
+ right: colors.gray200,
82
+ bottom: colors.gray200
83
+ }
68
84
  });
69
85
  }
70
86
  if (this.isLast) {
@@ -112,4 +128,4 @@ export class RecordRowLayout extends Layout {
112
128
  }
113
129
  }
114
130
  export const recordRowLayout = new RecordRowLayout();
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkLXJvdy1sYXlvdXQtZHJhd2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvcmVuZGVyZXIvZHJhd2Vycy9yZWNvcmQtcm93LWxheW91dC1kcmF3ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILCtCQUErQixFQUMvQiwwQkFBMEIsRUFDMUIsZUFBZSxFQUNmLDRCQUE0QixFQUM1Qix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ3BCLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLHlCQUF5QixFQUFFLGtDQUFrQyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckcsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQztBQUVyQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFekM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGVBQWdCLFNBQVEsTUFBTTtJQUNwQixtQkFBbUIsQ0FBQyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQW9EO1FBQ2pILEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBQ3hELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDakMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQ3pDLE1BQU0sU0FBUyxHQUNYLElBQUksQ0FBQyxjQUFjLEdBQUcsTUFBTSxHQUFHLCtCQUErQixDQUFDLENBQUMsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUM7UUFDcEksSUFBSSxDQUFDLElBQUksQ0FBQztZQUNOLENBQUMsRUFBRSxNQUFNO1lBQ1QsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ1QsTUFBTSxFQUFFLENB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QUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDL0QsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQzdELENBQUM7Q0FDSjtBQUVELE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBSV9UQUJMRV9GSUVMRF9BRERfQlVUVE9OX1dJRFRILFxuICAgIEFJX1RBQkxFX0ZJRUxEX0hFQURfSEVJR0hULFxuICAgIEFJX1RBQkxFX09GRlNFVCxcbiAgICBBSV9UQUJMRV9ST1dfRFJBR19JQ09OX1dJRFRILFxuICAgIEFJX1RBQkxFX1JPV19IRUFEX1dJRFRILFxuICAgIERFRkFVTFRfRk9OVF9TSVpFXG59IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBERUZBVUxUX1RFWFRfQUxJR05fQ0VOVEVSLCBERUZBVUxUX1RFWFRfVkVSVElDQUxfQUxJR05fTUlERExFIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL3RleHQnO1xuaW1wb3J0IHsgQUlUYWJsZSB9IGZyb20gJy4uLy4uL2NvcmUnO1xuaW1wb3J0IHsgQUlUYWJsZUNlbGwgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBMYXlvdXQgfSBmcm9tICcuL2xheW91dC1kcmF3ZXInO1xuXG4vKipcbiAqIOe7mOWItuihjOeahOW4g+WxgO+8jOmAmui/h+ebtOaOpeaTjeS9nCBDYW52YXMg5o+Q5L6b6auY5pWI55qE5riy5p+T5pa55rOV44CCXG4gKiDlroPnu6fmib/oh6ogTGF5b3V0IOexu++8jOWMheWQq+S6hueUqOS6jue7mOWItuihjOS4reWNleWFg+agvO+8iOWwpOWFtuaYr+mmluWIl+WSjOWwvuWIl++8ieeahOWHoOS4quaWueazlVxuICovXG5leHBvcnQgY2xhc3MgUmVjb3JkUm93TGF5b3V0IGV4dGVuZHMgTGF5b3V0IHtcbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyQWRkRmllbGRCbGFuayh7IGlzSG92ZXJSb3csIGlzQ2hlY2tlZFJvdyB9OiBQaWNrPEFJVGFibGVDZWxsLCAnaXNIb3ZlclJvdycgfCAnaXNDaGVja2VkUm93Jz4pOiB2b2lkIHtcbiAgICAgICAgc3VwZXIucmVuZGVyQWRkRmllbGRCbGFuayh7IGlzSG92ZXJSb3csIGlzQ2hlY2tlZFJvdyB9KTtcbiAgICAgICAgY29uc3Qgcm93SGVpZ2h0ID0gdGhpcy5yb3dIZWlnaHQ7XG4gICAgICAgIGNvbnN0IHN0YXJ0WCA9IHRoaXMueCArIHRoaXMuY29sdW1uV2lkdGg7XG4gICAgICAgIGNvbnN0IGxpbmVXaWR0aCA9XG4gICAgICAgICAgICB0aGlzLmNvbnRhaW5lcldpZHRoIC0gc3RhcnRYIDwgQUlfVEFCTEVfRklFTERfQUREX0JVVFRPTl9XSURUSCA/IEFJX1RBQkxFX0ZJRUxEX0FERF9CVVRUT05fV0lEVEggOiB0aGlzLmNvbnRhaW5lcldpZHRoIC0gc3RhcnRYO1xuICAgICAgICB0aGlzLmxpbmUoe1xuICAgICAgICAgICAgeDogc3RhcnRYLFxuICAgICAgICAgICAgeTogdGhpcy55LFxuICAgICAgICAgICAgcG9pbnRzOiBbMCwgcm93SGVpZ2h0LCBsaW5lV2lkdGgsIHJvd0hlaWdodF0sXG4gICAgICAgICAgICBzdHJva2U6IHRoaXMuY29sb3JzLmdyYXkyMDBcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8g6aaW5YiXXG4gICAgcHJpdmF0ZSByZW5kZXJGaXJzdENlbGwoeyByb3csIHN0eWxlLCBpc0hvdmVyUm93LCBpc0NoZWNrZWRSb3cgfTogQUlUYWJsZUNlbGwpIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzRmlyc3QpIHJldHVybjtcbiAgICAgICAgY29uc3QgeyBmaWxsIH0gPSBzdHlsZTtcbiAgICAgICAgY29uc3QgeSA9IHRoaXMueTtcbiAgICAgICAgY29uc3Qgcm93SGVpZ2h0ID0gdGhpcy5yb3dIZWlnaHQ7XG4gICAgICAgIGNvbnN0IGNvbHVtbldpZHRoID0gdGhpcy5jb2x1bW5XaWR0aDtcbiAgICAgICAgY29uc3QgY29sb3JzID0gQUlUYWJsZS5nZXRDb2xvcnMoKTtcbiAgICAgICAgLy8g57yW5Y+355qE5LiK5LiL6L655qGGXG4gICAgICAgIGxldCBmaWxsQmcgPSBjb2xvcnMudHJhbnNwYXJlbnQ7XG4gICAgICAgIGlmIChpc0NoZWNrZWRSb3cpIHtcbiAgICAgICAgICAgIGZpbGxCZyA9IGNvbG9ycy5pdGVtQWN0aXZlQmdDb2xvcjtcbiAgICAgICAgfSBlbHNlIGlmIChpc0hvdmVyUm93KSB7XG4gICAgICAgICAgICBmaWxsQmcgPSBjb2xvcnMuZ3JheTgwO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY3VzdG9tUmVjdCh7XG4gICAgICAgICAgICB4OiBBSV9UQUJMRV9PRkZTRVQgKyBBSV9UQUJMRV9ST1dfRFJBR19JQ09OX1dJRFRILFxuICAgICAgICAgICAgeSxcbiAgICAgICAgICAgIHdpZHRoOiBBSV9UQUJMRV9ST1dfSEVBRF9XSURUSCAtIEFJX1RBQkxFX09GRlNFVCAtIEFJX1RBQkxFX1JPV19EUkFHX0lDT05fV0lEVEgsXG4gICAgICAgICAgICBoZWlnaHQ6IHJvd0hlaWdodCxcbiAgICAgICAgICAgIGZpbGw6IGZpbGxCZyxcbiAgICAgICAgICAgIHN0cm9rZXM6IHtcbiAgICAgICAgICAgICAgICByaWdodDogY29sb3JzLmdyYXkyMDAsXG4gICAgICAgICAgICAgICAgYm90dG9tOiBjb2xvcnMuZ3JheTIwMFxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgLy8g56ys5LiA5YiX5Y2V5YWD5qC8XG4gICAgICAgIHRoaXMucmVjdCh7XG4gICAgICAgICAgICB4OiBBSV9UQUJMRV9ST1dfSEVBRF9XSURUSCxcbiAgICAgICAgICAgIHksXG4gICAgICAgICAgICB3aWR0aDogY29sdW1uV2lkdGggKyBBSV9UQUJMRV9PRkZTRVQsXG4gICAgICAgICAgICBoZWlnaHQ6IHJvd0hlaWdodCxcbiAgICAgICAgICAgIGZpbGw6IGZpbGwsXG4gICAgICAgICAgICBzdHJva2U6IGNvbG9ycy5ncmF5MjAwXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICghaXNDaGVja2VkUm93ICYmICFpc0hvdmVyUm93KSB7XG4gICAgICAgICAgICAvLyDorr7nva7lrZfkvZPmoLflvI/vvIzlsYXkuK3nu5jliLbooYzlj7dcbiAgICAgICAgICAgIHRoaXMuc2V0U3R5bGUoeyBmb250U2l6ZTogREVGQVVMVF9GT05UX1NJWkUgfSk7XG4gICAgICAgICAgICB0aGlzLnRleHQoe1xuICAgICAgICAgICAgICAgIHg6IChBSV9UQUJMRV9ST1dfSEVBRF9XSURUSCArIEFJX1RBQkxFX1JPV19EUkFHX0lDT05fV0lEVEgpIC8gMixcbiAgICAgICAgICAgICAgICB5OiB5ICsgQUlfVEFCTEVfRklFTERfSEVBRF9IRUlHSFQgLyAyLFxuICAgICAgICAgICAgICAgIHRleHQ6IFN0cmluZyhyb3cuZGlzcGxheUluZGV4KSxcbiAgICAgICAgICAgICAgICB0ZXh0QWxpZ246IERFRkFVTFRfVEVYVF9BTElHTl9DRU5URVIsXG4gICAgICAgICAgICAgICAgdmVydGljYWxBbGlnbjogREVGQVVMVF9URVhUX1ZFUlRJQ0FMX0FMSUdOX01JRERMRVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5pc0xhc3QpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyQWRkRmllbGRCbGFuayh7IGlzSG92ZXJSb3csIGlzQ2hlY2tlZFJvdyB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIOWwvuWIl1xuICAgIHByaXZhdGUgcmVuZGVyTGFzdENlbGwoeyBzdHlsZSwgaXNIb3ZlclJvdywgaXNDaGVja2VkUm93IH06IFBpY2s8QUlUYWJsZUNlbGwsICdzdHlsZScgfCAnaXNIb3ZlclJvdycgfCAnaXNDaGVja2VkUm93Jz4pIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzTGFzdCB8fCB0aGlzLmlzRmlyc3QpIHJldHVybjtcbiAgICAgICAgY29uc3QgeyBmaWxsLCBzdHJva2UgfSA9IHN0eWxlO1xuICAgICAgICBjb25zdCBjb2xvcnMgPSBBSVRhYmxlLmdldENvbG9ycygpO1xuXG4gICAgICAgIC8vIOiDjOaZr+OAgei+ueahhlxuICAgICAgICB0aGlzLnJlY3Qoe1xuICAgICAgICAgICAgeDogdGhpcy54LFxuICAgICAgICAgICAgeTogdGhpcy55LFxuICAgICAgICAgICAgd2lkdGg6IHRoaXMuY29sdW1uV2lkdGgsXG4gICAgICAgICAgICBoZWlnaHQ6IHRoaXMucm93SGVpZ2h0LFxuICAgICAgICAgICAgZmlsbDogZmlsbCB8fCBjb2xvcnMud2hpdGUsXG4gICAgICAgICAgICBzdHJva2U6IHN0cm9rZSB8fCBjb2xvcnMuZ3JheTIwMFxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnJlbmRlckFkZEZpZWxkQmxhbmsoeyBpc0hvdmVyUm93LCBpc0NoZWNrZWRSb3cgfSk7XG4gICAgfVxuXG4gICAgLy8g57uY5Yi25Lit6Ze055qE5pmu6YCa5Y2V5YWD5qC8XG4gICAgcHJpdmF0ZSByZW5kZXJDb21tb25DZWxsKHsgc3R5bGUgfTogUGljazxBSVRhYmxlQ2VsbCwgJ3N0eWxlJz4pIHtcbiAgICAgICAgaWYgKHRoaXMuaXNGaXJzdCB8fCB0aGlzLmlzTGFzdCkgcmV0dXJuO1xuXG4gICAgICAgIGNvbnN0IHsgZmlsbCwgc3Ryb2tlIH0gPSBzdHlsZTtcbiAgICAgICAgY29uc3QgY29sb3JzID0gQUlUYWJsZS5nZXRDb2xvcnMoKTtcblxuICAgICAgICAvLyDog4zmma/jgIHovrnmoYZcbiAgICAgICAgdGhpcy5yZWN0KHtcbiAgICAgICAgICAgIHg6IHRoaXMueCxcbiAgICAgICAgICAgIHk6IHRoaXMueSxcbiAgICAgICAgICAgIHdpZHRoOiB0aGlzLmNvbHVtbldpZHRoLFxuICAgICAgICAgICAgaGVpZ2h0OiB0aGlzLnJvd0hlaWdodCxcbiAgICAgICAgICAgIGZpbGw6IGZpbGwgfHwgY29sb3JzLndoaXRlLFxuICAgICAgICAgICAgc3Ryb2tlOiBzdHJva2UgfHwgY29sb3JzLmdyYXkyMDBcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmVuZGVyKGNvbmZpZzogQUlUYWJsZUNlbGwpIHtcbiAgICAgICAgY29uc3QgeyByb3csIHN0eWxlLCBpc0NoZWNrZWRSb3csIGlzSG92ZXJSb3cgfSA9IGNvbmZpZztcbiAgICAgICAgdGhpcy5yZW5kZXJGaXJzdENlbGwoeyByb3csIHN0eWxlLCBpc0NoZWNrZWRSb3csIGlzSG92ZXJSb3cgfSk7XG4gICAgICAgIHRoaXMucmVuZGVyQ29tbW9uQ2VsbCh7IHN0eWxlIH0pO1xuICAgICAgICB0aGlzLnJlbmRlckxhc3RDZWxsKHsgc3R5bGUsIGlzQ2hlY2tlZFJvdywgaXNIb3ZlclJvdyB9KTtcbiAgICB9XG59XG5cbmV4cG9ydCBjb25zdCByZWNvcmRSb3dMYXlvdXQgPSBuZXcgUmVjb3JkUm93TGF5b3V0KCk7XG4iXX0=
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkLXJvdy1sYXlvdXQtZHJhd2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvcmVuZGVyZXIvZHJhd2Vycy9yZWNvcmQtcm93LWxheW91dC1kcmF3ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILCtCQUErQixFQUMvQiwwQkFBMEIsRUFDMUIsZUFBZSxFQUNmLDRCQUE0QixFQUM1QixpQkFBaUIsRUFDcEIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUseUJBQXlCLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRXJDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV6Qzs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxNQUFNO0lBQ3BCLG1CQUFtQixDQUFDLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBb0Q7UUFDakgsS0FBSyxDQUFDLG1CQUFtQixDQUFDLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7UUFDeEQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNqQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDekMsTUFBTSxTQUFTLEdBQ1gsSUFBSSxDQUFDLGNBQWMsR0FBRyxNQUFNLEdBQUcsK0JBQStCLENBQUMsQ0FBQyxDQUFDLCtCQUErQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQztRQUNwSSxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ04sQ0FBQyxFQUFFLE1BQU07WUFDVCxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDVCxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUs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LElBQUksQ0FBQyxDQUFDO1lBQ1QsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ1QsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQ3ZCLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUztZQUN0QixJQUFJLEVBQUUsSUFBSSxJQUFJLE1BQU0sQ0FBQyxLQUFLO1lBQzFCLE1BQU0sRUFBRSxNQUFNLElBQUksTUFBTSxDQUFDLE9BQU87U0FDbkMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELE1BQU0sQ0FBQyxNQUFtQjtRQUN0QixNQUFNLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEdBQUcsTUFBTSxDQUFDO1FBQ3hELElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUM3RCxDQUFDO0NBQ0o7QUFFRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQUlfVEFCTEVfRklFTERfQUREX0JVVFRPTl9XSURUSCxcbiAgICBBSV9UQUJMRV9GSUVMRF9IRUFEX0hFSUdIVCxcbiAgICBBSV9UQUJMRV9PRkZTRVQsXG4gICAgQUlfVEFCTEVfUk9XX0RSQUdfSUNPTl9XSURUSCxcbiAgICBERUZBVUxUX0ZPTlRfU0laRVxufSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgREVGQVVMVF9URVhUX0FMSUdOX0NFTlRFUiwgREVGQVVMVF9URVhUX1ZFUlRJQ0FMX0FMSUdOX01JRERMRSB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy90ZXh0JztcbmltcG9ydCB7IEFJVGFibGUgfSBmcm9tICcuLi8uLi9jb3JlJztcbmltcG9ydCB7IEFJVGFibGVDZWxsIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgTGF5b3V0IH0gZnJvbSAnLi9sYXlvdXQtZHJhd2VyJztcblxuLyoqXG4gKiDnu5jliLbooYznmoTluIPlsYDvvIzpgJrov4fnm7TmjqXmk43kvZwgQ2FudmFzIOaPkOS+m+mrmOaViOeahOa4suafk+aWueazleOAglxuICog5a6D57un5om/6IeqIExheW91dCDnsbvvvIzljIXlkKvkuobnlKjkuo7nu5jliLbooYzkuK3ljZXlhYPmoLzvvIjlsKTlhbbmmK/pppbliJflkozlsL7liJfvvInnmoTlh6DkuKrmlrnms5VcbiAqL1xuZXhwb3J0IGNsYXNzIFJlY29yZFJvd0xheW91dCBleHRlbmRzIExheW91dCB7XG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlckFkZEZpZWxkQmxhbmsoeyBpc0hvdmVyUm93LCBpc0NoZWNrZWRSb3cgfTogUGljazxBSVRhYmxlQ2VsbCwgJ2lzSG92ZXJSb3cnIHwgJ2lzQ2hlY2tlZFJvdyc+KTogdm9pZCB7XG4gICAgICAgIHN1cGVyLnJlbmRlckFkZEZpZWxkQmxhbmsoeyBpc0hvdmVyUm93LCBpc0NoZWNrZWRSb3cgfSk7XG4gICAgICAgIGNvbnN0IHJvd0hlaWdodCA9IHRoaXMucm93SGVpZ2h0O1xuICAgICAgICBjb25zdCBzdGFydFggPSB0aGlzLnggKyB0aGlzLmNvbHVtbldpZHRoO1xuICAgICAgICBjb25zdCBsaW5lV2lkdGggPVxuICAgICAgICAgICAgdGhpcy5jb250YWluZXJXaWR0aCAtIHN0YXJ0WCA8IEFJX1RBQkxFX0ZJRUxEX0FERF9CVVRUT05fV0lEVEggPyBBSV9UQUJMRV9GSUVMRF9BRERfQlVUVE9OX1dJRFRIIDogdGhpcy5jb250YWluZXJXaWR0aCAtIHN0YXJ0WDtcbiAgICAgICAgdGhpcy5saW5lKHtcbiAgICAgICAgICAgIHg6IHN0YXJ0WCxcbiAgICAgICAgICAgIHk6IHRoaXMueSxcbiAgICAgICAgICAgIHBvaW50czogWzAsIHJvd0hlaWdodCwgbGluZVdpZHRoLCByb3dIZWlnaHRdLFxuICAgICAgICAgICAgc3Ryb2tlOiB0aGlzLmNvbG9ycy5ncmF5MjAwXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIOmmluWIl1xuICAgIHByaXZhdGUgcmVuZGVyRmlyc3RDZWxsKHsgcm93LCBzdHlsZSwgaXNIb3ZlclJvdywgaXNDaGVja2VkUm93IH06IEFJVGFibGVDZWxsKSB7XG4gICAgICAgIGlmICghdGhpcy5pc0ZpcnN0KSByZXR1cm47XG4gICAgICAgIGNvbnN0IHsgZmlsbCB9ID0gc3R5bGU7XG4gICAgICAgIGNvbnN0IHkgPSB0aGlzLnk7XG4gICAgICAgIGNvbnN0IHJvd0hlaWdodCA9IHRoaXMucm93SGVpZ2h0O1xuICAgICAgICBjb25zdCBjb2x1bW5XaWR0aCA9IHRoaXMuY29sdW1uV2lkdGg7XG4gICAgICAgIGNvbnN0IGNvbG9ycyA9IEFJVGFibGUuZ2V0Q29sb3JzKCk7XG4gICAgICAgIC8vIOe8luWPt+eahOS4iuS4i+i+ueahhlxuICAgICAgICBsZXQgZmlsbEJnID0gY29sb3JzLnRyYW5zcGFyZW50O1xuICAgICAgICBpZiAoaXNDaGVja2VkUm93KSB7XG4gICAgICAgICAgICBmaWxsQmcgPSBjb2xvcnMuaXRlbUFjdGl2ZUJnQ29sb3I7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNIb3ZlclJvdykge1xuICAgICAgICAgICAgZmlsbEJnID0gY29sb3JzLmdyYXk4MDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghdGhpcy5oaWRkZW5JbmRleENvbHVtbikge1xuICAgICAgICAgICAgdGhpcy5jdXN0b21SZWN0KHtcbiAgICAgICAgICAgICAgICB4OiBBSV9UQUJMRV9PRkZTRVQgKyBBSV9UQUJMRV9ST1dfRFJBR19JQ09OX1dJRFRILFxuICAgICAgICAgICAgICAgIHksXG4gICAgICAgICAgICAgICAgd2lkdGg6IHRoaXMucm93SGVhZFdpZHRoIC0gQUlfVEFCTEVfT0ZGU0VUIC0gQUlfVEFCTEVfUk9XX0RSQUdfSUNPTl9XSURUSCxcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJvd0hlaWdodCxcbiAgICAgICAgICAgICAgICBmaWxsOiBmaWxsQmcsXG4gICAgICAgICAgICAgICAgc3Ryb2tlczoge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogY29sb3JzLmdyYXkyMDAsXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogY29sb3JzLmdyYXkyMDBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmICghaXNDaGVja2VkUm93ICYmICFpc0hvdmVyUm93KSB7XG4gICAgICAgICAgICAgICAgLy8g6K6+572u5a2X5L2T5qC35byP77yM5bGF5Lit57uY5Yi26KGM5Y+3XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRTdHlsZSh7IGZvbnRTaXplOiBERUZBVUxUX0ZPTlRfU0laRSB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLnRleHQoe1xuICAgICAgICAgICAgICAgICAgICB4OiAodGhpcy5yb3dIZWFkV2lkdGggKyBBSV9UQUJMRV9ST1dfRFJBR19JQ09OX1dJRFRIKSAvIDIsXG4gICAgICAgICAgICAgICAgICAgIHk6IHkgKyBBSV9UQUJMRV9GSUVMRF9IRUFEX0hFSUdIVCAvIDIsXG4gICAgICAgICAgICAgICAgICAgIHRleHQ6IFN0cmluZyhyb3cuZGlzcGxheUluZGV4KSxcbiAgICAgICAgICAgICAgICAgICAgdGV4dEFsaWduOiBERUZBVUxUX1RFWFRfQUxJR05fQ0VOVEVSLFxuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbEFsaWduOiBERUZBVUxUX1RFWFRfVkVSVElDQUxfQUxJR05fTUlERExFXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyDnrKzkuIDliJfljZXlhYPmoLxcbiAgICAgICAgICAgIHRoaXMucmVjdCh7XG4gICAgICAgICAgICAgICAgeDogdGhpcy5yb3dIZWFkV2lkdGgsXG4gICAgICAgICAgICAgICAgeSxcbiAgICAgICAgICAgICAgICB3aWR0aDogY29sdW1uV2lkdGggKyBBSV9UQUJMRV9PRkZTRVQsXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByb3dIZWlnaHQsXG4gICAgICAgICAgICAgICAgZmlsbDogZmlsbCxcbiAgICAgICAgICAgICAgICBzdHJva2U6IGNvbG9ycy5ncmF5MjAwXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIOesrOS4gOWIl+WNleWFg+agvFxuICAgICAgICAgICAgdGhpcy5jdXN0b21SZWN0KHtcbiAgICAgICAgICAgICAgICB4OiB0aGlzLnJvd0hlYWRXaWR0aCxcbiAgICAgICAgICAgICAgICB5LFxuICAgICAgICAgICAgICAgIHdpZHRoOiBjb2x1bW5XaWR0aCArIEFJX1RBQkxFX09GRlNFVCxcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJvd0hlaWdodCxcbiAgICAgICAgICAgICAgICBmaWxsOiBmaWxsLFxuICAgICAgICAgICAgICAgIHN0cm9rZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGNvbG9ycy5ncmF5MjAwLFxuICAgICAgICAgICAgICAgICAgICBib3R0b206IGNvbG9ycy5ncmF5MjAwXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5pc0xhc3QpIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyQWRkRmllbGRCbGFuayh7IGlzSG92ZXJSb3csIGlzQ2hlY2tlZFJvdyB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIOWwvuWIl1xuICAgIHByaXZhdGUgcmVuZGVyTGFzdENlbGwoeyBzdHlsZSwgaXNIb3ZlclJvdywgaXNDaGVja2VkUm93IH06IFBpY2s8QUlUYWJsZUNlbGwsICdzdHlsZScgfCAnaXNIb3ZlclJvdycgfCAnaXNDaGVja2VkUm93Jz4pIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzTGFzdCB8fCB0aGlzLmlzRmlyc3QpIHJldHVybjtcbiAgICAgICAgY29uc3QgeyBmaWxsLCBzdHJva2UgfSA9IHN0eWxlO1xuICAgICAgICBjb25zdCBjb2xvcnMgPSBBSVRhYmxlLmdldENvbG9ycygpO1xuXG4gICAgICAgIC8vIOiDjOaZr+OAgei+ueahhlxuICAgICAgICB0aGlzLnJlY3Qoe1xuICAgICAgICAgICAgeDogdGhpcy54LFxuICAgICAgICAgICAgeTogdGhpcy55LFxuICAgICAgICAgICAgd2lkdGg6IHRoaXMuY29sdW1uV2lkdGgsXG4gICAgICAgICAgICBoZWlnaHQ6IHRoaXMucm93SGVpZ2h0LFxuICAgICAgICAgICAgZmlsbDogZmlsbCB8fCBjb2xvcnMud2hpdGUsXG4gICAgICAgICAgICBzdHJva2U6IHN0cm9rZSB8fCBjb2xvcnMuZ3JheTIwMFxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnJlbmRlckFkZEZpZWxkQmxhbmsoeyBpc0hvdmVyUm93LCBpc0NoZWNrZWRSb3cgfSk7XG4gICAgfVxuXG4gICAgLy8g57uY5Yi25Lit6Ze055qE5pmu6YCa5Y2V5YWD5qC8XG4gICAgcHJpdmF0ZSByZW5kZXJDb21tb25DZWxsKHsgc3R5bGUgfTogUGljazxBSVRhYmxlQ2VsbCwgJ3N0eWxlJz4pIHtcbiAgICAgICAgaWYgKHRoaXMuaXNGaXJzdCB8fCB0aGlzLmlzTGFzdCkgcmV0dXJuO1xuXG4gICAgICAgIGNvbnN0IHsgZmlsbCwgc3Ryb2tlIH0gPSBzdHlsZTtcbiAgICAgICAgY29uc3QgY29sb3JzID0gQUlUYWJsZS5nZXRDb2xvcnMoKTtcblxuICAgICAgICAvLyDog4zmma/jgIHovrnmoYZcbiAgICAgICAgdGhpcy5yZWN0KHtcbiAgICAgICAgICAgIHg6IHRoaXMueCxcbiAgICAgICAgICAgIHk6IHRoaXMueSxcbiAgICAgICAgICAgIHdpZHRoOiB0aGlzLmNvbHVtbldpZHRoLFxuICAgICAgICAgICAgaGVpZ2h0OiB0aGlzLnJvd0hlaWdodCxcbiAgICAgICAgICAgIGZpbGw6IGZpbGwgfHwgY29sb3JzLndoaXRlLFxuICAgICAgICAgICAgc3Ryb2tlOiBzdHJva2UgfHwgY29sb3JzLmdyYXkyMDBcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmVuZGVyKGNvbmZpZzogQUlUYWJsZUNlbGwpIHtcbiAgICAgICAgY29uc3QgeyByb3csIHN0eWxlLCBpc0NoZWNrZWRSb3csIGlzSG92ZXJSb3cgfSA9IGNvbmZpZztcbiAgICAgICAgdGhpcy5yZW5kZXJGaXJzdENlbGwoeyByb3csIHN0eWxlLCBpc0NoZWNrZWRSb3csIGlzSG92ZXJSb3cgfSk7XG4gICAgICAgIHRoaXMucmVuZGVyQ29tbW9uQ2VsbCh7IHN0eWxlIH0pO1xuICAgICAgICB0aGlzLnJlbmRlckxhc3RDZWxsKHsgc3R5bGUsIGlzQ2hlY2tlZFJvdywgaXNIb3ZlclJvdyB9KTtcbiAgICB9XG59XG5cbmV4cG9ydCBjb25zdCByZWNvcmRSb3dMYXlvdXQgPSBuZXcgUmVjb3JkUm93TGF5b3V0KCk7XG4iXX0=
@@ -1,7 +1,6 @@
1
1
  import { ChangeDetectionStrategy, Component, computed, input, output } from '@angular/core';
2
2
  import Konva from 'konva';
3
3
  import { KoContainer, KoShape, KoStage } from '../angular-konva';
4
- import { AI_TABLE_ROW_HEAD_WIDTH } from '../constants';
5
4
  import { AITable } from '../core';
6
5
  import { getVisibleRangeInfo } from '../utils';
7
6
  import { AITableAddField, AITableCells, AITableColumnHeads, AITableFrozenCells, AITableFrozenColumnHeads, AITableFrozenPlaceholderCells, AITableHoverRowHeads, AITableOtherRows, AITablePlaceholderCells } from './components';
@@ -26,6 +25,9 @@ export class AITableRenderer {
26
25
  this.readonly = computed(() => {
27
26
  return this.config()?.readonly;
28
27
  });
28
+ this.hiddenIndexColumn = computed(() => {
29
+ return this.config()?.aiTable.context?.aiFieldConfig()?.hiddenIndexColumn;
30
+ });
29
31
  this.rowDragDisabled = computed(() => {
30
32
  return this.config()?.rowDragDisabled;
31
33
  });
@@ -45,7 +47,7 @@ export class AITableRenderer {
45
47
  return getVisibleRangeInfo(this.coordinate(), this.scrollState());
46
48
  });
47
49
  this.frozenAreaWidth = computed(() => {
48
- return AI_TABLE_ROW_HEAD_WIDTH + this.coordinate().frozenColumnWidth;
50
+ return this.config().aiTable.context.rowHeadWidth() + this.coordinate().frozenColumnWidth;
49
51
  });
50
52
  this.lastColumnWidth = computed(() => {
51
53
  return this.coordinate().getColumnWidth(this.visibleRangeInfo().columnStopIndex);
@@ -172,7 +174,7 @@ export class AITableRenderer {
172
174
  this.koMouseleave.emit(e);
173
175
  }
174
176
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableRenderer, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
175
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AITableRenderer, isStandalone: true, selector: "ai-table-renderer", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { koMousemove: "koMousemove", koMousedown: "koMousedown", koMouseup: "koMouseup", koContextmenu: "koContextmenu", koWheel: "koWheel", koClick: "koClick", koDblclick: "koDblclick", koMouseleave: "koMouseleave" }, ngImport: i0, template: "<ko-stage\n [config]=\"stageConfig()\"\n (koMousemove)=\"stageMousemove($event)\"\n (koMousedown)=\"stageMousedown($event)\"\n (koMouseup)=\"stageMouseup($event)\"\n (koContextmenu)=\"stageContextmenu($event)\"\n (koClick)=\"stageClick($event)\"\n (koDblclick)=\"stageDblclick($event)\"\n (koMouseleave)=\"stageMouseleave($event)\"\n>\n <ko-layer>\n <ko-group [config]=\"gridGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n <ai-table-frozen-cells [config]=\"cellsConfig()\"></ai-table-frozen-cells>\n <ai-table-other-rows [config]=\"cellsConfig()\"></ai-table-other-rows>\n <ai-table-hover-row-heads [config]=\"cellsConfig()\"></ai-table-hover-row-heads>\n <ai-table-frozen-placeholder-cells [config]=\"cellsConfig()\"></ai-table-frozen-placeholder-cells>\n </ko-group>\n\n <ko-group>\n <ai-table-frozen-column-heads [config]=\"columnHeadOrAddFieldConfig()\"></ai-table-frozen-column-heads>\n </ko-group>\n\n <ko-group [config]=\"commonGroupConfig()\">\n <ko-group [config]=\"offsetConfig()\">\n <ai-table-cells [config]=\"cellsConfig()\"></ai-table-cells>\n </ko-group>\n\n <ko-group [config]=\"offsetXConfig()\">\n <ai-table-column-heads [config]=\"columnHeadOrAddFieldConfig()\"></ai-table-column-heads>\n <ai-table-add-field [config]=\"columnHeadOrAddFieldConfig()\"></ai-table-add-field>\n </ko-group>\n </ko-group>\n\n <ko-group [config]=\"attachGroupConfig()\">\n <ko-group [config]=\"offsetConfig()\">\n <ai-table-placeholder-cells [config]=\"cellsConfig()\"></ai-table-placeholder-cells>\n @if (activeCellBorderConfig().activeCellBorder) {\n <ko-rect [config]=\"activeCellBorderConfig().activeCellBorder!\"></ko-rect>\n }\n <ai-table-hover-cell [config]=\"cellsConfig()\"></ai-table-hover-cell>\n </ko-group>\n </ko-group>\n\n <ko-group [config]=\"frozenAttachGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n @if (activeCellBorderConfig().frozenActiveCellBorder) {\n <ko-rect [config]=\"activeCellBorderConfig().frozenActiveCellBorder!\"></ko-rect>\n }\n <ai-table-hover-cell [config]=\"cellsConfig()\"></ai-table-hover-cell>\n </ko-group>\n </ko-group>\n </ko-group>\n </ko-layer>\n</ko-stage>\n\n<ng-content></ng-content>\n", dependencies: [{ kind: "component", type: KoContainer, selector: "ko-layer, ko-fastlayer, ko-group" }, { kind: "component", type: KoStage, selector: "ko-stage", inputs: ["config"], outputs: ["koMouseover", "koMousemove", "koMouseout", "koMouseenter", "koMouseleave", "koMousedown", "koMouseup", "koWheel", "koContextmenu", "koClick", "koDblclick", "koTouchstart", "koTouchmove", "koTouchend", "koTap", "koDbltap", "koDragstart", "koDragmove", "koDragend"] }, { kind: "component", type: KoShape, selector: "ko-shape, ko-circle, ko-label, ko-rect, ko-ellipse, ko-wedge, ko-line, ko-sprite, ko-image, ko-text, ko-text-path, ko-star, ko-ring, ko-arc, ko-tag, ko-path, ko-regular-polygon, ko-arrow, ko-transformer", inputs: ["config"], outputs: ["koMouseover", "koMousemove", "koMouseout", "koMouseenter", "koMouseleave", "koMousedown", "koMouseup", "koWheel", "koContextmenu", "koClick", "koDblclick", "koTouchstart", "koTouchmove", "koTouchend", "koTap", "koDbltap", "koDragstart", "koDragmove", "koDragend"] }, { kind: "component", type: AITableColumnHeads, selector: "ai-table-column-heads", inputs: ["config"] }, { kind: "component", type: AITableFrozenColumnHeads, selector: "ai-table-frozen-column-heads", inputs: ["config"] }, { kind: "component", type: AITableCells, selector: "ai-table-cells", inputs: ["config"] }, { kind: "component", type: AITableFrozenCells, selector: "ai-table-frozen-cells", inputs: ["config"] }, { kind: "component", type: AITableFrozenPlaceholderCells, selector: "ai-table-frozen-placeholder-cells", inputs: ["config"] }, { kind: "component", type: AITableHoverCells, selector: "ai-table-hover-cell", inputs: ["config"] }, { kind: "component", type: AITablePlaceholderCells, selector: "ai-table-placeholder-cells", inputs: ["config"] }, { kind: "component", type: AITableAddField, selector: "ai-table-add-field", inputs: ["config"] }, { kind: "component", type: AITableHoverRowHeads, selector: "ai-table-hover-row-heads", inputs: ["config"] }, { kind: "component", type: AITableOtherRows, selector: "ai-table-other-rows", inputs: ["config"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
177
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AITableRenderer, isStandalone: true, selector: "ai-table-renderer", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { koMousemove: "koMousemove", koMousedown: "koMousedown", koMouseup: "koMouseup", koContextmenu: "koContextmenu", koWheel: "koWheel", koClick: "koClick", koDblclick: "koDblclick", koMouseleave: "koMouseleave" }, ngImport: i0, template: "<ko-stage\n [config]=\"stageConfig()\"\n (koMousemove)=\"stageMousemove($event)\"\n (koMousedown)=\"stageMousedown($event)\"\n (koMouseup)=\"stageMouseup($event)\"\n (koContextmenu)=\"stageContextmenu($event)\"\n (koClick)=\"stageClick($event)\"\n (koDblclick)=\"stageDblclick($event)\"\n (koMouseleave)=\"stageMouseleave($event)\"\n>\n <ko-layer>\n <ko-group [config]=\"gridGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n <ai-table-frozen-cells [config]=\"cellsConfig()\"></ai-table-frozen-cells>\n <ai-table-other-rows [config]=\"cellsConfig()\"></ai-table-other-rows>\n @if (!hiddenIndexColumn()) {\n <ai-table-hover-row-heads [config]=\"cellsConfig()\"></ai-table-hover-row-heads>\n }\n <ai-table-frozen-placeholder-cells [config]=\"cellsConfig()\"></ai-table-frozen-placeholder-cells>\n </ko-group>\n\n <ko-group>\n <ai-table-frozen-column-heads [config]=\"columnHeadOrAddFieldConfig()\"></ai-table-frozen-column-heads>\n </ko-group>\n\n <ko-group [config]=\"commonGroupConfig()\">\n <ko-group [config]=\"offsetConfig()\">\n <ai-table-cells [config]=\"cellsConfig()\"></ai-table-cells>\n </ko-group>\n\n <ko-group [config]=\"offsetXConfig()\">\n <ai-table-column-heads [config]=\"columnHeadOrAddFieldConfig()\"></ai-table-column-heads>\n <ai-table-add-field [config]=\"columnHeadOrAddFieldConfig()\"></ai-table-add-field>\n </ko-group>\n </ko-group>\n\n <ko-group [config]=\"attachGroupConfig()\">\n <ko-group [config]=\"offsetConfig()\">\n <ai-table-placeholder-cells [config]=\"cellsConfig()\"></ai-table-placeholder-cells>\n @if (activeCellBorderConfig().activeCellBorder) {\n <ko-rect [config]=\"activeCellBorderConfig().activeCellBorder!\"></ko-rect>\n }\n <ai-table-hover-cell [config]=\"cellsConfig()\"></ai-table-hover-cell>\n </ko-group>\n </ko-group>\n\n <ko-group [config]=\"frozenAttachGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n @if (activeCellBorderConfig().frozenActiveCellBorder) {\n <ko-rect [config]=\"activeCellBorderConfig().frozenActiveCellBorder!\"></ko-rect>\n }\n <ai-table-hover-cell [config]=\"cellsConfig()\"></ai-table-hover-cell>\n </ko-group>\n </ko-group>\n </ko-group>\n </ko-layer>\n</ko-stage>\n\n<ng-content></ng-content>\n", dependencies: [{ kind: "component", type: KoContainer, selector: "ko-layer, ko-fastlayer, ko-group" }, { kind: "component", type: KoStage, selector: "ko-stage", inputs: ["config"], outputs: ["koMouseover", "koMousemove", "koMouseout", "koMouseenter", "koMouseleave", "koMousedown", "koMouseup", "koWheel", "koContextmenu", "koClick", "koDblclick", "koTouchstart", "koTouchmove", "koTouchend", "koTap", "koDbltap", "koDragstart", "koDragmove", "koDragend"] }, { kind: "component", type: KoShape, selector: "ko-shape, ko-circle, ko-label, ko-rect, ko-ellipse, ko-wedge, ko-line, ko-sprite, ko-image, ko-text, ko-text-path, ko-star, ko-ring, ko-arc, ko-tag, ko-path, ko-regular-polygon, ko-arrow, ko-transformer", inputs: ["config"], outputs: ["koMouseover", "koMousemove", "koMouseout", "koMouseenter", "koMouseleave", "koMousedown", "koMouseup", "koWheel", "koContextmenu", "koClick", "koDblclick", "koTouchstart", "koTouchmove", "koTouchend", "koTap", "koDbltap", "koDragstart", "koDragmove", "koDragend"] }, { kind: "component", type: AITableColumnHeads, selector: "ai-table-column-heads", inputs: ["config"] }, { kind: "component", type: AITableFrozenColumnHeads, selector: "ai-table-frozen-column-heads", inputs: ["config"] }, { kind: "component", type: AITableCells, selector: "ai-table-cells", inputs: ["config"] }, { kind: "component", type: AITableFrozenCells, selector: "ai-table-frozen-cells", inputs: ["config"] }, { kind: "component", type: AITableFrozenPlaceholderCells, selector: "ai-table-frozen-placeholder-cells", inputs: ["config"] }, { kind: "component", type: AITableHoverCells, selector: "ai-table-hover-cell", inputs: ["config"] }, { kind: "component", type: AITablePlaceholderCells, selector: "ai-table-placeholder-cells", inputs: ["config"] }, { kind: "component", type: AITableAddField, selector: "ai-table-add-field", inputs: ["config"] }, { kind: "component", type: AITableHoverRowHeads, selector: "ai-table-hover-row-heads", inputs: ["config"] }, { kind: "component", type: AITableOtherRows, selector: "ai-table-other-rows", inputs: ["config"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
176
178
  }
177
179
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AITableRenderer, decorators: [{
178
180
  type: Component,
@@ -190,6 +192,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
190
192
  AITableAddField,
191
193
  AITableHoverRowHeads,
192
194
  AITableOtherRows
193
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ko-stage\n [config]=\"stageConfig()\"\n (koMousemove)=\"stageMousemove($event)\"\n (koMousedown)=\"stageMousedown($event)\"\n (koMouseup)=\"stageMouseup($event)\"\n (koContextmenu)=\"stageContextmenu($event)\"\n (koClick)=\"stageClick($event)\"\n (koDblclick)=\"stageDblclick($event)\"\n (koMouseleave)=\"stageMouseleave($event)\"\n>\n <ko-layer>\n <ko-group [config]=\"gridGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n <ai-table-frozen-cells [config]=\"cellsConfig()\"></ai-table-frozen-cells>\n <ai-table-other-rows [config]=\"cellsConfig()\"></ai-table-other-rows>\n <ai-table-hover-row-heads [config]=\"cellsConfig()\"></ai-table-hover-row-heads>\n <ai-table-frozen-placeholder-cells [config]=\"cellsConfig()\"></ai-table-frozen-placeholder-cells>\n </ko-group>\n\n <ko-group>\n <ai-table-frozen-column-heads [config]=\"columnHeadOrAddFieldConfig()\"></ai-table-frozen-column-heads>\n </ko-group>\n\n <ko-group [config]=\"commonGroupConfig()\">\n <ko-group [config]=\"offsetConfig()\">\n <ai-table-cells [config]=\"cellsConfig()\"></ai-table-cells>\n </ko-group>\n\n <ko-group [config]=\"offsetXConfig()\">\n <ai-table-column-heads [config]=\"columnHeadOrAddFieldConfig()\"></ai-table-column-heads>\n <ai-table-add-field [config]=\"columnHeadOrAddFieldConfig()\"></ai-table-add-field>\n </ko-group>\n </ko-group>\n\n <ko-group [config]=\"attachGroupConfig()\">\n <ko-group [config]=\"offsetConfig()\">\n <ai-table-placeholder-cells [config]=\"cellsConfig()\"></ai-table-placeholder-cells>\n @if (activeCellBorderConfig().activeCellBorder) {\n <ko-rect [config]=\"activeCellBorderConfig().activeCellBorder!\"></ko-rect>\n }\n <ai-table-hover-cell [config]=\"cellsConfig()\"></ai-table-hover-cell>\n </ko-group>\n </ko-group>\n\n <ko-group [config]=\"frozenAttachGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n @if (activeCellBorderConfig().frozenActiveCellBorder) {\n <ko-rect [config]=\"activeCellBorderConfig().frozenActiveCellBorder!\"></ko-rect>\n }\n <ai-table-hover-cell [config]=\"cellsConfig()\"></ai-table-hover-cell>\n </ko-group>\n </ko-group>\n </ko-group>\n </ko-layer>\n</ko-stage>\n\n<ng-content></ng-content>\n" }]
195
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ko-stage\n [config]=\"stageConfig()\"\n (koMousemove)=\"stageMousemove($event)\"\n (koMousedown)=\"stageMousedown($event)\"\n (koMouseup)=\"stageMouseup($event)\"\n (koContextmenu)=\"stageContextmenu($event)\"\n (koClick)=\"stageClick($event)\"\n (koDblclick)=\"stageDblclick($event)\"\n (koMouseleave)=\"stageMouseleave($event)\"\n>\n <ko-layer>\n <ko-group [config]=\"gridGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n <ai-table-frozen-cells [config]=\"cellsConfig()\"></ai-table-frozen-cells>\n <ai-table-other-rows [config]=\"cellsConfig()\"></ai-table-other-rows>\n @if (!hiddenIndexColumn()) {\n <ai-table-hover-row-heads [config]=\"cellsConfig()\"></ai-table-hover-row-heads>\n }\n <ai-table-frozen-placeholder-cells [config]=\"cellsConfig()\"></ai-table-frozen-placeholder-cells>\n </ko-group>\n\n <ko-group>\n <ai-table-frozen-column-heads [config]=\"columnHeadOrAddFieldConfig()\"></ai-table-frozen-column-heads>\n </ko-group>\n\n <ko-group [config]=\"commonGroupConfig()\">\n <ko-group [config]=\"offsetConfig()\">\n <ai-table-cells [config]=\"cellsConfig()\"></ai-table-cells>\n </ko-group>\n\n <ko-group [config]=\"offsetXConfig()\">\n <ai-table-column-heads [config]=\"columnHeadOrAddFieldConfig()\"></ai-table-column-heads>\n <ai-table-add-field [config]=\"columnHeadOrAddFieldConfig()\"></ai-table-add-field>\n </ko-group>\n </ko-group>\n\n <ko-group [config]=\"attachGroupConfig()\">\n <ko-group [config]=\"offsetConfig()\">\n <ai-table-placeholder-cells [config]=\"cellsConfig()\"></ai-table-placeholder-cells>\n @if (activeCellBorderConfig().activeCellBorder) {\n <ko-rect [config]=\"activeCellBorderConfig().activeCellBorder!\"></ko-rect>\n }\n <ai-table-hover-cell [config]=\"cellsConfig()\"></ai-table-hover-cell>\n </ko-group>\n </ko-group>\n\n <ko-group [config]=\"frozenAttachGroupConfig()\">\n <ko-group [config]=\"offsetYConfig()\">\n @if (activeCellBorderConfig().frozenActiveCellBorder) {\n <ko-rect [config]=\"activeCellBorderConfig().frozenActiveCellBorder!\"></ko-rect>\n }\n <ai-table-hover-cell [config]=\"cellsConfig()\"></ai-table-hover-cell>\n </ko-group>\n </ko-group>\n </ko-group>\n </ko-layer>\n</ko-stage>\n\n<ng-content></ng-content>\n" }]
194
196
  }] });
195
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvcmVuZGVyZXIvcmVuZGVyZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvcmVuZGVyZXIvcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RixPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFFMUIsT0FBTyxFQUFFLFdBQVcsRUFBaUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN2RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRWxDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUMvQyxPQUFPLEVBQ0gsZUFBZSxFQUNmLFlBQVksRUFDWixrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLHdCQUF3QixFQUN4Qiw2QkFBNkIsRUFDN0Isb0JBQW9CLEVBQ3BCLGdCQUFnQixFQUNoQix1QkFBdUIsRUFDMUIsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7O0FBRXRFLEtBQUssQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDO0FBdUJyQixNQUFNLE9BQU8sZUFBZTtJQXJCNUI7UUFzQkksV0FBTSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXlCLENBQUM7UUFFakQsZ0JBQVcsR0FBRyxNQUFNLEVBQTZCLENBQUM7UUFFbEQsZ0JBQVcsR0FBRyxNQUFNLEVBQTZCLENBQUM7UUFFbEQsY0FBUyxHQUFHLE1BQU0sRUFBNkIsQ0FBQztRQUVoRCxrQkFBYSxHQUFHLE1BQU0sRUFBNkIsQ0FBQztRQUVwRCxZQUFPLEdBQUcsTUFBTSxFQUE2QixDQUFDO1FBRTlDLFlBQU8sR0FBRyxNQUFNLEVBQTZCLENBQUM7UUFFOUMsZUFBVSxHQUFHLE1BQU0sRUFBNkIsQ0FBQztRQUVqRCxpQkFBWSxHQUFHLE1BQU0sRUFBNkIsQ0FBQztRQUVuRCxXQUFNLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNuQixPQUFPLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0QsQ0FBQyxDQUFDLENBQUM7UUFFSCxhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNyQixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxRQUFRLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUM7UUFFSCxvQkFBZSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDNUIsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsZUFBZSxDQUFDO1FBQzFDLENBQUMsQ0FBQyxDQUFDO1FBRUgsZUFBVSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDdkIsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsVUFBVSxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUFDO1FBRUgsbUJBQWMsR0FBRyxRQUFRLENBQVMsR0FBRyxFQUFFO1lBQ25DLE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLGNBQWMsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FBQztRQUVILG9CQUFlLEdBQUcsUUFBUSxDQUFTLEdBQUcsRUFBRTtZQUNwQyxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxlQUFlLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7UUFFSCxnQkFBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDeEIsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBUSxDQUFDLE9BQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMxRCxDQUFDLENBQUMsQ0FBQztRQUVILHFCQUFnQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDN0IsT0FBTyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFHLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRyxDQUFDLENBQUM7UUFDeEUsQ0FBQyxDQUFDLENBQUM7UUFFSCxvQkFBZSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDNUIsT0FBTyx1QkFBdUIsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFHLENBQUMsaUJBQWtCLENBQUM7UUFDM0UsQ0FBQyxDQUFDLENBQUM7UUFFSCxvQkFBZSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDNUIsT0FBTyxJQUFJLENBQUMsVUFBVSxFQUFHLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3RGLENBQUMsQ0FBQyxDQUFDO1FBRUgscUJBQWdCLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUM3QixPQUFPLElBQUksQ0FBQyxVQUFVLEVBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDdkYsQ0FBQyxDQUFDLENBQUM7UUFFSCx1QkFBa0IsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQy9CLE9BQU8sSUFBSSxDQUFDLGNBQWMsRUFBRSxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMxRCxDQUFDLENBQUMsQ0FBQztRQUVILGdCQUFXLEdBQUcsUUFBUSxDQUF1QixHQUFHLEVBQUU7WUFDOUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUcsQ0FBQztZQUM1QyxPQUFPO2dCQUNILEtBQUssRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUM1QixNQUFNLEVBQUUsSUFBSSxDQUFDLGVBQWUsRUFBRTtnQkFDOUIsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJO2FBQ3hDLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztRQUVILG9CQUFlLEdBQUcsUUFBUSxDQUF1QixHQUFHLEVBQUU7WUFDbEQsT0FBTztnQkFDSCxLQUFLLEVBQUUsQ0FBQztnQkFDUixLQUFLLEVBQUUsQ0FBQztnQkFDUixTQUFTLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRTtnQkFDaEMsVUFBVSxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUU7YUFDckMsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO1FBRUgsc0JBQWlCLEdBQUcsUUFBUSxDQUF1QixHQUFHLEVBQUU7WUFDcEQsT0FBTztnQkFDSCxLQUFLLEVBQUUsSUFBSSxDQUFDLGVBQWUsRUFBRSxHQUFHLENBQUM7Z0JBQ2pDLEtBQUssRUFBRSxDQUFDO2dCQUNSLFNBQVMsRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7Z0JBQ3BDLFVBQVUsRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFO2FBQ3JDLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztRQUVILHNCQUFpQixHQUFHLFFBQVEsQ0FBdUIsR0FBRyxFQUFFO1lBQ3BELE9BQU87Z0JBQ0gsS0FBSyxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUUsR0FBRyxDQUFDO2dCQUNqQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRyxDQUFDLFdBQVcsR0FBRyxDQUFDO2dCQUN6QyxTQUFTLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUU7Z0JBQ3pELFVBQVUsRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRyxDQUFDLFdBQVc7YUFDdEUsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO1FBRUgsNEJBQXVCLEdBQUcsUUFBUSxDQUF1QixHQUFHLEVBQUU7WUFDMUQsT0FBTztnQkFDSCxLQUFLLEVBQUUsQ0FBQztnQkFDUixLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRyxDQUFDLFdBQVcsR0FBRyxDQUFDO2dCQUN6QyxTQUFTLEVBQUUsSUFBSSxDQUFDLGVBQWUsRUFBRSxHQUFHLENBQUM7Z0JBQ3JDLFVBQVUsRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRyxDQUFDLFdBQVc7YUFDdEUsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO1FBRUgsa0JBQWEsR0FBRyxRQUFRLENBQXVCLEdBQUcsRUFBRTtZQUNoRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRyxDQUFDO1lBQzFDLE9BQU87Z0JBQ0gsT0FBTyxFQUFFLFNBQVM7YUFDckIsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO1FBRUgsa0JBQWEsR0FBRyxRQUFRLENBQXVCLEdBQUcsRUFBRTtZQUNoRCxNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRyxDQUFDO1lBQzNDLE9BQU87Z0JBQ0gsT0FBTyxFQUFFLFVBQVU7YUFDdEIsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO1FBRUgsaUJBQVksR0FBRyxRQUFRLENBQXVCLEdBQUcsRUFBRTtZQUMvQyxNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUcsQ0FBQztZQUN0RCxPQUFPO2dCQUNILE9BQU8sRUFBRSxVQUFVO2dCQUNuQixPQUFPLEVBQUUsU0FBUzthQUNyQixDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7UUFFSCwrQkFBMEIsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3ZDLE1BQU0sRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUN0RSxNQUFNLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDeEQsTUFBTSxFQUFFLGFBQWEsRUFBRSxHQUFHLE9BQU8sQ0FBQyxPQUFRLENBQUM7WUFDM0MsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzdCLE9BQU87Z0JBQ0gsT0FBTztnQkFDUCxVQUFVO2dCQUNWLE1BQU07Z0JBQ04sZ0JBQWdCO2dCQUNoQixlQUFlO2dCQUNmLGFBQWEsRUFBRSxhQUFhLEVBQUU7Z0JBQzlCLFFBQVE7YUFDWCxDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7UUFFSCxnQkFBVyxHQUFHLFFBQVEsQ0FBcUIsR0FBRyxFQUFFO1lBQzVDLE1BQU0sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUM5RixNQUFNLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUNuRyxPQUFPO2dCQUNILE9BQU87Z0JBQ1AsUUFBUTtnQkFDUixVQUFVO2dCQUNWLFVBQVU7Z0JBQ1YsYUFBYTtnQkFDYixZQUFZO2dCQUNaLGdCQUFnQjtnQkFDaEIsZUFBZTtnQkFDZixPQUFPO2dCQUNQLGVBQWU7YUFDbEIsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO1FBRUgsMkJBQXNCLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNuQyxPQUFPLHNCQUFzQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQ3RELENBQUMsQ0FBQyxDQUFDO0tBNkJOO0lBM0JHLGNBQWMsQ0FBQyxDQUE0QjtRQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUE4QixDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELGNBQWMsQ0FBQyxDQUE0QjtRQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUE4QixDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELFlBQVksQ0FBQyxDQUE0QjtRQUNyQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUE4QixDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELGdCQUFnQixDQUFDLENBQTRCO1FBQ3pDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQThCLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsVUFBVSxDQUFDLENBQTRCO1FBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQThCLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsYUFBYSxDQUFDLENBQTRCO1FBQ3RDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQThCLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsZUFBZSxDQUFDLENBQTRCO1FBQ3hDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQThCLENBQUMsQ0FBQztJQUMzRCxDQUFDOytHQXJNUSxlQUFlO21HQUFmLGVBQWUsZ2JDN0M1Qix5ckZBeURBLDRDRDVCUSxXQUFXLDZFQUNYLE9BQU8sNlZBQ1AsT0FBTywraEJBQ1Asa0JBQWtCLHNGQUNsQix3QkFBd0IsNkZBQ3hCLFlBQVksK0VBQ1osa0JBQWtCLHNGQUNsQiw2QkFBNkIsa0dBQzdCLGlCQUFpQixvRkFDakIsdUJBQXVCLDJGQUN2QixlQUFlLG1GQUNmLG9CQUFvQix5RkFDcEIsZ0JBQWdCOzs0RkFJWCxlQUFlO2tCQXJCM0IsU0FBUzsrQkFDSSxtQkFBbUIsY0FFakIsSUFBSSxXQUNQO3dCQUNMLFdBQVc7d0JBQ1gsT0FBTzt3QkFDUCxPQUFPO3dCQUNQLGtCQUFrQjt3QkFDbEIsd0JBQXdCO3dCQUN4QixZQUFZO3dCQUNaLGtCQUFrQjt3QkFDbEIsNkJBQTZCO3dCQUM3QixpQkFBaUI7d0JBQ2pCLHVCQUF1Qjt3QkFDdkIsZUFBZTt3QkFDZixvQkFBb0I7d0JBQ3BCLGdCQUFnQjtxQkFDbkIsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQsIG91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IEtvbnZhIGZyb20gJ2tvbnZhJztcbmltcG9ydCB7IFN0YWdlQ29uZmlnIH0gZnJvbSAna29udmEvbGliL1N0YWdlJztcbmltcG9ydCB7IEtvQ29udGFpbmVyLCBLb0V2ZW50T2JqZWN0LCBLb1NoYXBlLCBLb1N0YWdlIH0gZnJvbSAnLi4vYW5ndWxhci1rb252YSc7XG5pbXBvcnQgeyBBSV9UQUJMRV9ST1dfSEVBRF9XSURUSCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBSVRhYmxlIH0gZnJvbSAnLi4vY29yZSc7XG5pbXBvcnQgeyBBSVRhYmxlQ2VsbHNDb25maWcsIEFJVGFibGVSZW5kZXJlckNvbmZpZyB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IGdldFZpc2libGVSYW5nZUluZm8gfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQge1xuICAgIEFJVGFibGVBZGRGaWVsZCxcbiAgICBBSVRhYmxlQ2VsbHMsXG4gICAgQUlUYWJsZUNvbHVtbkhlYWRzLFxuICAgIEFJVGFibGVGcm96ZW5DZWxscyxcbiAgICBBSVRhYmxlRnJvemVuQ29sdW1uSGVhZHMsXG4gICAgQUlUYWJsZUZyb3plblBsYWNlaG9sZGVyQ2VsbHMsXG4gICAgQUlUYWJsZUhvdmVyUm93SGVhZHMsXG4gICAgQUlUYWJsZU90aGVyUm93cyxcbiAgICBBSVRhYmxlUGxhY2Vob2xkZXJDZWxsc1xufSBmcm9tICcuL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgY3JlYXRlQWN0aXZlQ2VsbEJvcmRlciB9IGZyb20gJy4vY3JlYXRpb25zL2NyZWF0ZS1hY3RpdmUtY2VsbC1ib3JkZXInO1xuaW1wb3J0IHsgQUlUYWJsZUhvdmVyQ2VsbHMgfSBmcm9tICcuL2NvbXBvbmVudHMvaG92ZXItY2VsbC5jb21wb25lbnQnO1xuXG5Lb252YS5waXhlbFJhdGlvID0gMjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhaS10YWJsZS1yZW5kZXJlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3JlbmRlcmVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgS29Db250YWluZXIsXG4gICAgICAgIEtvU3RhZ2UsXG4gICAgICAgIEtvU2hhcGUsXG4gICAgICAgIEFJVGFibGVDb2x1bW5IZWFkcyxcbiAgICAgICAgQUlUYWJsZUZyb3plbkNvbHVtbkhlYWRzLFxuICAgICAgICBBSVRhYmxlQ2VsbHMsXG4gICAgICAgIEFJVGFibGVGcm96ZW5DZWxscyxcbiAgICAgICAgQUlUYWJsZUZyb3plblBsYWNlaG9sZGVyQ2VsbHMsXG4gICAgICAgIEFJVGFibGVIb3ZlckNlbGxzLFxuICAgICAgICBBSVRhYmxlUGxhY2Vob2xkZXJDZWxscyxcbiAgICAgICAgQUlUYWJsZUFkZEZpZWxkLFxuICAgICAgICBBSVRhYmxlSG92ZXJSb3dIZWFkcyxcbiAgICAgICAgQUlUYWJsZU90aGVyUm93c1xuICAgIF0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQUlUYWJsZVJlbmRlcmVyIHtcbiAgICBjb25maWcgPSBpbnB1dC5yZXF1aXJlZDxBSVRhYmxlUmVuZGVyZXJDb25maWc+KCk7XG5cbiAgICBrb01vdXNlbW92ZSA9IG91dHB1dDxLb0V2ZW50T2JqZWN0PE1vdXNlRXZlbnQ+PigpO1xuXG4gICAga29Nb3VzZWRvd24gPSBvdXRwdXQ8S29FdmVudE9iamVjdDxNb3VzZUV2ZW50Pj4oKTtcblxuICAgIGtvTW91c2V1cCA9IG91dHB1dDxLb0V2ZW50T2JqZWN0PE1vdXNlRXZlbnQ+PigpO1xuXG4gICAga29Db250ZXh0bWVudSA9IG91dHB1dDxLb0V2ZW50T2JqZWN0PE1vdXNlRXZlbnQ+PigpO1xuXG4gICAga29XaGVlbCA9IG91dHB1dDxLb0V2ZW50T2JqZWN0PFdoZWVsRXZlbnQ+PigpO1xuXG4gICAga29DbGljayA9IG91dHB1dDxLb0V2ZW50T2JqZWN0PE1vdXNlRXZlbnQ+PigpO1xuXG4gICAga29EYmxjbGljayA9IG91dHB1dDxLb0V2ZW50T2JqZWN0PE1vdXNlRXZlbnQ+PigpO1xuXG4gICAga29Nb3VzZWxlYXZlID0gb3V0cHV0PEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4+KCk7XG5cbiAgICBmaWVsZHMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiBBSVRhYmxlLmdldFZpc2libGVGaWVsZHModGhpcy5jb25maWcoKS5haVRhYmxlKTtcbiAgICB9KTtcblxuICAgIHJlYWRvbmx5ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcoKT8ucmVhZG9ubHk7XG4gICAgfSk7XG5cbiAgICByb3dEcmFnRGlzYWJsZWQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZygpPy5yb3dEcmFnRGlzYWJsZWQ7XG4gICAgfSk7XG5cbiAgICBjb29yZGluYXRlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcoKT8uY29vcmRpbmF0ZTtcbiAgICB9KTtcblxuICAgIGNvbnRhaW5lcldpZHRoID0gY29tcHV0ZWQ8bnVtYmVyPigoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZygpLmNvbnRhaW5lcldpZHRoO1xuICAgIH0pO1xuXG4gICAgY29udGFpbmVySGVpZ2h0ID0gY29tcHV0ZWQ8bnVtYmVyPigoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZygpLmNvbnRhaW5lckhlaWdodDtcbiAgICB9KTtcblxuICAgIHNjcm9sbFN0YXRlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcoKT8uYWlUYWJsZSEuY29udGV4dCEuc2Nyb2xsU3RhdGUoKTtcbiAgICB9KTtcblxuICAgIHZpc2libGVSYW5nZUluZm8gPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiBnZXRWaXNpYmxlUmFuZ2VJbmZvKHRoaXMuY29vcmRpbmF0ZSgpISwgdGhpcy5zY3JvbGxTdGF0ZSgpISk7XG4gICAgfSk7XG5cbiAgICBmcm96ZW5BcmVhV2lkdGggPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiBBSV9UQUJMRV9ST1dfSEVBRF9XSURUSCArIHRoaXMuY29vcmRpbmF0ZSgpIS5mcm96ZW5Db2x1bW5XaWR0aCE7XG4gICAgfSk7XG5cbiAgICBsYXN0Q29sdW1uV2lkdGggPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvb3JkaW5hdGUoKSEuZ2V0Q29sdW1uV2lkdGgodGhpcy52aXNpYmxlUmFuZ2VJbmZvKCkuY29sdW1uU3RvcEluZGV4KTtcbiAgICB9KTtcblxuICAgIGxhc3RDb2x1bW5PZmZzZXQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvb3JkaW5hdGUoKSEuZ2V0Q29sdW1uT2Zmc2V0KHRoaXMudmlzaWJsZVJhbmdlSW5mbygpLmNvbHVtblN0b3BJbmRleCk7XG4gICAgfSk7XG5cbiAgICBjZWxsR3JvdXBDbGlwV2lkdGggPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRhaW5lcldpZHRoKCkgLSB0aGlzLmZyb3plbkFyZWFXaWR0aCgpO1xuICAgIH0pO1xuXG4gICAgc3RhZ2VDb25maWcgPSBjb21wdXRlZDxQYXJ0aWFsPFN0YWdlQ29uZmlnPj4oKCkgPT4ge1xuICAgICAgICBjb25zdCB7IGlzU2Nyb2xsaW5nIH0gPSB0aGlzLnNjcm9sbFN0YXRlKCkhO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgd2lkdGg6IHRoaXMuY29udGFpbmVyV2lkdGgoKSxcbiAgICAgICAgICAgIGhlaWdodDogdGhpcy5jb250YWluZXJIZWlnaHQoKSxcbiAgICAgICAgICAgIGxpc3RlbmluZzogaXNTY3JvbGxpbmcgPyBmYWxzZSA6IHRydWVcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIGdyaWRHcm91cENvbmZpZyA9IGNvbXB1dGVkPFBhcnRpYWw8U3RhZ2VDb25maWc+PigoKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBjbGlwWDogMCxcbiAgICAgICAgICAgIGNsaXBZOiAwLFxuICAgICAgICAgICAgY2xpcFdpZHRoOiB0aGlzLmNvbnRhaW5lcldpZHRoKCksXG4gICAgICAgICAgICBjbGlwSGVpZ2h0OiB0aGlzLmNvbnRhaW5lckhlaWdodCgpXG4gICAgICAgIH07XG4gICAgfSk7XG5cbiAgICBjb21tb25Hcm91cENvbmZpZyA9IGNvbXB1dGVkPFBhcnRpYWw8U3RhZ2VDb25maWc+PigoKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBjbGlwWDogdGhpcy5mcm96ZW5BcmVhV2lkdGgoKSArIDEsXG4gICAgICAgICAgICBjbGlwWTogMCxcbiAgICAgICAgICAgIGNsaXBXaWR0aDogdGhpcy5jZWxsR3JvdXBDbGlwV2lkdGgoKSxcbiAgICAgICAgICAgIGNsaXBIZWlnaHQ6IHRoaXMuY29udGFpbmVySGVpZ2h0KClcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIGF0dGFjaEdyb3VwQ29uZmlnID0gY29tcHV0ZWQ8UGFydGlhbDxTdGFnZUNvbmZpZz4+KCgpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGNsaXBYOiB0aGlzLmZyb3plbkFyZWFXaWR0aCgpIC0gMSxcbiAgICAgICAgICAgIGNsaXBZOiB0aGlzLmNvb3JkaW5hdGUoKSEucm93SW5pdFNpemUgLSAxLFxuICAgICAgICAgICAgY2xpcFdpZHRoOiB0aGlzLmNvbnRhaW5lcldpZHRoKCkgLSB0aGlzLmZyb3plbkFyZWFXaWR0aCgpLFxuICAgICAgICAgICAgY2xpcEhlaWdodDogdGhpcy5jb250YWluZXJIZWlnaHQoKSAtIHRoaXMuY29vcmRpbmF0ZSgpIS5yb3dJbml0U2l6ZVxuICAgICAgICB9O1xuICAgIH0pO1xuXG4gICAgZnJvemVuQXR0YWNoR3JvdXBDb25maWcgPSBjb21wdXRlZDxQYXJ0aWFsPFN0YWdlQ29uZmlnPj4oKCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgY2xpcFg6IDAsXG4gICAgICAgICAgICBjbGlwWTogdGhpcy5jb29yZGluYXRlKCkhLnJvd0luaXRTaXplIC0gMSxcbiAgICAgICAgICAgIGNsaXBXaWR0aDogdGhpcy5mcm96ZW5BcmVhV2lkdGgoKSArIDQsXG4gICAgICAgICAgICBjbGlwSGVpZ2h0OiB0aGlzLmNvbnRhaW5lckhlaWdodCgpIC0gdGhpcy5jb29yZGluYXRlKCkhLnJvd0luaXRTaXplXG4gICAgICAgIH07XG4gICAgfSk7XG5cbiAgICBvZmZzZXRZQ29uZmlnID0gY29tcHV0ZWQ8UGFydGlhbDxTdGFnZUNvbmZpZz4+KCgpID0+IHtcbiAgICAgICAgY29uc3QgeyBzY3JvbGxUb3AgfSA9IHRoaXMuc2Nyb2xsU3RhdGUoKSE7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBvZmZzZXRZOiBzY3JvbGxUb3BcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIG9mZnNldFhDb25maWcgPSBjb21wdXRlZDxQYXJ0aWFsPFN0YWdlQ29uZmlnPj4oKCkgPT4ge1xuICAgICAgICBjb25zdCB7IHNjcm9sbExlZnQgfSA9IHRoaXMuc2Nyb2xsU3RhdGUoKSE7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBvZmZzZXRYOiBzY3JvbGxMZWZ0XG4gICAgICAgIH07XG4gICAgfSk7XG5cbiAgICBvZmZzZXRDb25maWcgPSBjb21wdXRlZDxQYXJ0aWFsPFN0YWdlQ29uZmlnPj4oKCkgPT4ge1xuICAgICAgICBjb25zdCB7IHNjcm9sbExlZnQsIHNjcm9sbFRvcCB9ID0gdGhpcy5zY3JvbGxTdGF0ZSgpITtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG9mZnNldFg6IHNjcm9sbExlZnQsXG4gICAgICAgICAgICBvZmZzZXRZOiBzY3JvbGxUb3BcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIGNvbHVtbkhlYWRPckFkZEZpZWxkQ29uZmlnID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCB7IGNvbHVtblN0YXJ0SW5kZXgsIGNvbHVtblN0b3BJbmRleCB9ID0gdGhpcy52aXNpYmxlUmFuZ2VJbmZvKCk7XG4gICAgICAgIGNvbnN0IHsgYWlUYWJsZSwgY29vcmRpbmF0ZSwgcmVhZG9ubHkgfSA9IHRoaXMuY29uZmlnKCk7XG4gICAgICAgIGNvbnN0IHsgcG9pbnRQb3NpdGlvbiB9ID0gYWlUYWJsZS5jb250ZXh0ITtcbiAgICAgICAgY29uc3QgZmllbGRzID0gdGhpcy5maWVsZHMoKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGFpVGFibGUsXG4gICAgICAgICAgICBjb29yZGluYXRlLFxuICAgICAgICAgICAgZmllbGRzLFxuICAgICAgICAgICAgY29sdW1uU3RhcnRJbmRleCxcbiAgICAgICAgICAgIGNvbHVtblN0b3BJbmRleCxcbiAgICAgICAgICAgIHBvaW50UG9zaXRpb246IHBvaW50UG9zaXRpb24oKSxcbiAgICAgICAgICAgIHJlYWRvbmx5XG4gICAgICAgIH07XG4gICAgfSk7XG5cbiAgICBjZWxsc0NvbmZpZyA9IGNvbXB1dGVkPEFJVGFibGVDZWxsc0NvbmZpZz4oKCkgPT4ge1xuICAgICAgICBjb25zdCB7IGFpVGFibGUsIHJlYWRvbmx5LCBjb29yZGluYXRlLCByZWZlcmVuY2VzLCBhY3Rpb25zLCByb3dEcmFnRGlzYWJsZWQgfSA9IHRoaXMuY29uZmlnKCk7XG4gICAgICAgIGNvbnN0IHsgcm93U3RhcnRJbmRleCwgcm93U3RvcEluZGV4LCBjb2x1bW5TdGFydEluZGV4LCBjb2x1bW5TdG9wSW5kZXggfSA9IHRoaXMudmlzaWJsZVJhbmdlSW5mbygpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgYWlUYWJsZSxcbiAgICAgICAgICAgIHJlYWRvbmx5LFxuICAgICAgICAgICAgY29vcmRpbmF0ZSxcbiAgICAgICAgICAgIHJlZmVyZW5jZXMsXG4gICAgICAgICAgICByb3dTdGFydEluZGV4LFxuICAgICAgICAgICAgcm93U3RvcEluZGV4LFxuICAgICAgICAgICAgY29sdW1uU3RhcnRJbmRleCxcbiAgICAgICAgICAgIGNvbHVtblN0b3BJbmRleCxcbiAgICAgICAgICAgIGFjdGlvbnMsXG4gICAgICAgICAgICByb3dEcmFnRGlzYWJsZWRcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIGFjdGl2ZUNlbGxCb3JkZXJDb25maWcgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiBjcmVhdGVBY3RpdmVDZWxsQm9yZGVyKHRoaXMuY2VsbHNDb25maWcoKSk7XG4gICAgfSk7XG5cbiAgICBzdGFnZU1vdXNlbW92ZShlOiBLb0V2ZW50T2JqZWN0PE1vdXNlRXZlbnQ+KSB7XG4gICAgICAgIHRoaXMua29Nb3VzZW1vdmUuZW1pdChlIGFzIEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4pO1xuICAgIH1cblxuICAgIHN0YWdlTW91c2Vkb3duKGU6IEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4pIHtcbiAgICAgICAgdGhpcy5rb01vdXNlZG93bi5lbWl0KGUgYXMgS29FdmVudE9iamVjdDxNb3VzZUV2ZW50Pik7XG4gICAgfVxuXG4gICAgc3RhZ2VNb3VzZXVwKGU6IEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4pIHtcbiAgICAgICAgdGhpcy5rb01vdXNldXAuZW1pdChlIGFzIEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4pO1xuICAgIH1cblxuICAgIHN0YWdlQ29udGV4dG1lbnUoZTogS29FdmVudE9iamVjdDxNb3VzZUV2ZW50Pikge1xuICAgICAgICB0aGlzLmtvQ29udGV4dG1lbnUuZW1pdChlIGFzIEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4pO1xuICAgIH1cblxuICAgIHN0YWdlQ2xpY2soZTogS29FdmVudE9iamVjdDxNb3VzZUV2ZW50Pikge1xuICAgICAgICB0aGlzLmtvQ2xpY2suZW1pdChlIGFzIEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4pO1xuICAgIH1cblxuICAgIHN0YWdlRGJsY2xpY2soZTogS29FdmVudE9iamVjdDxNb3VzZUV2ZW50Pikge1xuICAgICAgICB0aGlzLmtvRGJsY2xpY2suZW1pdChlIGFzIEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4pO1xuICAgIH1cblxuICAgIHN0YWdlTW91c2VsZWF2ZShlOiBLb0V2ZW50T2JqZWN0PE1vdXNlRXZlbnQ+KSB7XG4gICAgICAgIHRoaXMua29Nb3VzZWxlYXZlLmVtaXQoZSBhcyBLb0V2ZW50T2JqZWN0PE1vdXNlRXZlbnQ+KTtcbiAgICB9XG59XG4iLCI8a28tc3RhZ2VcbiAgICBbY29uZmlnXT1cInN0YWdlQ29uZmlnKClcIlxuICAgIChrb01vdXNlbW92ZSk9XCJzdGFnZU1vdXNlbW92ZSgkZXZlbnQpXCJcbiAgICAoa29Nb3VzZWRvd24pPVwic3RhZ2VNb3VzZWRvd24oJGV2ZW50KVwiXG4gICAgKGtvTW91c2V1cCk9XCJzdGFnZU1vdXNldXAoJGV2ZW50KVwiXG4gICAgKGtvQ29udGV4dG1lbnUpPVwic3RhZ2VDb250ZXh0bWVudSgkZXZlbnQpXCJcbiAgICAoa29DbGljayk9XCJzdGFnZUNsaWNrKCRldmVudClcIlxuICAgIChrb0RibGNsaWNrKT1cInN0YWdlRGJsY2xpY2soJGV2ZW50KVwiXG4gICAgKGtvTW91c2VsZWF2ZSk9XCJzdGFnZU1vdXNlbGVhdmUoJGV2ZW50KVwiXG4+XG4gICAgPGtvLWxheWVyPlxuICAgICAgICA8a28tZ3JvdXAgW2NvbmZpZ109XCJncmlkR3JvdXBDb25maWcoKVwiPlxuICAgICAgICAgICAgPGtvLWdyb3VwIFtjb25maWddPVwib2Zmc2V0WUNvbmZpZygpXCI+XG4gICAgICAgICAgICAgICAgPGFpLXRhYmxlLWZyb3plbi1jZWxscyBbY29uZmlnXT1cImNlbGxzQ29uZmlnKClcIj48L2FpLXRhYmxlLWZyb3plbi1jZWxscz5cbiAgICAgICAgICAgICAgICA8YWktdGFibGUtb3RoZXItcm93cyBbY29uZmlnXT1cImNlbGxzQ29uZmlnKClcIj48L2FpLXRhYmxlLW90aGVyLXJvd3M+XG4gICAgICAgICAgICAgICAgPGFpLXRhYmxlLWhvdmVyLXJvdy1oZWFkcyBbY29uZmlnXT1cImNlbGxzQ29uZmlnKClcIj48L2FpLXRhYmxlLWhvdmVyLXJvdy1oZWFkcz5cbiAgICAgICAgICAgICAgICA8YWktdGFibGUtZnJvemVuLXBsYWNlaG9sZGVyLWNlbGxzIFtjb25maWddPVwiY2VsbHNDb25maWcoKVwiPjwvYWktdGFibGUtZnJvemVuLXBsYWNlaG9sZGVyLWNlbGxzPlxuICAgICAgICAgICAgPC9rby1ncm91cD5cblxuICAgICAgICAgICAgPGtvLWdyb3VwPlxuICAgICAgICAgICAgICAgIDxhaS10YWJsZS1mcm96ZW4tY29sdW1uLWhlYWRzIFtjb25maWddPVwiY29sdW1uSGVhZE9yQWRkRmllbGRDb25maWcoKVwiPjwvYWktdGFibGUtZnJvemVuLWNvbHVtbi1oZWFkcz5cbiAgICAgICAgICAgIDwva28tZ3JvdXA+XG5cbiAgICAgICAgICAgIDxrby1ncm91cCBbY29uZmlnXT1cImNvbW1vbkdyb3VwQ29uZmlnKClcIj5cbiAgICAgICAgICAgICAgICA8a28tZ3JvdXAgW2NvbmZpZ109XCJvZmZzZXRDb25maWcoKVwiPlxuICAgICAgICAgICAgICAgICAgICA8YWktdGFibGUtY2VsbHMgW2NvbmZpZ109XCJjZWxsc0NvbmZpZygpXCI+PC9haS10YWJsZS1jZWxscz5cbiAgICAgICAgICAgICAgICA8L2tvLWdyb3VwPlxuXG4gICAgICAgICAgICAgICAgPGtvLWdyb3VwIFtjb25maWddPVwib2Zmc2V0WENvbmZpZygpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxhaS10YWJsZS1jb2x1bW4taGVhZHMgW2NvbmZpZ109XCJjb2x1bW5IZWFkT3JBZGRGaWVsZENvbmZpZygpXCI+PC9haS10YWJsZS1jb2x1bW4taGVhZHM+XG4gICAgICAgICAgICAgICAgICAgIDxhaS10YWJsZS1hZGQtZmllbGQgW2NvbmZpZ109XCJjb2x1bW5IZWFkT3JBZGRGaWVsZENvbmZpZygpXCI+PC9haS10YWJsZS1hZGQtZmllbGQ+XG4gICAgICAgICAgICAgICAgPC9rby1ncm91cD5cbiAgICAgICAgICAgIDwva28tZ3JvdXA+XG5cbiAgICAgICAgICAgIDxrby1ncm91cCBbY29uZmlnXT1cImF0dGFjaEdyb3VwQ29uZmlnKClcIj5cbiAgICAgICAgICAgICAgICA8a28tZ3JvdXAgW2NvbmZpZ109XCJvZmZzZXRDb25maWcoKVwiPlxuICAgICAgICAgICAgICAgICAgICA8YWktdGFibGUtcGxhY2Vob2xkZXItY2VsbHMgW2NvbmZpZ109XCJjZWxsc0NvbmZpZygpXCI+PC9haS10YWJsZS1wbGFjZWhvbGRlci1jZWxscz5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChhY3RpdmVDZWxsQm9yZGVyQ29uZmlnKCkuYWN0aXZlQ2VsbEJvcmRlcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGtvLXJlY3QgW2NvbmZpZ109XCJhY3RpdmVDZWxsQm9yZGVyQ29uZmlnKCkuYWN0aXZlQ2VsbEJvcmRlciFcIj48L2tvLXJlY3Q+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPGFpLXRhYmxlLWhvdmVyLWNlbGwgW2NvbmZpZ109XCJjZWxsc0NvbmZpZygpXCI+PC9haS10YWJsZS1ob3Zlci1jZWxsPlxuICAgICAgICAgICAgICAgIDwva28tZ3JvdXA+XG4gICAgICAgICAgICA8L2tvLWdyb3VwPlxuXG4gICAgICAgICAgICA8a28tZ3JvdXAgW2NvbmZpZ109XCJmcm96ZW5BdHRhY2hHcm91cENvbmZpZygpXCI+XG4gICAgICAgICAgICAgICAgPGtvLWdyb3VwIFtjb25maWddPVwib2Zmc2V0WUNvbmZpZygpXCI+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoYWN0aXZlQ2VsbEJvcmRlckNvbmZpZygpLmZyb3plbkFjdGl2ZUNlbGxCb3JkZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxrby1yZWN0IFtjb25maWddPVwiYWN0aXZlQ2VsbEJvcmRlckNvbmZpZygpLmZyb3plbkFjdGl2ZUNlbGxCb3JkZXIhXCI+PC9rby1yZWN0PlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDxhaS10YWJsZS1ob3Zlci1jZWxsIFtjb25maWddPVwiY2VsbHNDb25maWcoKVwiPjwvYWktdGFibGUtaG92ZXItY2VsbD5cbiAgICAgICAgICAgICAgICA8L2tvLWdyb3VwPlxuICAgICAgICAgICAgPC9rby1ncm91cD5cbiAgICAgICAgPC9rby1ncm91cD5cbiAgICA8L2tvLWxheWVyPlxuPC9rby1zdGFnZT5cblxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuIl19
197
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvcmVuZGVyZXIvcmVuZGVyZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvcmVuZGVyZXIvcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RixPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFFMUIsT0FBTyxFQUFFLFdBQVcsRUFBaUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFbEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQy9DLE9BQU8sRUFDSCxlQUFlLEVBQ2YsWUFBWSxFQUNaLGtCQUFrQixFQUNsQixrQkFBa0IsRUFDbEIsd0JBQXdCLEVBQ3hCLDZCQUE2QixFQUM3QixvQkFBb0IsRUFDcEIsZ0JBQWdCLEVBQ2hCLHVCQUF1QixFQUMxQixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFFdEUsS0FBSyxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7QUF1QnJCLE1BQU0sT0FBTyxlQUFlO0lBckI1QjtRQXNCSSxXQUFNLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBeUIsQ0FBQztRQUVqRCxnQkFBVyxHQUFHLE1BQU0sRUFBNkIsQ0FBQztRQUVsRCxnQkFBVyxHQUFHLE1BQU0sRUFBNkIsQ0FBQztRQUVsRCxjQUFT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a0JBQWtCO3dCQUNsQix3QkFBd0I7d0JBQ3hCLFlBQVk7d0JBQ1osa0JBQWtCO3dCQUNsQiw2QkFBNkI7d0JBQzdCLGlCQUFpQjt3QkFDakIsdUJBQXVCO3dCQUN2QixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsZ0JBQWdCO3FCQUNuQixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBpbnB1dCwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgS29udmEgZnJvbSAna29udmEnO1xuaW1wb3J0IHsgU3RhZ2VDb25maWcgfSBmcm9tICdrb252YS9saWIvU3RhZ2UnO1xuaW1wb3J0IHsgS29Db250YWluZXIsIEtvRXZlbnRPYmplY3QsIEtvU2hhcGUsIEtvU3RhZ2UgfSBmcm9tICcuLi9hbmd1bGFyLWtvbnZhJztcbmltcG9ydCB7IEFJVGFibGUgfSBmcm9tICcuLi9jb3JlJztcbmltcG9ydCB7IEFJVGFibGVDZWxsc0NvbmZpZywgQUlUYWJsZVJlbmRlcmVyQ29uZmlnIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgZ2V0VmlzaWJsZVJhbmdlSW5mbyB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7XG4gICAgQUlUYWJsZUFkZEZpZWxkLFxuICAgIEFJVGFibGVDZWxscyxcbiAgICBBSVRhYmxlQ29sdW1uSGVhZHMsXG4gICAgQUlUYWJsZUZyb3plbkNlbGxzLFxuICAgIEFJVGFibGVGcm96ZW5Db2x1bW5IZWFkcyxcbiAgICBBSVRhYmxlRnJvemVuUGxhY2Vob2xkZXJDZWxscyxcbiAgICBBSVRhYmxlSG92ZXJSb3dIZWFkcyxcbiAgICBBSVRhYmxlT3RoZXJSb3dzLFxuICAgIEFJVGFibGVQbGFjZWhvbGRlckNlbGxzXG59IGZyb20gJy4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBjcmVhdGVBY3RpdmVDZWxsQm9yZGVyIH0gZnJvbSAnLi9jcmVhdGlvbnMvY3JlYXRlLWFjdGl2ZS1jZWxsLWJvcmRlcic7XG5pbXBvcnQgeyBBSVRhYmxlSG92ZXJDZWxscyB9IGZyb20gJy4vY29tcG9uZW50cy9ob3Zlci1jZWxsLmNvbXBvbmVudCc7XG5cbktvbnZhLnBpeGVsUmF0aW8gPSAyO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FpLXRhYmxlLXJlbmRlcmVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBLb0NvbnRhaW5lcixcbiAgICAgICAgS29TdGFnZSxcbiAgICAgICAgS29TaGFwZSxcbiAgICAgICAgQUlUYWJsZUNvbHVtbkhlYWRzLFxuICAgICAgICBBSVRhYmxlRnJvemVuQ29sdW1uSGVhZHMsXG4gICAgICAgIEFJVGFibGVDZWxscyxcbiAgICAgICAgQUlUYWJsZUZyb3plbkNlbGxzLFxuICAgICAgICBBSVRhYmxlRnJvemVuUGxhY2Vob2xkZXJDZWxscyxcbiAgICAgICAgQUlUYWJsZUhvdmVyQ2VsbHMsXG4gICAgICAgIEFJVGFibGVQbGFjZWhvbGRlckNlbGxzLFxuICAgICAgICBBSVRhYmxlQWRkRmllbGQsXG4gICAgICAgIEFJVGFibGVIb3ZlclJvd0hlYWRzLFxuICAgICAgICBBSVRhYmxlT3RoZXJSb3dzXG4gICAgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBSVRhYmxlUmVuZGVyZXIge1xuICAgIGNvbmZpZyA9IGlucHV0LnJlcXVpcmVkPEFJVGFibGVSZW5kZXJlckNvbmZpZz4oKTtcblxuICAgIGtvTW91c2Vtb3ZlID0gb3V0cHV0PEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4+KCk7XG5cbiAgICBrb01vdXNlZG93biA9IG91dHB1dDxLb0V2ZW50T2JqZWN0PE1vdXNlRXZlbnQ+PigpO1xuXG4gICAga29Nb3VzZXVwID0gb3V0cHV0PEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4+KCk7XG5cbiAgICBrb0NvbnRleHRtZW51ID0gb3V0cHV0PEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4+KCk7XG5cbiAgICBrb1doZWVsID0gb3V0cHV0PEtvRXZlbnRPYmplY3Q8V2hlZWxFdmVudD4+KCk7XG5cbiAgICBrb0NsaWNrID0gb3V0cHV0PEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4+KCk7XG5cbiAgICBrb0RibGNsaWNrID0gb3V0cHV0PEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4+KCk7XG5cbiAgICBrb01vdXNlbGVhdmUgPSBvdXRwdXQ8S29FdmVudE9iamVjdDxNb3VzZUV2ZW50Pj4oKTtcblxuICAgIGZpZWxkcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgcmV0dXJuIEFJVGFibGUuZ2V0VmlzaWJsZUZpZWxkcyh0aGlzLmNvbmZpZygpLmFpVGFibGUpO1xuICAgIH0pO1xuXG4gICAgcmVhZG9ubHkgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZygpPy5yZWFkb25seTtcbiAgICB9KTtcblxuICAgIGhpZGRlbkluZGV4Q29sdW1uID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcoKT8uYWlUYWJsZS5jb250ZXh0Py5haUZpZWxkQ29uZmlnKCk/LmhpZGRlbkluZGV4Q29sdW1uO1xuICAgIH0pO1xuXG4gICAgcm93RHJhZ0Rpc2FibGVkID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcoKT8ucm93RHJhZ0Rpc2FibGVkO1xuICAgIH0pO1xuXG4gICAgY29vcmRpbmF0ZSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlnKCk/LmNvb3JkaW5hdGU7XG4gICAgfSk7XG5cbiAgICBjb250YWluZXJXaWR0aCA9IGNvbXB1dGVkPG51bWJlcj4oKCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcoKS5jb250YWluZXJXaWR0aDtcbiAgICB9KTtcblxuICAgIGNvbnRhaW5lckhlaWdodCA9IGNvbXB1dGVkPG51bWJlcj4oKCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcoKS5jb250YWluZXJIZWlnaHQ7XG4gICAgfSk7XG5cbiAgICBzY3JvbGxTdGF0ZSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlnKCk/LmFpVGFibGUhLmNvbnRleHQhLnNjcm9sbFN0YXRlKCk7XG4gICAgfSk7XG5cbiAgICB2aXNpYmxlUmFuZ2VJbmZvID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gZ2V0VmlzaWJsZVJhbmdlSW5mbyh0aGlzLmNvb3JkaW5hdGUoKSEsIHRoaXMuc2Nyb2xsU3RhdGUoKSEpO1xuICAgIH0pO1xuXG4gICAgZnJvemVuQXJlYVdpZHRoID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcoKS5haVRhYmxlIS5jb250ZXh0IS5yb3dIZWFkV2lkdGgoKSArIHRoaXMuY29vcmRpbmF0ZSgpIS5mcm96ZW5Db2x1bW5XaWR0aCE7XG4gICAgfSk7XG5cbiAgICBsYXN0Q29sdW1uV2lkdGggPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvb3JkaW5hdGUoKSEuZ2V0Q29sdW1uV2lkdGgodGhpcy52aXNpYmxlUmFuZ2VJbmZvKCkuY29sdW1uU3RvcEluZGV4KTtcbiAgICB9KTtcblxuICAgIGxhc3RDb2x1bW5PZmZzZXQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvb3JkaW5hdGUoKSEuZ2V0Q29sdW1uT2Zmc2V0KHRoaXMudmlzaWJsZVJhbmdlSW5mbygpLmNvbHVtblN0b3BJbmRleCk7XG4gICAgfSk7XG5cbiAgICBjZWxsR3JvdXBDbGlwV2lkdGggPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRhaW5lcldpZHRoKCkgLSB0aGlzLmZyb3plbkFyZWFXaWR0aCgpO1xuICAgIH0pO1xuXG4gICAgc3RhZ2VDb25maWcgPSBjb21wdXRlZDxQYXJ0aWFsPFN0YWdlQ29uZmlnPj4oKCkgPT4ge1xuICAgICAgICBjb25zdCB7IGlzU2Nyb2xsaW5nIH0gPSB0aGlzLnNjcm9sbFN0YXRlKCkhO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgd2lkdGg6IHRoaXMuY29udGFpbmVyV2lkdGgoKSxcbiAgICAgICAgICAgIGhlaWdodDogdGhpcy5jb250YWluZXJIZWlnaHQoKSxcbiAgICAgICAgICAgIGxpc3RlbmluZzogaXNTY3JvbGxpbmcgPyBmYWxzZSA6IHRydWVcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIGdyaWRHcm91cENvbmZpZyA9IGNvbXB1dGVkPFBhcnRpYWw8U3RhZ2VDb25maWc+PigoKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBjbGlwWDogMCxcbiAgICAgICAgICAgIGNsaXBZOiAwLFxuICAgICAgICAgICAgY2xpcFdpZHRoOiB0aGlzLmNvbnRhaW5lcldpZHRoKCksXG4gICAgICAgICAgICBjbGlwSGVpZ2h0OiB0aGlzLmNvbnRhaW5lckhlaWdodCgpXG4gICAgICAgIH07XG4gICAgfSk7XG5cbiAgICBjb21tb25Hcm91cENvbmZpZyA9IGNvbXB1dGVkPFBhcnRpYWw8U3RhZ2VDb25maWc+PigoKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBjbGlwWDogdGhpcy5mcm96ZW5BcmVhV2lkdGgoKSArIDEsXG4gICAgICAgICAgICBjbGlwWTogMCxcbiAgICAgICAgICAgIGNsaXBXaWR0aDogdGhpcy5jZWxsR3JvdXBDbGlwV2lkdGgoKSxcbiAgICAgICAgICAgIGNsaXBIZWlnaHQ6IHRoaXMuY29udGFpbmVySGVpZ2h0KClcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIGF0dGFjaEdyb3VwQ29uZmlnID0gY29tcHV0ZWQ8UGFydGlhbDxTdGFnZUNvbmZpZz4+KCgpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGNsaXBYOiB0aGlzLmZyb3plbkFyZWFXaWR0aCgpIC0gMSxcbiAgICAgICAgICAgIGNsaXBZOiB0aGlzLmNvb3JkaW5hdGUoKSEucm93SW5pdFNpemUgLSAxLFxuICAgICAgICAgICAgY2xpcFdpZHRoOiB0aGlzLmNvbnRhaW5lcldpZHRoKCkgLSB0aGlzLmZyb3plbkFyZWFXaWR0aCgpLFxuICAgICAgICAgICAgY2xpcEhlaWdodDogdGhpcy5jb250YWluZXJIZWlnaHQoKSAtIHRoaXMuY29vcmRpbmF0ZSgpIS5yb3dJbml0U2l6ZVxuICAgICAgICB9O1xuICAgIH0pO1xuXG4gICAgZnJvemVuQXR0YWNoR3JvdXBDb25maWcgPSBjb21wdXRlZDxQYXJ0aWFsPFN0YWdlQ29uZmlnPj4oKCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgY2xpcFg6IDAsXG4gICAgICAgICAgICBjbGlwWTogdGhpcy5jb29yZGluYXRlKCkhLnJvd0luaXRTaXplIC0gMSxcbiAgICAgICAgICAgIGNsaXBXaWR0aDogdGhpcy5mcm96ZW5BcmVhV2lkdGgoKSArIDQsXG4gICAgICAgICAgICBjbGlwSGVpZ2h0OiB0aGlzLmNvbnRhaW5lckhlaWdodCgpIC0gdGhpcy5jb29yZGluYXRlKCkhLnJvd0luaXRTaXplXG4gICAgICAgIH07XG4gICAgfSk7XG5cbiAgICBvZmZzZXRZQ29uZmlnID0gY29tcHV0ZWQ8UGFydGlhbDxTdGFnZUNvbmZpZz4+KCgpID0+IHtcbiAgICAgICAgY29uc3QgeyBzY3JvbGxUb3AgfSA9IHRoaXMuc2Nyb2xsU3RhdGUoKSE7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBvZmZzZXRZOiBzY3JvbGxUb3BcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIG9mZnNldFhDb25maWcgPSBjb21wdXRlZDxQYXJ0aWFsPFN0YWdlQ29uZmlnPj4oKCkgPT4ge1xuICAgICAgICBjb25zdCB7IHNjcm9sbExlZnQgfSA9IHRoaXMuc2Nyb2xsU3RhdGUoKSE7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBvZmZzZXRYOiBzY3JvbGxMZWZ0XG4gICAgICAgIH07XG4gICAgfSk7XG5cbiAgICBvZmZzZXRDb25maWcgPSBjb21wdXRlZDxQYXJ0aWFsPFN0YWdlQ29uZmlnPj4oKCkgPT4ge1xuICAgICAgICBjb25zdCB7IHNjcm9sbExlZnQsIHNjcm9sbFRvcCB9ID0gdGhpcy5zY3JvbGxTdGF0ZSgpITtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG9mZnNldFg6IHNjcm9sbExlZnQsXG4gICAgICAgICAgICBvZmZzZXRZOiBzY3JvbGxUb3BcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIGNvbHVtbkhlYWRPckFkZEZpZWxkQ29uZmlnID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCB7IGNvbHVtblN0YXJ0SW5kZXgsIGNvbHVtblN0b3BJbmRleCB9ID0gdGhpcy52aXNpYmxlUmFuZ2VJbmZvKCk7XG4gICAgICAgIGNvbnN0IHsgYWlUYWJsZSwgY29vcmRpbmF0ZSwgcmVhZG9ubHkgfSA9IHRoaXMuY29uZmlnKCk7XG4gICAgICAgIGNvbnN0IHsgcG9pbnRQb3NpdGlvbiB9ID0gYWlUYWJsZS5jb250ZXh0ITtcbiAgICAgICAgY29uc3QgZmllbGRzID0gdGhpcy5maWVsZHMoKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGFpVGFibGUsXG4gICAgICAgICAgICBjb29yZGluYXRlLFxuICAgICAgICAgICAgZmllbGRzLFxuICAgICAgICAgICAgY29sdW1uU3RhcnRJbmRleCxcbiAgICAgICAgICAgIGNvbHVtblN0b3BJbmRleCxcbiAgICAgICAgICAgIHBvaW50UG9zaXRpb246IHBvaW50UG9zaXRpb24oKSxcbiAgICAgICAgICAgIHJlYWRvbmx5XG4gICAgICAgIH07XG4gICAgfSk7XG5cbiAgICBjZWxsc0NvbmZpZyA9IGNvbXB1dGVkPEFJVGFibGVDZWxsc0NvbmZpZz4oKCkgPT4ge1xuICAgICAgICBjb25zdCB7IGFpVGFibGUsIHJlYWRvbmx5LCBjb29yZGluYXRlLCByZWZlcmVuY2VzLCBhY3Rpb25zLCByb3dEcmFnRGlzYWJsZWQgfSA9IHRoaXMuY29uZmlnKCk7XG4gICAgICAgIGNvbnN0IHsgcm93U3RhcnRJbmRleCwgcm93U3RvcEluZGV4LCBjb2x1bW5TdGFydEluZGV4LCBjb2x1bW5TdG9wSW5kZXggfSA9IHRoaXMudmlzaWJsZVJhbmdlSW5mbygpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgYWlUYWJsZSxcbiAgICAgICAgICAgIHJlYWRvbmx5LFxuICAgICAgICAgICAgY29vcmRpbmF0ZSxcbiAgICAgICAgICAgIHJlZmVyZW5jZXMsXG4gICAgICAgICAgICByb3dTdGFydEluZGV4LFxuICAgICAgICAgICAgcm93U3RvcEluZGV4LFxuICAgICAgICAgICAgY29sdW1uU3RhcnRJbmRleCxcbiAgICAgICAgICAgIGNvbHVtblN0b3BJbmRleCxcbiAgICAgICAgICAgIGFjdGlvbnMsXG4gICAgICAgICAgICByb3dEcmFnRGlzYWJsZWRcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIGFjdGl2ZUNlbGxCb3JkZXJDb25maWcgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiBjcmVhdGVBY3RpdmVDZWxsQm9yZGVyKHRoaXMuY2VsbHNDb25maWcoKSk7XG4gICAgfSk7XG5cbiAgICBzdGFnZU1vdXNlbW92ZShlOiBLb0V2ZW50T2JqZWN0PE1vdXNlRXZlbnQ+KSB7XG4gICAgICAgIHRoaXMua29Nb3VzZW1vdmUuZW1pdChlIGFzIEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4pO1xuICAgIH1cblxuICAgIHN0YWdlTW91c2Vkb3duKGU6IEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4pIHtcbiAgICAgICAgdGhpcy5rb01vdXNlZG93bi5lbWl0KGUgYXMgS29FdmVudE9iamVjdDxNb3VzZUV2ZW50Pik7XG4gICAgfVxuXG4gICAgc3RhZ2VNb3VzZXVwKGU6IEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4pIHtcbiAgICAgICAgdGhpcy5rb01vdXNldXAuZW1pdChlIGFzIEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4pO1xuICAgIH1cblxuICAgIHN0YWdlQ29udGV4dG1lbnUoZTogS29FdmVudE9iamVjdDxNb3VzZUV2ZW50Pikge1xuICAgICAgICB0aGlzLmtvQ29udGV4dG1lbnUuZW1pdChlIGFzIEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4pO1xuICAgIH1cblxuICAgIHN0YWdlQ2xpY2soZTogS29FdmVudE9iamVjdDxNb3VzZUV2ZW50Pikge1xuICAgICAgICB0aGlzLmtvQ2xpY2suZW1pdChlIGFzIEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4pO1xuICAgIH1cblxuICAgIHN0YWdlRGJsY2xpY2soZTogS29FdmVudE9iamVjdDxNb3VzZUV2ZW50Pikge1xuICAgICAgICB0aGlzLmtvRGJsY2xpY2suZW1pdChlIGFzIEtvRXZlbnRPYmplY3Q8TW91c2VFdmVudD4pO1xuICAgIH1cblxuICAgIHN0YWdlTW91c2VsZWF2ZShlOiBLb0V2ZW50T2JqZWN0PE1vdXNlRXZlbnQ+KSB7XG4gICAgICAgIHRoaXMua29Nb3VzZWxlYXZlLmVtaXQoZSBhcyBLb0V2ZW50T2JqZWN0PE1vdXNlRXZlbnQ+KTtcbiAgICB9XG59XG4iLCI8a28tc3RhZ2VcbiAgICBbY29uZmlnXT1cInN0YWdlQ29uZmlnKClcIlxuICAgIChrb01vdXNlbW92ZSk9XCJzdGFnZU1vdXNlbW92ZSgkZXZlbnQpXCJcbiAgICAoa29Nb3VzZWRvd24pPVwic3RhZ2VNb3VzZWRvd24oJGV2ZW50KVwiXG4gICAgKGtvTW91c2V1cCk9XCJzdGFnZU1vdXNldXAoJGV2ZW50KVwiXG4gICAgKGtvQ29udGV4dG1lbnUpPVwic3RhZ2VDb250ZXh0bWVudSgkZXZlbnQpXCJcbiAgICAoa29DbGljayk9XCJzdGFnZUNsaWNrKCRldmVudClcIlxuICAgIChrb0RibGNsaWNrKT1cInN0YWdlRGJsY2xpY2soJGV2ZW50KVwiXG4gICAgKGtvTW91c2VsZWF2ZSk9XCJzdGFnZU1vdXNlbGVhdmUoJGV2ZW50KVwiXG4+XG4gICAgPGtvLWxheWVyPlxuICAgICAgICA8a28tZ3JvdXAgW2NvbmZpZ109XCJncmlkR3JvdXBDb25maWcoKVwiPlxuICAgICAgICAgICAgPGtvLWdyb3VwIFtjb25maWddPVwib2Zmc2V0WUNvbmZpZygpXCI+XG4gICAgICAgICAgICAgICAgPGFpLXRhYmxlLWZyb3plbi1jZWxscyBbY29uZmlnXT1cImNlbGxzQ29uZmlnKClcIj48L2FpLXRhYmxlLWZyb3plbi1jZWxscz5cbiAgICAgICAgICAgICAgICA8YWktdGFibGUtb3RoZXItcm93cyBbY29uZmlnXT1cImNlbGxzQ29uZmlnKClcIj48L2FpLXRhYmxlLW90aGVyLXJvd3M+XG4gICAgICAgICAgICAgICAgQGlmICghaGlkZGVuSW5kZXhDb2x1bW4oKSkge1xuICAgICAgICAgICAgICAgICAgICA8YWktdGFibGUtaG92ZXItcm93LWhlYWRzIFtjb25maWddPVwiY2VsbHNDb25maWcoKVwiPjwvYWktdGFibGUtaG92ZXItcm93LWhlYWRzPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8YWktdGFibGUtZnJvemVuLXBsYWNlaG9sZGVyLWNlbGxzIFtjb25maWddPVwiY2VsbHNDb25maWcoKVwiPjwvYWktdGFibGUtZnJvemVuLXBsYWNlaG9sZGVyLWNlbGxzPlxuICAgICAgICAgICAgPC9rby1ncm91cD5cblxuICAgICAgICAgICAgPGtvLWdyb3VwPlxuICAgICAgICAgICAgICAgIDxhaS10YWJsZS1mcm96ZW4tY29sdW1uLWhlYWRzIFtjb25maWddPVwiY29sdW1uSGVhZE9yQWRkRmllbGRDb25maWcoKVwiPjwvYWktdGFibGUtZnJvemVuLWNvbHVtbi1oZWFkcz5cbiAgICAgICAgICAgIDwva28tZ3JvdXA+XG5cbiAgICAgICAgICAgIDxrby1ncm91cCBbY29uZmlnXT1cImNvbW1vbkdyb3VwQ29uZmlnKClcIj5cbiAgICAgICAgICAgICAgICA8a28tZ3JvdXAgW2NvbmZpZ109XCJvZmZzZXRDb25maWcoKVwiPlxuICAgICAgICAgICAgICAgICAgICA8YWktdGFibGUtY2VsbHMgW2NvbmZpZ109XCJjZWxsc0NvbmZpZygpXCI+PC9haS10YWJsZS1jZWxscz5cbiAgICAgICAgICAgICAgICA8L2tvLWdyb3VwPlxuXG4gICAgICAgICAgICAgICAgPGtvLWdyb3VwIFtjb25maWddPVwib2Zmc2V0WENvbmZpZygpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxhaS10YWJsZS1jb2x1bW4taGVhZHMgW2NvbmZpZ109XCJjb2x1bW5IZWFkT3JBZGRGaWVsZENvbmZpZygpXCI+PC9haS10YWJsZS1jb2x1bW4taGVhZHM+XG4gICAgICAgICAgICAgICAgICAgIDxhaS10YWJsZS1hZGQtZmllbGQgW2NvbmZpZ109XCJjb2x1bW5IZWFkT3JBZGRGaWVsZENvbmZpZygpXCI+PC9haS10YWJsZS1hZGQtZmllbGQ+XG4gICAgICAgICAgICAgICAgPC9rby1ncm91cD5cbiAgICAgICAgICAgIDwva28tZ3JvdXA+XG5cbiAgICAgICAgICAgIDxrby1ncm91cCBbY29uZmlnXT1cImF0dGFjaEdyb3VwQ29uZmlnKClcIj5cbiAgICAgICAgICAgICAgICA8a28tZ3JvdXAgW2NvbmZpZ109XCJvZmZzZXRDb25maWcoKVwiPlxuICAgICAgICAgICAgICAgICAgICA8YWktdGFibGUtcGxhY2Vob2xkZXItY2VsbHMgW2NvbmZpZ109XCJjZWxsc0NvbmZpZygpXCI+PC9haS10YWJsZS1wbGFjZWhvbGRlci1jZWxscz5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChhY3RpdmVDZWxsQm9yZGVyQ29uZmlnKCkuYWN0aXZlQ2VsbEJvcmRlcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGtvLXJlY3QgW2NvbmZpZ109XCJhY3RpdmVDZWxsQm9yZGVyQ29uZmlnKCkuYWN0aXZlQ2VsbEJvcmRlciFcIj48L2tvLXJlY3Q+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPGFpLXRhYmxlLWhvdmVyLWNlbGwgW2NvbmZpZ109XCJjZWxsc0NvbmZpZygpXCI+PC9haS10YWJsZS1ob3Zlci1jZWxsPlxuICAgICAgICAgICAgICAgIDwva28tZ3JvdXA+XG4gICAgICAgICAgICA8L2tvLWdyb3VwPlxuXG4gICAgICAgICAgICA8a28tZ3JvdXAgW2NvbmZpZ109XCJmcm96ZW5BdHRhY2hHcm91cENvbmZpZygpXCI+XG4gICAgICAgICAgICAgICAgPGtvLWdyb3VwIFtjb25maWddPVwib2Zmc2V0WUNvbmZpZygpXCI+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoYWN0aXZlQ2VsbEJvcmRlckNvbmZpZygpLmZyb3plbkFjdGl2ZUNlbGxCb3JkZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxrby1yZWN0IFtjb25maWddPVwiYWN0aXZlQ2VsbEJvcmRlckNvbmZpZygpLmZyb3plbkFjdGl2ZUNlbGxCb3JkZXIhXCI+PC9rby1yZWN0PlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDxhaS10YWJsZS1ob3Zlci1jZWxsIFtjb25maWddPVwiY2VsbHNDb25maWcoKVwiPjwvYWktdGFibGUtaG92ZXItY2VsbD5cbiAgICAgICAgICAgICAgICA8L2tvLWdyb3VwPlxuICAgICAgICAgICAgPC9rby1ncm91cD5cbiAgICAgICAgPC9rby1ncm91cD5cbiAgICA8L2tvLWxheWVyPlxuPC9rby1zdGFnZT5cblxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuIl19
@@ -14,4 +14,4 @@ export var AITableSelectAllState;
14
14
  AITableSelectAllState["partial"] = "partial";
15
15
  AITableSelectAllState["none"] = "none";
16
16
  })(AITableSelectAllState || (AITableSelectAllState = {}));
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3R5cGVzL2dyaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMERBLE1BQU0sQ0FBTixJQUFZLGdCQUdYO0FBSEQsV0FBWSxnQkFBZ0I7SUFDeEIsdUNBQW1CLENBQUE7SUFDbkIsMkNBQXVCLENBQUE7QUFDM0IsQ0FBQyxFQUhXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFHM0I7QUFlRCxNQUFNLENBQU4sSUFBWSxlQUdYO0FBSEQsV0FBWSxlQUFlO0lBQ3ZCLGdDQUFhLENBQUE7SUFDYixnQ0FBYSxDQUFBO0FBQ2pCLENBQUMsRUFIVyxlQUFlLEtBQWYsZUFBZSxRQUcxQjtBQTRDRCxNQUFNLENBQU4sSUFBWSxxQkFJWDtBQUpELFdBQVkscUJBQXFCO0lBQzdCLG9DQUFXLENBQUE7SUFDWCw0Q0FBbUIsQ0FBQTtJQUNuQixzQ0FBYSxDQUFBO0FBQ2pCLENBQUMsRUFKVyxxQkFBcUIsS0FBckIscUJBQXFCLFFBSWhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2lnbmFsLCBWaWV3Q29udGFpbmVyUmVmLCBXcml0YWJsZVNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBSVRhYmxlRmllbGRNZW51SXRlbSB9IGZyb20gJy4vZmllbGQnO1xuaW1wb3J0IHsgQUlUYWJsZUxpbmVhclJvdyB9IGZyb20gJy4vcm93JztcbmltcG9ydCB7XG4gICAgQUlUYWJsZUZpZWxkLFxuICAgIEFJVGFibGVSZWNvcmQsXG4gICAgRmllbGRWYWx1ZSxcbiAgICBBSVRhYmxlRmllbGRzLFxuICAgIEFJUmVjb3JkRmllbGRJZFBhdGgsXG4gICAgQUlUYWJsZUZpZWxkVHlwZSxcbiAgICBVcGRhdGVGaWVsZFZhbHVlT3B0aW9ucyxcbiAgICBBSVRhYmxlUmVmZXJlbmNlc1xufSBmcm9tICdAYWktdGFibGUvdXRpbHMnO1xuaW1wb3J0IHsgQUlUYWJsZSwgQ29vcmRpbmF0ZSB9IGZyb20gJy4uL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVHcmlkQ2VsbFJlbmRlclNjaGVtYSB7XG4gICAgZWRpdG9yPzogYW55O1xuICAgIHRyYW5zZm9ybT86IChmaWVsZDogQUlUYWJsZUZpZWxkLCB2YWx1ZTogRmllbGRWYWx1ZSkgPT4gYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVDb250ZW50IHtcbiAgICByZWNvcmRzOiBQYXJ0aWFsPEFJVGFibGVSZWNvcmQ+W107XG4gICAgZmllbGRzOiBBSVRhYmxlRmllbGRzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVHcmlkRGF0YSBleHRlbmRzIEFJVGFibGVDb250ZW50IHtcbiAgICB0eXBlOiAnZ3JpZCc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVNlbGVjdGlvbiB7XG4gICAgc2VsZWN0ZWRSZWNvcmRzOiBTZXQ8c3RyaW5nPjsgLy8gYCR7cmVjb3JkSWR9YFxuICAgIHNlbGVjdGVkRmllbGRzOiBTZXQ8c3RyaW5nPjsgLy8gYCR7ZmllbGRJZH1gXG4gICAgc2VsZWN0ZWRDZWxsczogU2V0PHN0cmluZz47IC8vIGAke3JlY29yZElkfToke2ZpZWxkSWR9YFxuICAgIGFjdGl2ZUNlbGw6IEFJUmVjb3JkRmllbGRJZFBhdGggfCBudWxsO1xuICAgIHNlbGVjdEFsbFN0YXRlOiBBSVRhYmxlU2VsZWN0QWxsU3RhdGU7IC8vICdhbGwnLCdwYXJ0aWFsJywnbm9uZSdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSUZpZWxkQ29uZmlnIHtcbiAgICBmaWVsZFJlbmRlcmVycz86IFBhcnRpYWw8UmVjb3JkPEFJVGFibGVGaWVsZFR5cGUsIEFJVGFibGVHcmlkQ2VsbFJlbmRlclNjaGVtYT4+O1xuICAgIGZpZWxkU2V0dGluZ0NvbXBvbmVudD86IGFueTtcbiAgICBmaWVsZE1lbnVzPzogKGFpVGFibGU6IEFJVGFibGUpID0+IEFJVGFibGVGaWVsZE1lbnVJdGVtW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVJlbmRlcmVyQ29uZmlnIHtcbiAgICBhaVRhYmxlOiBBSVRhYmxlO1xuICAgIGNvbnRhaW5lcjogSFRNTERpdkVsZW1lbnQ7XG4gICAgY29vcmRpbmF0ZTogQ29vcmRpbmF0ZTtcbiAgICBjb250YWluZXJXaWR0aDogbnVtYmVyO1xuICAgIGNvbnRhaW5lckhlaWdodDogbnVtYmVyO1xuICAgIHJlZmVyZW5jZXM6IEFJVGFibGVSZWZlcmVuY2VzO1xuICAgIHJlYWRvbmx5OiBib29sZWFuO1xuICAgIHJvd0RyYWdEaXNhYmxlZDogYm9vbGVhbjtcbiAgICBhY3Rpb25zOiB7XG4gICAgICAgIHVwZGF0ZUZpZWxkVmFsdWU6IChvcHRpb25zOiBVcGRhdGVGaWVsZFZhbHVlT3B0aW9ucykgPT4gdm9pZDtcbiAgICB9O1xufVxuXG5leHBvcnQgZW51bSBBSVRhYmxlQ2hlY2tUeXBlIHtcbiAgICBjaGVja2VkID0gJ2NoZWNrZWQnLFxuICAgIHVuY2hlY2tlZCA9ICd1bmNoZWNrZWQnXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVNjcm9sbFN0YXRlIHtcbiAgICBzY3JvbGxUb3A6IG51bWJlcjtcbiAgICBzY3JvbGxMZWZ0OiBudW1iZXI7XG4gICAgaXNTY3JvbGxpbmc6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2Nyb2xsQWN0aW9uT3B0aW9ucyB7XG4gICAgZGVsdGFYOiBudW1iZXI7XG4gICAgZGVsdGFZOiBudW1iZXI7XG4gICAgc2hpZnRLZXk6IGJvb2xlYW47XG4gICAgY2FsbGJhY2s/OiAoKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgZW51bSBBSVRhYmxlQXJlYVR5cGUge1xuICAgIGdyaWQgPSAnZ3JpZCcsXG4gICAgbm9uZSA9ICdub25lJ1xufVxuXG5leHBvcnQgdHlwZSBBSVRhYmxlUG9pbnRQb3NpdGlvbiA9IHtcbiAgICB4OiBudW1iZXI7XG4gICAgeTogbnVtYmVyO1xuICAgIGFyZWFUeXBlOiBBSVRhYmxlQXJlYVR5cGU7XG4gICAgdGFyZ2V0TmFtZTogc3RyaW5nO1xuICAgIHJlYWxUYXJnZXROYW1lOiBzdHJpbmc7XG4gICAgcm93SW5kZXg6IG51bWJlcjtcbiAgICBjb2x1bW5JbmRleDogbnVtYmVyO1xuICAgIG9mZnNldFRvcDogbnVtYmVyO1xuICAgIG9mZnNldExlZnQ6IG51bWJlcjtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZUVkaXRQb3NpdGlvbiB7XG4gICAgeDogbnVtYmVyO1xuICAgIHk6IG51bWJlcjtcbiAgICB3aWR0aDogbnVtYmVyO1xuICAgIGhlaWdodDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVPcGVuRWRpdE9wdGlvbnMge1xuICAgIHJlY29yZElkOiBzdHJpbmc7XG4gICAgZmllbGRJZDogc3RyaW5nO1xuICAgIGNvb3JkaW5hdGU6IENvb3JkaW5hdGU7XG4gICAgcmVmZXJlbmNlczogQUlUYWJsZVJlZmVyZW5jZXM7XG4gICAgY29udGFpbmVyPzogSFRNTERpdkVsZW1lbnQ7XG4gICAgaXNIb3ZlckVkaXQ/OiBib29sZWFuO1xuICAgIHZpZXdDb250YWluZXJSZWY/OiBWaWV3Q29udGFpbmVyUmVmO1xuICAgIHVwZGF0ZUZpZWxkVmFsdWU6IChvcHRpb25zOiBVcGRhdGVGaWVsZFZhbHVlT3B0aW9uczxhbnk+KSA9PiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVDb250ZXh0IHtcbiAgICBsaW5lYXJSb3dzOiBTaWduYWw8QUlUYWJsZUxpbmVhclJvd1tdPjtcbiAgICBwb2ludFBvc2l0aW9uOiBXcml0YWJsZVNpZ25hbDxBSVRhYmxlUG9pbnRQb3NpdGlvbj47XG4gICAgc2Nyb2xsU3RhdGU6IFdyaXRhYmxlU2lnbmFsPEFJVGFibGVTY3JvbGxTdGF0ZT47XG4gICAgc2Nyb2xsQWN0aW9uOiAob3B0aW9uczogU2Nyb2xsQWN0aW9uT3B0aW9ucykgPT4gdm9pZDtcbiAgICB2aXNpYmxlQ29sdW1uc0luZGV4TWFwOiBTaWduYWw8TWFwPHN0cmluZywgbnVtYmVyPj47XG4gICAgdmlzaWJsZVJvd3NJbmRleE1hcDogU2lnbmFsPE1hcDxzdHJpbmcsIG51bWJlcj4+O1xuICAgIGZyb3plbkNvbHVtbkNvdW50OiBTaWduYWw8bnVtYmVyPjtcbiAgICByZWZlcmVuY2VzOiBTaWduYWw8QUlUYWJsZVJlZmVyZW5jZXM+O1xuICAgIGFpRmllbGRDb25maWc6IFNpZ25hbDxBSUZpZWxkQ29uZmlnIHwgdW5kZWZpbmVkPjtcbn1cblxuZXhwb3J0IGVudW0gQUlUYWJsZVNlbGVjdEFsbFN0YXRlIHtcbiAgICBhbGwgPSAnYWxsJyxcbiAgICBwYXJ0aWFsID0gJ3BhcnRpYWwnLFxuICAgIG5vbmUgPSAnbm9uZSdcbn1cbiJdfQ==
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3R5cGVzL2dyaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMkRBLE1BQU0sQ0FBTixJQUFZLGdCQUdYO0FBSEQsV0FBWSxnQkFBZ0I7SUFDeEIsdUNBQW1CLENBQUE7SUFDbkIsMkNBQXVCLENBQUE7QUFDM0IsQ0FBQyxFQUhXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFHM0I7QUFlRCxNQUFNLENBQU4sSUFBWSxlQUdYO0FBSEQsV0FBWSxlQUFlO0lBQ3ZCLGdDQUFhLENBQUE7SUFDYixnQ0FBYSxDQUFBO0FBQ2pCLENBQUMsRUFIVyxlQUFlLEtBQWYsZUFBZSxRQUcxQjtBQTZDRCxNQUFNLENBQU4sSUFBWSxxQkFJWDtBQUpELFdBQVkscUJBQXFCO0lBQzdCLG9DQUFXLENBQUE7SUFDWCw0Q0FBbUIsQ0FBQTtJQUNuQixzQ0FBYSxDQUFBO0FBQ2pCLENBQUMsRUFKVyxxQkFBcUIsS0FBckIscUJBQXFCLFFBSWhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2lnbmFsLCBWaWV3Q29udGFpbmVyUmVmLCBXcml0YWJsZVNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBSVRhYmxlRmllbGRNZW51SXRlbSB9IGZyb20gJy4vZmllbGQnO1xuaW1wb3J0IHsgQUlUYWJsZUxpbmVhclJvdyB9IGZyb20gJy4vcm93JztcbmltcG9ydCB7XG4gICAgQUlUYWJsZUZpZWxkLFxuICAgIEFJVGFibGVSZWNvcmQsXG4gICAgRmllbGRWYWx1ZSxcbiAgICBBSVRhYmxlRmllbGRzLFxuICAgIEFJUmVjb3JkRmllbGRJZFBhdGgsXG4gICAgQUlUYWJsZUZpZWxkVHlwZSxcbiAgICBVcGRhdGVGaWVsZFZhbHVlT3B0aW9ucyxcbiAgICBBSVRhYmxlUmVmZXJlbmNlc1xufSBmcm9tICdAYWktdGFibGUvdXRpbHMnO1xuaW1wb3J0IHsgQUlUYWJsZSwgQ29vcmRpbmF0ZSB9IGZyb20gJy4uL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVHcmlkQ2VsbFJlbmRlclNjaGVtYSB7XG4gICAgZWRpdG9yPzogYW55O1xuICAgIHRyYW5zZm9ybT86IChmaWVsZDogQUlUYWJsZUZpZWxkLCB2YWx1ZTogRmllbGRWYWx1ZSkgPT4gYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVDb250ZW50IHtcbiAgICByZWNvcmRzOiBQYXJ0aWFsPEFJVGFibGVSZWNvcmQ+W107XG4gICAgZmllbGRzOiBBSVRhYmxlRmllbGRzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVHcmlkRGF0YSBleHRlbmRzIEFJVGFibGVDb250ZW50IHtcbiAgICB0eXBlOiAnZ3JpZCc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQUlUYWJsZVNlbGVjdGlvbiB7XG4gICAgc2VsZWN0ZWRSZWNvcmRzOiBTZXQ8c3RyaW5nPjsgLy8gYCR7cmVjb3JkSWR9YFxuICAgIHNlbGVjdGVkRmllbGRzOiBTZXQ8c3RyaW5nPjsgLy8gYCR7ZmllbGRJZH1gXG4gICAgc2VsZWN0ZWRDZWxsczogU2V0PHN0cmluZz47IC8vIGAke3JlY29yZElkfToke2ZpZWxkSWR9YFxuICAgIGFjdGl2ZUNlbGw6IEFJUmVjb3JkRmllbGRJZFBhdGggfCBudWxsO1xuICAgIHNlbGVjdEFsbFN0YXRlOiBBSVRhYmxlU2VsZWN0QWxsU3RhdGU7IC8vICdhbGwnLCdwYXJ0aWFsJywnbm9uZSdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSUZpZWxkQ29uZmlnIHtcbiAgICBoaWRkZW5JbmRleENvbHVtbj86IGJvb2xlYW47XG4gICAgZmllbGRSZW5kZXJlcnM/OiBQYXJ0aWFsPFJlY29yZDxBSVRhYmxlRmllbGRUeXBlLCBBSVRhYmxlR3JpZENlbGxSZW5kZXJTY2hlbWE+PjtcbiAgICBmaWVsZFNldHRpbmdDb21wb25lbnQ/OiBhbnk7XG4gICAgZmllbGRNZW51cz86IChhaVRhYmxlOiBBSVRhYmxlKSA9PiBBSVRhYmxlRmllbGRNZW51SXRlbVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVSZW5kZXJlckNvbmZpZyB7XG4gICAgYWlUYWJsZTogQUlUYWJsZTtcbiAgICBjb250YWluZXI6IEhUTUxEaXZFbGVtZW50O1xuICAgIGNvb3JkaW5hdGU6IENvb3JkaW5hdGU7XG4gICAgY29udGFpbmVyV2lkdGg6IG51bWJlcjtcbiAgICBjb250YWluZXJIZWlnaHQ6IG51bWJlcjtcbiAgICByZWZlcmVuY2VzOiBBSVRhYmxlUmVmZXJlbmNlcztcbiAgICByZWFkb25seTogYm9vbGVhbjtcbiAgICByb3dEcmFnRGlzYWJsZWQ6IGJvb2xlYW47XG4gICAgYWN0aW9uczoge1xuICAgICAgICB1cGRhdGVGaWVsZFZhbHVlOiAob3B0aW9uczogVXBkYXRlRmllbGRWYWx1ZU9wdGlvbnMpID0+IHZvaWQ7XG4gICAgfTtcbn1cblxuZXhwb3J0IGVudW0gQUlUYWJsZUNoZWNrVHlwZSB7XG4gICAgY2hlY2tlZCA9ICdjaGVja2VkJyxcbiAgICB1bmNoZWNrZWQgPSAndW5jaGVja2VkJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVTY3JvbGxTdGF0ZSB7XG4gICAgc2Nyb2xsVG9wOiBudW1iZXI7XG4gICAgc2Nyb2xsTGVmdDogbnVtYmVyO1xuICAgIGlzU2Nyb2xsaW5nOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNjcm9sbEFjdGlvbk9wdGlvbnMge1xuICAgIGRlbHRhWDogbnVtYmVyO1xuICAgIGRlbHRhWTogbnVtYmVyO1xuICAgIHNoaWZ0S2V5OiBib29sZWFuO1xuICAgIGNhbGxiYWNrPzogKCkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGVudW0gQUlUYWJsZUFyZWFUeXBlIHtcbiAgICBncmlkID0gJ2dyaWQnLFxuICAgIG5vbmUgPSAnbm9uZSdcbn1cblxuZXhwb3J0IHR5cGUgQUlUYWJsZVBvaW50UG9zaXRpb24gPSB7XG4gICAgeDogbnVtYmVyO1xuICAgIHk6IG51bWJlcjtcbiAgICBhcmVhVHlwZTogQUlUYWJsZUFyZWFUeXBlO1xuICAgIHRhcmdldE5hbWU6IHN0cmluZztcbiAgICByZWFsVGFyZ2V0TmFtZTogc3RyaW5nO1xuICAgIHJvd0luZGV4OiBudW1iZXI7XG4gICAgY29sdW1uSW5kZXg6IG51bWJlcjtcbiAgICBvZmZzZXRUb3A6IG51bWJlcjtcbiAgICBvZmZzZXRMZWZ0OiBudW1iZXI7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEFJVGFibGVFZGl0UG9zaXRpb24ge1xuICAgIHg6IG51bWJlcjtcbiAgICB5OiBudW1iZXI7XG4gICAgd2lkdGg6IG51bWJlcjtcbiAgICBoZWlnaHQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlT3BlbkVkaXRPcHRpb25zIHtcbiAgICByZWNvcmRJZDogc3RyaW5nO1xuICAgIGZpZWxkSWQ6IHN0cmluZztcbiAgICBjb29yZGluYXRlOiBDb29yZGluYXRlO1xuICAgIHJlZmVyZW5jZXM6IEFJVGFibGVSZWZlcmVuY2VzO1xuICAgIGNvbnRhaW5lcj86IEhUTUxEaXZFbGVtZW50O1xuICAgIGlzSG92ZXJFZGl0PzogYm9vbGVhbjtcbiAgICB2aWV3Q29udGFpbmVyUmVmPzogVmlld0NvbnRhaW5lclJlZjtcbiAgICB1cGRhdGVGaWVsZFZhbHVlOiAob3B0aW9uczogVXBkYXRlRmllbGRWYWx1ZU9wdGlvbnM8YW55PikgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBSVRhYmxlQ29udGV4dCB7XG4gICAgcm93SGVhZFdpZHRoOiBTaWduYWw8bnVtYmVyPjtcbiAgICBsaW5lYXJSb3dzOiBTaWduYWw8QUlUYWJsZUxpbmVhclJvd1tdPjtcbiAgICBwb2ludFBvc2l0aW9uOiBXcml0YWJsZVNpZ25hbDxBSVRhYmxlUG9pbnRQb3NpdGlvbj47XG4gICAgc2Nyb2xsU3RhdGU6IFdyaXRhYmxlU2lnbmFsPEFJVGFibGVTY3JvbGxTdGF0ZT47XG4gICAgc2Nyb2xsQWN0aW9uOiAob3B0aW9uczogU2Nyb2xsQWN0aW9uT3B0aW9ucykgPT4gdm9pZDtcbiAgICB2aXNpYmxlQ29sdW1uc0luZGV4TWFwOiBTaWduYWw8TWFwPHN0cmluZywgbnVtYmVyPj47XG4gICAgdmlzaWJsZVJvd3NJbmRleE1hcDogU2lnbmFsPE1hcDxzdHJpbmcsIG51bWJlcj4+O1xuICAgIGZyb3plbkNvbHVtbkNvdW50OiBTaWduYWw8bnVtYmVyPjtcbiAgICByZWZlcmVuY2VzOiBTaWduYWw8QUlUYWJsZVJlZmVyZW5jZXM+O1xuICAgIGFpRmllbGRDb25maWc6IFNpZ25hbDxBSUZpZWxkQ29uZmlnIHwgdW5kZWZpbmVkPjtcbn1cblxuZXhwb3J0IGVudW0gQUlUYWJsZVNlbGVjdEFsbFN0YXRlIHtcbiAgICBhbGwgPSAnYWxsJyxcbiAgICBwYXJ0aWFsID0gJ3BhcnRpYWwnLFxuICAgIG5vbmUgPSAnbm9uZSdcbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvdHlwZXMvbGF5b3V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEFJVGFibGVMYXlvdXQge1xuICAgIHg6IG51bWJlcjtcbiAgICB5OiBudW1iZXI7XG4gICAgcm93SW5kZXg6IG51bWJlcjtcbiAgICBjb2x1bW5JbmRleDogbnVtYmVyO1xuICAgIHJvd0hlaWdodDogbnVtYmVyO1xuICAgIGNvbHVtbldpZHRoOiBudW1iZXI7XG4gICAgY29sdW1uQ291bnQ6IG51bWJlcjtcbiAgICBjb250YWluZXJXaWR0aDogbnVtYmVyO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvdHlwZXMvbGF5b3V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEFJVGFibGVMYXlvdXQge1xuICAgIHg6IG51bWJlcjtcbiAgICB5OiBudW1iZXI7XG4gICAgcm93SW5kZXg6IG51bWJlcjtcbiAgICBjb2x1bW5JbmRleDogbnVtYmVyO1xuICAgIHJvd0hlaWdodDogbnVtYmVyO1xuICAgIGNvbHVtbldpZHRoOiBudW1iZXI7XG4gICAgY29sdW1uQ291bnQ6IG51bWJlcjtcbiAgICBjb250YWluZXJXaWR0aDogbnVtYmVyO1xuICAgIHJvd0hlYWRXaWR0aDogbnVtYmVyO1xuICAgIGhpZGRlbkluZGV4Q29sdW1uOiBib29sZWFuO1xufVxuIl19
@@ -17,6 +17,9 @@ export function getCellHorizontalPosition(options) {
17
17
  const { columnWidth } = options;
18
18
  return { width: columnWidth, offset: 0 };
19
19
  }
20
+ // @deprecated 请使用 FieldModelMap 的 transformCellValue 方法
21
+ // const fieldModel = FieldModelMap[field.type];
22
+ // const transformValue = fieldModel.transformCellValue(cellValue, { aiTable, field });
20
23
  export function transformCellValue(aiTable, field, cellValue) {
21
24
  const fieldModel = FieldModelMap[field.type];
22
25
  if (!fieldModel.isValid(cellValue)) {
@@ -74,4 +77,4 @@ export function getAvatarBgColor(name) {
74
77
  : 0;
75
78
  return colors[code % 9];
76
79
  }
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3V0aWxzL2NlbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFXLHFCQUFxQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3pELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXhDLE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxPQUFnQixFQUFFLE1BQXNCO0lBQzVFLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxhQUFhLENBQUM7SUFDdEQsTUFBTSxvQkFBb0IsR0FBbUIsRUFBRSxDQUFDO0lBQ2hELE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUU7UUFDN0Isb0JBQW9CLENBQUMsS0FBSyxDQUFDLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUF3QixDQUFDLEtBQUssQ0FBQztJQUNqSSxDQUFDLENBQUMsQ0FBQztJQUNILE9BQU8sb0JBQW9CLENBQUM7QUFDaEMsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSx5QkFBeUIsQ0FBQyxPQUEwRTtJQUNoSCxNQUFNLEVBQUUsV0FBVyxFQUFFLEdBQUcsT0FBTyxDQUFDO0lBQ2hDLE9BQU8sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQztBQUM3QyxDQUFDO0FBRUQsTUFBTSxVQUFVLGtCQUFrQixDQUFVLE9BQWdCLEVBQUUsS0FBbUIsRUFBRSxTQUFxQjtJQUNwRyxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdDLElBQUksQ0FBQyxV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QUFFLElBQUk7WUFDbEIsTUFBTSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ25DLE9BQU8sTUFBTSxDQUFDO1FBQ2xCLENBQUMsRUFDRCxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FDZixDQUFDLEtBQUs7UUFDVCxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ1osT0FBTyxNQUFNLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQzVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBSVRhYmxlRmllbGQsIEFJVGFibGVGaWVsZE9wdGlvbiwgQUlUYWJsZVNpemVNYXAsIEZpZWxkVmFsdWUgfSBmcm9tICdAYWktdGFibGUvdXRpbHMnO1xuaW1wb3J0IHsgQUlUYWJsZSwgZ2V0RmllbGRPcHRpb25CeUZpZWxkIH0gZnJvbSAnLi4vY29yZSc7XG5pbXBvcnQgeyBBSV9UQUJMRV9HUklEX0ZJRUxEX1NFUlZJQ0VfTUFQIH0gZnJvbSAnLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgRmllbGRNb2RlbE1hcCB9IGZyb20gJy4vZmllbGQnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29sdW1uSW5kaWNlc1NpemVNYXAoYWlUYWJsZTogQUlUYWJsZSwgZmllbGRzOiBBSVRhYmxlRmllbGRbXSkge1xuICAgIGNvbnN0IGZpZWxkU2l6ZU1hcCA9IGFpVGFibGUuZ3JpZERhdGEoKS5maWVsZHNTaXplTWFwO1xuICAgIGNvbnN0IGNvbHVtbkluZGljZXNTaXplTWFwOiBBSVRhYmxlU2l6ZU1hcCA9IHt9O1xuICAgIGZpZWxkcz8uZm9yRWFjaCgoZmllbGQsIGluZGV4KSA9PiB7XG4gICAgICAgIGNvbHVtbkluZGljZXNTaXplTWFwW2luZGV4XSA9IGZpZWxkU2l6ZU1hcFtmaWVsZC5faWRdID8/IChnZXRGaWVsZE9wdGlvbkJ5RmllbGQoYWlUYWJsZSwgZmllbGQpIGFzIEFJVGFibGVGaWVsZE9wdGlvbikud2lkdGg7XG4gICAgfSk7XG4gICAgcmV0dXJuIGNvbHVtbkluZGljZXNTaXplTWFwO1xufVxuXG4vKipcbiAqIOiOt+WPluWNleWFg+agvOS9jee9rlxuICog5qC55o2u5Y2V5YWD5qC85piv5ZCm5piv56ys5LiA5YiXL+acgOWQjuS4gOWIl+ehruWumuWNleWFg+agvOaJgOWcqOeahOS9jee9rlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2VsbEhvcml6b250YWxQb3NpdGlvbihvcHRpb25zOiB7IGNvbHVtbldpZHRoOiBudW1iZXI7IGNvbHVtbkluZGV4OiBudW1iZXI7IGNvbHVtbkNvdW50OiBudW1iZXIgfSkge1xuICAgIGNvbnN0IHsgY29sdW1uV2lkdGggfSA9IG9wdGlvbnM7XG4gICAgcmV0dXJuIHsgd2lkdGg6IGNvbHVtbldpZHRoLCBvZmZzZXQ6IDAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zZm9ybUNlbGxWYWx1ZTxUID0gYW55PihhaVRhYmxlOiBBSVRhYmxlLCBmaWVsZDogQUlUYWJsZUZpZWxkLCBjZWxsVmFsdWU6IEZpZWxkVmFsdWUpOiBUIHwgbnVsbCB7XG4gICAgY29uc3QgZmllbGRNb2RlbCA9IEZpZWxkTW9kZWxNYXBbZmllbGQudHlwZV07XG4gICAgaWYgKCFmaWVsZE1vZGVsLmlzVmFsaWQoY2VsbFZhbHVlKSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBjb25zdCBmaWVsZFNlcnZpY2UgPSBBSV9UQUJMRV9HUklEX0ZJRUxEX1NFUlZJQ0VfTUFQLmdldChhaVRhYmxlKTtcblxuICAgIGlmICghZmllbGRTZXJ2aWNlKSB7XG4gICAgICAgIHJldHVybiBjZWxsVmFsdWU7XG4gICAgfVxuXG4gICAgY29uc3QgZmllbGRSZW5kZXJlcnMgPSBmaWVsZFNlcnZpY2UuYWlGaWVsZENvbmZpZz8uZmllbGRSZW5kZXJlcnM7XG4gICAgaWYgKCFmaWVsZFJlbmRlcmVycykge1xuICAgICAgICByZXR1cm4gY2VsbFZhbHVlO1xuICAgIH1cblxuICAgIGNvbnN0IGNlbGxUcmFuc2Zvcm0gPSBmaWVsZFJlbmRlcmVyc1tmaWVsZC50eXBlXT8udHJhbnNmb3JtO1xuICAgIGlmICghY2VsbFRyYW5zZm9ybSkge1xuICAgICAgICByZXR1cm4gY2VsbFZhbHVlO1xuICAgIH1cblxuICAgIGNvbnN0IGNlbGxUZXh0ID0gY2VsbFRyYW5zZm9ybShmaWVsZCwgY2VsbFZhbHVlKTtcblxuICAgIGlmIChjZWxsVGV4dCA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiBjZWxsVmFsdWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNlbGxUZXh0O1xufVxuXG4vKipcbiAqIGBcXHU0ZTAwYDogaHR0cHM6Ly93d3cuY29tcGFydC5jb20vZW4vdW5pY29kZS9VKzRFMDBcbiAqIGBcXHU5ZmE1YDogaHR0cHM6Ly93d3cuY29tcGFydC5jb20vZW4vdW5pY29kZS9VKzlGQTVcbiAqL1xuY29uc3QgVU5JRklFRF9JREVPR1JBUEhTX1JFR0VYID0gL15bXFx1NGUwMC1cXHU5ZmE1XSskLztcblxuY29uc3QgU0VUX09GX0xFVFRFUlNfUkVHRVggPSAvXlthLXpBLVpcXC8gXSskLztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEF2YXRhclNob3J0TmFtZShuYW1lOiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogc3RyaW5nIHtcbiAgICBpZiAoIW5hbWUpIHtcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIG5hbWUgPSBuYW1lLnRyaW0oKTtcblxuICAgIGlmIChVTklGSUVEX0lERU9HUkFQSFNfUkVHRVgudGVzdChuYW1lKSAmJiBuYW1lLmxlbmd0aCA+IDIpIHtcbiAgICAgICAgcmV0dXJuIG5hbWUuc2xpY2UobmFtZS5sZW5ndGggLSAyKTtcbiAgICB9XG5cbiAgICBpZiAoU0VUX09GX0xFVFRFUlNfUkVHRVgudGVzdChuYW1lKSAmJiBuYW1lLmluZGV4T2YoJyAnKSA+IDApIHtcbiAgICAgICAgY29uc3Qgd29yZHM6IHN0cmluZ1tdID0gbmFtZS5zcGxpdCgnICcpO1xuICAgICAgICByZXR1cm4gKHdvcmRzWzBdLnNsaWNlKDAsIDEpICsgd29yZHNbMV0uc2xpY2UoMCwgMSkpLnRvVXBwZXJDYXNlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5hbWUubGVuZ3RoID4gMiA/IG5hbWUuc2xpY2UoMCwgMikudG9VcHBlckNhc2UoKSA6IG5hbWUudG9VcHBlckNhc2UoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEF2YXRhckJnQ29sb3IobmFtZTogc3RyaW5nKSB7XG4gICAgaWYgKCFuYW1lKSB7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgY29sb3JzID0gWycjNTZhYmZiJywgJyM1ZGNmZmYnLCAnIzg0ZTE3ZScsICcjNzNkODk3JywgJyNmZjlmNzMnLCAnI2ZhODg4OCcsICcjZmI3ZmI3JywgJyM5YTdlZjQnLCAnIzg2OGFmNiddO1xuICAgIGNvbnN0IG5hbWVBcnJheTogc3RyaW5nW10gPSBuYW1lLnNwbGl0KCcnKTtcbiAgICBjb25zdCBjb2RlOiBudW1iZXIgPVxuICAgICAgICBuYW1lICYmIG5hbWUubGVuZ3RoID4gMFxuICAgICAgICAgICAgPyBuYW1lQXJyYXkucmVkdWNlKFxuICAgICAgICAgICAgICAgICAgZnVuY3Rpb24gKHJlc3VsdCwgaXRlbSkge1xuICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdC52YWx1ZSArPSBpdGVtLmNoYXJDb2RlQXQoMCk7XG4gICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB7IHZhbHVlOiAwIH1cbiAgICAgICAgICAgICAgKS52YWx1ZVxuICAgICAgICAgICAgOiAwO1xuICAgIHJldHVybiBjb2xvcnNbY29kZSAlIDldO1xufVxuIl19
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3V0aWxzL2NlbGwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFXLHFCQUFxQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3pELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXhDLE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxPQUFnQixFQUFFLE1BQXNCO0lBQzVFLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxhQUFhLENBQUM7SUFDdEQsTUFBTSxvQkFBb0IsR0FBbUIsRUFBRSxDQUFDO0lBQ2hELE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUU7UUFDN0Isb0JBQW9CLENBQUMsS0FBSyxDQUFDLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUF3QixDQUFDLEtBQUssQ0FBQztJQUNqSSxDQUFDLENBQUMsQ0FBQztJQUNILE9BQU8sb0JBQW9CLENBQUM7QUFDaEMsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSx5QkFBeUIsQ0FBQyxPQUEwRTtJQUNoSCxNQUFNLEVBQUUsV0FBVyxFQUFFLEdBQUcsT0FBTyxDQUFDO0lBQ2hDLE9BQU8sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQztBQUM3QyxDQUFDO0FBRUQsd0RBQXdEO0FBQ3hELGdEQUFnRDtBQUNoRCx1RkFBdUY7QUFDdkYsTUFBTSxVQUFVLGtCQUFrQixDQUFVLE9BQWdCLEVBQUUsS0FBbUIsRUFBRSxTQUFxQjtJQUNwRyxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsS0FB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QUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUNaLFVBQVUsTUFBTSxFQUFFLElBQUk7WUFDbEIsTUFBTSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ25DLE9BQU8sTUFBTSxDQUFDO1FBQ2xCLENBQUMsRUFDRCxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FDZixDQUFDLEtBQUs7UUFDVCxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ1osT0FBTyxNQUFNLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQzVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBSVRhYmxlRmllbGQsIEFJVGFibGVGaWVsZE9wdGlvbiwgQUlUYWJsZVNpemVNYXAsIEZpZWxkVmFsdWUgfSBmcm9tICdAYWktdGFibGUvdXRpbHMnO1xuaW1wb3J0IHsgQUlUYWJsZSwgZ2V0RmllbGRPcHRpb25CeUZpZWxkIH0gZnJvbSAnLi4vY29yZSc7XG5pbXBvcnQgeyBBSV9UQUJMRV9HUklEX0ZJRUxEX1NFUlZJQ0VfTUFQIH0gZnJvbSAnLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgRmllbGRNb2RlbE1hcCB9IGZyb20gJy4vZmllbGQnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29sdW1uSW5kaWNlc1NpemVNYXAoYWlUYWJsZTogQUlUYWJsZSwgZmllbGRzOiBBSVRhYmxlRmllbGRbXSkge1xuICAgIGNvbnN0IGZpZWxkU2l6ZU1hcCA9IGFpVGFibGUuZ3JpZERhdGEoKS5maWVsZHNTaXplTWFwO1xuICAgIGNvbnN0IGNvbHVtbkluZGljZXNTaXplTWFwOiBBSVRhYmxlU2l6ZU1hcCA9IHt9O1xuICAgIGZpZWxkcz8uZm9yRWFjaCgoZmllbGQsIGluZGV4KSA9PiB7XG4gICAgICAgIGNvbHVtbkluZGljZXNTaXplTWFwW2luZGV4XSA9IGZpZWxkU2l6ZU1hcFtmaWVsZC5faWRdID8/IChnZXRGaWVsZE9wdGlvbkJ5RmllbGQoYWlUYWJsZSwgZmllbGQpIGFzIEFJVGFibGVGaWVsZE9wdGlvbikud2lkdGg7XG4gICAgfSk7XG4gICAgcmV0dXJuIGNvbHVtbkluZGljZXNTaXplTWFwO1xufVxuXG4vKipcbiAqIOiOt+WPluWNleWFg+agvOS9jee9rlxuICog5qC55o2u5Y2V5YWD5qC85piv5ZCm5piv56ys5LiA5YiXL+acgOWQjuS4gOWIl+ehruWumuWNleWFg+agvOaJgOWcqOeahOS9jee9rlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2VsbEhvcml6b250YWxQb3NpdGlvbihvcHRpb25zOiB7IGNvbHVtbldpZHRoOiBudW1iZXI7IGNvbHVtbkluZGV4OiBudW1iZXI7IGNvbHVtbkNvdW50OiBudW1iZXIgfSkge1xuICAgIGNvbnN0IHsgY29sdW1uV2lkdGggfSA9IG9wdGlvbnM7XG4gICAgcmV0dXJuIHsgd2lkdGg6IGNvbHVtbldpZHRoLCBvZmZzZXQ6IDAgfTtcbn1cblxuLy8gQGRlcHJlY2F0ZWQg6K+35L2/55SoIEZpZWxkTW9kZWxNYXAg55qEIHRyYW5zZm9ybUNlbGxWYWx1ZSDmlrnms5Vcbi8vIGNvbnN0IGZpZWxkTW9kZWwgPSBGaWVsZE1vZGVsTWFwW2ZpZWxkLnR5cGVdO1xuLy8gY29uc3QgdHJhbnNmb3JtVmFsdWUgPSBmaWVsZE1vZGVsLnRyYW5zZm9ybUNlbGxWYWx1ZShjZWxsVmFsdWUsIHsgYWlUYWJsZSwgZmllbGQgfSk7XG5leHBvcnQgZnVuY3Rpb24gdHJhbnNmb3JtQ2VsbFZhbHVlPFQgPSBhbnk+KGFpVGFibGU6IEFJVGFibGUsIGZpZWxkOiBBSVRhYmxlRmllbGQsIGNlbGxWYWx1ZTogRmllbGRWYWx1ZSk6IFQgfCBudWxsIHtcbiAgICBjb25zdCBmaWVsZE1vZGVsID0gRmllbGRNb2RlbE1hcFtmaWVsZC50eXBlXTtcbiAgICBpZiAoIWZpZWxkTW9kZWwuaXNWYWxpZChjZWxsVmFsdWUpKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IGZpZWxkU2VydmljZSA9IEFJX1RBQkxFX0dSSURfRklFTERfU0VSVklDRV9NQVAuZ2V0KGFpVGFibGUpO1xuXG4gICAgaWYgKCFmaWVsZFNlcnZpY2UpIHtcbiAgICAgICAgcmV0dXJuIGNlbGxWYWx1ZTtcbiAgICB9XG5cbiAgICBjb25zdCBmaWVsZFJlbmRlcmVycyA9IGZpZWxkU2VydmljZS5haUZpZWxkQ29uZmlnPy5maWVsZFJlbmRlcmVycztcbiAgICBpZiAoIWZpZWxkUmVuZGVyZXJzKSB7XG4gICAgICAgIHJldHVybiBjZWxsVmFsdWU7XG4gICAgfVxuXG4gICAgY29uc3QgY2VsbFRyYW5zZm9ybSA9IGZpZWxkUmVuZGVyZXJzW2ZpZWxkLnR5cGVdPy50cmFuc2Zvcm07XG4gICAgaWYgKCFjZWxsVHJhbnNmb3JtKSB7XG4gICAgICAgIHJldHVybiBjZWxsVmFsdWU7XG4gICAgfVxuXG4gICAgY29uc3QgY2VsbFRleHQgPSBjZWxsVHJhbnNmb3JtKGZpZWxkLCBjZWxsVmFsdWUpO1xuXG4gICAgaWYgKGNlbGxUZXh0ID09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIGNlbGxWYWx1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gY2VsbFRleHQ7XG59XG5cbi8qKlxuICogYFxcdTRlMDBgOiBodHRwczovL3d3dy5jb21wYXJ0LmNvbS9lbi91bmljb2RlL1UrNEUwMFxuICogYFxcdTlmYTVgOiBodHRwczovL3d3dy5jb21wYXJ0LmNvbS9lbi91bmljb2RlL1UrOUZBNVxuICovXG5jb25zdCBVTklGSUVEX0lERU9HUkFQSFNfUkVHRVggPSAvXltcXHU0ZTAwLVxcdTlmYTVdKyQvO1xuXG5jb25zdCBTRVRfT0ZfTEVUVEVSU19SRUdFWCA9IC9eW2EtekEtWlxcLyBdKyQvO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QXZhdGFyU2hvcnROYW1lKG5hbWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiBzdHJpbmcge1xuICAgIGlmICghbmFtZSkge1xuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgbmFtZSA9IG5hbWUudHJpbSgpO1xuXG4gICAgaWYgKFVOSUZJRURfSURFT0dSQVBIU19SRUdFWC50ZXN0KG5hbWUpICYmIG5hbWUubGVuZ3RoID4gMikge1xuICAgICAgICByZXR1cm4gbmFtZS5zbGljZShuYW1lLmxlbmd0aCAtIDIpO1xuICAgIH1cblxuICAgIGlmIChTRVRfT0ZfTEVUVEVSU19SRUdFWC50ZXN0KG5hbWUpICYmIG5hbWUuaW5kZXhPZignICcpID4gMCkge1xuICAgICAgICBjb25zdCB3b3Jkczogc3RyaW5nW10gPSBuYW1lLnNwbGl0KCcgJyk7XG4gICAgICAgIHJldHVybiAod29yZHNbMF0uc2xpY2UoMCwgMSkgKyB3b3Jkc1sxXS5zbGljZSgwLCAxKSkudG9VcHBlckNhc2UoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmFtZS5sZW5ndGggPiAyID8gbmFtZS5zbGljZSgwLCAyKS50b1VwcGVyQ2FzZSgpIDogbmFtZS50b1VwcGVyQ2FzZSgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QXZhdGFyQmdDb2xvcihuYW1lOiBzdHJpbmcpIHtcbiAgICBpZiAoIW5hbWUpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBjb2xvcnMgPSBbJyM1NmFiZmInLCAnIzVkY2ZmZicsICcjODRlMTdlJywgJyM3M2Q4OTcnLCAnI2ZmOWY3MycsICcjZmE4ODg4JywgJyNmYjdmYjcnLCAnIzlhN2VmNCcsICcjODY4YWY2J107XG4gICAgY29uc3QgbmFtZUFycmF5OiBzdHJpbmdbXSA9IG5hbWUuc3BsaXQoJycpO1xuICAgIGNvbnN0IGNvZGU6IG51bWJlciA9XG4gICAgICAgIG5hbWUgJiYgbmFtZS5sZW5ndGggPiAwXG4gICAgICAgICAgICA/IG5hbWVBcnJheS5yZWR1Y2UoXG4gICAgICAgICAgICAgICAgICBmdW5jdGlvbiAocmVzdWx0LCBpdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgcmVzdWx0LnZhbHVlICs9IGl0ZW0uY2hhckNvZGVBdCgwKTtcbiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIHsgdmFsdWU6IDAgfVxuICAgICAgICAgICAgICApLnZhbHVlXG4gICAgICAgICAgICA6IDA7XG4gICAgcmV0dXJuIGNvbG9yc1tjb2RlICUgOV07XG59XG4iXX0=