@worktile/theia 15.0.8 → 15.0.9

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 (133) hide show
  1. package/components/action/prevent-default.d.ts +1 -1
  2. package/components/color-select/color-select.component.d.ts +1 -1
  3. package/components/column-resize/column-resize.directive.d.ts +1 -1
  4. package/components/column-resize/overlay-handle.component.d.ts +1 -1
  5. package/components/contextmenu/contextmenu.component.d.ts +1 -1
  6. package/components/conversion-hint/conversion-hint.component.d.ts +1 -1
  7. package/components/element/element.component.d.ts +1 -1
  8. package/components/inline-toolbar/inline-toolbar.component.d.ts +1 -1
  9. package/components/listbox/listbox.d.ts +3 -3
  10. package/components/listbox/listbox.type.d.ts +1 -1
  11. package/components/plugin-menu/plugin-menu.component.d.ts +1 -1
  12. package/components/table-select/table-select.component.d.ts +1 -1
  13. package/components/template/template.component.d.ts +1 -1
  14. package/components/text/text.component.d.ts +1 -1
  15. package/components/toolbar/toolbar.component.d.ts +1 -1
  16. package/components/toolbar-dropdown/toolbar-dropdown.component.d.ts +1 -1
  17. package/components/toolbar-group/toolbar-group.component.d.ts +1 -1
  18. package/components/toolbar-item/toolbar-item.component.d.ts +1 -1
  19. package/constants/color-select.d.ts +1 -1
  20. package/core/toolbar-item/base-toolbar-item.d.ts +2 -2
  21. package/custom-types.d.ts +6 -6
  22. package/editor.component.d.ts +1 -1
  23. package/esm2020/components/action/prevent-default.mjs +3 -3
  24. package/esm2020/components/color-select/color-select.component.mjs +9 -9
  25. package/esm2020/components/column-resize/column-resize-notifier.mjs +3 -3
  26. package/esm2020/components/column-resize/column-resize.directive.mjs +3 -3
  27. package/esm2020/components/column-resize/column-resize.module.mjs +8 -8
  28. package/esm2020/components/column-resize/event-dispatcher.mjs +3 -3
  29. package/esm2020/components/column-resize/overlay-handle.component.mjs +3 -3
  30. package/esm2020/components/column-resize/resizing.store.mjs +3 -3
  31. package/esm2020/components/contextmenu/contextmenu.component.mjs +10 -10
  32. package/esm2020/components/conversion-hint/conversion-hint.component.mjs +3 -3
  33. package/esm2020/components/element/element.component.mjs +3 -3
  34. package/esm2020/components/inline-toolbar/inline-toolbar.component.mjs +3 -3
  35. package/esm2020/components/listbox/listbox.mjs +16 -16
  36. package/esm2020/components/plugin-menu/plugin-menu.component.mjs +3 -3
  37. package/esm2020/components/table-select/table-select.component.mjs +3 -3
  38. package/esm2020/components/template/template.component.mjs +3 -3
  39. package/esm2020/components/text/text.component.mjs +3 -3
  40. package/esm2020/components/toolbar/toolbar.component.mjs +7 -7
  41. package/esm2020/components/toolbar-dropdown/toolbar-dropdown.component.mjs +14 -14
  42. package/esm2020/components/toolbar-group/toolbar-group.component.mjs +11 -11
  43. package/esm2020/components/toolbar-item/toolbar-item.component.mjs +7 -7
  44. package/esm2020/core/toolbar-item/base-toolbar-item.mjs +6 -6
  45. package/esm2020/editor.component.mjs +10 -10
  46. package/esm2020/editor.module.mjs +4 -4
  47. package/esm2020/interfaces/view-base.mjs +3 -3
  48. package/esm2020/pipes.mjs +6 -6
  49. package/esm2020/plugins/blockquote/blockquote.component.mjs +3 -3
  50. package/esm2020/plugins/code/code.component.mjs +10 -10
  51. package/esm2020/plugins/color/toolbar-item.component.mjs +7 -7
  52. package/esm2020/plugins/common/{auto-insert-data..mjs → auto-insert-data.mjs} +9 -6
  53. package/esm2020/plugins/hr/hr.component.mjs +3 -3
  54. package/esm2020/plugins/image/image.component.mjs +13 -13
  55. package/esm2020/plugins/index.mjs +2 -2
  56. package/esm2020/plugins/inline-code/inline-code.component.mjs +3 -3
  57. package/esm2020/plugins/link/edit/link-edit.component.mjs +9 -9
  58. package/esm2020/plugins/link/hover/link-hover.component.mjs +3 -3
  59. package/esm2020/plugins/link/link.component.mjs +13 -13
  60. package/esm2020/plugins/list/components/bulleted-list.component.mjs +7 -7
  61. package/esm2020/plugins/list/components/list-item.component.mjs +3 -3
  62. package/esm2020/plugins/list/components/numbered-list.component.mjs +9 -9
  63. package/esm2020/plugins/mention/suggestion.component.mjs +3 -3
  64. package/esm2020/plugins/quick-insert/components/quick-insert.component.mjs +8 -8
  65. package/esm2020/plugins/table/components/insert-mark/insert-mark.component.mjs +10 -15
  66. package/esm2020/plugins/table/components/row/row.component.mjs +3 -3
  67. package/esm2020/plugins/table/components/table.component.mjs +104 -88
  68. package/esm2020/plugins/table/components/td/td.component.mjs +20 -20
  69. package/esm2020/plugins/table/components/toolbar/table-options.component.mjs +7 -7
  70. package/esm2020/plugins/table/components/toolbar/table-toolbar.component.mjs +13 -13
  71. package/esm2020/plugins/table/table.pipe.mjs +22 -8
  72. package/esm2020/plugins/table/table.service.mjs +7 -7
  73. package/esm2020/plugins/table/table.store.mjs +10 -10
  74. package/esm2020/plugins/table/table.types.mjs +7 -1
  75. package/esm2020/plugins/table/toolbar-item.component.mjs +7 -7
  76. package/esm2020/plugins/table/utils/get-grid-columns.mjs +30 -0
  77. package/esm2020/plugins/todo-item/todo-item.component.mjs +11 -11
  78. package/esm2020/plugins/vertical-align/toolbar-item.component.mjs +11 -11
  79. package/esm2020/services/color-select.service.mjs +7 -7
  80. package/esm2020/services/context.service.mjs +19 -7
  81. package/esm2020/services/table-contextmenu.service.mjs +13 -13
  82. package/esm2020/services/toolbar.service.mjs +3 -3
  83. package/fesm2015/worktile-theia.mjs +583 -511
  84. package/fesm2015/worktile-theia.mjs.map +1 -1
  85. package/fesm2020/worktile-theia.mjs +574 -503
  86. package/fesm2020/worktile-theia.mjs.map +1 -1
  87. package/interfaces/editor.d.ts +2 -2
  88. package/interfaces/element.d.ts +3 -3
  89. package/interfaces/plugins/no-infer.d.ts +1 -1
  90. package/interfaces/plugins/plugin-key.d.ts +1 -1
  91. package/interfaces/plugins/plugin-menu.d.ts +4 -4
  92. package/interfaces/plugins/plugins.d.ts +4 -4
  93. package/interfaces/plugins/with-override.d.ts +1 -1
  94. package/interfaces/toolbar.d.ts +4 -4
  95. package/interfaces/utility/nested-structure-by-key.d.ts +1 -1
  96. package/interfaces/utility/override-by-key.d.ts +1 -1
  97. package/interfaces/utility/types.d.ts +1 -1
  98. package/interfaces/view-base.d.ts +1 -1
  99. package/package.json +1 -1
  100. package/plugins/blockquote/blockquote.component.d.ts +1 -1
  101. package/plugins/code/code.component.d.ts +1 -1
  102. package/plugins/color/toolbar-item.component.d.ts +1 -1
  103. package/plugins/common/transforms.plugin.d.ts +1 -1
  104. package/plugins/heading/heading.plugin.d.ts +1 -1
  105. package/plugins/hr/hr.component.d.ts +1 -1
  106. package/plugins/image/image.component.d.ts +1 -1
  107. package/plugins/inline-code/inline-code.component.d.ts +1 -1
  108. package/plugins/link/edit/link-edit.component.d.ts +1 -1
  109. package/plugins/link/hover/link-hover.component.d.ts +1 -1
  110. package/plugins/link/link.component.d.ts +2 -2
  111. package/plugins/list/components/bulleted-list.component.d.ts +1 -1
  112. package/plugins/list/components/list-item.component.d.ts +1 -1
  113. package/plugins/list/components/numbered-list.component.d.ts +1 -1
  114. package/plugins/list/types.d.ts +1 -1
  115. package/plugins/mention/suggestion.component.d.ts +1 -1
  116. package/plugins/quick-insert/components/quick-insert.component.d.ts +1 -1
  117. package/plugins/table/components/insert-mark/insert-mark.component.d.ts +1 -1
  118. package/plugins/table/components/row/row.component.d.ts +1 -1
  119. package/plugins/table/components/table.component.d.ts +6 -5
  120. package/plugins/table/components/table.component.scss +30 -16
  121. package/plugins/table/components/td/td.component.d.ts +1 -1
  122. package/plugins/table/components/toolbar/table-options.component.d.ts +1 -1
  123. package/plugins/table/components/toolbar/table-toolbar.component.d.ts +1 -1
  124. package/plugins/table/table.types.d.ts +9 -1
  125. package/plugins/table/toolbar-item.component.d.ts +1 -1
  126. package/plugins/table/utils/get-grid-columns.d.ts +8 -0
  127. package/plugins/todo-item/todo-item.component.d.ts +1 -1
  128. package/plugins/vertical-align/toolbar-item.component.d.ts +1 -1
  129. package/queries/find-node.d.ts +1 -1
  130. package/queries/get-range-before.d.ts +1 -1
  131. package/services/context.service.d.ts +5 -1
  132. package/utils/match.d.ts +3 -3
  133. /package/plugins/common/{auto-insert-data..d.ts → auto-insert-data.d.ts} +0 -0
@@ -20,15 +20,6 @@ import * as i6 from "ngx-tethys/tooltip";
20
20
  import * as i7 from "ngx-tethys/action";
21
21
  import * as i8 from "ngx-tethys/divider";
22
22
  export class TheTableToolbarComponent {
23
- get editor() {
24
- return this.tableStore && this.tableStore.editor;
25
- }
26
- get hasDivider() {
27
- return this.cellMenuList.filter(item => item.visibility).length > 1;
28
- }
29
- get tableOptions() {
30
- return getPluginOptions(this.editor, PluginKeys.table);
31
- }
32
23
  constructor(ngZone, colorSelectService, thyPopover, popoverRef, thyNotifyService) {
33
24
  this.ngZone = ngZone;
34
25
  this.colorSelectService = colorSelectService;
@@ -64,6 +55,15 @@ export class TheTableToolbarComponent {
64
55
  }
65
56
  ];
66
57
  }
58
+ get editor() {
59
+ return this.tableStore && this.tableStore.editor;
60
+ }
61
+ get hasDivider() {
62
+ return this.cellMenuList.filter(item => item.visibility).length > 1;
63
+ }
64
+ get tableOptions() {
65
+ return getPluginOptions(this.editor, PluginKeys.table);
66
+ }
67
67
  ngOnInit() {
68
68
  this.isColumnEqual = this.tableElement?.columns?.every(col => this.tableElement.columns[0].width === col.width) ?? true;
69
69
  const { selectedCellPositions, isSelectedTable } = this.tableStore;
@@ -181,9 +181,9 @@ export class TheTableToolbarComponent {
181
181
  });
182
182
  }
183
183
  }
184
- TheTableToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TheTableToolbarComponent, deps: [{ token: i0.NgZone }, { token: i1.TheColorSelectService }, { token: i2.ThyPopover }, { token: i2.ThyPopoverRef }, { token: i3.ThyNotifyService }], target: i0.ɵɵFactoryTarget.Component });
185
- TheTableToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: TheTableToolbarComponent, selector: "the-table-toolbar", inputs: { tableStore: "tableStore", tableElement: "tableElement" }, ngImport: i0, template: "<thy-actions thySize=\"xxs\">\n <ng-container *ngFor=\"let item of cellMenuList\">\n <a\n *ngIf=\"item.visibility\"\n href=\"javascript:;\"\n thyAction\n [thyActionIcon]=\"item.icon\"\n [thyTooltip]=\"item.name\"\n (mousedown)=\"item.actionHandle()\"\n ></a>\n </ng-container>\n <thy-divider *ngIf=\"hasDivider\" class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\"> </thy-divider>\n <a href=\"javascript:;\" thyAction thyTooltip=\"\u5355\u5143\u683C\u80CC\u666F\" (mousedown)=\"openSelectColor($event)\">\n <thy-icon thyIconName=\"background-tt\" thyIconType=\"twotone\" [thyTwotoneColor]=\"selectedColor\"></thy-icon>\n </a>\n <a\n href=\"javascript:;\"\n *ngIf=\"tableStore.isSelectedTable && !isColumnEqual\"\n thyAction\n thyTooltip=\"\u5217\u7B49\u5BBD\"\n (mousedown)=\"setEquallyColumnHandle($event)\"\n >\n <thy-icon thyIconName=\"table-column-equal-width\"></thy-icon>\n </a>\n <a\n href=\"javascript:;\"\n *ngIf=\"tableStore.isSelectedTable && tableOptions?.showFullscreen\"\n thyAction\n thyTooltip=\"\u5168\u5C4F\"\n (mousedown)=\"setFullscreen($event)\"\n >\n <thy-icon thyIconName=\"arrows-alt\"></thy-icon>\n </a>\n <a\n *ngIf=\"tableStore.isSelectedTable && !tableStore?.isFullscreen\"\n class=\"fullscreen-hidden\"\n href=\"javascript:;\"\n thyAction\n thyActionIcon=\"copy\"\n thyTooltip=\"\u590D\u5236\"\n (mousedown)=\"onCopy($event)\"\n ></a>\n <ng-container *ngIf=\"tableStore.isSelectedTable\">\n <thy-divider class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\"></thy-divider>\n <a href=\"javascript:;\" class=\"link-with-down\" thyAction (mousedown)=\"mousedown($event)\" (click)=\"openTableOptionMenu($event)\">\n <span>\u8868\u683C\u9009\u9879</span>\n <thy-icon class=\"font-size-sm text-desc ml-1\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n </ng-container>\n <ng-container *ngIf=\"tableStore?.isFullscreen ? deleteIcon && !tableStore.isSelectedTable : deleteIcon\">\n <thy-divider class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\"></thy-divider>\n <a\n href=\"javascript:;\"\n thyAction\n thyType=\"danger\"\n [thyActionIcon]=\"deleteIcon\"\n [thyTooltip]=\"iconName\"\n (mousedown)=\"onDelete($event)\"\n (mouseenter)=\"onEnterDelete($event)\"\n (mouseleave)=\"onLeaveDelete($event)\"\n ></a>\n </ng-container>\n</thy-actions>\n", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.ThyIconComponent, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "directive", type: i6.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { kind: "component", type: i7.ThyActionComponent, selector: "thy-action, [thyAction]", inputs: ["thyType", "thyIcon", "thyActionIcon", "thyActive", "thyActionActive", "thyTheme", "thyHoverIcon", "thyDisabled"] }, { kind: "component", type: i7.ThyActionsComponent, selector: "thy-actions", inputs: ["thySize"] }, { kind: "component", type: i8.ThyDividerComponent, selector: "thy-divider", inputs: ["thyVertical", "thyStyle", "thyColor", "thyText", "thyTextDirection", "thyDeeper"] }] });
186
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TheTableToolbarComponent, decorators: [{
184
+ TheTableToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TheTableToolbarComponent, deps: [{ token: i0.NgZone }, { token: i1.TheColorSelectService }, { token: i2.ThyPopover }, { token: i2.ThyPopoverRef }, { token: i3.ThyNotifyService }], target: i0.ɵɵFactoryTarget.Component });
185
+ TheTableToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: TheTableToolbarComponent, selector: "the-table-toolbar", inputs: { tableStore: "tableStore", tableElement: "tableElement" }, ngImport: i0, template: "<thy-actions thySize=\"xxs\">\n <ng-container *ngFor=\"let item of cellMenuList\">\n <a\n *ngIf=\"item.visibility\"\n href=\"javascript:;\"\n thyAction\n [thyActionIcon]=\"item.icon\"\n [thyTooltip]=\"item.name\"\n (mousedown)=\"item.actionHandle()\"\n ></a>\n </ng-container>\n <thy-divider *ngIf=\"hasDivider\" class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\"> </thy-divider>\n <a href=\"javascript:;\" thyAction thyTooltip=\"\u5355\u5143\u683C\u80CC\u666F\" (mousedown)=\"openSelectColor($event)\">\n <thy-icon thyIconName=\"background-tt\" thyIconType=\"twotone\" [thyTwotoneColor]=\"selectedColor\"></thy-icon>\n </a>\n <a\n href=\"javascript:;\"\n *ngIf=\"tableStore.isSelectedTable && !isColumnEqual\"\n thyAction\n thyTooltip=\"\u5217\u7B49\u5BBD\"\n (mousedown)=\"setEquallyColumnHandle($event)\"\n >\n <thy-icon thyIconName=\"table-column-equal-width\"></thy-icon>\n </a>\n <a\n href=\"javascript:;\"\n *ngIf=\"tableStore.isSelectedTable && tableOptions?.showFullscreen\"\n thyAction\n thyTooltip=\"\u5168\u5C4F\"\n (mousedown)=\"setFullscreen($event)\"\n >\n <thy-icon thyIconName=\"arrows-alt\"></thy-icon>\n </a>\n <a\n *ngIf=\"tableStore.isSelectedTable && !tableStore?.isFullscreen\"\n class=\"fullscreen-hidden\"\n href=\"javascript:;\"\n thyAction\n thyActionIcon=\"copy\"\n thyTooltip=\"\u590D\u5236\"\n (mousedown)=\"onCopy($event)\"\n ></a>\n <ng-container *ngIf=\"tableStore.isSelectedTable\">\n <thy-divider class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\"></thy-divider>\n <a href=\"javascript:;\" class=\"link-with-down\" thyAction (mousedown)=\"mousedown($event)\" (click)=\"openTableOptionMenu($event)\">\n <span>\u8868\u683C\u9009\u9879</span>\n <thy-icon class=\"font-size-sm text-desc ml-1\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n </ng-container>\n <ng-container *ngIf=\"tableStore?.isFullscreen ? deleteIcon && !tableStore.isSelectedTable : deleteIcon\">\n <thy-divider class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\"></thy-divider>\n <a\n href=\"javascript:;\"\n thyAction\n thyType=\"danger\"\n [thyActionIcon]=\"deleteIcon\"\n [thyTooltip]=\"iconName\"\n (mousedown)=\"onDelete($event)\"\n (mouseenter)=\"onEnterDelete($event)\"\n (mouseleave)=\"onLeaveDelete($event)\"\n ></a>\n </ng-container>\n</thy-actions>\n", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.ThyIconComponent, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "directive", type: i6.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { kind: "component", type: i7.ThyActionComponent, selector: "thy-action, [thyAction]", inputs: ["thyType", "thyIcon", "thyActionIcon", "thyActive", "thyActionActive", "thyTheme", "thyHoverIcon", "thyDisabled"] }, { kind: "component", type: i7.ThyActionsComponent, selector: "thy-actions", inputs: ["thySize"] }, { kind: "component", type: i8.ThyDividerComponent, selector: "thy-divider", inputs: ["thyVertical", "thyStyle", "thyColor", "thyText", "thyTextDirection", "thyDeeper"] }] });
186
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TheTableToolbarComponent, decorators: [{
187
187
  type: Component,
188
188
  args: [{ selector: 'the-table-toolbar', template: "<thy-actions thySize=\"xxs\">\n <ng-container *ngFor=\"let item of cellMenuList\">\n <a\n *ngIf=\"item.visibility\"\n href=\"javascript:;\"\n thyAction\n [thyActionIcon]=\"item.icon\"\n [thyTooltip]=\"item.name\"\n (mousedown)=\"item.actionHandle()\"\n ></a>\n </ng-container>\n <thy-divider *ngIf=\"hasDivider\" class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\"> </thy-divider>\n <a href=\"javascript:;\" thyAction thyTooltip=\"\u5355\u5143\u683C\u80CC\u666F\" (mousedown)=\"openSelectColor($event)\">\n <thy-icon thyIconName=\"background-tt\" thyIconType=\"twotone\" [thyTwotoneColor]=\"selectedColor\"></thy-icon>\n </a>\n <a\n href=\"javascript:;\"\n *ngIf=\"tableStore.isSelectedTable && !isColumnEqual\"\n thyAction\n thyTooltip=\"\u5217\u7B49\u5BBD\"\n (mousedown)=\"setEquallyColumnHandle($event)\"\n >\n <thy-icon thyIconName=\"table-column-equal-width\"></thy-icon>\n </a>\n <a\n href=\"javascript:;\"\n *ngIf=\"tableStore.isSelectedTable && tableOptions?.showFullscreen\"\n thyAction\n thyTooltip=\"\u5168\u5C4F\"\n (mousedown)=\"setFullscreen($event)\"\n >\n <thy-icon thyIconName=\"arrows-alt\"></thy-icon>\n </a>\n <a\n *ngIf=\"tableStore.isSelectedTable && !tableStore?.isFullscreen\"\n class=\"fullscreen-hidden\"\n href=\"javascript:;\"\n thyAction\n thyActionIcon=\"copy\"\n thyTooltip=\"\u590D\u5236\"\n (mousedown)=\"onCopy($event)\"\n ></a>\n <ng-container *ngIf=\"tableStore.isSelectedTable\">\n <thy-divider class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\"></thy-divider>\n <a href=\"javascript:;\" class=\"link-with-down\" thyAction (mousedown)=\"mousedown($event)\" (click)=\"openTableOptionMenu($event)\">\n <span>\u8868\u683C\u9009\u9879</span>\n <thy-icon class=\"font-size-sm text-desc ml-1\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n </ng-container>\n <ng-container *ngIf=\"tableStore?.isFullscreen ? deleteIcon && !tableStore.isSelectedTable : deleteIcon\">\n <thy-divider class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\"></thy-divider>\n <a\n href=\"javascript:;\"\n thyAction\n thyType=\"danger\"\n [thyActionIcon]=\"deleteIcon\"\n [thyTooltip]=\"iconName\"\n (mousedown)=\"onDelete($event)\"\n (mouseenter)=\"onEnterDelete($event)\"\n (mouseleave)=\"onLeaveDelete($event)\"\n ></a>\n </ng-container>\n</thy-actions>\n" }]
189
189
  }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.TheColorSelectService }, { type: i2.ThyPopover }, { type: i2.ThyPopoverRef }, { type: i3.ThyNotifyService }]; }, propDecorators: { tableStore: [{
@@ -197,4 +197,4 @@ export var DeleteIcon;
197
197
  DeleteIcon["table-delete-columns"] = "table-delete-columns";
198
198
  DeleteIcon["trash"] = "trash";
199
199
  })(DeleteIcon || (DeleteIcon = {}));
200
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdG9vbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS9jb21wb25lbnRzL3Rvb2xiYXIvdGFibGUtdG9vbGJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS9jb21wb25lbnRzL3Rvb2xiYXIvdGFibGUtdG9vbGJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFJNUUsT0FBTyxFQUFhLGdCQUFnQixFQUFFLDBCQUEwQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFckksT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXBELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzlFLE9BQU8sS0FBSyxhQUFhLE1BQU0sd0JBQXdCLENBQUM7QUFDeEQsT0FBTyxLQUFLLFVBQVUsTUFBTSxxQkFBcUIsQ0FBQztBQUdsRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7Ozs7Ozs7QUFNN0MsTUFBTSxPQUFPLHdCQUF3QjtJQWlCakMsSUFBSSxNQUFN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QUFDLElBQUksQ0FBQyx3QkFBd0IsRUFBRTtZQUMzQyxNQUFNLEVBQUUsS0FBSyxDQUFDLGFBQTRCO1lBQzFDLFlBQVksRUFBRTtnQkFDVixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQzNCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTthQUN0QjtZQUNELFFBQVEsRUFBRSxDQUFDO1lBQ1gsY0FBYyxFQUFFLElBQUk7WUFDcEIsZUFBZSxFQUFFLElBQUk7WUFDckIsV0FBVyxFQUFFLEtBQUs7WUFDbEIsU0FBUyxFQUFFLFlBQVk7WUFDdkIsaUJBQWlCLEVBQUUsUUFBUTtZQUMzQixVQUFVLEVBQUUsc0JBQXNCO1NBQ3JDLENBQUMsQ0FBQztJQUNQLENBQUM7O3FIQTVNUSx3QkFBd0I7eUdBQXhCLHdCQUF3Qiw2SEN6QnJDLDI2RUErREE7MkZEdENhLHdCQUF3QjtrQkFKcEMsU0FBUzsrQkFDSSxtQkFBbUI7cU5BZ0JwQixVQUFVO3NCQUFsQixLQUFLO2dCQUVHLFlBQVk7c0JBQXBCLEtBQUs7O0FBZ01WLE1BQU0sQ0FBTixJQUFZLFVBSVg7QUFKRCxXQUFZLFVBQVU7SUFDbEIscURBQXlDLENBQUE7SUFDekMsMkRBQStDLENBQUE7SUFDL0MsNkJBQWlCLENBQUE7QUFDckIsQ0FBQyxFQUpXLFVBQVUsS0FBVixVQUFVLFFBSXJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBOZ1pvbmUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGh5UG9wb3ZlciwgVGh5UG9wb3ZlclJlZiB9IGZyb20gJ25neC10ZXRoeXMvcG9wb3Zlcic7XG5pbXBvcnQgeyBFZGl0b3IgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBUYWJsZVN0b3JlIH0gZnJvbSAnLi4vLi4vdGFibGUuc3RvcmUnO1xuaW1wb3J0IHsgQ29sb3JUeXBlLCBCYWNrZ3JvdW5kQ29sb3JzLCBUYWJsZUhlYWRlckJhY2tncm91bmRDb2xvciwgU3BlY2lhbEJhY2tncm91bmRDb2xvciB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbnN0YW50cy9jb2xvci1zZWxlY3QnO1xuaW1wb3J0IHsgVGhlQ29sb3JTZWxlY3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvY29sb3Itc2VsZWN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgc3BsaXRDZWxsIH0gZnJvbSAnLi4vLi4vdXRpbHMvc3BsaXQtY2VsbCc7XG5pbXBvcnQgeyBzZXRDZWxsTWVudVZpc2liaWxpdHkgfSBmcm9tICcuLi8uLi91dGlscy9zZXQtbWVudS1jZWxsLWludmlzaWJpbGl0eSc7XG5pbXBvcnQgeyBNZW51RW50aXR5IH0gZnJvbSAnLi4vLi4vdGFibGUudHlwZXMnO1xuaW1wb3J0IHsgVGFibGVFZGl0b3IgfSBmcm9tICcuLi8uLi90YWJsZS5lZGl0b3InO1xuaW1wb3J0IHsgVGhlVGFibGVPcHRpb25zQ29tcG9uZW50IH0gZnJvbSAnLi90YWJsZS1vcHRpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbHVnaW5LZXlzLCBUaGVFZGl0b3IgfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGdldFBsdWdpbk9wdGlvbnMgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlJztcbmltcG9ydCB7IFRhYmxlRWxlbWVudCB9IGZyb20gJy4uLy4uLy4uLy4uLy9jdXN0b20tdHlwZXMnO1xuaW1wb3J0IHsgaXNSZWN0YW5ndWxhckluVGFibGVDZWxscyB9IGZyb20gJy4uLy4uL3V0aWxzL2lzLXNlbGVjdGlvbi1pbi10YWJsZSc7XG5pbXBvcnQgKiBhcyBUaGVUcmFuc2Zvcm1zIGZyb20gJy4uLy4uLy4uLy4uL3RyYW5zZm9ybXMnO1xuaW1wb3J0ICogYXMgVGhlUXVlcmllcyBmcm9tICcuLi8uLi8uLi8uLi9xdWVyaWVzJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVGh5Tm90aWZ5U2VydmljZSB9IGZyb20gJ25neC10ZXRoeXMvbm90aWZ5JztcbmltcG9ydCB7IGNvcHlOb2RlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3RoZS10YWJsZS10b29sYmFyJyxcbiAgICB0ZW1wbGF0ZVVybDogJ3RhYmxlLXRvb2xiYXIuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFRoZVRhYmxlVG9vbGJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBzZWxlY3RlZENvbG9yOiBzdHJpbmc7XG5cbiAgICBkZWxldGVJY29uOiBEZWxldGVJY29uO1xuXG4gICAgaWNvbk5hbWU6IHN0cmluZztcblxuICAgIGlzUmVjdGFuZ2xlOiBib29sZWFuO1xuXG4gICAgaXNDb2x1bW5FcXVhbDogYm9vbGVhbjtcblxuICAgIHRhYmxlQ2hhbmdlU3Vic2NyaWJlcjogU3Vic2NyaXB0aW9uO1xuXG4gICAgQElucHV0KCkgdGFibGVTdG9yZTogVGFibGVTdG9yZTtcblxuICAgIEBJbnB1dCgpIHRhYmxlRWxlbWVudDogVGFibGVFbGVtZW50O1xuXG4gICAgZ2V0IGVkaXRvcigpOiBFZGl0b3Ige1xuICAgICAgICByZXR1cm4gdGhpcy50YWJsZVN0b3JlICYmIHRoaXMudGFibGVTdG9yZS5lZGl0b3I7XG4gICAgfVxuXG4gICAgY2VsbE1lbnVMaXN0OiBNZW51RW50aXR5W10gPSBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIGtleTogJ21lcmdlLWNlbGxzJyxcbiAgICAgICAgICAgIG5hbWU6ICflkIjlubbljZXlhYPmoLwnLFxuICAgICAgICAgICAgdmlzaWJpbGl0eTogZmFsc2UsXG4gICAgICAgICAgICBpY29uOiAndGFibGUtbWVyZ2UtY2VsbHMnLFxuICAgICAgICAgICAgYWN0aW9uSGFuZGxlOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICB0aGlzLnRhYmxlU3RvcmUubWVyZ2VDZWxsKHRoaXMuZWRpdG9yKTtcbiAgICAgICAgICAgICAgICB0aGlzLnBvcG92ZXJSZWYuY2xvc2UoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnRhYmxlU3RvcmUuY2xlYXJTZWxlY3RlZENlbGxzKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIGtleTogJ3NwbGl0LWNlbGxzJyxcbiAgICAgICAgICAgIG5hbWU6ICfmi4bliIbljZXlhYPmoLwnLFxuICAgICAgICAgICAgdmlzaWJpbGl0eTogZmFsc2UsXG4gICAgICAgICAgICBpY29uOiAndGFibGUtdW5tZXJnZS1jZWxscycsXG4gICAgICAgICAgICBhY3Rpb25IYW5kbGU6ICgpID0+IHtcbiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgIHNwbGl0Q2VsbCh0aGlzLmVkaXRvcik7XG4gICAgICAgICAgICAgICAgdGhpcy5wb3BvdmVyUmVmLmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy50YWJsZVN0b3JlLmNsZWFyU2VsZWN0ZWRDZWxscygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgXTtcblxuICAgIGdldCBoYXNEaXZpZGVyKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5jZWxsTWVudUxpc3QuZmlsdGVyKGl0ZW0gPT4gaXRlbS52aXNpYmlsaXR5KS5sZW5ndGggPiAxO1xuICAgIH1cblxuICAgIGdldCB0YWJsZU9wdGlvbnMoKSB7XG4gICAgICAgIHJldHVybiBnZXRQbHVnaW5PcHRpb25zKHRoaXMuZWRpdG9yLCBQbHVnaW5LZXlzLnRhYmxlKTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgcHJpdmF0ZSBjb2xvclNlbGVjdFNlcnZpY2U6IFRoZUNvbG9yU2VsZWN0U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSB0aHlQb3BvdmVyOiBUaHlQb3BvdmVyLFxuICAgICAgICBwcml2YXRlIHBvcG92ZXJSZWY6IFRoeVBvcG92ZXJSZWY8VGhlVGFibGVUb29sYmFyQ29tcG9uZW50PixcbiAgICAgICAgcHJpdmF0ZSB0aHlOb3RpZnlTZXJ2aWNlOiBUaHlOb3RpZnlTZXJ2aWNlXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuaXNDb2x1bW5FcXVhbCA9IHRoaXMudGFibGVFbGVtZW50Py5jb2x1bW5zPy5ldmVyeShjb2wgPT4gdGhpcy50YWJsZUVsZW1lbnQuY29sdW1uc1swXS53aWR0aCA9PT0gY29sLndpZHRoKSA/PyB0cnVlO1xuICAgICAgICBjb25zdCB7IHNlbGVjdGVkQ2VsbFBvc2l0aW9ucywgaXNTZWxlY3RlZFRhYmxlIH0gPSB0aGlzLnRhYmxlU3RvcmU7XG4gICAgICAgIGNvbnN0IHRhYmxlSW5mbyA9IHsgc2VsZWN0ZWRDZWxsUG9zaXRpb25zLCBpc1NlbGVjdGVkVGFibGUgfTtcbiAgICAgICAgdGhpcy5pc1JlY3RhbmdsZSA9IGlzUmVjdGFuZ3VsYXJJblRhYmxlQ2VsbHModGhpcy5lZGl0b3IsIHNlbGVjdGVkQ2VsbFBvc2l0aW9ucyk7XG4gICAgICAgIHRoaXMuc2V0RGVsZXRlSWNvbigpO1xuICAgICAgICBzZXRDZWxsTWVudVZpc2liaWxpdHkodGhpcy5lZGl0b3IsIHRoaXMuY2VsbE1lbnVMaXN0LCB0YWJsZUluZm8pO1xuICAgICAgICB0aGlzLnNlbGVjdGVkQ29sb3IgPSB0aGlzLnRhYmxlU3RvcmUuZ2V0U2VsZWN0ZWRDZWxsQmFja2dyb3VuZENvbG9yKCk7XG5cbiAgICAgICAgY29uc3QgcGF0aCA9IFRoZUVkaXRvci5maW5kUGF0aCh0aGlzLmVkaXRvciwgdGhpcy50YWJsZUVsZW1lbnQpO1xuICAgICAgICB0aGlzLnRhYmxlQ2hhbmdlU3Vic2NyaWJlciA9IHRoaXMudGFibGVTdG9yZS50YWJsZUNoYW5nZSgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb2x1bW5zID0gKFRoZVF1ZXJpZXMuZ2V0Tm9kZSh0aGlzLmVkaXRvciwgcGF0aCkgYXMgVGFibGVFbGVtZW50KS5jb2x1bW5zO1xuICAgICAgICAgICAgdGhpcy5pc0NvbHVtbkVxdWFsID0gY29sdW1ucz8uZXZlcnkoY29sID0+IGNvbHVtbnNbMF0ud2lkdGggPT09IGNvbC53aWR0aCkgPz8gdHJ1ZTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMudGFibGVDaGFuZ2VTdWJzY3JpYmVyPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLmNvbG9yU2VsZWN0U2VydmljZS5jbG9zZUNvbG9yU2VsZWN0KCk7XG4gICAgfVxuXG4gICAgc2V0RGVsZXRlSWNvbigpIHtcbiAgICAgICAgY29uc3QgeyBzZWxlY3RlZENlbGxQb3NpdGlvbnMsIHNlbGVjdGVkUm93c0luZGV4LCBzZWxlY3RlZENvbHVtbnNJbmRleCwgY3JlYXRlVGFibGVQb3NpdGlvbiB9ID0gdGhpcy50YWJsZVN0b3JlO1xuICAgICAgICBjb25zdCBwb3MgPSBjcmVhdGVUYWJsZVBvc2l0aW9uKCk7XG4gICAgICAgIGlmICh0aGlzLnRhYmxlU3RvcmUuc2VsZWN0ZWRSb3dzSW5kZXgubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5kZWxldGVJY29uID0gRGVsZXRlSWNvblsndGFibGUtZGVsZXRlLXJvd3MnXTtcbiAgICAgICAgICAgIHRoaXMuaWNvbk5hbWUgPSAn5Yig6Zmk5pW06KGMJztcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy50YWJsZVN0b3JlLnNlbGVjdGVkQ29sdW1uc0luZGV4Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuZGVsZXRlSWNvbiA9IERlbGV0ZUljb25bJ3RhYmxlLWRlbGV0ZS1jb2x1bW5zJ107XG4gICAgICAgICAgICB0aGlzLmljb25OYW1lID0gJ+WIoOmZpOaVtOWIlyc7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMudGFibGVTdG9yZS5pc1NlbGVjdGVkVGFibGUpIHtcbiAgICAgICAgICAgIHRoaXMuZGVsZXRlSWNvbiA9IERlbGV0ZUljb24udHJhc2g7XG4gICAgICAgICAgICB0aGlzLmljb25OYW1lID0gJ+WIoOmZpOihqOagvCc7XG4gICAgICAgIH1cbiAgICAgICAgLy8g5ruh6Laz5bey6YCJ5Lit5pW06KGM5oiW6ICF5pW05YiXXG4gICAgICAgIGNvbnN0IGlzU2VsZWN0ZWRXaG9sZVJvd09yQ29sdW1uQ2VsbCA9XG4gICAgICAgICAgICBzZWxlY3RlZFJvd3NJbmRleC5sZW5ndGggKiBwb3MuZ2V0V2lkdGgoKSA9PT0gc2VsZWN0ZWRDZWxsUG9zaXRpb25zLmxlbmd0aCB8fFxuICAgICAgICAgICAgc2VsZWN0ZWRDb2x1bW5zSW5kZXgubGVuZ3RoICogcG9zLmdldEhlaWdodCgpID09PSBzZWxlY3RlZENlbGxQb3NpdGlvbnMubGVuZ3RoO1xuICAgICAgICBpZiAoIWlzU2VsZWN0ZWRXaG9sZVJvd09yQ29sdW1uQ2VsbCkge1xuICAgICAgICAgICAgdGhpcy5kZWxldGVJY29uID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuaWNvbk5hbWUgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25EZWxldGUoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy50YWJsZVN0b3JlLnJlbW92ZUNvbHVtbk9yUm93cygpO1xuICAgICAgICB0aGlzLnRhYmxlU3RvcmUuY2xlYXJEYW5nZXJvdXNDZWxscygpO1xuICAgICAgICB0aGlzLnRhYmxlU3RvcmUuY2xlYXJTZWxlY3RlZENlbGxzKCk7XG4gICAgICAgIHRoaXMucG9wb3ZlclJlZi5jbG9zZSgpO1xuICAgIH1cblxuICAgIG9uRW50ZXJEZWxldGUoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgdGhpcy50YWJsZVN0b3JlLnNldERhbmdlcm91c0NlbGxzKCk7XG4gICAgfVxuXG4gICAgb25MZWF2ZURlbGV0ZShldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICB0aGlzLnRhYmxlU3RvcmUuY2xlYXJEYW5nZXJvdXNDZWxscygpO1xuICAgIH1cblxuICAgIG9wZW5TZWxlY3RDb2xvcihldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgY29uc3QgZWxlbWVudCA9IChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmNsb3Nlc3QoJy50aHktYWN0aW9uJyk7XG4gICAgICAgIGNvbnN0IGlzSGVhZGVyID0gVGFibGVFZGl0b3IuaXNBY3RpdmVIZWFkZXIodGhpcy5lZGl0b3IpO1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jb2xvclNlbGVjdFNlcnZpY2UudG9nZ2xlQ29sb3JTZWxlY3QoXG4gICAgICAgICAgICAgICAgZWxlbWVudCBhcyBIVE1MRWxlbWVudCxcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkQ29sb3IsXG4gICAgICAgICAgICAgICAgQmFja2dyb3VuZENvbG9ycyxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHBlclJvd0NvbG9yTnVtYmVyczogNyxcbiAgICAgICAgICAgICAgICAgICAgcm93T3B0aW9uczogeyAxOiAnI2JiYicsIDI6ICcjYmJiJyB9LFxuICAgICAgICAgICAgICAgICAgICBzcGVjaWFsQ29sb3I6IGlzSGVhZGVyID8gVGFibGVIZWFkZXJCYWNrZ3JvdW5kQ29sb3IgOiBTcGVjaWFsQmFja2dyb3VuZENvbG9yXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAobmV3Q29sb3I6IENvbG9yVHlwZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoKG5ld0NvbG9yID09PSBUYWJsZUhlYWRlckJhY2tncm91bmRDb2xvciAmJiBpc0hlYWRlcikgfHwgKG5ld0NvbG9yID09PSBTcGVjaWFsQmFja2dyb3VuZENvbG9yICYmICFpc0hlYWRlcikpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudGFibGVTdG9yZS5zZXRTZWxlY3RlZENlbGxzQmFja2dyb3VuZENvbG9yKG51bGwpO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy50YWJsZVN0b3JlLnNldFNlbGVjdGVkQ2VsbHNCYWNrZ3JvdW5kQ29sb3IobmV3Q29sb3IpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRDb2xvciA9IG5ld0NvbG9yO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgJ2JvdHRvbUxlZnQnLFxuICAgICAgICAgICAgICAgIDRcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHNldEZ1bGxzY3JlZW4oZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgdGhpcy50YWJsZU9wdGlvbnMuc2V0RnVsbHNjcmVlbih0aGlzLmVkaXRvciwgZXZlbnQsIHRoaXMudGFibGVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBtb3VzZWRvd24oZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfVxuXG4gICAgb25Db3B5KGU6IEV2ZW50KSB7XG4gICAgICAgIGU/LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgICAgY29weU5vZGUodGhpcy5lZGl0b3IsIHRoaXMudGFibGVFbGVtZW50LCB0aGlzLnRoeU5vdGlmeVNlcnZpY2UpO1xuICAgIH1cblxuICAgIHNldEVxdWFsbHlDb2x1bW5IYW5kbGUoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgY29uc3QgY29sdW1ucyA9IHRoaXMudGFibGVFbGVtZW50LmNvbHVtbnM7XG4gICAgICAgIGNvbnN0IHN1bVdpZHRoID0gY29sdW1ucy5yZWR1Y2UoKHByZXZpb3VzVmFsdWUsIGN1cnJlbnRWYWx1ZSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHByZXZpb3VzVmFsdWUgKyBjdXJyZW50VmFsdWUud2lkdGg7XG4gICAgICAgIH0sIDApO1xuICAgICAgICBjb25zdCBlcXVhbENvbHVtbnMgPSBjb2x1bW5zLm1hcCgoKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4geyB3aWR0aDogc3VtV2lkdGggLyBjb2x1bW5zLmxlbmd0aCB9O1xuICAgICAgICB9KTtcblxuICAgICAgICBUaGVUcmFuc2Zvcm1zLnNldE5vZGUodGhpcy5lZGl0b3IsIHsgY29sdW1uczogZXF1YWxDb2x1bW5zIH0sIHRoaXMudGFibGVFbGVtZW50KTtcbiAgICB9XG5cbiAgICBvcGVuVGFibGVPcHRpb25NZW51KGV2ZW50OiBFdmVudCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgdGhpcy50aHlQb3BvdmVyLm9wZW4oVGhlVGFibGVPcHRpb25zQ29tcG9uZW50LCB7XG4gICAgICAgICAgICBvcmlnaW46IGV2ZW50LmN1cnJlbnRUYXJnZXQgYXMgSFRNTEVsZW1lbnQsXG4gICAgICAgICAgICBpbml0aWFsU3RhdGU6IHtcbiAgICAgICAgICAgICAgICB0YWJsZVN0b3JlOiB0aGlzLnRhYmxlU3RvcmUsXG4gICAgICAgICAgICAgICAgZWRpdG9yOiB0aGlzLmVkaXRvclxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIG1pbldpZHRoOiAwLFxuICAgICAgICAgICAgaW5zaWRlQ2xvc2FibGU6IHRydWUsXG4gICAgICAgICAgICBvdXRzaWRlQ2xvc2FibGU6IHRydWUsXG4gICAgICAgICAgICBoYXNCYWNrZHJvcDogZmFsc2UsXG4gICAgICAgICAgICBwbGFjZW1lbnQ6ICdib3R0b21MZWZ0JyxcbiAgICAgICAgICAgIG9yaWdpbkFjdGl2ZUNsYXNzOiAnYWN0aXZlJyxcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6ICd0YWJsZS1vcHRpb25zLXBhbm5lbCdcbiAgICAgICAgfSk7XG4gICAgfVxufVxuXG5leHBvcnQgZW51bSBEZWxldGVJY29uIHtcbiAgICAndGFibGUtZGVsZXRlLXJvd3MnID0gJ3RhYmxlLWRlbGV0ZS1yb3dzJyxcbiAgICAndGFibGUtZGVsZXRlLWNvbHVtbnMnID0gJ3RhYmxlLWRlbGV0ZS1jb2x1bW5zJyxcbiAgICAndHJhc2gnID0gJ3RyYXNoJ1xufVxuIiwiPHRoeS1hY3Rpb25zIHRoeVNpemU9XCJ4eHNcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjZWxsTWVudUxpc3RcIj5cbiAgICA8YVxuICAgICAgKm5nSWY9XCJpdGVtLnZpc2liaWxpdHlcIlxuICAgICAgaHJlZj1cImphdmFzY3JpcHQ6O1wiXG4gICAgICB0aHlBY3Rpb25cbiAgICAgIFt0aHlBY3Rpb25JY29uXT1cIml0ZW0uaWNvblwiXG4gICAgICBbdGh5VG9vbHRpcF09XCJpdGVtLm5hbWVcIlxuICAgICAgKG1vdXNlZG93bik9XCJpdGVtLmFjdGlvbkhhbmRsZSgpXCJcbiAgICA+PC9hPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPHRoeS1kaXZpZGVyICpuZ0lmPVwiaGFzRGl2aWRlclwiIGNsYXNzPVwibXItMiBtbC0xIGFsaWduLXNlbGYtY2VudGVyXCIgW3RoeVZlcnRpY2FsXT1cInRydWVcIj4gPC90aHktZGl2aWRlcj5cbiAgPGEgaHJlZj1cImphdmFzY3JpcHQ6O1wiIHRoeUFjdGlvbiB0aHlUb29sdGlwPVwi5Y2V5YWD5qC86IOM5pmvXCIgKG1vdXNlZG93bik9XCJvcGVuU2VsZWN0Q29sb3IoJGV2ZW50KVwiPlxuICAgIDx0aHktaWNvbiB0aHlJY29uTmFtZT1cImJhY2tncm91bmQtdHRcIiB0aHlJY29uVHlwZT1cInR3b3RvbmVcIiBbdGh5VHdvdG9uZUNvbG9yXT1cInNlbGVjdGVkQ29sb3JcIj48L3RoeS1pY29uPlxuICA8L2E+XG4gIDxhXG4gICAgaHJlZj1cImphdmFzY3JpcHQ6O1wiXG4gICAgKm5nSWY9XCJ0YWJsZVN0b3JlLmlzU2VsZWN0ZWRUYWJsZSAmJiAhaXNDb2x1bW5FcXVhbFwiXG4gICAgdGh5QWN0aW9uXG4gICAgdGh5VG9vbHRpcD1cIuWIl+etieWuvVwiXG4gICAgKG1vdXNlZG93bik9XCJzZXRFcXVhbGx5Q29sdW1uSGFuZGxlKCRldmVudClcIlxuICA+XG4gICAgPHRoeS1pY29uIHRoeUljb25OYW1lPVwidGFibGUtY29sdW1uLWVxdWFsLXdpZHRoXCI+PC90aHktaWNvbj5cbiAgPC9hPlxuICA8YVxuICAgIGhyZWY9XCJqYXZhc2NyaXB0OjtcIlxuICAgICpuZ0lmPVwidGFibGVTdG9yZS5pc1NlbGVjdGVkVGFibGUgJiYgdGFibGVPcHRpb25zPy5zaG93RnVsbHNjcmVlblwiXG4gICAgdGh5QWN0aW9uXG4gICAgdGh5VG9vbHRpcD1cIuWFqOWxj1wiXG4gICAgKG1vdXNlZG93bik9XCJzZXRGdWxsc2NyZWVuKCRldmVudClcIlxuICA+XG4gICAgPHRoeS1pY29uIHRoeUljb25OYW1lPVwiYXJyb3dzLWFsdFwiPjwvdGh5LWljb24+XG4gIDwvYT5cbiAgPGFcbiAgICAqbmdJZj1cInRhYmxlU3RvcmUuaXNTZWxlY3RlZFRhYmxlICYmICF0YWJsZVN0b3JlPy5pc0Z1bGxzY3JlZW5cIlxuICAgIGNsYXNzPVwiZnVsbHNjcmVlbi1oaWRkZW5cIlxuICAgIGhyZWY9XCJqYXZhc2NyaXB0OjtcIlxuICAgIHRoeUFjdGlvblxuICAgIHRoeUFjdGlvbkljb249XCJjb3B5XCJcbiAgICB0aHlUb29sdGlwPVwi5aSN5Yi2XCJcbiAgICAobW91c2Vkb3duKT1cIm9uQ29weSgkZXZlbnQpXCJcbiAgPjwvYT5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInRhYmxlU3RvcmUuaXNTZWxlY3RlZFRhYmxlXCI+XG4gICAgPHRoeS1kaXZpZGVyIGNsYXNzPVwibXItMiBtbC0xIGFsaWduLXNlbGYtY2VudGVyXCIgW3RoeVZlcnRpY2FsXT1cInRydWVcIj48L3RoeS1kaXZpZGVyPlxuICAgIDxhIGhyZWY9XCJqYXZhc2NyaXB0OjtcIiBjbGFzcz1cImxpbmstd2l0aC1kb3duXCIgdGh5QWN0aW9uIChtb3VzZWRvd24pPVwibW91c2Vkb3duKCRldmVudClcIiAoY2xpY2spPVwib3BlblRhYmxlT3B0aW9uTWVudSgkZXZlbnQpXCI+XG4gICAgICA8c3Bhbj7ooajmoLzpgInpobk8L3NwYW4+XG4gICAgICA8dGh5LWljb24gY2xhc3M9XCJmb250LXNpemUtc20gdGV4dC1kZXNjIG1sLTFcIiB0aHlJY29uTmFtZT1cImNhcmV0LWRvd25cIj48L3RoeS1pY29uPlxuICAgIDwvYT5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJ0YWJsZVN0b3JlPy5pc0Z1bGxzY3JlZW4gPyBkZWxldGVJY29uICYmICF0YWJsZVN0b3JlLmlzU2VsZWN0ZWRUYWJsZSA6IGRlbGV0ZUljb25cIj5cbiAgICA8dGh5LWRpdmlkZXIgY2xhc3M9XCJtci0yIG1sLTEgYWxpZ24tc2VsZi1jZW50ZXJcIiBbdGh5VmVydGljYWxdPVwidHJ1ZVwiPjwvdGh5LWRpdmlkZXI+XG4gICAgPGFcbiAgICAgIGhyZWY9XCJqYXZhc2NyaXB0OjtcIlxuICAgICAgdGh5QWN0aW9uXG4gICAgICB0aHlUeXBlPVwiZGFuZ2VyXCJcbiAgICAgIFt0aHlBY3Rpb25JY29uXT1cImRlbGV0ZUljb25cIlxuICAgICAgW3RoeVRvb2x0aXBdPVwiaWNvbk5hbWVcIlxuICAgICAgKG1vdXNlZG93bik9XCJvbkRlbGV0ZSgkZXZlbnQpXCJcbiAgICAgIChtb3VzZWVudGVyKT1cIm9uRW50ZXJEZWxldGUoJGV2ZW50KVwiXG4gICAgICAobW91c2VsZWF2ZSk9XCJvbkxlYXZlRGVsZXRlKCRldmVudClcIlxuICAgID48L2E+XG4gIDwvbmctY29udGFpbmVyPlxuPC90aHktYWN0aW9ucz5cbiJdfQ==
200
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdG9vbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS9jb21wb25lbnRzL3Rvb2xiYXIvdGFibGUtdG9vbGJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvcGx1Z2lucy90YWJsZS9jb21wb25lbnRzL3Rvb2xiYXIvdGFibGUtdG9vbGJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFJNUUsT0FBTyxFQUFhLGdCQUFnQixFQUFFLDBCQUEwQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFckksT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXBELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzlFLE9BQU8sS0FBSyxhQUFhLE1BQU0sd0JBQXdCLENBQUM7QUFDeEQsT0FBTyxLQUFLLFVBQVUsTUFBTSxxQkFBcUIsQ0FBQztBQUdsRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7Ozs7Ozs7QUFNN0MsTUFBTSxPQUFPLHdCQUF3QjtJQTBEakMsWUFDWSxNQUFj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Q0FBQyxJQUFJLENBQUMsd0JBQXdCLEVBQUU7WUFDM0MsTUFBTSxFQUFFLEtBQUssQ0FBQyxhQUE0QjtZQUMxQyxZQUFZLEVBQUU7Z0JBQ1YsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO2dCQUMzQixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07YUFDdEI7WUFDRCxRQUFRLEVBQUUsQ0FBQztZQUNYLGNBQWMsRUFBRSxJQUFJO1lBQ3BCLGVBQWUsRUFBRSxJQUFJO1lBQ3JCLFdBQVcsRUFBRSxLQUFLO1lBQ2xCLFNBQVMsRUFBRSxZQUFZO1lBQ3ZCLGlCQUFpQixFQUFFLFFBQVE7WUFDM0IsVUFBVSxFQUFFLHNCQUFzQjtTQUNyQyxDQUFDLENBQUM7SUFDUCxDQUFDOztxSEE1TVEsd0JBQXdCO3lHQUF4Qix3QkFBd0IsNkhDekJyQywyNkVBK0RBOzJGRHRDYSx3QkFBd0I7a0JBSnBDLFNBQVM7K0JBQ0ksbUJBQW1CO3FOQWdCcEIsVUFBVTtzQkFBbEIsS0FBSztnQkFFRyxZQUFZO3NCQUFwQixLQUFLOztBQWdNVixNQUFNLENBQU4sSUFBWSxVQUlYO0FBSkQsV0FBWSxVQUFVO0lBQ2xCLHFEQUF5QyxDQUFBO0lBQ3pDLDJEQUErQyxDQUFBO0lBQy9DLDZCQUFpQixDQUFBO0FBQ3JCLENBQUMsRUFKVyxVQUFVLEtBQVYsVUFBVSxRQUlyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgTmdab25lLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoeVBvcG92ZXIsIFRoeVBvcG92ZXJSZWYgfSBmcm9tICduZ3gtdGV0aHlzL3BvcG92ZXInO1xuaW1wb3J0IHsgRWRpdG9yIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgVGFibGVTdG9yZSB9IGZyb20gJy4uLy4uL3RhYmxlLnN0b3JlJztcbmltcG9ydCB7IENvbG9yVHlwZSwgQmFja2dyb3VuZENvbG9ycywgVGFibGVIZWFkZXJCYWNrZ3JvdW5kQ29sb3IsIFNwZWNpYWxCYWNrZ3JvdW5kQ29sb3IgfSBmcm9tICcuLi8uLi8uLi8uLi9jb25zdGFudHMvY29sb3Itc2VsZWN0JztcbmltcG9ydCB7IFRoZUNvbG9yU2VsZWN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL2NvbG9yLXNlbGVjdC5zZXJ2aWNlJztcbmltcG9ydCB7IHNwbGl0Q2VsbCB9IGZyb20gJy4uLy4uL3V0aWxzL3NwbGl0LWNlbGwnO1xuaW1wb3J0IHsgc2V0Q2VsbE1lbnVWaXNpYmlsaXR5IH0gZnJvbSAnLi4vLi4vdXRpbHMvc2V0LW1lbnUtY2VsbC1pbnZpc2liaWxpdHknO1xuaW1wb3J0IHsgTWVudUVudGl0eSB9IGZyb20gJy4uLy4uL3RhYmxlLnR5cGVzJztcbmltcG9ydCB7IFRhYmxlRWRpdG9yIH0gZnJvbSAnLi4vLi4vdGFibGUuZWRpdG9yJztcbmltcG9ydCB7IFRoZVRhYmxlT3B0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vdGFibGUtb3B0aW9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGx1Z2luS2V5cywgVGhlRWRpdG9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBnZXRQbHVnaW5PcHRpb25zIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZSc7XG5pbXBvcnQgeyBUYWJsZUVsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi8vY3VzdG9tLXR5cGVzJztcbmltcG9ydCB7IGlzUmVjdGFuZ3VsYXJJblRhYmxlQ2VsbHMgfSBmcm9tICcuLi8uLi91dGlscy9pcy1zZWxlY3Rpb24taW4tdGFibGUnO1xuaW1wb3J0ICogYXMgVGhlVHJhbnNmb3JtcyBmcm9tICcuLi8uLi8uLi8uLi90cmFuc2Zvcm1zJztcbmltcG9ydCAqIGFzIFRoZVF1ZXJpZXMgZnJvbSAnLi4vLi4vLi4vLi4vcXVlcmllcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRoeU5vdGlmeVNlcnZpY2UgfSBmcm9tICduZ3gtdGV0aHlzL25vdGlmeSc7XG5pbXBvcnQgeyBjb3B5Tm9kZSB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aGUtdGFibGUtdG9vbGJhcicsXG4gICAgdGVtcGxhdGVVcmw6ICd0YWJsZS10b29sYmFyLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBUaGVUYWJsZVRvb2xiYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgc2VsZWN0ZWRDb2xvcjogc3RyaW5nO1xuXG4gICAgZGVsZXRlSWNvbjogRGVsZXRlSWNvbjtcblxuICAgIGljb25OYW1lOiBzdHJpbmc7XG5cbiAgICBpc1JlY3RhbmdsZTogYm9vbGVhbjtcblxuICAgIGlzQ29sdW1uRXF1YWw6IGJvb2xlYW47XG5cbiAgICB0YWJsZUNoYW5nZVN1YnNjcmliZXI6IFN1YnNjcmlwdGlvbjtcblxuICAgIEBJbnB1dCgpIHRhYmxlU3RvcmU6IFRhYmxlU3RvcmU7XG5cbiAgICBASW5wdXQoKSB0YWJsZUVsZW1lbnQ6IFRhYmxlRWxlbWVudDtcblxuICAgIGdldCBlZGl0b3IoKTogRWRpdG9yIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGFibGVTdG9yZSAmJiB0aGlzLnRhYmxlU3RvcmUuZWRpdG9yO1xuICAgIH1cblxuICAgIGNlbGxNZW51TGlzdDogTWVudUVudGl0eVtdID0gW1xuICAgICAgICB7XG4gICAgICAgICAgICBrZXk6ICdtZXJnZS1jZWxscycsXG4gICAgICAgICAgICBuYW1lOiAn5ZCI5bm25Y2V5YWD5qC8JyxcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGZhbHNlLFxuICAgICAgICAgICAgaWNvbjogJ3RhYmxlLW1lcmdlLWNlbGxzJyxcbiAgICAgICAgICAgIGFjdGlvbkhhbmRsZTogKCkgPT4ge1xuICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgdGhpcy50YWJsZVN0b3JlLm1lcmdlQ2VsbCh0aGlzLmVkaXRvcik7XG4gICAgICAgICAgICAgICAgdGhpcy5wb3BvdmVyUmVmLmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgdGhpcy50YWJsZVN0b3JlLmNsZWFyU2VsZWN0ZWRDZWxscygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBrZXk6ICdzcGxpdC1jZWxscycsXG4gICAgICAgICAgICBuYW1lOiAn5ouG5YiG5Y2V5YWD5qC8JyxcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGZhbHNlLFxuICAgICAgICAgICAgaWNvbjogJ3RhYmxlLXVubWVyZ2UtY2VsbHMnLFxuICAgICAgICAgICAgYWN0aW9uSGFuZGxlOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICBzcGxpdENlbGwodGhpcy5lZGl0b3IpO1xuICAgICAgICAgICAgICAgIHRoaXMucG9wb3ZlclJlZi5jbG9zZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMudGFibGVTdG9yZS5jbGVhclNlbGVjdGVkQ2VsbHMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIF07XG5cbiAgICBnZXQgaGFzRGl2aWRlcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2VsbE1lbnVMaXN0LmZpbHRlcihpdGVtID0+IGl0ZW0udmlzaWJpbGl0eSkubGVuZ3RoID4gMTtcbiAgICB9XG5cbiAgICBnZXQgdGFibGVPcHRpb25zKCkge1xuICAgICAgICByZXR1cm4gZ2V0UGx1Z2luT3B0aW9ucyh0aGlzLmVkaXRvciwgUGx1Z2luS2V5cy50YWJsZSk7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIHByaXZhdGUgY29sb3JTZWxlY3RTZXJ2aWNlOiBUaGVDb2xvclNlbGVjdFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgdGh5UG9wb3ZlcjogVGh5UG9wb3ZlcixcbiAgICAgICAgcHJpdmF0ZSBwb3BvdmVyUmVmOiBUaHlQb3BvdmVyUmVmPFRoZVRhYmxlVG9vbGJhckNvbXBvbmVudD4sXG4gICAgICAgIHByaXZhdGUgdGh5Tm90aWZ5U2VydmljZTogVGh5Tm90aWZ5U2VydmljZVxuICAgICkge31cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmlzQ29sdW1uRXF1YWwgPSB0aGlzLnRhYmxlRWxlbWVudD8uY29sdW1ucz8uZXZlcnkoY29sID0+IHRoaXMudGFibGVFbGVtZW50LmNvbHVtbnNbMF0ud2lkdGggPT09IGNvbC53aWR0aCkgPz8gdHJ1ZTtcbiAgICAgICAgY29uc3QgeyBzZWxlY3RlZENlbGxQb3NpdGlvbnMsIGlzU2VsZWN0ZWRUYWJsZSB9ID0gdGhpcy50YWJsZVN0b3JlO1xuICAgICAgICBjb25zdCB0YWJsZUluZm8gPSB7IHNlbGVjdGVkQ2VsbFBvc2l0aW9ucywgaXNTZWxlY3RlZFRhYmxlIH07XG4gICAgICAgIHRoaXMuaXNSZWN0YW5nbGUgPSBpc1JlY3Rhbmd1bGFySW5UYWJsZUNlbGxzKHRoaXMuZWRpdG9yLCBzZWxlY3RlZENlbGxQb3NpdGlvbnMpO1xuICAgICAgICB0aGlzLnNldERlbGV0ZUljb24oKTtcbiAgICAgICAgc2V0Q2VsbE1lbnVWaXNpYmlsaXR5KHRoaXMuZWRpdG9yLCB0aGlzLmNlbGxNZW51TGlzdCwgdGFibGVJbmZvKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZENvbG9yID0gdGhpcy50YWJsZVN0b3JlLmdldFNlbGVjdGVkQ2VsbEJhY2tncm91bmRDb2xvcigpO1xuXG4gICAgICAgIGNvbnN0IHBhdGggPSBUaGVFZGl0b3IuZmluZFBhdGgodGhpcy5lZGl0b3IsIHRoaXMudGFibGVFbGVtZW50KTtcbiAgICAgICAgdGhpcy50YWJsZUNoYW5nZVN1YnNjcmliZXIgPSB0aGlzLnRhYmxlU3RvcmUudGFibGVDaGFuZ2UoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29sdW1ucyA9IChUaGVRdWVyaWVzLmdldE5vZGUodGhpcy5lZGl0b3IsIHBhdGgpIGFzIFRhYmxlRWxlbWVudCkuY29sdW1ucztcbiAgICAgICAgICAgIHRoaXMuaXNDb2x1bW5FcXVhbCA9IGNvbHVtbnM/LmV2ZXJ5KGNvbCA9PiBjb2x1bW5zWzBdLndpZHRoID09PSBjb2wud2lkdGgpID8/IHRydWU7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLnRhYmxlQ2hhbmdlU3Vic2NyaWJlcj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5jb2xvclNlbGVjdFNlcnZpY2UuY2xvc2VDb2xvclNlbGVjdCgpO1xuICAgIH1cblxuICAgIHNldERlbGV0ZUljb24oKSB7XG4gICAgICAgIGNvbnN0IHsgc2VsZWN0ZWRDZWxsUG9zaXRpb25zLCBzZWxlY3RlZFJvd3NJbmRleCwgc2VsZWN0ZWRDb2x1bW5zSW5kZXgsIGNyZWF0ZVRhYmxlUG9zaXRpb24gfSA9IHRoaXMudGFibGVTdG9yZTtcbiAgICAgICAgY29uc3QgcG9zID0gY3JlYXRlVGFibGVQb3NpdGlvbigpO1xuICAgICAgICBpZiAodGhpcy50YWJsZVN0b3JlLnNlbGVjdGVkUm93c0luZGV4Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuZGVsZXRlSWNvbiA9IERlbGV0ZUljb25bJ3RhYmxlLWRlbGV0ZS1yb3dzJ107XG4gICAgICAgICAgICB0aGlzLmljb25OYW1lID0gJ+WIoOmZpOaVtOihjCc7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMudGFibGVTdG9yZS5zZWxlY3RlZENvbHVtbnNJbmRleC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB0aGlzLmRlbGV0ZUljb24gPSBEZWxldGVJY29uWyd0YWJsZS1kZWxldGUtY29sdW1ucyddO1xuICAgICAgICAgICAgdGhpcy5pY29uTmFtZSA9ICfliKDpmaTmlbTliJcnO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnRhYmxlU3RvcmUuaXNTZWxlY3RlZFRhYmxlKSB7XG4gICAgICAgICAgICB0aGlzLmRlbGV0ZUljb24gPSBEZWxldGVJY29uLnRyYXNoO1xuICAgICAgICAgICAgdGhpcy5pY29uTmFtZSA9ICfliKDpmaTooajmoLwnO1xuICAgICAgICB9XG4gICAgICAgIC8vIOa7oei2s+W3sumAieS4reaVtOihjOaIluiAheaVtOWIl1xuICAgICAgICBjb25zdCBpc1NlbGVjdGVkV2hvbGVSb3dPckNvbHVtbkNlbGwgPVxuICAgICAgICAgICAgc2VsZWN0ZWRSb3dzSW5kZXgubGVuZ3RoICogcG9zLmdldFdpZHRoKCkgPT09IHNlbGVjdGVkQ2VsbFBvc2l0aW9ucy5sZW5ndGggfHxcbiAgICAgICAgICAgIHNlbGVjdGVkQ29sdW1uc0luZGV4Lmxlbmd0aCAqIHBvcy5nZXRIZWlnaHQoKSA9PT0gc2VsZWN0ZWRDZWxsUG9zaXRpb25zLmxlbmd0aDtcbiAgICAgICAgaWYgKCFpc1NlbGVjdGVkV2hvbGVSb3dPckNvbHVtbkNlbGwpIHtcbiAgICAgICAgICAgIHRoaXMuZGVsZXRlSWNvbiA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLmljb25OYW1lID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uRGVsZXRlKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMudGFibGVTdG9yZS5yZW1vdmVDb2x1bW5PclJvd3MoKTtcbiAgICAgICAgdGhpcy50YWJsZVN0b3JlLmNsZWFyRGFuZ2Vyb3VzQ2VsbHMoKTtcbiAgICAgICAgdGhpcy50YWJsZVN0b3JlLmNsZWFyU2VsZWN0ZWRDZWxscygpO1xuICAgICAgICB0aGlzLnBvcG92ZXJSZWYuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBvbkVudGVyRGVsZXRlKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIHRoaXMudGFibGVTdG9yZS5zZXREYW5nZXJvdXNDZWxscygpO1xuICAgIH1cblxuICAgIG9uTGVhdmVEZWxldGUoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgdGhpcy50YWJsZVN0b3JlLmNsZWFyRGFuZ2Vyb3VzQ2VsbHMoKTtcbiAgICB9XG5cbiAgICBvcGVuU2VsZWN0Q29sb3IoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5jbG9zZXN0KCcudGh5LWFjdGlvbicpO1xuICAgICAgICBjb25zdCBpc0hlYWRlciA9IFRhYmxlRWRpdG9yLmlzQWN0aXZlSGVhZGVyKHRoaXMuZWRpdG9yKTtcbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY29sb3JTZWxlY3RTZXJ2aWNlLnRvZ2dsZUNvbG9yU2VsZWN0KFxuICAgICAgICAgICAgICAgIGVsZW1lbnQgYXMgSFRNTEVsZW1lbnQsXG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZENvbG9yLFxuICAgICAgICAgICAgICAgIEJhY2tncm91bmRDb2xvcnMsXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwZXJSb3dDb2xvck51bWJlcnM6IDcsXG4gICAgICAgICAgICAgICAgICAgIHJvd09wdGlvbnM6IHsgMTogJyNiYmInLCAyOiAnI2JiYicgfSxcbiAgICAgICAgICAgICAgICAgICAgc3BlY2lhbENvbG9yOiBpc0hlYWRlciA/IFRhYmxlSGVhZGVyQmFja2dyb3VuZENvbG9yIDogU3BlY2lhbEJhY2tncm91bmRDb2xvclxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgKG5ld0NvbG9yOiBDb2xvclR5cGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKChuZXdDb2xvciA9PT0gVGFibGVIZWFkZXJCYWNrZ3JvdW5kQ29sb3IgJiYgaXNIZWFkZXIpIHx8IChuZXdDb2xvciA9PT0gU3BlY2lhbEJhY2tncm91bmRDb2xvciAmJiAhaXNIZWFkZXIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRhYmxlU3RvcmUuc2V0U2VsZWN0ZWRDZWxsc0JhY2tncm91bmRDb2xvcihudWxsKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudGFibGVTdG9yZS5zZXRTZWxlY3RlZENlbGxzQmFja2dyb3VuZENvbG9yKG5ld0NvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkQ29sb3IgPSBuZXdDb2xvcjtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICdib3R0b21MZWZ0JyxcbiAgICAgICAgICAgICAgICA0XG4gICAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzZXRGdWxsc2NyZWVuKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIHRoaXMudGFibGVPcHRpb25zLnNldEZ1bGxzY3JlZW4odGhpcy5lZGl0b3IsIGV2ZW50LCB0aGlzLnRhYmxlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgbW91c2Vkb3duKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIG9uQ29weShlOiBFdmVudCkge1xuICAgICAgICBlPy5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIGNvcHlOb2RlKHRoaXMuZWRpdG9yLCB0aGlzLnRhYmxlRWxlbWVudCwgdGhpcy50aHlOb3RpZnlTZXJ2aWNlKTtcbiAgICB9XG5cbiAgICBzZXRFcXVhbGx5Q29sdW1uSGFuZGxlKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGNvbnN0IGNvbHVtbnMgPSB0aGlzLnRhYmxlRWxlbWVudC5jb2x1bW5zO1xuICAgICAgICBjb25zdCBzdW1XaWR0aCA9IGNvbHVtbnMucmVkdWNlKChwcmV2aW91c1ZhbHVlLCBjdXJyZW50VmFsdWUpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBwcmV2aW91c1ZhbHVlICsgY3VycmVudFZhbHVlLndpZHRoO1xuICAgICAgICB9LCAwKTtcbiAgICAgICAgY29uc3QgZXF1YWxDb2x1bW5zID0gY29sdW1ucy5tYXAoKCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHsgd2lkdGg6IHN1bVdpZHRoIC8gY29sdW1ucy5sZW5ndGggfTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgVGhlVHJhbnNmb3Jtcy5zZXROb2RlKHRoaXMuZWRpdG9yLCB7IGNvbHVtbnM6IGVxdWFsQ29sdW1ucyB9LCB0aGlzLnRhYmxlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgb3BlblRhYmxlT3B0aW9uTWVudShldmVudDogRXZlbnQpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMudGh5UG9wb3Zlci5vcGVuKFRoZVRhYmxlT3B0aW9uc0NvbXBvbmVudCwge1xuICAgICAgICAgICAgb3JpZ2luOiBldmVudC5jdXJyZW50VGFyZ2V0IGFzIEhUTUxFbGVtZW50LFxuICAgICAgICAgICAgaW5pdGlhbFN0YXRlOiB7XG4gICAgICAgICAgICAgICAgdGFibGVTdG9yZTogdGhpcy50YWJsZVN0b3JlLFxuICAgICAgICAgICAgICAgIGVkaXRvcjogdGhpcy5lZGl0b3JcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBtaW5XaWR0aDogMCxcbiAgICAgICAgICAgIGluc2lkZUNsb3NhYmxlOiB0cnVlLFxuICAgICAgICAgICAgb3V0c2lkZUNsb3NhYmxlOiB0cnVlLFxuICAgICAgICAgICAgaGFzQmFja2Ryb3A6IGZhbHNlLFxuICAgICAgICAgICAgcGxhY2VtZW50OiAnYm90dG9tTGVmdCcsXG4gICAgICAgICAgICBvcmlnaW5BY3RpdmVDbGFzczogJ2FjdGl2ZScsXG4gICAgICAgICAgICBwYW5lbENsYXNzOiAndGFibGUtb3B0aW9ucy1wYW5uZWwnXG4gICAgICAgIH0pO1xuICAgIH1cbn1cblxuZXhwb3J0IGVudW0gRGVsZXRlSWNvbiB7XG4gICAgJ3RhYmxlLWRlbGV0ZS1yb3dzJyA9ICd0YWJsZS1kZWxldGUtcm93cycsXG4gICAgJ3RhYmxlLWRlbGV0ZS1jb2x1bW5zJyA9ICd0YWJsZS1kZWxldGUtY29sdW1ucycsXG4gICAgJ3RyYXNoJyA9ICd0cmFzaCdcbn1cbiIsIjx0aHktYWN0aW9ucyB0aHlTaXplPVwieHhzXCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY2VsbE1lbnVMaXN0XCI+XG4gICAgPGFcbiAgICAgICpuZ0lmPVwiaXRlbS52aXNpYmlsaXR5XCJcbiAgICAgIGhyZWY9XCJqYXZhc2NyaXB0OjtcIlxuICAgICAgdGh5QWN0aW9uXG4gICAgICBbdGh5QWN0aW9uSWNvbl09XCJpdGVtLmljb25cIlxuICAgICAgW3RoeVRvb2x0aXBdPVwiaXRlbS5uYW1lXCJcbiAgICAgIChtb3VzZWRvd24pPVwiaXRlbS5hY3Rpb25IYW5kbGUoKVwiXG4gICAgPjwvYT5cbiAgPC9uZy1jb250YWluZXI+XG4gIDx0aHktZGl2aWRlciAqbmdJZj1cImhhc0RpdmlkZXJcIiBjbGFzcz1cIm1yLTIgbWwtMSBhbGlnbi1zZWxmLWNlbnRlclwiIFt0aHlWZXJ0aWNhbF09XCJ0cnVlXCI+IDwvdGh5LWRpdmlkZXI+XG4gIDxhIGhyZWY9XCJqYXZhc2NyaXB0OjtcIiB0aHlBY3Rpb24gdGh5VG9vbHRpcD1cIuWNleWFg+agvOiDjOaZr1wiIChtb3VzZWRvd24pPVwib3BlblNlbGVjdENvbG9yKCRldmVudClcIj5cbiAgICA8dGh5LWljb24gdGh5SWNvbk5hbWU9XCJiYWNrZ3JvdW5kLXR0XCIgdGh5SWNvblR5cGU9XCJ0d290b25lXCIgW3RoeVR3b3RvbmVDb2xvcl09XCJzZWxlY3RlZENvbG9yXCI+PC90aHktaWNvbj5cbiAgPC9hPlxuICA8YVxuICAgIGhyZWY9XCJqYXZhc2NyaXB0OjtcIlxuICAgICpuZ0lmPVwidGFibGVTdG9yZS5pc1NlbGVjdGVkVGFibGUgJiYgIWlzQ29sdW1uRXF1YWxcIlxuICAgIHRoeUFjdGlvblxuICAgIHRoeVRvb2x0aXA9XCLliJfnrYnlrr1cIlxuICAgIChtb3VzZWRvd24pPVwic2V0RXF1YWxseUNvbHVtbkhhbmRsZSgkZXZlbnQpXCJcbiAgPlxuICAgIDx0aHktaWNvbiB0aHlJY29uTmFtZT1cInRhYmxlLWNvbHVtbi1lcXVhbC13aWR0aFwiPjwvdGh5LWljb24+XG4gIDwvYT5cbiAgPGFcbiAgICBocmVmPVwiamF2YXNjcmlwdDo7XCJcbiAgICAqbmdJZj1cInRhYmxlU3RvcmUuaXNTZWxlY3RlZFRhYmxlICYmIHRhYmxlT3B0aW9ucz8uc2hvd0Z1bGxzY3JlZW5cIlxuICAgIHRoeUFjdGlvblxuICAgIHRoeVRvb2x0aXA9XCLlhajlsY9cIlxuICAgIChtb3VzZWRvd24pPVwic2V0RnVsbHNjcmVlbigkZXZlbnQpXCJcbiAgPlxuICAgIDx0aHktaWNvbiB0aHlJY29uTmFtZT1cImFycm93cy1hbHRcIj48L3RoeS1pY29uPlxuICA8L2E+XG4gIDxhXG4gICAgKm5nSWY9XCJ0YWJsZVN0b3JlLmlzU2VsZWN0ZWRUYWJsZSAmJiAhdGFibGVTdG9yZT8uaXNGdWxsc2NyZWVuXCJcbiAgICBjbGFzcz1cImZ1bGxzY3JlZW4taGlkZGVuXCJcbiAgICBocmVmPVwiamF2YXNjcmlwdDo7XCJcbiAgICB0aHlBY3Rpb25cbiAgICB0aHlBY3Rpb25JY29uPVwiY29weVwiXG4gICAgdGh5VG9vbHRpcD1cIuWkjeWItlwiXG4gICAgKG1vdXNlZG93bik9XCJvbkNvcHkoJGV2ZW50KVwiXG4gID48L2E+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJ0YWJsZVN0b3JlLmlzU2VsZWN0ZWRUYWJsZVwiPlxuICAgIDx0aHktZGl2aWRlciBjbGFzcz1cIm1yLTIgbWwtMSBhbGlnbi1zZWxmLWNlbnRlclwiIFt0aHlWZXJ0aWNhbF09XCJ0cnVlXCI+PC90aHktZGl2aWRlcj5cbiAgICA8YSBocmVmPVwiamF2YXNjcmlwdDo7XCIgY2xhc3M9XCJsaW5rLXdpdGgtZG93blwiIHRoeUFjdGlvbiAobW91c2Vkb3duKT1cIm1vdXNlZG93bigkZXZlbnQpXCIgKGNsaWNrKT1cIm9wZW5UYWJsZU9wdGlvbk1lbnUoJGV2ZW50KVwiPlxuICAgICAgPHNwYW4+6KGo5qC86YCJ6aG5PC9zcGFuPlxuICAgICAgPHRoeS1pY29uIGNsYXNzPVwiZm9udC1zaXplLXNtIHRleHQtZGVzYyBtbC0xXCIgdGh5SWNvbk5hbWU9XCJjYXJldC1kb3duXCI+PC90aHktaWNvbj5cbiAgICA8L2E+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwidGFibGVTdG9yZT8uaXNGdWxsc2NyZWVuID8gZGVsZXRlSWNvbiAmJiAhdGFibGVTdG9yZS5pc1NlbGVjdGVkVGFibGUgOiBkZWxldGVJY29uXCI+XG4gICAgPHRoeS1kaXZpZGVyIGNsYXNzPVwibXItMiBtbC0xIGFsaWduLXNlbGYtY2VudGVyXCIgW3RoeVZlcnRpY2FsXT1cInRydWVcIj48L3RoeS1kaXZpZGVyPlxuICAgIDxhXG4gICAgICBocmVmPVwiamF2YXNjcmlwdDo7XCJcbiAgICAgIHRoeUFjdGlvblxuICAgICAgdGh5VHlwZT1cImRhbmdlclwiXG4gICAgICBbdGh5QWN0aW9uSWNvbl09XCJkZWxldGVJY29uXCJcbiAgICAgIFt0aHlUb29sdGlwXT1cImljb25OYW1lXCJcbiAgICAgIChtb3VzZWRvd24pPVwib25EZWxldGUoJGV2ZW50KVwiXG4gICAgICAobW91c2VlbnRlcik9XCJvbkVudGVyRGVsZXRlKCRldmVudClcIlxuICAgICAgKG1vdXNlbGVhdmUpPVwib25MZWF2ZURlbGV0ZSgkZXZlbnQpXCJcbiAgICA+PC9hPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvdGh5LWFjdGlvbnM+XG4iXX0=
@@ -1,16 +1,30 @@
1
1
  import { Pipe } from '@angular/core';
2
+ import { TABLE_CONTROL, TABLE_NUMBER_COLUMN } from './table.types';
3
+ import { ELEMENT_TO_COMPONENT } from 'slate-angular';
4
+ import { getElementWidth } from '../../utils';
2
5
  import * as i0 from "@angular/core";
3
6
  export class TableFreezeColumnPipe {
4
7
  transform(table, tablePluginOptions) {
5
8
  const rows = table.children?.map(item => item.children);
9
+ const headerColumnWidth = table.columns && table.columns[0].width;
10
+ const tableComponent = ELEMENT_TO_COMPONENT.get(table);
11
+ let stickyColumn = true;
12
+ let buffer = TABLE_CONTROL;
13
+ if (table.options?.numberedColumn) {
14
+ buffer = TABLE_NUMBER_COLUMN + TABLE_CONTROL;
15
+ }
16
+ if (tableComponent) {
17
+ const tableWidth = getElementWidth(tableComponent.elementRef.nativeElement);
18
+ stickyColumn = headerColumnWidth + buffer < tableWidth;
19
+ }
6
20
  // 标题列存在合并的列时,取消冻结
7
21
  const mergeColumnCells = rows && rows.map(cells => cells[0]).filter(item => item.colspan && item.colspan !== 1);
8
- return !!(tablePluginOptions?.freezeColumnHeader && table.options?.headerColumn && !mergeColumnCells.length);
22
+ return !!(tablePluginOptions?.freezeColumnHeader && table.options?.headerColumn && !mergeColumnCells.length && stickyColumn);
9
23
  }
10
24
  }
11
- TableFreezeColumnPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TableFreezeColumnPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
12
- TableFreezeColumnPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: TableFreezeColumnPipe, name: "freezeColumn" });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TableFreezeColumnPipe, decorators: [{
25
+ TableFreezeColumnPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TableFreezeColumnPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
26
+ TableFreezeColumnPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: TableFreezeColumnPipe, name: "freezeColumn" });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TableFreezeColumnPipe, decorators: [{
14
28
  type: Pipe,
15
29
  args: [{ name: 'freezeColumn' }]
16
30
  }] });
@@ -24,10 +38,10 @@ export class TableFreezeRowPipe {
24
38
  return false;
25
39
  }
26
40
  }
27
- TableFreezeRowPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TableFreezeRowPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
28
- TableFreezeRowPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: TableFreezeRowPipe, name: "freezeRow" });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TableFreezeRowPipe, decorators: [{
41
+ TableFreezeRowPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TableFreezeRowPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
42
+ TableFreezeRowPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: TableFreezeRowPipe, name: "freezeRow" });
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TableFreezeRowPipe, decorators: [{
30
44
  type: Pipe,
31
45
  args: [{ name: 'freezeRow' }]
32
46
  }] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RhYmxlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBS3BELE1BQU0sT0FBTyxxQkFBcUI7SUFDOUIsU0FBUyxDQUFDLEtBQW1CLEVBQUUsa0JBQXdDO1FBQ25FLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hELGtCQUFrQjtRQUNsQixNQUFNLGdCQUFnQixHQUFHLElBQUksSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ2hILE9BQU8sQ0FBQyxDQUFDLENBQUMsa0JBQWtCLEVBQUUsa0JBQWtCLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxZQUFZLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqSCxDQUFDOztrSEFOUSxxQkFBcUI7Z0hBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQURqQyxJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRTs7QUFXOUIsTUFBTSxPQUFPLGtCQUFrQjtJQUMzQixTQUFTLENBQUMsS0FBbUIsRUFBRSxTQUFrQixFQUFFLGtCQUF3QztRQUN2RixrQkFBa0I7UUFDbEIsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQ2hCLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNqRyxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLElBQUksa0JBQWtCLEVBQUUsZUFBZSxDQUFDLENBQUM7U0FDcEY7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDOzsrR0FSUSxrQkFBa0I7NkdBQWxCLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQUQ5QixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoZVBsdWdpblRhYmxlT3B0aW9uIH0gZnJvbSAnLi90YWJsZS50eXBlcyc7XG5pbXBvcnQgeyBUYWJsZUVsZW1lbnQgfSBmcm9tICcuLi8uLi9jdXN0b20tdHlwZXMnO1xuXG5AUGlwZSh7IG5hbWU6ICdmcmVlemVDb2x1bW4nIH0pXG5leHBvcnQgY2xhc3MgVGFibGVGcmVlemVDb2x1bW5QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKHRhYmxlOiBUYWJsZUVsZW1lbnQsIHRhYmxlUGx1Z2luT3B0aW9uczogVGhlUGx1Z2luVGFibGVPcHRpb24pIHtcbiAgICAgICAgY29uc3Qgcm93cyA9IHRhYmxlLmNoaWxkcmVuPy5tYXAoaXRlbSA9PiBpdGVtLmNoaWxkcmVuKTtcbiAgICAgICAgLy8g5qCH6aKY5YiX5a2Y5Zyo5ZCI5bm255qE5YiX5pe277yM5Y+W5raI5Ya757uTXG4gICAgICAgIGNvbnN0IG1lcmdlQ29sdW1uQ2VsbHMgPSByb3dzICYmIHJvd3MubWFwKGNlbGxzID0+IGNlbGxzWzBdKS5maWx0ZXIoaXRlbSA9PiBpdGVtLmNvbHNwYW4gJiYgaXRlbS5jb2xzcGFuICE9PSAxKTtcbiAgICAgICAgcmV0dXJuICEhKHRhYmxlUGx1Z2luT3B0aW9ucz8uZnJlZXplQ29sdW1uSGVhZGVyICYmIHRhYmxlLm9wdGlvbnM/LmhlYWRlckNvbHVtbiAmJiAhbWVyZ2VDb2x1bW5DZWxscy5sZW5ndGgpO1xuICAgIH1cbn1cblxuQFBpcGUoeyBuYW1lOiAnZnJlZXplUm93JyB9KVxuZXhwb3J0IGNsYXNzIFRhYmxlRnJlZXplUm93UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybSh0YWJsZTogVGFibGVFbGVtZW50LCBoZWFkZXJSb3c6IGJvb2xlYW4sIHRhYmxlUGx1Z2luT3B0aW9uczogVGhlUGx1Z2luVGFibGVPcHRpb24pIHtcbiAgICAgICAgLy8g5qCH6aKY6KGM5a2Y5Zyo5ZCI5bm255qE6KGM5pe277yM5Y+W5raI5Ya757uTXG4gICAgICAgIGlmICh0YWJsZS5jaGlsZHJlbikge1xuICAgICAgICAgICAgY29uc3QgbWVyZ2VSb3dzID0gdGFibGUuY2hpbGRyZW5bMF0/LmNoaWxkcmVuLmZpbHRlcihpdGVtID0+IGl0ZW0ucm93c3BhbiAmJiBpdGVtLnJvd3NwYW4gIT09IDEpO1xuICAgICAgICAgICAgcmV0dXJuICEhKGhlYWRlclJvdyAmJiAhbWVyZ2VSb3dzLmxlbmd0aCAmJiB0YWJsZVBsdWdpbk9wdGlvbnM/LmZyZWV6ZVJvd0hlYWRlcik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbn1cbiJdfQ==
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RhYmxlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsRUFBd0IsTUFBTSxlQUFlLENBQUM7QUFFekYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBRzlDLE1BQU0sT0FBTyxxQkFBcUI7SUFDOUIsU0FBUyxDQUFDLEtBQW1CLEVBQUUsa0JBQXdDO1FBQ25FLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hELE1BQU0saUJBQWlCLEdBQUcsS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUNsRSxNQUFNLGNBQWMsR0FBRyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkQsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksTUFBTSxHQUFHLGFBQWEsQ0FBQztRQUMzQixJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsY0FBYyxFQUFFO1lBQy9CLE1BQU0sR0FBRyxtQkFBbUIsR0FBRyxhQUFhLENBQUM7U0FDaEQ7UUFDRCxJQUFJLGNBQWMsRUFBRTtZQUNoQixNQUFNLFVBQVUsR0FBRyxlQUFlLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUM1RSxZQUFZLEdBQUcsaUJBQWlCLEdBQUcsTUFBTSxHQUFHLFVBQVUsQ0FBQztTQUMxRDtRQUNELGtCQUFrQjtRQUNsQixNQUFNLGdCQUFnQixHQUFHLElBQUksSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ2hILE9BQU8sQ0FBQyxDQUFDLENBQUMsa0JBQWtCLEVBQUUsa0JBQWtCLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxZQUFZLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLElBQUksWUFBWSxDQUFDLENBQUM7SUFDakksQ0FBQzs7a0hBakJRLHFCQUFxQjtnSEFBckIscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBRGpDLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFOztBQXNCOUIsTUFBTSxPQUFPLGtCQUFrQjtJQUMzQixTQUFTLENBQUMsS0FBbUIsRUFBRSxTQUFrQixFQUFFLGtCQUF3QztRQUN2RixrQkFBa0I7UUFDbEIsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQ2hCLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNqRyxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLElBQUksa0JBQWtCLEVBQUUsZUFBZSxDQUFDLENBQUM7U0FDcEY7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDOzsrR0FSUSxrQkFBa0I7NkdBQWxCLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQUQ5QixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRBQkxFX0NPTlRST0wsIFRBQkxFX05VTUJFUl9DT0xVTU4sIFRoZVBsdWdpblRhYmxlT3B0aW9uIH0gZnJvbSAnLi90YWJsZS50eXBlcyc7XG5pbXBvcnQgeyBUYWJsZUVsZW1lbnQgfSBmcm9tICcuLi8uLi9jdXN0b20tdHlwZXMnO1xuaW1wb3J0IHsgRUxFTUVOVF9UT19DT01QT05FTlQgfSBmcm9tICdzbGF0ZS1hbmd1bGFyJztcbmltcG9ydCB7IGdldEVsZW1lbnRXaWR0aCB9IGZyb20gJy4uLy4uL3V0aWxzJztcblxuQFBpcGUoeyBuYW1lOiAnZnJlZXplQ29sdW1uJyB9KVxuZXhwb3J0IGNsYXNzIFRhYmxlRnJlZXplQ29sdW1uUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybSh0YWJsZTogVGFibGVFbGVtZW50LCB0YWJsZVBsdWdpbk9wdGlvbnM6IFRoZVBsdWdpblRhYmxlT3B0aW9uKSB7XG4gICAgICAgIGNvbnN0IHJvd3MgPSB0YWJsZS5jaGlsZHJlbj8ubWFwKGl0ZW0gPT4gaXRlbS5jaGlsZHJlbik7XG4gICAgICAgIGNvbnN0IGhlYWRlckNvbHVtbldpZHRoID0gdGFibGUuY29sdW1ucyAmJiB0YWJsZS5jb2x1bW5zWzBdLndpZHRoO1xuICAgICAgICBjb25zdCB0YWJsZUNvbXBvbmVudCA9IEVMRU1FTlRfVE9fQ09NUE9ORU5ULmdldCh0YWJsZSk7XG4gICAgICAgIGxldCBzdGlja3lDb2x1bW4gPSB0cnVlO1xuICAgICAgICBsZXQgYnVmZmVyID0gVEFCTEVfQ09OVFJPTDtcbiAgICAgICAgaWYgKHRhYmxlLm9wdGlvbnM/Lm51bWJlcmVkQ29sdW1uKSB7XG4gICAgICAgICAgICBidWZmZXIgPSBUQUJMRV9OVU1CRVJfQ09MVU1OICsgVEFCTEVfQ09OVFJPTDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGFibGVDb21wb25lbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IHRhYmxlV2lkdGggPSBnZXRFbGVtZW50V2lkdGgodGFibGVDb21wb25lbnQuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgIHN0aWNreUNvbHVtbiA9IGhlYWRlckNvbHVtbldpZHRoICsgYnVmZmVyIDwgdGFibGVXaWR0aDtcbiAgICAgICAgfVxuICAgICAgICAvLyDmoIfpopjliJflrZjlnKjlkIjlubbnmoTliJfml7bvvIzlj5bmtojlhrvnu5NcbiAgICAgICAgY29uc3QgbWVyZ2VDb2x1bW5DZWxscyA9IHJvd3MgJiYgcm93cy5tYXAoY2VsbHMgPT4gY2VsbHNbMF0pLmZpbHRlcihpdGVtID0+IGl0ZW0uY29sc3BhbiAmJiBpdGVtLmNvbHNwYW4gIT09IDEpO1xuICAgICAgICByZXR1cm4gISEodGFibGVQbHVnaW5PcHRpb25zPy5mcmVlemVDb2x1bW5IZWFkZXIgJiYgdGFibGUub3B0aW9ucz8uaGVhZGVyQ29sdW1uICYmICFtZXJnZUNvbHVtbkNlbGxzLmxlbmd0aCAmJiBzdGlja3lDb2x1bW4pO1xuICAgIH1cbn1cblxuQFBpcGUoeyBuYW1lOiAnZnJlZXplUm93JyB9KVxuZXhwb3J0IGNsYXNzIFRhYmxlRnJlZXplUm93UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybSh0YWJsZTogVGFibGVFbGVtZW50LCBoZWFkZXJSb3c6IGJvb2xlYW4sIHRhYmxlUGx1Z2luT3B0aW9uczogVGhlUGx1Z2luVGFibGVPcHRpb24pIHtcbiAgICAgICAgLy8g5qCH6aKY6KGM5a2Y5Zyo5ZCI5bm255qE6KGM5pe277yM5Y+W5raI5Ya757uTXG4gICAgICAgIGlmICh0YWJsZS5jaGlsZHJlbikge1xuICAgICAgICAgICAgY29uc3QgbWVyZ2VSb3dzID0gdGFibGUuY2hpbGRyZW5bMF0/LmNoaWxkcmVuLmZpbHRlcihpdGVtID0+IGl0ZW0ucm93c3BhbiAmJiBpdGVtLnJvd3NwYW4gIT09IDEpO1xuICAgICAgICAgICAgcmV0dXJuICEhKGhlYWRlclJvdyAmJiAhbWVyZ2VSb3dzLmxlbmd0aCAmJiB0YWJsZVBsdWdpbk9wdGlvbnM/LmZyZWV6ZVJvd0hlYWRlcik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbn1cbiJdfQ==
@@ -7,9 +7,6 @@ import * as i3 from "./table.store";
7
7
  import * as i4 from "../../services/table-contextmenu.service";
8
8
  import * as i5 from "../../services/context.service";
9
9
  export class TableService {
10
- get isOpened() {
11
- return this.toolbarRef && this.toolbarRef.componentInstance;
12
- }
13
10
  constructor(thyPopover, overlay, tableStore, theTableContextMenuService, ngZone, theContextService) {
14
11
  this.thyPopover = thyPopover;
15
12
  this.overlay = overlay;
@@ -23,6 +20,9 @@ export class TableService {
23
20
  this.placement = 'topLeft';
24
21
  this.offset = 8;
25
22
  }
23
+ get isOpened() {
24
+ return this.toolbarRef && this.toolbarRef.componentInstance;
25
+ }
26
26
  openToolbar(origin, tableElement) {
27
27
  if (this.isOpened) {
28
28
  if (this.toolbarRef.containerInstance.config.origin === origin) {
@@ -78,9 +78,9 @@ export class TableService {
78
78
  }
79
79
  }
80
80
  }
81
- TableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TableService, deps: [{ token: i1.ThyPopover }, { token: i2.Overlay }, { token: i3.TableStore }, { token: i4.TheTableContextMenuService }, { token: i0.NgZone }, { token: i5.TheContextService }], target: i0.ɵɵFactoryTarget.Injectable });
82
- TableService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TableService });
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TableService, decorators: [{
81
+ TableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TableService, deps: [{ token: i1.ThyPopover }, { token: i2.Overlay }, { token: i3.TableStore }, { token: i4.TheTableContextMenuService }, { token: i0.NgZone }, { token: i5.TheContextService }], target: i0.ɵɵFactoryTarget.Injectable });
82
+ TableService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TableService });
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TableService, decorators: [{
84
84
  type: Injectable
85
85
  }], ctorParameters: function () { return [{ type: i1.ThyPopover }, { type: i2.Overlay }, { type: i3.TableStore }, { type: i4.TheTableContextMenuService }, { type: i0.NgZone }, { type: i5.TheContextService }]; } });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RhYmxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQU1uRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7Ozs7OztBQUl4RixNQUFNLE9BQU8sWUFBWTtJQWFyQixJQUFJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQztJQUNoRSxDQUFDO0lBRUQsWUFDWSxVQUFzQixFQUN0QixPQUFnQixFQUNoQixVQUFzQixFQUN0QiwwQkFBc0QsRUFDdEQsTUFBYyxFQUNkLGlCQUFvQztRQUxwQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QiwrQkFBMEIsR0FBMUIsMEJBQTBCLENBQTRCO1FBQ3RELFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBdEJoRCxxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFFekIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFFcEIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFFdkIsY0FBUyxHQUFpQixTQUFTLENBQUM7UUFFcEMsV0FBTSxHQUFHLENBQUMsQ0FBQztJQWVSLENBQUM7SUFFSSxXQUFXLENBQUMsTUFBbUIsRUFBRSxZQUEwQjtRQUMvRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDZixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxNQUFNLEVBQUU7Z0JBQzVELE9BQU87YUFDVjtZQUNELElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDM0I7UUFDRCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLHdCQUF3QixFQUFFO1lBQzdELFlBQVksRUFBRTtnQkFDVixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQzNCLFlBQVk7YUFDZjtZQUNELGdCQUFnQixFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxnQkFBZ0I7WUFDdEUsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDO1lBQzlCLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0I7WUFDdkMsVUFBVSxFQUFFLDRCQUE0QjtZQUN4QyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1lBQ25CLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7WUFDbkMsUUFBUSxFQUFFLENBQUM7WUFDWCxjQUFjLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUU7WUFDMUQsYUFBYSxFQUFFLElBQUk7U0FDdEIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGtCQUFrQixDQUFDLE1BQW1CLEVBQUUsT0FBcUI7UUFDekQsSUFBSSxDQUFDLDBCQUEwQixDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELFNBQVMsQ0FBQyxNQUFtQjtRQUN6QixJQUFJLE1BQU0sWUFBWSxvQkFBb0IsSUFBSSxNQUFNLENBQUMsT0FBTyxLQUFLLElBQUksRUFBRTtZQUNuRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsb0JBQW9CLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDdEgsTUFBTSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDM0MsTUFBTSxZQUFZLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLHNCQUFzQixDQUFnQixDQUFDO1lBQ3JGLElBQUksZUFBZSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsRUFBRTtnQkFDM0MsT0FBTyxZQUFZLENBQUMsYUFBYSxDQUFDLDRCQUE0QixDQUFDLENBQUM7YUFDbkU7WUFDRCxJQUFJLG9CQUFvQixDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsRUFBRTtnQkFDOUMsT0FBTyxZQUFZLENBQUMsZ0JBQWdCLENBQUMseUJBQXlCLENBQUMsQ0FBQyxHQUFHLENBQWdCLENBQUM7YUFDdkY7WUFDRCxJQUFJLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsRUFBRTtnQkFDM0MsT0FBTyxZQUFZLENBQUMsZ0JBQWdCLENBQUMscUNBQXFDLENBQUMsQ0FBQyxHQUFHLENBQWdCLENBQUM7YUFDbkc7U0FDSjtRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxZQUFZO1FBQ1IsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUNqQixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzVCLENBQUMsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3hDO0lBQ0wsQ0FBQzs7eUdBbEZRLFlBQVk7NkdBQVosWUFBWTsyRkFBWixZQUFZO2tCQUR4QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IEluamVjdGFibGUsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGh5UGxhY2VtZW50IH0gZnJvbSAnbmd4LXRldGh5cy9jb3JlJztcbmltcG9ydCB7IFRoeVBvcG92ZXIsIFRoeVBvcG92ZXJSZWYgfSBmcm9tICduZ3gtdGV0aHlzL3BvcG92ZXInO1xuaW1wb3J0IHsgVGFibGVFbGVtZW50IH0gZnJvbSAnLi4vLi4vY3VzdG9tLXR5cGVzJztcbmltcG9ydCB7IFRoZUNvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IFRoZVRhYmxlQ29udGV4dE1lbnVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdGFibGUtY29udGV4dG1lbnUuc2VydmljZSc7XG5pbXBvcnQgeyBUaGVUYWJsZVRvb2xiYXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdG9vbGJhci90YWJsZS10b29sYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUYWJsZVN0b3JlIH0gZnJvbSAnLi90YWJsZS5zdG9yZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUYWJsZVNlcnZpY2Uge1xuICAgIGJhY2tkcm9wQ2xvc2FibGUgPSBmYWxzZTtcblxuICAgIGhhc0JhY2tkcm9wID0gZmFsc2U7XG5cbiAgICBpbnNpZGVDbG9zYWJsZSA9IGZhbHNlO1xuXG4gICAgcGxhY2VtZW50OiBUaHlQbGFjZW1lbnQgPSAndG9wTGVmdCc7XG5cbiAgICBvZmZzZXQgPSA4O1xuXG4gICAgdG9vbGJhclJlZjogVGh5UG9wb3ZlclJlZjxhbnk+O1xuXG4gICAgZ2V0IGlzT3BlbmVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy50b29sYmFyUmVmICYmIHRoaXMudG9vbGJhclJlZi5jb21wb25lbnRJbnN0YW5jZTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSB0aHlQb3BvdmVyOiBUaHlQb3BvdmVyLFxuICAgICAgICBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgICAgIHByaXZhdGUgdGFibGVTdG9yZTogVGFibGVTdG9yZSxcbiAgICAgICAgcHJpdmF0ZSB0aGVUYWJsZUNvbnRleHRNZW51U2VydmljZTogVGhlVGFibGVDb250ZXh0TWVudVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIHByaXZhdGUgdGhlQ29udGV4dFNlcnZpY2U6IFRoZUNvbnRleHRTZXJ2aWNlXG4gICAgKSB7fVxuXG4gICAgcHJpdmF0ZSBvcGVuVG9vbGJhcihvcmlnaW46IEhUTUxFbGVtZW50LCB0YWJsZUVsZW1lbnQ6IFRhYmxlRWxlbWVudCkge1xuICAgICAgICBpZiAodGhpcy5pc09wZW5lZCkge1xuICAgICAgICAgICAgaWYgKHRoaXMudG9vbGJhclJlZi5jb250YWluZXJJbnN0YW5jZS5jb25maWcub3JpZ2luID09PSBvcmlnaW4pIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLnRvb2xiYXJSZWYuY2xvc2UoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnRvb2xiYXJSZWYgPSB0aGlzLnRoeVBvcG92ZXIub3BlbihUaGVUYWJsZVRvb2xiYXJDb21wb25lbnQsIHtcbiAgICAgICAgICAgIGluaXRpYWxTdGF0ZToge1xuICAgICAgICAgICAgICAgIHRhYmxlU3RvcmU6IHRoaXMudGFibGVTdG9yZSxcbiAgICAgICAgICAgICAgICB0YWJsZUVsZW1lbnRcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB2aWV3Q29udGFpbmVyUmVmOiB0aGlzLnRoZUNvbnRleHRTZXJ2aWNlLmdldE9wdGlvbnMoKS52aWV3Q29udGFpbmVyUmVmLFxuICAgICAgICAgICAgb3JpZ2luOiB0aGlzLmdldE9yaWdpbihvcmlnaW4pLFxuICAgICAgICAgICAgYmFja2Ryb3BDbG9zYWJsZTogdGhpcy5iYWNrZHJvcENsb3NhYmxlLFxuICAgICAgICAgICAgcGFuZWxDbGFzczogJ3RoZS1wbHVnaW4tdG9vbGJhci1wb3BvdmVyJyxcbiAgICAgICAgICAgIHBsYWNlbWVudDogdGhpcy5wbGFjZW1lbnQsXG4gICAgICAgICAgICBvZmZzZXQ6IHRoaXMub2Zmc2V0LFxuICAgICAgICAgICAgaGFzQmFja2Ryb3A6IHRoaXMuaGFzQmFja2Ryb3AsXG4gICAgICAgICAgICBpbnNpZGVDbG9zYWJsZTogdGhpcy5pbnNpZGVDbG9zYWJsZSxcbiAgICAgICAgICAgIG1pbldpZHRoOiAwLFxuICAgICAgICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKSxcbiAgICAgICAgICAgIG1hbnVhbENsb3N1cmU6IHRydWVcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgYWZ0ZXJTZWxlY3RlZENlbGxzKG9yaWdpbjogSFRNTEVsZW1lbnQsIGVsZW1lbnQ6IFRhYmxlRWxlbWVudCkge1xuICAgICAgICB0aGlzLnRoZVRhYmxlQ29udGV4dE1lbnVTZXJ2aWNlLmNsb3NlQ29udGV4dE1lbnUoKTtcbiAgICAgICAgdGhpcy5vcGVuVG9vbGJhcihvcmlnaW4sIGVsZW1lbnQpO1xuICAgIH1cblxuICAgIGdldE9yaWdpbihvcmlnaW46IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnQge1xuICAgICAgICBpZiAob3JpZ2luIGluc3RhbmNlb2YgSFRNTFRhYmxlQ2VsbEVsZW1lbnQgJiYgb3JpZ2luLnRhZ05hbWUgIT09ICdUSCcpIHtcbiAgICAgICAgICAgIGNvbnN0IHsgc2VsZWN0ZWRSb3dzSW5kZXgsIHNlbGVjdGVkQ29sdW1uc0luZGV4LCBmb2N1c0NlbGxQYXRoLCBpc1NlbGVjdGVkVGFibGUsIGZvY3VzQ2VsbEVsZW1lbnQgfSA9IHRoaXMudGFibGVTdG9yZTtcbiAgICAgICAgICAgIGNvbnN0IFtyb3csIGNvbF0gPSBmb2N1c0NlbGxQYXRoLnNsaWNlKC0yKTtcbiAgICAgICAgICAgIGNvbnN0IHRhYmxlRWxlbWVudCA9IGZvY3VzQ2VsbEVsZW1lbnQuY2xvc2VzdCgnLnRoZS10YWJsZS1jb250YWluZXInKSBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgICAgIGlmIChpc1NlbGVjdGVkVGFibGUgJiYgY29sID09PSAwICYmIHJvdyA9PT0gMCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0YWJsZUVsZW1lbnQucXVlcnlTZWxlY3RvcignLnRoZS10YWJsZS1jb3JuZXItY29udHJvbHMnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzZWxlY3RlZENvbHVtbnNJbmRleC5sZW5ndGggPiAwICYmIHJvdyA9PT0gMCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0YWJsZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLnRoZS10YWJsZS1jb2wtY29udHJvbHMnKVtjb2xdIGFzIEhUTUxFbGVtZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHNlbGVjdGVkUm93c0luZGV4Lmxlbmd0aCA+IDAgJiYgY29sID09PSAwKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRhYmxlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCcudGhlLXRhYmxlLXJvdy1jb250cm9scy1idXR0b24td3JhcCcpW3Jvd10gYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG9yaWdpbjtcbiAgICB9XG5cbiAgICBjbG9zZVRvb2xiYXIoKSB7XG4gICAgICAgIGlmICh0aGlzLmlzT3BlbmVkKSB7XG4gICAgICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudG9vbGJhclJlZi5jbG9zZSgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy50b29sYmFyUmVmLmFmdGVyQ2xvc2VkKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9wbHVnaW5zL3RhYmxlL3RhYmxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQU1uRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7Ozs7OztBQUl4RixNQUFNLE9BQU8sWUFBWTtJQWlCckIsWUFDWSxVQUFzQixFQUN0QixPQUFnQixFQUNoQixVQUFzQixFQUN0QiwwQkFBc0QsRUFDdEQsTUFBYyxFQUNkLGlCQUFvQztRQUxwQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QiwrQkFBMEIsR0FBMUIsMEJBQTBCLENBQTRCO1FBQ3RELFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBdEJoRCxxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFFekIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFFcEIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFFdkIsY0FBUyxHQUFpQixTQUFTLENBQUM7UUFFcEMsV0FBTSxHQUFHLENBQUMsQ0FBQztJQWVSLENBQUM7SUFYSixJQUFJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQztJQUNoRSxDQUFDO0lBV08sV0FBVyxDQUFDLE1BQW1CLEVBQUUsWUFBMEI7UUFDL0QsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2YsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxNQUFNLEtBQUssTUFBTSxFQUFFO2dCQUM1RCxPQUFPO2FBQ1Y7WUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQzNCO1FBQ0QsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyx3QkFBd0IsRUFBRTtZQUM3RCxZQUFZLEVBQUU7Z0JBQ1YsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO2dCQUMzQixZQUFZO2FBQ2Y7WUFDRCxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxFQUFFLENBQUMsZ0JBQWdCO1lBQ3RFLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQztZQUM5QixnQkFBZ0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCO1lBQ3ZDLFVBQVUsRUFBRSw0QkFBNEI7WUFDeEMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO1lBQ25DLFFBQVEsRUFBRSxDQUFDO1lBQ1gsY0FBYyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFO1lBQzFELGFBQWEsRUFBRSxJQUFJO1NBQ3RCLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxNQUFtQixFQUFFLE9BQXFCO1FBQ3pELElBQUksQ0FBQywwQkFBMEIsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxTQUFTLENBQUMsTUFBbUI7UUFDekIsSUFBSSxNQUFNLFlBQVksb0JBQW9CLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxJQUFJLEVBQUU7WUFDbkUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQ3RILE1BQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzNDLE1BQU0sWUFBWSxHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBZ0IsQ0FBQztZQUNyRixJQUFJLGVBQWUsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLEVBQUU7Z0JBQzNDLE9BQU8sWUFBWSxDQUFDLGFBQWEsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO2FBQ25FO1lBQ0QsSUFBSSxvQkFBb0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLEVBQUU7Z0JBQzlDLE9BQU8sWUFBWSxDQUFDLGdCQUFnQixDQUFDLHlCQUF5QixDQUFDLENBQUMsR0FBRyxDQUFnQixDQUFDO2FBQ3ZGO1lBQ0QsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLEVBQUU7Z0JBQzNDLE9BQU8sWUFBWSxDQUFDLGdCQUFnQixDQUFDLHFDQUFxQyxDQUFDLENBQUMsR0FBRyxDQUFnQixDQUFDO2FBQ25HO1NBQ0o7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBRUQsWUFBWTtRQUNSLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNmLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtnQkFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUM1QixDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUN4QztJQUNMLENBQUM7O3lHQWxGUSxZQUFZOzZHQUFaLFlBQVk7MkZBQVosWUFBWTtrQkFEeEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoeVBsYWNlbWVudCB9IGZyb20gJ25neC10ZXRoeXMvY29yZSc7XG5pbXBvcnQgeyBUaHlQb3BvdmVyLCBUaHlQb3BvdmVyUmVmIH0gZnJvbSAnbmd4LXRldGh5cy9wb3BvdmVyJztcbmltcG9ydCB7IFRhYmxlRWxlbWVudCB9IGZyb20gJy4uLy4uL2N1c3RvbS10eXBlcyc7XG5pbXBvcnQgeyBUaGVDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NvbnRleHQuc2VydmljZSc7XG5pbXBvcnQgeyBUaGVUYWJsZUNvbnRleHRNZW51U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RhYmxlLWNvbnRleHRtZW51LnNlcnZpY2UnO1xuaW1wb3J0IHsgVGhlVGFibGVUb29sYmFyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Rvb2xiYXIvdGFibGUtdG9vbGJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGFibGVTdG9yZSB9IGZyb20gJy4vdGFibGUuc3RvcmUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVGFibGVTZXJ2aWNlIHtcbiAgICBiYWNrZHJvcENsb3NhYmxlID0gZmFsc2U7XG5cbiAgICBoYXNCYWNrZHJvcCA9IGZhbHNlO1xuXG4gICAgaW5zaWRlQ2xvc2FibGUgPSBmYWxzZTtcblxuICAgIHBsYWNlbWVudDogVGh5UGxhY2VtZW50ID0gJ3RvcExlZnQnO1xuXG4gICAgb2Zmc2V0ID0gODtcblxuICAgIHRvb2xiYXJSZWY6IFRoeVBvcG92ZXJSZWY8YW55PjtcblxuICAgIGdldCBpc09wZW5lZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudG9vbGJhclJlZiAmJiB0aGlzLnRvb2xiYXJSZWYuY29tcG9uZW50SW5zdGFuY2U7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgdGh5UG9wb3ZlcjogVGh5UG9wb3ZlcixcbiAgICAgICAgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5LFxuICAgICAgICBwcml2YXRlIHRhYmxlU3RvcmU6IFRhYmxlU3RvcmUsXG4gICAgICAgIHByaXZhdGUgdGhlVGFibGVDb250ZXh0TWVudVNlcnZpY2U6IFRoZVRhYmxlQ29udGV4dE1lbnVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIG5nWm9uZTogTmdab25lLFxuICAgICAgICBwcml2YXRlIHRoZUNvbnRleHRTZXJ2aWNlOiBUaGVDb250ZXh0U2VydmljZVxuICAgICkge31cblxuICAgIHByaXZhdGUgb3BlblRvb2xiYXIob3JpZ2luOiBIVE1MRWxlbWVudCwgdGFibGVFbGVtZW50OiBUYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNPcGVuZWQpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnRvb2xiYXJSZWYuY29udGFpbmVySW5zdGFuY2UuY29uZmlnLm9yaWdpbiA9PT0gb3JpZ2luKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy50b29sYmFyUmVmLmNsb3NlKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy50b29sYmFyUmVmID0gdGhpcy50aHlQb3BvdmVyLm9wZW4oVGhlVGFibGVUb29sYmFyQ29tcG9uZW50LCB7XG4gICAgICAgICAgICBpbml0aWFsU3RhdGU6IHtcbiAgICAgICAgICAgICAgICB0YWJsZVN0b3JlOiB0aGlzLnRhYmxlU3RvcmUsXG4gICAgICAgICAgICAgICAgdGFibGVFbGVtZW50XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdmlld0NvbnRhaW5lclJlZjogdGhpcy50aGVDb250ZXh0U2VydmljZS5nZXRPcHRpb25zKCkudmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgICAgIG9yaWdpbjogdGhpcy5nZXRPcmlnaW4ob3JpZ2luKSxcbiAgICAgICAgICAgIGJhY2tkcm9wQ2xvc2FibGU6IHRoaXMuYmFja2Ryb3BDbG9zYWJsZSxcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6ICd0aGUtcGx1Z2luLXRvb2xiYXItcG9wb3ZlcicsXG4gICAgICAgICAgICBwbGFjZW1lbnQ6IHRoaXMucGxhY2VtZW50LFxuICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcbiAgICAgICAgICAgIGhhc0JhY2tkcm9wOiB0aGlzLmhhc0JhY2tkcm9wLFxuICAgICAgICAgICAgaW5zaWRlQ2xvc2FibGU6IHRoaXMuaW5zaWRlQ2xvc2FibGUsXG4gICAgICAgICAgICBtaW5XaWR0aDogMCxcbiAgICAgICAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKCksXG4gICAgICAgICAgICBtYW51YWxDbG9zdXJlOiB0cnVlXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGFmdGVyU2VsZWN0ZWRDZWxscyhvcmlnaW46IEhUTUxFbGVtZW50LCBlbGVtZW50OiBUYWJsZUVsZW1lbnQpIHtcbiAgICAgICAgdGhpcy50aGVUYWJsZUNvbnRleHRNZW51U2VydmljZS5jbG9zZUNvbnRleHRNZW51KCk7XG4gICAgICAgIHRoaXMub3BlblRvb2xiYXIob3JpZ2luLCBlbGVtZW50KTtcbiAgICB9XG5cbiAgICBnZXRPcmlnaW4ob3JpZ2luOiBIVE1MRWxlbWVudCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgaWYgKG9yaWdpbiBpbnN0YW5jZW9mIEhUTUxUYWJsZUNlbGxFbGVtZW50ICYmIG9yaWdpbi50YWdOYW1lICE9PSAnVEgnKSB7XG4gICAgICAgICAgICBjb25zdCB7IHNlbGVjdGVkUm93c0luZGV4LCBzZWxlY3RlZENvbHVtbnNJbmRleCwgZm9jdXNDZWxsUGF0aCwgaXNTZWxlY3RlZFRhYmxlLCBmb2N1c0NlbGxFbGVtZW50IH0gPSB0aGlzLnRhYmxlU3RvcmU7XG4gICAgICAgICAgICBjb25zdCBbcm93LCBjb2xdID0gZm9jdXNDZWxsUGF0aC5zbGljZSgtMik7XG4gICAgICAgICAgICBjb25zdCB0YWJsZUVsZW1lbnQgPSBmb2N1c0NlbGxFbGVtZW50LmNsb3Nlc3QoJy50aGUtdGFibGUtY29udGFpbmVyJykgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgICAgICBpZiAoaXNTZWxlY3RlZFRhYmxlICYmIGNvbCA9PT0gMCAmJiByb3cgPT09IDApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGFibGVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy50aGUtdGFibGUtY29ybmVyLWNvbnRyb2xzJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoc2VsZWN0ZWRDb2x1bW5zSW5kZXgubGVuZ3RoID4gMCAmJiByb3cgPT09IDApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGFibGVFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy50aGUtdGFibGUtY29sLWNvbnRyb2xzJylbY29sXSBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzZWxlY3RlZFJvd3NJbmRleC5sZW5ndGggPiAwICYmIGNvbCA9PT0gMCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0YWJsZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLnRoZS10YWJsZS1yb3ctY29udHJvbHMtYnV0dG9uLXdyYXAnKVtyb3ddIGFzIEhUTUxFbGVtZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvcmlnaW47XG4gICAgfVxuXG4gICAgY2xvc2VUb29sYmFyKCkge1xuICAgICAgICBpZiAodGhpcy5pc09wZW5lZCkge1xuICAgICAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnRvb2xiYXJSZWYuY2xvc2UoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMudG9vbGJhclJlZi5hZnRlckNsb3NlZCgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19