@acorex/components 7.4.8 → 7.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/button/lib/button.module.d.ts +2 -1
  2. package/common/lib/classes/datalist.class.d.ts +3 -3
  3. package/common/lib/components/selection-base.component.class.d.ts +3 -9
  4. package/datetime-box/lib/datetime-box.component.d.ts +2 -1
  5. package/dialog/lib/dialog.class.d.ts +4 -2
  6. package/dialog/lib/dialog.service.d.ts +3 -2
  7. package/dropdown/lib/dropdown-box.component.d.ts +1 -0
  8. package/esm2022/action-sheet/lib/action-sheet.component.mjs +2 -2
  9. package/esm2022/alert/lib/alert.component.mjs +6 -7
  10. package/esm2022/avatar/lib/avatar.component.mjs +2 -2
  11. package/esm2022/button/lib/button.component.mjs +2 -2
  12. package/esm2022/button/lib/button.module.mjs +4 -3
  13. package/esm2022/common/lib/classes/datalist.class.mjs +52 -1
  14. package/esm2022/common/lib/components/selection-base.component.class.mjs +13 -36
  15. package/esm2022/common/lib/components/value-component.class.mjs +3 -3
  16. package/esm2022/datetime-box/lib/datetime-box.component.mjs +7 -4
  17. package/esm2022/dialog/lib/dialog.class.mjs +1 -1
  18. package/esm2022/dialog/lib/dialog.component.mjs +3 -17
  19. package/esm2022/dialog/lib/dialog.service.mjs +47 -24
  20. package/esm2022/dropdown/lib/dropdown-box.component.mjs +8 -5
  21. package/esm2022/dropdown/lib/dropdown-panel.component.mjs +3 -3
  22. package/esm2022/form/lib/form-field.component.mjs +2 -2
  23. package/esm2022/label/lib/label.component.mjs +2 -2
  24. package/esm2022/list/acorex-components-list.mjs +5 -0
  25. package/esm2022/list/index.mjs +3 -0
  26. package/esm2022/list/lib/list.component.mjs +221 -0
  27. package/esm2022/list/lib/list.module.mjs +22 -0
  28. package/esm2022/loading/lib/loading.module.mjs +22 -8
  29. package/esm2022/loading/lib/loading.service.mjs +9 -13
  30. package/esm2022/menu/index.mjs +4 -1
  31. package/esm2022/menu/lib/class/root-menu.class.mjs +3 -0
  32. package/esm2022/menu/lib/menu-item/menu-item.component.mjs +96 -0
  33. package/esm2022/menu/lib/menu.component.mjs +4 -4
  34. package/esm2022/menu/lib/menu.module.mjs +11 -16
  35. package/esm2022/menu/lib/menu2.component.mjs +45 -0
  36. package/esm2022/mixin/lib/datalist.class.mjs +46 -2
  37. package/esm2022/notification/lib/notification.component.mjs +7 -7
  38. package/esm2022/popover/lib/popover.component.mjs +8 -5
  39. package/esm2022/popup/lib/popup.component.mjs +1 -2
  40. package/esm2022/popup/lib/popup.service.mjs +1 -2
  41. package/esm2022/progress-bar/lib/progress-bar.component.mjs +2 -2
  42. package/esm2022/result/lib/result.component.mjs +2 -2
  43. package/esm2022/select-box/index.mjs +2 -1
  44. package/esm2022/select-box/lib/select-box.component.mjs +3 -3
  45. package/esm2022/select-box/lib/select-box.module.mjs +15 -6
  46. package/esm2022/select-box/lib/select-box2.component.mjs +97 -0
  47. package/esm2022/selection-list/lib/selection-list.component.mjs +22 -7
  48. package/esm2022/tabs/lib/tabs.component.mjs +2 -2
  49. package/esm2022/text-area/lib/text-area.component.mjs +14 -6
  50. package/esm2022/toast/lib/toast.component.mjs +5 -5
  51. package/fesm2022/acorex-components-action-sheet.mjs +2 -2
  52. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
  53. package/fesm2022/acorex-components-alert.mjs +5 -6
  54. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  55. package/fesm2022/acorex-components-avatar.mjs +2 -2
  56. package/fesm2022/acorex-components-button.mjs +5 -4
  57. package/fesm2022/acorex-components-button.mjs.map +1 -1
  58. package/fesm2022/acorex-components-common.mjs +65 -37
  59. package/fesm2022/acorex-components-common.mjs.map +1 -1
  60. package/fesm2022/acorex-components-datetime-box.mjs +6 -3
  61. package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
  62. package/fesm2022/acorex-components-dialog.mjs +47 -38
  63. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  64. package/fesm2022/acorex-components-dropdown.mjs +9 -7
  65. package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
  66. package/fesm2022/acorex-components-form.mjs +2 -2
  67. package/fesm2022/acorex-components-form.mjs.map +1 -1
  68. package/fesm2022/acorex-components-label.mjs +2 -2
  69. package/fesm2022/acorex-components-label.mjs.map +1 -1
  70. package/fesm2022/acorex-components-list.mjs +246 -0
  71. package/fesm2022/acorex-components-list.mjs.map +1 -0
  72. package/fesm2022/acorex-components-loading.mjs +23 -15
  73. package/fesm2022/acorex-components-loading.mjs.map +1 -1
  74. package/fesm2022/acorex-components-menu.mjs +148 -21
  75. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  76. package/fesm2022/acorex-components-mixin.mjs +46 -1
  77. package/fesm2022/acorex-components-mixin.mjs.map +1 -1
  78. package/fesm2022/acorex-components-notification.mjs +7 -7
  79. package/fesm2022/acorex-components-notification.mjs.map +1 -1
  80. package/fesm2022/acorex-components-popover.mjs +7 -4
  81. package/fesm2022/acorex-components-popover.mjs.map +1 -1
  82. package/fesm2022/acorex-components-popup.mjs +0 -2
  83. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  84. package/fesm2022/acorex-components-progress-bar.mjs +2 -2
  85. package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
  86. package/fesm2022/acorex-components-result.mjs +2 -2
  87. package/fesm2022/acorex-components-select-box.mjs +116 -18
  88. package/fesm2022/acorex-components-select-box.mjs.map +1 -1
  89. package/fesm2022/acorex-components-selection-list.mjs +21 -6
  90. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  91. package/fesm2022/acorex-components-tabs.mjs +2 -2
  92. package/fesm2022/acorex-components-tabs.mjs.map +1 -1
  93. package/fesm2022/acorex-components-text-area.mjs +13 -5
  94. package/fesm2022/acorex-components-text-area.mjs.map +1 -1
  95. package/fesm2022/acorex-components-toast.mjs +3 -3
  96. package/fesm2022/acorex-components-toast.mjs.map +1 -1
  97. package/list/README.md +3 -0
  98. package/list/index.d.ts +2 -0
  99. package/list/lib/list.component.d.ts +59 -0
  100. package/list/lib/list.module.d.ts +9 -0
  101. package/loading/lib/loading.module.d.ts +3 -2
  102. package/menu/index.d.ts +3 -0
  103. package/menu/lib/class/root-menu.class.d.ts +4 -0
  104. package/menu/lib/menu-item/menu-item.component.d.ts +22 -0
  105. package/menu/lib/menu.component.d.ts +3 -3
  106. package/menu/lib/menu.module.d.ts +10 -7
  107. package/menu/lib/menu2.component.d.ts +12 -0
  108. package/mixin/lib/base-components.class.d.ts +2 -2
  109. package/mixin/lib/base-menu-mixin.class.d.ts +5 -5
  110. package/mixin/lib/button-mixin.class.d.ts +2 -2
  111. package/mixin/lib/clickable-mixin.class.d.ts +2 -2
  112. package/mixin/lib/color-look-mixing.class.d.ts +2 -2
  113. package/mixin/lib/datalist-component.class.d.ts +10 -10
  114. package/mixin/lib/datalist.class.d.ts +38 -0
  115. package/mixin/lib/dropdown-mixin.class.d.ts +2 -2
  116. package/mixin/lib/interactive-mixin.class.d.ts +4 -4
  117. package/mixin/lib/mixin.class.d.ts +61 -61
  118. package/mixin/lib/page-component.class.d.ts +2 -2
  119. package/mixin/lib/selection-component.class.d.ts +2 -2
  120. package/mixin/lib/sizable-mixin.class.d.ts +2 -2
  121. package/mixin/lib/textbox-mixin.class.d.ts +2 -2
  122. package/mixin/lib/value-mixin.class.d.ts +8 -8
  123. package/notification/lib/notification.component.d.ts +3 -3
  124. package/package.json +7 -1
  125. package/popover/lib/popover.component.d.ts +2 -1
  126. package/select-box/index.d.ts +1 -0
  127. package/select-box/lib/select-box.module.d.ts +15 -12
  128. package/select-box/lib/select-box2.component.d.ts +25 -0
  129. package/selection-list/lib/selection-list.component.d.ts +5 -1
  130. package/text-area/lib/text-area.component.d.ts +10 -3
  131. package/toast/lib/toast.component.d.ts +3 -3
@@ -3,6 +3,7 @@ import { AXPopoverComponent } from '@acorex/components/popover';
3
3
  import { AXPlatform } from '@acorex/core/platform';
4
4
  import { Component, EventEmitter, HostBinding, HostListener, Output, ViewChild, inject, } from '@angular/core';
5
5
  import { classes } from 'polytype';
6
+ import { startWith } from 'rxjs';
6
7
  import * as i0 from "@angular/core";
7
8
  import * as i1 from "@angular/cdk/a11y";
8
9
  import * as i2 from "@acorex/components/popover";
@@ -11,6 +12,7 @@ export class AXDropdownBoxComponent extends classes(MXInteractiveComponent, MXAp
11
12
  super(...arguments);
12
13
  this._platform = inject(AXPlatform);
13
14
  this._isMobile = false;
15
+ this._popoverWidth = '180px';
14
16
  this._placement = convertToPlacement('bottom-start');
15
17
  this.onOpened = new EventEmitter();
16
18
  this.onClosed = new EventEmitter();
@@ -18,8 +20,9 @@ export class AXDropdownBoxComponent extends classes(MXInteractiveComponent, MXAp
18
20
  ngOnInit() {
19
21
  super.ngOnInit();
20
22
  this._target = this.getHostElement();
21
- this._isMobile = this._platform.is('SM');
22
- this._platform.resize.subscribe(() => {
23
+ this._platform.resize
24
+ .pipe(startWith())
25
+ .subscribe(() => {
23
26
  this._isMobile = this._platform.is('SM');
24
27
  this._popover.close();
25
28
  });
@@ -74,11 +77,11 @@ export class AXDropdownBoxComponent extends classes(MXInteractiveComponent, MXAp
74
77
  return `ax-editor-container ax-appearance-${this.appearance}`;
75
78
  }
76
79
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXDropdownBoxComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
77
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.9", type: AXDropdownBoxComponent, selector: "ax-dropdown-box", inputs: { disabled: "disabled", appearance: "appearance" }, outputs: { disabledChange: "disabledChange", onBlur: "onBlur", onFocus: "onFocus", onClick: "onClick", onOpened: "onOpened", onClosed: "onClosed" }, host: { listeners: { "keydown": "_handleKeydown($event)" }, properties: { "class": "this.__hostClass" } }, viewQueries: [{ propertyName: "_popover", first: true, predicate: AXPopoverComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"[input]\">\n</ng-content>\n<ax-popover [target]=\"_target\" [placement]=\"_placement\" [openOn]=\"'manual'\" [closeOn]=\"'clickout'\"\n [adaptivityEnabled]=\"true\" (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\">\n <div class=\"ax-overlay-pane\" [class.ax-w-full]=\"_isMobile\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\n (keydown)=\"_handleKeydown($event)\" [class.ax-overlay-actionsheet]=\"_isMobile\">\n <ng-content select=\"[panel]\">\n </ng-content>\n </div>\n</ax-popover>", dependencies: [{ kind: "directive", type: i1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "component", type: i2.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }] }); }
80
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.9", type: AXDropdownBoxComponent, selector: "ax-dropdown-box", inputs: { disabled: "disabled", appearance: "appearance" }, outputs: { disabledChange: "disabledChange", onBlur: "onBlur", onFocus: "onFocus", onClick: "onClick", onOpened: "onOpened", onClosed: "onClosed" }, host: { listeners: { "keydown": "_handleKeydown($event)" }, properties: { "class": "this.__hostClass" } }, viewQueries: [{ propertyName: "_popover", first: true, predicate: AXPopoverComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"[input]\"> </ng-content>\n<ax-popover [target]=\"_target\" [placement]=\"_placement\" [openOn]=\"'manual'\" [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"true\" (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\"\n #popover>\n <div class=\"ax-overlay-pane\" [class.ax-w-full]=\"_isMobile\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\n (keydown)=\"_handleKeydown($event)\" [class.ax-overlay-actionsheet]=\"popover.isActionsheetStyle\">\n <ng-content select=\"[panel]\"> </ng-content>\n </div>\n</ax-popover>", dependencies: [{ kind: "directive", type: i1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "component", type: i2.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }] }); }
78
81
  }
79
82
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXDropdownBoxComponent, decorators: [{
80
83
  type: Component,
81
- args: [{ selector: 'ax-dropdown-box', inputs: ['disabled', 'appearance'], outputs: ['disabledChange', 'onBlur', 'onFocus', 'onClick'], template: "<ng-content select=\"[input]\">\n</ng-content>\n<ax-popover [target]=\"_target\" [placement]=\"_placement\" [openOn]=\"'manual'\" [closeOn]=\"'clickout'\"\n [adaptivityEnabled]=\"true\" (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\">\n <div class=\"ax-overlay-pane\" [class.ax-w-full]=\"_isMobile\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\n (keydown)=\"_handleKeydown($event)\" [class.ax-overlay-actionsheet]=\"_isMobile\">\n <ng-content select=\"[panel]\">\n </ng-content>\n </div>\n</ax-popover>" }]
84
+ args: [{ selector: 'ax-dropdown-box', inputs: ['disabled', 'appearance'], outputs: ['disabledChange', 'onBlur', 'onFocus', 'onClick'], template: "<ng-content select=\"[input]\"> </ng-content>\n<ax-popover [target]=\"_target\" [placement]=\"_placement\" [openOn]=\"'manual'\" [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"true\" (onOpened)=\"_handlePopupOnOpened($event)\" (onClosed)=\"_handlePopupOnClosed($event)\"\n #popover>\n <div class=\"ax-overlay-pane\" [class.ax-w-full]=\"_isMobile\" tabindex=\"0\" aria-modal=\"true\" cdkTrapFocus\n (keydown)=\"_handleKeydown($event)\" [class.ax-overlay-actionsheet]=\"popover.isActionsheetStyle\">\n <ng-content select=\"[panel]\"> </ng-content>\n </div>\n</ax-popover>" }]
82
85
  }], propDecorators: { _popover: [{
83
86
  type: ViewChild,
84
87
  args: [AXPopoverComponent]
@@ -93,4 +96,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.9", ngImpor
93
96
  type: HostBinding,
94
97
  args: ['class']
95
98
  }] } });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kcm9wZG93bi9zcmMvbGliL2Ryb3Bkb3duLWJveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZHJvcGRvd24vc3JjL2xpYi9kcm9wZG93bi1ib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIsa0JBQWtCLEdBQ25CLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBRVosTUFBTSxFQUNOLFNBQVMsRUFDVCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQzs7OztBQVFuQyxNQUFNLE9BQU8sc0JBQ1gsU0FBUSxPQUFPLENBQUMsc0JBQXNCLEVBQUUscUJBQXFCLENBQUM7SUFQaEU7O1FBVVUsY0FBUyxHQUFlLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN6QyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBR2xCLGVBQVUsR0FBRyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQU0xRCxhQUFRLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7UUFFOUQsYUFBUSxHQUEwQixJQUFJLFlBQVksRUFBVyxDQUFDO0tBc0UvRDtJQXBFQyxRQUFRO1FBQ04sS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGNB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O3NCQUR0QixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBWEV2ZW50LFxuICBNWEFwcGVhcmFuY2VDb21wb25lbnQsXG4gIE1YSW50ZXJhY3RpdmVDb21wb25lbnQsXG4gIGNvbnZlcnRUb1BsYWNlbWVudCxcbn0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBvcG92ZXJDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcG9wb3Zlcic7XG5pbXBvcnQgeyBBWFBsYXRmb3JtIH0gZnJvbSAnQGFjb3JleC9jb3JlL3BsYXRmb3JtJztcbmltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2xhc3NlcyB9IGZyb20gJ3BvbHl0eXBlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtZHJvcGRvd24tYm94JyxcbiAgdGVtcGxhdGVVcmw6ICdkcm9wZG93bi1ib3guY29tcG9uZW50Lmh0bWwnLFxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnYXBwZWFyYW5jZSddLFxuICBvdXRwdXRzOiBbJ2Rpc2FibGVkQ2hhbmdlJywgJ29uQmx1cicsICdvbkZvY3VzJywgJ29uQ2xpY2snXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhEcm9wZG93bkJveENvbXBvbmVudFxuICBleHRlbmRzIGNsYXNzZXMoTVhJbnRlcmFjdGl2ZUNvbXBvbmVudCwgTVhBcHBlYXJhbmNlQ29tcG9uZW50KVxuICBpbXBsZW1lbnRzIE9uSW5pdFxue1xuICBwcml2YXRlIF9wbGF0Zm9ybTogQVhQbGF0Zm9ybSA9IGluamVjdChBWFBsYXRmb3JtKTtcbiAgcHJvdGVjdGVkIF9pc01vYmlsZSA9IGZhbHNlO1xuICBwcm90ZWN0ZWQgX3RhcmdldDogSFRNTERpdkVsZW1lbnQ7XG4gIHByb3RlY3RlZCBfcG9wb3ZlclRpdGxlOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfcGxhY2VtZW50ID0gY29udmVydFRvUGxhY2VtZW50KCdib3R0b20tc3RhcnQnKTtcblxuICBAVmlld0NoaWxkKEFYUG9wb3ZlckNvbXBvbmVudClcbiAgcHJvdGVjdGVkIF9wb3BvdmVyOiBBWFBvcG92ZXJDb21wb25lbnQ7XG5cbiAgQE91dHB1dCgpXG4gIG9uT3BlbmVkOiBFdmVudEVtaXR0ZXI8QVhFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYRXZlbnQ+KCk7XG4gIEBPdXRwdXQoKVxuICBvbkNsb3NlZDogRXZlbnRFbWl0dGVyPEFYRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWEV2ZW50PigpO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgdGhpcy5fdGFyZ2V0ID0gdGhpcy5nZXRIb3N0RWxlbWVudCgpO1xuICAgIHRoaXMuX2lzTW9iaWxlID0gdGhpcy5fcGxhdGZvcm0uaXMoJ1NNJyk7XG4gICAgdGhpcy5fcGxhdGZvcm0ucmVzaXplLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLl9pc01vYmlsZSA9IHRoaXMuX3BsYXRmb3JtLmlzKCdTTScpO1xuICAgICAgdGhpcy5fcG9wb3Zlci5jbG9zZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9oYW5kbGVQb3B1cE9uT3BlbmVkKGU6IEFYRXZlbnQpIHtcbiAgICB0aGlzLl9wb3BvdmVyPy5mb2N1cygpO1xuICAgIHRoaXMub25PcGVuZWQuZW1pdCh7XG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBpc1VzZXJJbnRlcmFjdGlvbjogZS5pc1VzZXJJbnRlcmFjdGlvbixcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBfaGFuZGxlUG9wdXBPbkNsb3NlZChlOiBBWEV2ZW50KSB7XG4gICAgdGhpcy5mb2N1cygpO1xuICAgIHRoaXMub25DbG9zZWQuZW1pdCh7XG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBpc1VzZXJJbnRlcmFjdGlvbjogZS5pc1VzZXJJbnRlcmFjdGlvbixcbiAgICB9KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICBwcm90ZWN0ZWQgX2hhbmRsZUtleWRvd24oZTogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmIChlLmN0cmxLZXkgJiYgZS5jb2RlID09PSAnQXJyb3dEb3duJykge1xuICAgICAgdGhpcy5vcGVuKCk7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICAgIGlmIChlLmNvZGUgPT09ICdFc2NhcGUnKSB7XG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlKCkge1xuICAgIGlmICh0aGlzLmRpc2FibGVkICE9PSB0cnVlKSB7XG4gICAgICB0aGlzLl9wb3BvdmVyLnRvZ2dsZSgpO1xuICAgIH1cbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIGlmICghdGhpcy5pc09wZW4gfHwgdGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9wb3BvdmVyLmNsb3NlKCk7XG4gICAgdGhpcy5mb2N1cygpO1xuICB9XG5cbiAgb3BlbigpIHtcbiAgICBpZiAodGhpcy5pc09wZW4gfHwgdGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9wb3BvdmVyLm9wZW4oKTtcbiAgICB0aGlzLl9wb3BvdmVyLmZvY3VzKCk7XG4gIH1cblxuICBnZXQgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9wb3BvdmVyPy5pc09wZW47XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgcHJpdmF0ZSBnZXQgX19ob3N0Q2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYGF4LWVkaXRvci1jb250YWluZXIgYXgtYXBwZWFyYW5jZS0ke3RoaXMuYXBwZWFyYW5jZX1gO1xuICB9XG59XG4iLCI8bmctY29udGVudCBzZWxlY3Q9XCJbaW5wdXRdXCI+XG48L25nLWNvbnRlbnQ+XG48YXgtcG9wb3ZlciBbdGFyZ2V0XT1cIl90YXJnZXRcIiBbcGxhY2VtZW50XT1cIl9wbGFjZW1lbnRcIiBbb3Blbk9uXT1cIidtYW51YWwnXCIgW2Nsb3NlT25dPVwiJ2NsaWNrb3V0J1wiXG4gICAgW2FkYXB0aXZpdHlFbmFibGVkXT1cInRydWVcIiAob25PcGVuZWQpPVwiX2hhbmRsZVBvcHVwT25PcGVuZWQoJGV2ZW50KVwiIChvbkNsb3NlZCk9XCJfaGFuZGxlUG9wdXBPbkNsb3NlZCgkZXZlbnQpXCI+XG4gICAgPGRpdiBjbGFzcz1cImF4LW92ZXJsYXktcGFuZVwiIFtjbGFzcy5heC13LWZ1bGxdPVwiX2lzTW9iaWxlXCIgdGFiaW5kZXg9XCIwXCIgYXJpYS1tb2RhbD1cInRydWVcIiBjZGtUcmFwRm9jdXNcbiAgICAgICAgKGtleWRvd24pPVwiX2hhbmRsZUtleWRvd24oJGV2ZW50KVwiIFtjbGFzcy5heC1vdmVybGF5LWFjdGlvbnNoZWV0XT1cIl9pc01vYmlsZVwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbcGFuZWxdXCI+XG4gICAgICAgIDwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbjwvYXgtcG9wb3Zlcj4iXX0=
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kcm9wZG93bi9zcmMvbGliL2Ryb3Bkb3duLWJveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZHJvcGRvd24vc3JjL2xpYi9kcm9wZG93bi1ib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIsa0JBQWtCLEdBQ25CLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBRVosTUFBTSxFQUNOLFNBQVMsRUFDVCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNuQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBUWpDLE1BQU0sT0FBTyxzQkFDWCxTQUFRLE9BQU8sQ0FBQyxzQkFBc0IsRUFBRSxxQkFBcUIsQ0FBQztJQVBoRTs7UUFTVSxjQUFTLEdBQWUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3pDLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFHbEIsa0JBQWEsR0FBRyxPQUFPLENBQUM7UUFDeEIsZUFBVSxHQUFHLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBTTFELGFBQVEsR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUU5RCxhQUFRLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7S0F3RS9EO0lBdEVDLFFBQVE7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LENBQUMsUUFBUSxDQUFDO2dCQXVDdkIsV0FBVztzQkFEdEIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQVhFdmVudCxcbiAgTVhBcHBlYXJhbmNlQ29tcG9uZW50LFxuICBNWEludGVyYWN0aXZlQ29tcG9uZW50LFxuICBjb252ZXJ0VG9QbGFjZW1lbnQsXG59IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tb24nO1xuaW1wb3J0IHsgQVhQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcG92ZXInO1xuaW1wb3J0IHsgQVhQbGF0Zm9ybSB9IGZyb20gJ0BhY29yZXgvY29yZS9wbGF0Zm9ybSc7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lcixcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNsYXNzZXMgfSBmcm9tICdwb2x5dHlwZSc7XG5pbXBvcnQgeyBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtZHJvcGRvd24tYm94JyxcbiAgdGVtcGxhdGVVcmw6ICdkcm9wZG93bi1ib3guY29tcG9uZW50Lmh0bWwnLFxuICBpbnB1dHM6IFsnZGlzYWJsZWQnLCAnYXBwZWFyYW5jZSddLFxuICBvdXRwdXRzOiBbJ2Rpc2FibGVkQ2hhbmdlJywgJ29uQmx1cicsICdvbkZvY3VzJywgJ29uQ2xpY2snXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhEcm9wZG93bkJveENvbXBvbmVudFxuICBleHRlbmRzIGNsYXNzZXMoTVhJbnRlcmFjdGl2ZUNvbXBvbmVudCwgTVhBcHBlYXJhbmNlQ29tcG9uZW50KVxuICBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgX3BsYXRmb3JtOiBBWFBsYXRmb3JtID0gaW5qZWN0KEFYUGxhdGZvcm0pO1xuICBwcm90ZWN0ZWQgX2lzTW9iaWxlID0gZmFsc2U7XG4gIHByb3RlY3RlZCBfdGFyZ2V0OiBIVE1MRGl2RWxlbWVudDtcbiAgcHJvdGVjdGVkIF9wb3BvdmVyVGl0bGU6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9wb3BvdmVyV2lkdGggPSAnMTgwcHgnO1xuICBwcm90ZWN0ZWQgX3BsYWNlbWVudCA9IGNvbnZlcnRUb1BsYWNlbWVudCgnYm90dG9tLXN0YXJ0Jyk7XG5cbiAgQFZpZXdDaGlsZChBWFBvcG92ZXJDb21wb25lbnQpXG4gIHByb3RlY3RlZCBfcG9wb3ZlcjogQVhQb3BvdmVyQ29tcG9uZW50O1xuXG4gIEBPdXRwdXQoKVxuICBvbk9wZW5lZDogRXZlbnRFbWl0dGVyPEFYRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWEV2ZW50PigpO1xuICBAT3V0cHV0KClcbiAgb25DbG9zZWQ6IEV2ZW50RW1pdHRlcjxBWEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhFdmVudD4oKTtcblxuICBuZ09uSW5pdCgpIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIHRoaXMuX3RhcmdldCA9IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKTtcbiAgICB0aGlzLl9wbGF0Zm9ybS5yZXNpemVcbiAgICAgIC5waXBlKHN0YXJ0V2l0aCgpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuX2lzTW9iaWxlID0gdGhpcy5fcGxhdGZvcm0uaXMoJ1NNJyk7XG4gICAgICAgIHRoaXMuX3BvcG92ZXIuY2xvc2UoKTtcbiAgICAgIH0pO1xuXG4gIH1cblxuICBwcm90ZWN0ZWQgX2hhbmRsZVBvcHVwT25PcGVuZWQoZTogQVhFdmVudCkge1xuICAgIHRoaXMuX3BvcG92ZXI/LmZvY3VzKCk7XG4gICAgdGhpcy5vbk9wZW5lZC5lbWl0KHtcbiAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgIGlzVXNlckludGVyYWN0aW9uOiBlLmlzVXNlckludGVyYWN0aW9uLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIF9oYW5kbGVQb3B1cE9uQ2xvc2VkKGU6IEFYRXZlbnQpIHtcbiAgICB0aGlzLmZvY3VzKCk7XG4gICAgdGhpcy5vbkNsb3NlZC5lbWl0KHtcbiAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgIGlzVXNlckludGVyYWN0aW9uOiBlLmlzVXNlckludGVyYWN0aW9uLFxuICAgIH0pO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXG4gIHByb3RlY3RlZCBfaGFuZGxlS2V5ZG93bihlOiBLZXlib2FyZEV2ZW50KSB7XG4gICAgaWYgKGUuY3RybEtleSAmJiBlLmNvZGUgPT09ICdBcnJvd0Rvd24nKSB7XG4gICAgICB0aGlzLm9wZW4oKTtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gICAgaWYgKGUuY29kZSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gIH1cblxuICB0b2dnbGUoKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgIT09IHRydWUpIHtcbiAgICAgIHRoaXMuX3BvcG92ZXIudG9nZ2xlKCk7XG4gICAgfVxuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgaWYgKCF0aGlzLmlzT3BlbiB8fCB0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3BvcG92ZXIuY2xvc2UoKTtcbiAgICB0aGlzLmZvY3VzKCk7XG4gIH1cblxuICBvcGVuKCkge1xuICAgIGlmICh0aGlzLmlzT3BlbiB8fCB0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3BvcG92ZXIub3BlbigpO1xuICAgIHRoaXMuX3BvcG92ZXIuZm9jdXMoKTtcbiAgfVxuXG4gIGdldCBpc09wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3BvcG92ZXI/LmlzT3BlbjtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBwcml2YXRlIGdldCBfX2hvc3RDbGFzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBgYXgtZWRpdG9yLWNvbnRhaW5lciBheC1hcHBlYXJhbmNlLSR7dGhpcy5hcHBlYXJhbmNlfWA7XG4gIH1cbn1cbiIsIjxuZy1jb250ZW50IHNlbGVjdD1cIltpbnB1dF1cIj4gPC9uZy1jb250ZW50PlxuPGF4LXBvcG92ZXIgW3RhcmdldF09XCJfdGFyZ2V0XCIgW3BsYWNlbWVudF09XCJfcGxhY2VtZW50XCIgW29wZW5Pbl09XCInbWFudWFsJ1wiIFtjbG9zZU9uXT1cIidjbGlja091dCdcIlxuICBbYWRhcHRpdml0eUVuYWJsZWRdPVwidHJ1ZVwiIChvbk9wZW5lZCk9XCJfaGFuZGxlUG9wdXBPbk9wZW5lZCgkZXZlbnQpXCIgKG9uQ2xvc2VkKT1cIl9oYW5kbGVQb3B1cE9uQ2xvc2VkKCRldmVudClcIlxuICAjcG9wb3Zlcj5cbiAgPGRpdiBjbGFzcz1cImF4LW92ZXJsYXktcGFuZVwiIFtjbGFzcy5heC13LWZ1bGxdPVwiX2lzTW9iaWxlXCIgdGFiaW5kZXg9XCIwXCIgYXJpYS1tb2RhbD1cInRydWVcIiBjZGtUcmFwRm9jdXNcbiAgICAoa2V5ZG93bik9XCJfaGFuZGxlS2V5ZG93bigkZXZlbnQpXCIgW2NsYXNzLmF4LW92ZXJsYXktYWN0aW9uc2hlZXRdPVwicG9wb3Zlci5pc0FjdGlvbnNoZWV0U3R5bGVcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbcGFuZWxdXCI+IDwvbmctY29udGVudD5cbiAgPC9kaXY+XG48L2F4LXBvcG92ZXI+Il19
@@ -128,11 +128,11 @@ export class AXDropdownPanelComponent extends MXInteractiveComponent {
128
128
  return ['ax-dropdown-panel'];
129
129
  }
130
130
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXDropdownPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
131
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.9", type: AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: { isOpen: "isOpen", fitParent: "fitParent", dropdownWidth: "dropdownWidth", position: "position", adaptivityEnabled: "adaptivityEnabled" }, outputs: { onOpened: "onOpened", onClosed: "onClosed", onItemClick: "onItemClick" }, host: { properties: { "class": "this.__hostClass" } }, queries: [{ propertyName: "_contentButtons", predicate: AXButtonItemComponent }], viewQueries: [{ propertyName: "_popover", first: true, predicate: AXPopoverComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ax-popover [target]=\"_target\" [placement]=\"_placement\" [openOn]=\"'toggle'\" [closeOn]=\"'clickout'\"\n [adaptivityEnabled]=\"adaptivityEnabled\" (onOpened)=\"_handlePopupOnOpened($event)\"\n (onClosed)=\"_handlePopupOnClosed($event)\">\n <div class=\"ax-overlay-pane\" [class.ax-dropdown-list]=\"_needBorder\">\n <ng-content select=\"[panel],ax-button-item\"> </ng-content>\n </div>\n</ax-popover>", styles: [".ax-actionsheet-base .ax-overlay-pane{width:100%;border-bottom-left-radius:0;border-bottom-right-radius:0}\n"], dependencies: [{ kind: "component", type: i1.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
131
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.9", type: AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: { isOpen: "isOpen", fitParent: "fitParent", dropdownWidth: "dropdownWidth", position: "position", adaptivityEnabled: "adaptivityEnabled" }, outputs: { onOpened: "onOpened", onClosed: "onClosed", onItemClick: "onItemClick" }, host: { properties: { "class": "this.__hostClass" } }, queries: [{ propertyName: "_contentButtons", predicate: AXButtonItemComponent }], viewQueries: [{ propertyName: "_popover", first: true, predicate: AXPopoverComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ax-popover\n [target]=\"_target\"\n [placement]=\"_placement\"\n [openOn]=\"'toggle'\"\n [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"adaptivityEnabled\"\n (onOpened)=\"_handlePopupOnOpened($event)\"\n (onClosed)=\"_handlePopupOnClosed($event)\"\n>\n <div class=\"ax-overlay-pane\" [class.ax-dropdown-list]=\"_needBorder\">\n <ng-content select=\"[panel],ax-button-item\"> </ng-content>\n </div>\n</ax-popover>\n", styles: [".ax-actionsheet-base .ax-overlay-pane{width:100%;border-bottom-left-radius:0;border-bottom-right-radius:0}\n"], dependencies: [{ kind: "component", type: i1.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
132
132
  }
133
133
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXDropdownPanelComponent, decorators: [{
134
134
  type: Component,
135
- args: [{ selector: 'ax-dropdown-panel', inputs: ['isOpen', 'fitParent', 'dropdownWidth', 'position'], outputs: ['onOpened', 'onClosed'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ax-popover [target]=\"_target\" [placement]=\"_placement\" [openOn]=\"'toggle'\" [closeOn]=\"'clickout'\"\n [adaptivityEnabled]=\"adaptivityEnabled\" (onOpened)=\"_handlePopupOnOpened($event)\"\n (onClosed)=\"_handlePopupOnClosed($event)\">\n <div class=\"ax-overlay-pane\" [class.ax-dropdown-list]=\"_needBorder\">\n <ng-content select=\"[panel],ax-button-item\"> </ng-content>\n </div>\n</ax-popover>", styles: [".ax-actionsheet-base .ax-overlay-pane{width:100%;border-bottom-left-radius:0;border-bottom-right-radius:0}\n"] }]
135
+ args: [{ selector: 'ax-dropdown-panel', inputs: ['isOpen', 'fitParent', 'dropdownWidth', 'position'], outputs: ['onOpened', 'onClosed'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ax-popover\n [target]=\"_target\"\n [placement]=\"_placement\"\n [openOn]=\"'toggle'\"\n [closeOn]=\"'clickOut'\"\n [adaptivityEnabled]=\"adaptivityEnabled\"\n (onOpened)=\"_handlePopupOnOpened($event)\"\n (onClosed)=\"_handlePopupOnClosed($event)\"\n>\n <div class=\"ax-overlay-pane\" [class.ax-dropdown-list]=\"_needBorder\">\n <ng-content select=\"[panel],ax-button-item\"> </ng-content>\n </div>\n</ax-popover>\n", styles: [".ax-actionsheet-base .ax-overlay-pane{width:100%;border-bottom-left-radius:0;border-bottom-right-radius:0}\n"] }]
136
136
  }], propDecorators: { _contentButtons: [{
137
137
  type: ContentChildren,
138
138
  args: [AXButtonItemComponent]
@@ -151,4 +151,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.9", ngImpor
151
151
  type: HostBinding,
152
152
  args: ['class']
153
153
  }] } });
154
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tcGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2Ryb3Bkb3duL3NyYy9saWIvZHJvcGRvd24tcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2Ryb3Bkb3duL3NyYy9saWIvZHJvcGRvd24tcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLFlBQVksRUFDWixXQUFXLEVBRVgsS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsU0FBUyxFQUNULGlCQUFpQixFQUNqQixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEUsT0FBTyxFQUtMLHNCQUFzQixFQUN0QixrQkFBa0IsR0FDbkIsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQVcvQyxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsc0JBQXNCO0lBVHBFOztRQVVVLGNBQVMsR0FBZSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDekMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUdsQixlQUFVLEdBQUcsa0JBQWtCLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFbEQsWUFBTyxHQUEyQixNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUM5RCxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUM5QixVQUFLLEdBQW1CLEVBQUUsQ0FBQztRQVMz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XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQVhCdXR0b25JdGVtQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQge1xuICBBWEJ1dHRvbkNsaWNrRXZlbnQsXG4gIEFYQ2xpY2tFdmVudCxcbiAgQVhFdmVudCxcbiAgTVhDb21wb25lbnRPcHRpb25DaGFuZ2VkLFxuICBNWEludGVyYWN0aXZlQ29tcG9uZW50LFxuICBjb252ZXJ0VG9QbGFjZW1lbnQsXG59IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tb24nO1xuaW1wb3J0IHsgQVhQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcG92ZXInO1xuaW1wb3J0IHsgQVhQbGF0Zm9ybSB9IGZyb20gJ0BhY29yZXgvY29yZS9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24sIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC1kcm9wZG93bi1wYW5lbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9kcm9wZG93bi1wYW5lbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Ryb3Bkb3duLXBhbmVsLmNvbXBvbmVudC5zY3NzJ10sXG4gIGlucHV0czogWydpc09wZW4nLCAnZml0UGFyZW50JywgJ2Ryb3Bkb3duV2lkdGgnLCAncG9zaXRpb24nXSxcbiAgb3V0cHV0czogWydvbk9wZW5lZCcsICdvbkNsb3NlZCddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgQVhEcm9wZG93blBhbmVsQ29tcG9uZW50IGV4dGVuZHMgTVhJbnRlcmFjdGl2ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIHByaXZhdGUgX3BsYXRmb3JtOiBBWFBsYXRmb3JtID0gaW5qZWN0KEFYUGxhdGZvcm0pO1xuICBwcm90ZWN0ZWQgX2lzTW9iaWxlID0gZmFsc2U7XG4gIHByb3RlY3RlZCBfdGFyZ2V0OiBIVE1MRGl2RWxlbWVudDtcbiAgcHJvdGVjdGVkIF9wb3BvdmVyVGl0bGU6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9wbGFjZW1lbnQgPSBjb252ZXJ0VG9QbGFjZW1lbnQoJ2JvdHRvbS1zdGFydCcpO1xuXG4gIHByaXZhdGUgX3BhcmVudD86IEFYQnV0dG9uSXRlbUNvbXBvbmVudCA9IGluamVjdChBWEJ1dHRvbkl0ZW1Db21wb25lbnQpO1xuICBwcm90ZWN0ZWQgX25lZWRCb3JkZXIgPSBmYWxzZTtcbiAgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgQENvbnRlbnRDaGlsZHJlbihBWEJ1dHRvbkl0ZW1Db21wb25lbnQpXG4gIHByb3RlY3RlZCBfY29udGVudEJ1dHRvbnM6IFF1ZXJ5TGlzdDxBWEJ1dHRvbkl0ZW1Db21wb25lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoQVhQb3BvdmVyQ29tcG9uZW50KVxuICBwcm90ZWN0ZWQgX3BvcG92ZXI6IEFYUG9wb3ZlckNvbXBvbmVudDtcblxuICBAT3V0cHV0KClcbiAgb25PcGVuZWQ6IEV2ZW50RW1pdHRlcjxBWEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhFdmVudD4oKTtcbiAgQE91dHB1dCgpXG4gIG9uQ2xvc2VkOiBFdmVudEVtaXR0ZXI8QVhFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYRXZlbnQ+KCk7XG5cbiAgQElucHV0KClcbiAgYWRhcHRpdml0eUVuYWJsZWQgPSBmYWxzZTtcblxuICBAT3V0cHV0KClcbiAgb25JdGVtQ2xpY2s6IEV2ZW50RW1pdHRlcjxBWEJ1dHRvbkNsaWNrRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWEJ1dHRvbkNsaWNrRXZlbnQ+KCk7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICB0aGlzLl90YXJnZXQgPSB0aGlzLl9wYXJlbnQuZ2V0SG9zdEVsZW1lbnQoKTtcbiAgICB0aGlzLl9wbGF0Zm9ybS5yZXNpemVcbiAgICAgIC5waXBlKHN0YXJ0V2l0aChudWxsKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl9pc01vYmlsZSA9IHRoaXMuX3BsYXRmb3JtLmlzKCdTTScpO1xuICAgICAgICB0aGlzLl9wb3BvdmVyPy5jbG9zZSgpO1xuICAgICAgfSk7XG4gIH1cblxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBbdGhpcy5fdGFyZ2V0LCB0aGlzLmdldEhvc3RFbGVtZW50KCldLmZvckVhY2goKGVsKSA9PiB7XG4gICAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgKGUpID0+IHtcbiAgICAgICAgaWYgKGUuY29kZSA9PSAnRXNjYXBlJyAmJiB0aGlzLmlzT3Blbikge1xuICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLl9pbml0Q29udGVudHMoKTtcbiAgICB0aGlzLl9jb250ZW50QnV0dG9ucy5jaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLl9pbml0Q29udGVudHMoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2luaXRDb250ZW50cygpIHtcbiAgICB0aGlzLl9uZWVkQm9yZGVyID0gdGhpcy5fY29udGVudEJ1dHRvbnMubGVuZ3RoID4gMDtcbiAgICB0aGlzLl9iaW5kRXZlbnRzKCk7XG4gICAgdGhpcy5fYmluZFByb3BzKCk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcml2YXRlIF9iaW5kRXZlbnRzKCkge1xuICAgIHRoaXMuX2NvbnRlbnRCdXR0b25zPy5mb3JFYWNoKChiKSA9PiB7XG4gICAgICBpZiAoIWIub25DbGljay5sZW5ndGgpXG4gICAgICAgIGIub25DbGljay5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgICAgICB0aGlzLl9oYW5kbGVPbkl0ZW1DbGljayhjKTtcbiAgICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9iaW5kUHJvcHMoKSB7XG4gICAgdGhpcy5fY29udGVudEJ1dHRvbnM/LmZvckVhY2goKGIpID0+IHtcbiAgICAgIC8vYi5sb29rID0gdGhpcy5sb29rID8/IHRoaXMubG9vaztcbiAgICAgIGIuZGlzYWJsZWQgPSBiLmRpc2FibGVkID8/IHRoaXMuZGlzYWJsZWQ7XG4gICAgICAvL2IudG9nZ2xlYWJsZSA9IGZhbHNlO1xuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGludGVybmFsT3B0aW9uQ2hhbmdlZChvcHRpb246IE1YQ29tcG9uZW50T3B0aW9uQ2hhbmdlZDxhbnk+KTogdm9pZCB7XG4gICAgdGhpcy5fYmluZFByb3BzKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9zdWJzLmZvckVhY2goKHMpID0+IHtcbiAgICAgIHM/LnVuc3Vic2NyaWJlKCk7XG4gICAgfSk7XG4gIH1cblxuICBfZW1pdE9uSXRlbUNsaWNrRXZlbnQoZTogQVhDbGlja0V2ZW50LCBpdGVtOiBBWEJ1dHRvbkl0ZW1Db21wb25lbnQpOiB2b2lkIHtcbiAgICB0aGlzLm9uSXRlbUNsaWNrLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSxcbiAgICAgIG5hdGl2ZUV2ZW50OiBlLm5hdGl2ZUV2ZW50LFxuICAgICAgbmFtZTogaXRlbS5uYW1lLFxuICAgICAgZGF0YTogaXRlbS5kYXRhLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlT25JdGVtQ2xpY2soZTogQVhDbGlja0V2ZW50KSB7XG4gICAgdGhpcy5jbG9zZSgpO1xuICAgIHRoaXMuX2VtaXRPbkl0ZW1DbGlja0V2ZW50KGUsIGUuY29tcG9uZW50KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBfaGFuZGxlUG9wdXBPbk9wZW5lZChlOiBBWEV2ZW50KSB7XG4gICAgdGhpcy5fcG9wb3Zlcj8uZm9jdXMoKTtcbiAgICB0aGlzLm9uT3BlbmVkLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaXNVc2VySW50ZXJhY3Rpb246IGUuaXNVc2VySW50ZXJhY3Rpb24sXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgX2hhbmRsZVBvcHVwT25DbG9zZWQoZTogQVhFdmVudCkge1xuICAgIHRoaXMuX3RhcmdldC5mb2N1cygpO1xuICAgIHRoaXMub25DbG9zZWQuZW1pdCh7XG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBpc1VzZXJJbnRlcmFjdGlvbjogZS5pc1VzZXJJbnRlcmFjdGlvbixcbiAgICB9KTtcbiAgfVxuXG5cblxuICB0b2dnbGUoKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgIT09IHRydWUpIHtcbiAgICAgIHRoaXMuX3BvcG92ZXIudG9nZ2xlKCk7XG4gICAgfVxuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgaWYgKCF0aGlzLmlzT3BlbiB8fCB0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3BvcG92ZXIuY2xvc2UoKTtcbiAgICB0aGlzLmZvY3VzKCk7XG4gIH1cblxuICBvcGVuKCkge1xuICAgIGlmICh0aGlzLmlzT3BlbiB8fCB0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3BvcG92ZXIub3BlbigpO1xuICAgIHRoaXMuX3BvcG92ZXIuZm9jdXMoKTtcbiAgfVxuXG4gIGdldCBpc09wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3BvcG92ZXI/LmlzT3BlbjtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBwcml2YXRlIGdldCBfX2hvc3RDbGFzcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFsnYXgtZHJvcGRvd24tcGFuZWwnXTtcbiAgfVxuXG4gIC8vIGNvbnN0cnVjdG9yKFxuICAvLyAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gIC8vICAgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgLy8gICBAT3B0aW9uYWwoKVxuICAvLyAgIHB1YmxpYyBfcGFyZW50PzogQVhCdXR0b25JdGVtQ29tcG9uZW50LFxuICAvLyApIHtcbiAgLy8gICBzdXBlcihlbGVtZW50UmVmLCBjZHIpO1xuICAvLyAgIHRoaXMuX3RhcmdldCA9IHRoaXMuX3BhcmVudD8uZ2V0SG9zdEVsZW1lbnQoKTtcbiAgLy8gfVxuXG4gIC8vIEBDb250ZW50Q2hpbGRyZW4oQVhCdXR0b25JdGVtQ29tcG9uZW50KVxuICAvLyBfY29udGVudEJ1dHRvbnM6IFF1ZXJ5TGlzdDxBWEJ1dHRvbkl0ZW1Db21wb25lbnQ+O1xuXG4gIC8vIEBWaWV3Q2hpbGQoQVhQb3BvdmVyQ29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KVxuICAvLyBvdmVycmlkZSBwb3BvdmVyOiBBWFBvcG92ZXJDb21wb25lbnQgPSBudWxsO1xuXG4gIC8vIEBJbnB1dCgpXG4gIC8vIGFkYXB0aXZpdHlFbmFibGVkID0gZmFsc2U7XG5cbiAgLy8gX25lZWRCb3JkZXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgLy8gX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgLy8gcHJpdmF0ZSBfdGFyZ2V0OiBIVE1MRWxlbWVudDtcbiAgLy8gQElucHV0KClcbiAgLy8gcHVibGljIGdldCB0YXJnZXQoKTogSFRNTEVsZW1lbnQge1xuICAvLyAgIHJldHVybiB0aGlzLl90YXJnZXQ7XG4gIC8vIH1cbiAgLy8gcHVibGljIHNldCB0YXJnZXQodjogSFRNTEVsZW1lbnQpIHtcbiAgLy8gICB0aGlzLl90YXJnZXQgPSB2O1xuICAvLyB9XG5cbiAgLy8gb3ZlcnJpZGUgb25WaWV3SW5pdCgpOiB2b2lkIHtcbiAgLy8gICBzdXBlci5vblZpZXdJbml0KCk7XG4gIC8vICAgW3RoaXMudGFyZ2V0LCB0aGlzLl9nZXRIb3N0RWxlbWVudCgpXS5mb3JFYWNoKChlbCkgPT4ge1xuICAvLyAgICAgZWwuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIChlKSA9PiB7XG4gIC8vICAgICAgIGlmIChlLmNvZGUgPT0gJ0VzY2FwZScgJiYgdGhpcy5pc09wZW4pIHtcbiAgLy8gICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAvLyAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgLy8gICAgICAgfVxuICAvLyAgICAgfSk7XG4gIC8vICAgfSk7XG4gIC8vIH1cblxuICAvLyBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gIC8vICAgdGhpcy5faW5pdENvbnRlbnRzKCk7XG4gIC8vICAgdGhpcy5fY29udGVudEJ1dHRvbnMuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAvLyAgICAgdGhpcy5faW5pdENvbnRlbnRzKCk7XG4gIC8vICAgfSk7XG4gIC8vIH1cblxuICAvLyBwcml2YXRlIF9pbml0Q29udGVudHMoKSB7XG4gIC8vICAgdGhpcy5fbmVlZEJvcmRlciA9IHRoaXMuX2NvbnRlbnRCdXR0b25zLmxlbmd0aCA+IDA7XG4gIC8vICAgdGhpcy5fYmluZEV2ZW50cygpO1xuICAvLyAgIHRoaXMuX2JpbmRQcm9wcygpO1xuICAvLyAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgLy8gfVxuXG4gIC8vIHByaXZhdGUgX2JpbmRFdmVudHMoKSB7XG4gIC8vICAgdGhpcy5fY29udGVudEJ1dHRvbnM/LmZvckVhY2goKGIpID0+IHtcbiAgLy8gICAgIGlmICghYi5vbkNsaWNrLmxlbmd0aClcbiAgLy8gICAgICAgYi5vbkNsaWNrLnN1YnNjcmliZSgoYykgPT4ge1xuICAvLyAgICAgICAgIHRoaXMuX2hhbmRsZU9uSXRlbUNsaWNrKGMpO1xuICAvLyAgICAgICB9KTtcbiAgLy8gICB9KTtcbiAgLy8gfVxuXG4gIC8vIHByaXZhdGUgX2JpbmRQcm9wcygpIHtcbiAgLy8gICB0aGlzLl9jb250ZW50QnV0dG9ucz8uZm9yRWFjaCgoYikgPT4ge1xuICAvLyAgICAgLy9iLmxvb2sgPSB0aGlzLmxvb2sgPz8gdGhpcy5sb29rO1xuICAvLyAgICAgYi5kaXNhYmxlZCA9IGIuZGlzYWJsZWQgPz8gdGhpcy5kaXNhYmxlZDtcbiAgLy8gICAgIC8vYi50b2dnbGVhYmxlID0gZmFsc2U7XG4gIC8vICAgfSk7XG4gIC8vIH1cblxuICAvLyBvbk9wdGlvbkNoYW5nZWQob3B0aW9ucykge1xuICAvLyAgIHRoaXMuX2JpbmRQcm9wcygpO1xuICAvLyB9XG5cbiAgLy8gb3ZlcnJpZGUgb25EZXN0cm95KCk6IHZvaWQge1xuICAvLyAgIHRoaXMuX3N1YnMuZm9yRWFjaCgocykgPT4ge1xuICAvLyAgICAgcz8udW5zdWJzY3JpYmUoKTtcbiAgLy8gICB9KTtcbiAgLy8gfVxuXG4gIC8vIF9lbWl0T25JdGVtQ2xpY2tFdmVudChlOiBBWENsaWNrRXZlbnQsIGl0ZW06IEFYQnV0dG9uSXRlbUNvbXBvbmVudCk6IHZvaWQge1xuICAvLyAgIHRoaXMub25JdGVtQ2xpY2suZW1pdCh7XG4gIC8vICAgICBjb21wb25lbnQ6IHRoaXMsXG4gIC8vICAgICBodG1sRWxlbWVudDogdGhpcy5fZ2V0SG9zdEVsZW1lbnQoKSxcbiAgLy8gICAgIG5hdGl2ZUV2ZW50OiBlLm5hdGl2ZUV2ZW50LFxuICAvLyAgICAgbmFtZTogaXRlbS5uYW1lLFxuICAvLyAgICAgZGF0YTogaXRlbS5kYXRhLFxuICAvLyAgIH0pO1xuICAvLyB9XG5cbiAgLy8gcHJpdmF0ZSBfaGFuZGxlT25JdGVtQ2xpY2soZTogQVhDbGlja0V2ZW50KSB7XG4gIC8vICAgdGhpcy5jbG9zZSgpO1xuICAvLyAgIHRoaXMuX2VtaXRPbkl0ZW1DbGlja0V2ZW50KGUsIGUuY29tcG9uZW50KTtcbiAgLy8gfVxufVxuIiwiPGF4LXBvcG92ZXIgW3RhcmdldF09XCJfdGFyZ2V0XCIgW3BsYWNlbWVudF09XCJfcGxhY2VtZW50XCIgW29wZW5Pbl09XCIndG9nZ2xlJ1wiIFtjbG9zZU9uXT1cIidjbGlja291dCdcIlxuICBbYWRhcHRpdml0eUVuYWJsZWRdPVwiYWRhcHRpdml0eUVuYWJsZWRcIiAob25PcGVuZWQpPVwiX2hhbmRsZVBvcHVwT25PcGVuZWQoJGV2ZW50KVwiXG4gIChvbkNsb3NlZCk9XCJfaGFuZGxlUG9wdXBPbkNsb3NlZCgkZXZlbnQpXCI+XG4gIDxkaXYgY2xhc3M9XCJheC1vdmVybGF5LXBhbmVcIiBbY2xhc3MuYXgtZHJvcGRvd24tbGlzdF09XCJfbmVlZEJvcmRlclwiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltwYW5lbF0sYXgtYnV0dG9uLWl0ZW1cIj4gPC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbjwvYXgtcG9wb3Zlcj4iXX0=
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tcGFuZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2Ryb3Bkb3duL3NyYy9saWIvZHJvcGRvd24tcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2Ryb3Bkb3duL3NyYy9saWIvZHJvcGRvd24tcGFuZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLFlBQVksRUFDWixXQUFXLEVBRVgsS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsU0FBUyxFQUNULGlCQUFpQixFQUNqQixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEUsT0FBTyxFQUtMLHNCQUFzQixFQUN0QixrQkFBa0IsR0FDbkIsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQVcvQyxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsc0JBQXNCO0lBVHBFOztRQVVVLGNBQVMsR0FBZSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDekMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUdsQixlQUFVLEdBQUcsa0JBQWtCLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFbEQsWUFBTyxHQUEyQixNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUM5RCxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUM5QixVQUFLLEdBQW1CLEVBQUUsQ0FBQztRQVMz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XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQVhCdXR0b25JdGVtQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQge1xuICBBWEJ1dHRvbkNsaWNrRXZlbnQsXG4gIEFYQ2xpY2tFdmVudCxcbiAgQVhFdmVudCxcbiAgTVhDb21wb25lbnRPcHRpb25DaGFuZ2VkLFxuICBNWEludGVyYWN0aXZlQ29tcG9uZW50LFxuICBjb252ZXJ0VG9QbGFjZW1lbnQsXG59IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tb24nO1xuaW1wb3J0IHsgQVhQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcG92ZXInO1xuaW1wb3J0IHsgQVhQbGF0Zm9ybSB9IGZyb20gJ0BhY29yZXgvY29yZS9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24sIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC1kcm9wZG93bi1wYW5lbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9kcm9wZG93bi1wYW5lbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Ryb3Bkb3duLXBhbmVsLmNvbXBvbmVudC5zY3NzJ10sXG4gIGlucHV0czogWydpc09wZW4nLCAnZml0UGFyZW50JywgJ2Ryb3Bkb3duV2lkdGgnLCAncG9zaXRpb24nXSxcbiAgb3V0cHV0czogWydvbk9wZW5lZCcsICdvbkNsb3NlZCddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgQVhEcm9wZG93blBhbmVsQ29tcG9uZW50IGV4dGVuZHMgTVhJbnRlcmFjdGl2ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIHByaXZhdGUgX3BsYXRmb3JtOiBBWFBsYXRmb3JtID0gaW5qZWN0KEFYUGxhdGZvcm0pO1xuICBwcm90ZWN0ZWQgX2lzTW9iaWxlID0gZmFsc2U7XG4gIHByb3RlY3RlZCBfdGFyZ2V0OiBIVE1MRGl2RWxlbWVudDtcbiAgcHJvdGVjdGVkIF9wb3BvdmVyVGl0bGU6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9wbGFjZW1lbnQgPSBjb252ZXJ0VG9QbGFjZW1lbnQoJ2JvdHRvbS1zdGFydCcpO1xuXG4gIHByaXZhdGUgX3BhcmVudD86IEFYQnV0dG9uSXRlbUNvbXBvbmVudCA9IGluamVjdChBWEJ1dHRvbkl0ZW1Db21wb25lbnQpO1xuICBwcm90ZWN0ZWQgX25lZWRCb3JkZXIgPSBmYWxzZTtcbiAgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgQENvbnRlbnRDaGlsZHJlbihBWEJ1dHRvbkl0ZW1Db21wb25lbnQpXG4gIHByb3RlY3RlZCBfY29udGVudEJ1dHRvbnM6IFF1ZXJ5TGlzdDxBWEJ1dHRvbkl0ZW1Db21wb25lbnQ+O1xuXG4gIEBWaWV3Q2hpbGQoQVhQb3BvdmVyQ29tcG9uZW50KVxuICBwcm90ZWN0ZWQgX3BvcG92ZXI6IEFYUG9wb3ZlckNvbXBvbmVudDtcblxuICBAT3V0cHV0KClcbiAgb25PcGVuZWQ6IEV2ZW50RW1pdHRlcjxBWEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhFdmVudD4oKTtcbiAgQE91dHB1dCgpXG4gIG9uQ2xvc2VkOiBFdmVudEVtaXR0ZXI8QVhFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYRXZlbnQ+KCk7XG5cbiAgQElucHV0KClcbiAgYWRhcHRpdml0eUVuYWJsZWQgPSBmYWxzZTtcblxuICBAT3V0cHV0KClcbiAgb25JdGVtQ2xpY2s6IEV2ZW50RW1pdHRlcjxBWEJ1dHRvbkNsaWNrRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWEJ1dHRvbkNsaWNrRXZlbnQ+KCk7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICB0aGlzLl90YXJnZXQgPSB0aGlzLl9wYXJlbnQuZ2V0SG9zdEVsZW1lbnQoKTtcbiAgICB0aGlzLl9wbGF0Zm9ybS5yZXNpemVcbiAgICAgIC5waXBlKHN0YXJ0V2l0aChudWxsKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl9pc01vYmlsZSA9IHRoaXMuX3BsYXRmb3JtLmlzKCdTTScpO1xuICAgICAgICB0aGlzLl9wb3BvdmVyPy5jbG9zZSgpO1xuICAgICAgfSk7XG4gIH1cblxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBbdGhpcy5fdGFyZ2V0LCB0aGlzLmdldEhvc3RFbGVtZW50KCldLmZvckVhY2goKGVsKSA9PiB7XG4gICAgICBlbC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgKGUpID0+IHtcbiAgICAgICAgaWYgKGUuY29kZSA9PSAnRXNjYXBlJyAmJiB0aGlzLmlzT3Blbikge1xuICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLl9pbml0Q29udGVudHMoKTtcbiAgICB0aGlzLl9jb250ZW50QnV0dG9ucy5jaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLl9pbml0Q29udGVudHMoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2luaXRDb250ZW50cygpIHtcbiAgICB0aGlzLl9uZWVkQm9yZGVyID0gdGhpcy5fY29udGVudEJ1dHRvbnMubGVuZ3RoID4gMDtcbiAgICB0aGlzLl9iaW5kRXZlbnRzKCk7XG4gICAgdGhpcy5fYmluZFByb3BzKCk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcml2YXRlIF9iaW5kRXZlbnRzKCkge1xuICAgIHRoaXMuX2NvbnRlbnRCdXR0b25zPy5mb3JFYWNoKChiKSA9PiB7XG4gICAgICBpZiAoIWIub25DbGljay5sZW5ndGgpXG4gICAgICAgIGIub25DbGljay5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgICAgICB0aGlzLl9oYW5kbGVPbkl0ZW1DbGljayhjKTtcbiAgICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9iaW5kUHJvcHMoKSB7XG4gICAgdGhpcy5fY29udGVudEJ1dHRvbnM/LmZvckVhY2goKGIpID0+IHtcbiAgICAgIC8vYi5sb29rID0gdGhpcy5sb29rID8/IHRoaXMubG9vaztcbiAgICAgIGIuZGlzYWJsZWQgPSBiLmRpc2FibGVkID8/IHRoaXMuZGlzYWJsZWQ7XG4gICAgICAvL2IudG9nZ2xlYWJsZSA9IGZhbHNlO1xuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGludGVybmFsT3B0aW9uQ2hhbmdlZChvcHRpb246IE1YQ29tcG9uZW50T3B0aW9uQ2hhbmdlZDxhbnk+KTogdm9pZCB7XG4gICAgdGhpcy5fYmluZFByb3BzKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9zdWJzLmZvckVhY2goKHMpID0+IHtcbiAgICAgIHM/LnVuc3Vic2NyaWJlKCk7XG4gICAgfSk7XG4gIH1cblxuICBfZW1pdE9uSXRlbUNsaWNrRXZlbnQoZTogQVhDbGlja0V2ZW50LCBpdGVtOiBBWEJ1dHRvbkl0ZW1Db21wb25lbnQpOiB2b2lkIHtcbiAgICB0aGlzLm9uSXRlbUNsaWNrLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSxcbiAgICAgIG5hdGl2ZUV2ZW50OiBlLm5hdGl2ZUV2ZW50LFxuICAgICAgbmFtZTogaXRlbS5uYW1lLFxuICAgICAgZGF0YTogaXRlbS5kYXRhLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlT25JdGVtQ2xpY2soZTogQVhDbGlja0V2ZW50KSB7XG4gICAgdGhpcy5jbG9zZSgpO1xuICAgIHRoaXMuX2VtaXRPbkl0ZW1DbGlja0V2ZW50KGUsIGUuY29tcG9uZW50KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBfaGFuZGxlUG9wdXBPbk9wZW5lZChlOiBBWEV2ZW50KSB7XG4gICAgdGhpcy5fcG9wb3Zlcj8uZm9jdXMoKTtcbiAgICB0aGlzLm9uT3BlbmVkLmVtaXQoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLFxuICAgICAgaXNVc2VySW50ZXJhY3Rpb246IGUuaXNVc2VySW50ZXJhY3Rpb24sXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgX2hhbmRsZVBvcHVwT25DbG9zZWQoZTogQVhFdmVudCkge1xuICAgIHRoaXMuX3RhcmdldC5mb2N1cygpO1xuICAgIHRoaXMub25DbG9zZWQuZW1pdCh7XG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBpc1VzZXJJbnRlcmFjdGlvbjogZS5pc1VzZXJJbnRlcmFjdGlvbixcbiAgICB9KTtcbiAgfVxuXG5cblxuICB0b2dnbGUoKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgIT09IHRydWUpIHtcbiAgICAgIHRoaXMuX3BvcG92ZXIudG9nZ2xlKCk7XG4gICAgfVxuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgaWYgKCF0aGlzLmlzT3BlbiB8fCB0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3BvcG92ZXIuY2xvc2UoKTtcbiAgICB0aGlzLmZvY3VzKCk7XG4gIH1cblxuICBvcGVuKCkge1xuICAgIGlmICh0aGlzLmlzT3BlbiB8fCB0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuX3BvcG92ZXIub3BlbigpO1xuICAgIHRoaXMuX3BvcG92ZXIuZm9jdXMoKTtcbiAgfVxuXG4gIGdldCBpc09wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3BvcG92ZXI/LmlzT3BlbjtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBwcml2YXRlIGdldCBfX2hvc3RDbGFzcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFsnYXgtZHJvcGRvd24tcGFuZWwnXTtcbiAgfVxuXG4gIC8vIGNvbnN0cnVjdG9yKFxuICAvLyAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gIC8vICAgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgLy8gICBAT3B0aW9uYWwoKVxuICAvLyAgIHB1YmxpYyBfcGFyZW50PzogQVhCdXR0b25JdGVtQ29tcG9uZW50LFxuICAvLyApIHtcbiAgLy8gICBzdXBlcihlbGVtZW50UmVmLCBjZHIpO1xuICAvLyAgIHRoaXMuX3RhcmdldCA9IHRoaXMuX3BhcmVudD8uZ2V0SG9zdEVsZW1lbnQoKTtcbiAgLy8gfVxuXG4gIC8vIEBDb250ZW50Q2hpbGRyZW4oQVhCdXR0b25JdGVtQ29tcG9uZW50KVxuICAvLyBfY29udGVudEJ1dHRvbnM6IFF1ZXJ5TGlzdDxBWEJ1dHRvbkl0ZW1Db21wb25lbnQ+O1xuXG4gIC8vIEBWaWV3Q2hpbGQoQVhQb3BvdmVyQ29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KVxuICAvLyBvdmVycmlkZSBwb3BvdmVyOiBBWFBvcG92ZXJDb21wb25lbnQgPSBudWxsO1xuXG4gIC8vIEBJbnB1dCgpXG4gIC8vIGFkYXB0aXZpdHlFbmFibGVkID0gZmFsc2U7XG5cbiAgLy8gX25lZWRCb3JkZXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgLy8gX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgLy8gcHJpdmF0ZSBfdGFyZ2V0OiBIVE1MRWxlbWVudDtcbiAgLy8gQElucHV0KClcbiAgLy8gcHVibGljIGdldCB0YXJnZXQoKTogSFRNTEVsZW1lbnQge1xuICAvLyAgIHJldHVybiB0aGlzLl90YXJnZXQ7XG4gIC8vIH1cbiAgLy8gcHVibGljIHNldCB0YXJnZXQodjogSFRNTEVsZW1lbnQpIHtcbiAgLy8gICB0aGlzLl90YXJnZXQgPSB2O1xuICAvLyB9XG5cbiAgLy8gb3ZlcnJpZGUgb25WaWV3SW5pdCgpOiB2b2lkIHtcbiAgLy8gICBzdXBlci5vblZpZXdJbml0KCk7XG4gIC8vICAgW3RoaXMudGFyZ2V0LCB0aGlzLl9nZXRIb3N0RWxlbWVudCgpXS5mb3JFYWNoKChlbCkgPT4ge1xuICAvLyAgICAgZWwuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIChlKSA9PiB7XG4gIC8vICAgICAgIGlmIChlLmNvZGUgPT0gJ0VzY2FwZScgJiYgdGhpcy5pc09wZW4pIHtcbiAgLy8gICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAvLyAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgLy8gICAgICAgfVxuICAvLyAgICAgfSk7XG4gIC8vICAgfSk7XG4gIC8vIH1cblxuICAvLyBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gIC8vICAgdGhpcy5faW5pdENvbnRlbnRzKCk7XG4gIC8vICAgdGhpcy5fY29udGVudEJ1dHRvbnMuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAvLyAgICAgdGhpcy5faW5pdENvbnRlbnRzKCk7XG4gIC8vICAgfSk7XG4gIC8vIH1cblxuICAvLyBwcml2YXRlIF9pbml0Q29udGVudHMoKSB7XG4gIC8vICAgdGhpcy5fbmVlZEJvcmRlciA9IHRoaXMuX2NvbnRlbnRCdXR0b25zLmxlbmd0aCA+IDA7XG4gIC8vICAgdGhpcy5fYmluZEV2ZW50cygpO1xuICAvLyAgIHRoaXMuX2JpbmRQcm9wcygpO1xuICAvLyAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgLy8gfVxuXG4gIC8vIHByaXZhdGUgX2JpbmRFdmVudHMoKSB7XG4gIC8vICAgdGhpcy5fY29udGVudEJ1dHRvbnM/LmZvckVhY2goKGIpID0+IHtcbiAgLy8gICAgIGlmICghYi5vbkNsaWNrLmxlbmd0aClcbiAgLy8gICAgICAgYi5vbkNsaWNrLnN1YnNjcmliZSgoYykgPT4ge1xuICAvLyAgICAgICAgIHRoaXMuX2hhbmRsZU9uSXRlbUNsaWNrKGMpO1xuICAvLyAgICAgICB9KTtcbiAgLy8gICB9KTtcbiAgLy8gfVxuXG4gIC8vIHByaXZhdGUgX2JpbmRQcm9wcygpIHtcbiAgLy8gICB0aGlzLl9jb250ZW50QnV0dG9ucz8uZm9yRWFjaCgoYikgPT4ge1xuICAvLyAgICAgLy9iLmxvb2sgPSB0aGlzLmxvb2sgPz8gdGhpcy5sb29rO1xuICAvLyAgICAgYi5kaXNhYmxlZCA9IGIuZGlzYWJsZWQgPz8gdGhpcy5kaXNhYmxlZDtcbiAgLy8gICAgIC8vYi50b2dnbGVhYmxlID0gZmFsc2U7XG4gIC8vICAgfSk7XG4gIC8vIH1cblxuICAvLyBvbk9wdGlvbkNoYW5nZWQob3B0aW9ucykge1xuICAvLyAgIHRoaXMuX2JpbmRQcm9wcygpO1xuICAvLyB9XG5cbiAgLy8gb3ZlcnJpZGUgb25EZXN0cm95KCk6IHZvaWQge1xuICAvLyAgIHRoaXMuX3N1YnMuZm9yRWFjaCgocykgPT4ge1xuICAvLyAgICAgcz8udW5zdWJzY3JpYmUoKTtcbiAgLy8gICB9KTtcbiAgLy8gfVxuXG4gIC8vIF9lbWl0T25JdGVtQ2xpY2tFdmVudChlOiBBWENsaWNrRXZlbnQsIGl0ZW06IEFYQnV0dG9uSXRlbUNvbXBvbmVudCk6IHZvaWQge1xuICAvLyAgIHRoaXMub25JdGVtQ2xpY2suZW1pdCh7XG4gIC8vICAgICBjb21wb25lbnQ6IHRoaXMsXG4gIC8vICAgICBodG1sRWxlbWVudDogdGhpcy5fZ2V0SG9zdEVsZW1lbnQoKSxcbiAgLy8gICAgIG5hdGl2ZUV2ZW50OiBlLm5hdGl2ZUV2ZW50LFxuICAvLyAgICAgbmFtZTogaXRlbS5uYW1lLFxuICAvLyAgICAgZGF0YTogaXRlbS5kYXRhLFxuICAvLyAgIH0pO1xuICAvLyB9XG5cbiAgLy8gcHJpdmF0ZSBfaGFuZGxlT25JdGVtQ2xpY2soZTogQVhDbGlja0V2ZW50KSB7XG4gIC8vICAgdGhpcy5jbG9zZSgpO1xuICAvLyAgIHRoaXMuX2VtaXRPbkl0ZW1DbGlja0V2ZW50KGUsIGUuY29tcG9uZW50KTtcbiAgLy8gfVxufVxuIiwiPGF4LXBvcG92ZXJcbiAgW3RhcmdldF09XCJfdGFyZ2V0XCJcbiAgW3BsYWNlbWVudF09XCJfcGxhY2VtZW50XCJcbiAgW29wZW5Pbl09XCIndG9nZ2xlJ1wiXG4gIFtjbG9zZU9uXT1cIidjbGlja091dCdcIlxuICBbYWRhcHRpdml0eUVuYWJsZWRdPVwiYWRhcHRpdml0eUVuYWJsZWRcIlxuICAob25PcGVuZWQpPVwiX2hhbmRsZVBvcHVwT25PcGVuZWQoJGV2ZW50KVwiXG4gIChvbkNsb3NlZCk9XCJfaGFuZGxlUG9wdXBPbkNsb3NlZCgkZXZlbnQpXCJcbj5cbiAgPGRpdiBjbGFzcz1cImF4LW92ZXJsYXktcGFuZVwiIFtjbGFzcy5heC1kcm9wZG93bi1saXN0XT1cIl9uZWVkQm9yZGVyXCI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3BhbmVsXSxheC1idXR0b24taXRlbVwiPiA8L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9heC1wb3BvdmVyPlxuIl19
@@ -3,10 +3,10 @@ import { ChangeDetectionStrategy, Component, ViewEncapsulation, } from '@angular
3
3
  import * as i0 from "@angular/core";
4
4
  export class AXFormFieldComponent extends MXBaseComponent {
5
5
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXFormFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
6
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.9", type: AXFormFieldComponent, selector: "ax-form-field", usesInheritance: true, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [".ax-dark ax-form.ax-form-normal .ax-error-message{background:rgba(var(--ax-color-danger-900));border-color:rgba(var(--ax-color-danger-700));color:rgba(var(--ax-color-danger-100))}.ax-dark ax-form.ax-form-normal .ax-error-message:before,.ax-dark ax-form.ax-form-normal .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-900))}.ax-dark ax-form.ax-form-normal .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-700))}.ax-dark ax-form form.ax-float-error .ax-error-message{background:rgba(var(--ax-color-danger-800));color:rgba(var(--ax-color-danger-fore));border-color:rgba(var(--ax-color-danger-950))}.ax-dark ax-form form.ax-float-error .ax-error-message:before,.ax-dark ax-form form.ax-float-error .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-800))}.ax-dark ax-form form.ax-float-error .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-800))}ax-form-field{position:relative}ax-form-field .ax-error-message{font-size:.75rem}form.ax-bottom-error .ax-error-message{color:rgba(var(--ax-color-danger-500))}form.ax-float-error .ax-error-message{position:absolute;display:block;border:1px solid;background:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-700));border-radius:.375rem;border-color:rgba(var(--ax-color-danger-200));z-index:10;padding:.25rem .5rem;bottom:-2.25rem;font-weight:400;width:-moz-fit-content;width:fit-content}form.ax-float-error .ax-error-message:before,form.ax-float-error .ax-error-message:after{position:absolute;bottom:100%;inset-inline-start:10px;z-index:15;width:0;height:0;pointer-events:none;content:\" \";border:solid transparent;border-bottom-color:rgba(var(--ax-color-danger-100))}form.ax-float-error .ax-error-message:before{margin-inline-start:-1px;border-width:.375rem;border-bottom-color:rgba(var(--ax-color-danger-200))}form.ax-float-error .ax-error-message:after{border-width:5px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
6
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.9", type: AXFormFieldComponent, selector: "ax-form-field", usesInheritance: true, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [".ax-dark ax-form.ax-form-normal .ax-error-message{background:rgba(var(--ax-color-danger-900));border-color:rgba(var(--ax-color-danger-700));color:rgba(var(--ax-color-danger-100))}.ax-dark ax-form.ax-form-normal .ax-error-message:before,.ax-dark ax-form.ax-form-normal .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-900))}.ax-dark ax-form.ax-form-normal .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-700))}.ax-dark ax-form form.ax-float-error .ax-error-message{background:rgba(var(--ax-color-danger-800));color:rgba(var(--ax-color-danger-fore));border-color:rgba(var(--ax-color-danger-950))}.ax-dark ax-form form.ax-float-error .ax-error-message:before,.ax-dark ax-form form.ax-float-error .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-800))}.ax-dark ax-form form.ax-float-error .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-800))}ax-form-field{position:relative;display:block}ax-form-field .ax-error-message{display:block;font-size:.75rem;margin:.25rem 0}form.ax-bottom-error .ax-error-message{color:rgba(var(--ax-color-danger-500))}form.ax-float-error .ax-error-message{position:absolute;display:block;border:1px solid;background:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-700));border-radius:.375rem;border-color:rgba(var(--ax-color-danger-200));z-index:10;padding:.25rem .5rem;bottom:-2.25rem;font-weight:400;width:-moz-fit-content;width:fit-content}form.ax-float-error .ax-error-message:before,form.ax-float-error .ax-error-message:after{position:absolute;bottom:100%;inset-inline-start:10px;z-index:15;width:0;height:0;pointer-events:none;content:\" \";border:solid transparent;border-bottom-color:rgba(var(--ax-color-danger-100))}form.ax-float-error .ax-error-message:before{margin-inline-start:-1px;border-width:.375rem;border-bottom-color:rgba(var(--ax-color-danger-200))}form.ax-float-error .ax-error-message:after{border-width:5px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
7
7
  }
8
8
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXFormFieldComponent, decorators: [{
9
9
  type: Component,
10
- args: [{ selector: 'ax-form-field', template: `<ng-content></ng-content>`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".ax-dark ax-form.ax-form-normal .ax-error-message{background:rgba(var(--ax-color-danger-900));border-color:rgba(var(--ax-color-danger-700));color:rgba(var(--ax-color-danger-100))}.ax-dark ax-form.ax-form-normal .ax-error-message:before,.ax-dark ax-form.ax-form-normal .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-900))}.ax-dark ax-form.ax-form-normal .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-700))}.ax-dark ax-form form.ax-float-error .ax-error-message{background:rgba(var(--ax-color-danger-800));color:rgba(var(--ax-color-danger-fore));border-color:rgba(var(--ax-color-danger-950))}.ax-dark ax-form form.ax-float-error .ax-error-message:before,.ax-dark ax-form form.ax-float-error .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-800))}.ax-dark ax-form form.ax-float-error .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-800))}ax-form-field{position:relative}ax-form-field .ax-error-message{font-size:.75rem}form.ax-bottom-error .ax-error-message{color:rgba(var(--ax-color-danger-500))}form.ax-float-error .ax-error-message{position:absolute;display:block;border:1px solid;background:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-700));border-radius:.375rem;border-color:rgba(var(--ax-color-danger-200));z-index:10;padding:.25rem .5rem;bottom:-2.25rem;font-weight:400;width:-moz-fit-content;width:fit-content}form.ax-float-error .ax-error-message:before,form.ax-float-error .ax-error-message:after{position:absolute;bottom:100%;inset-inline-start:10px;z-index:15;width:0;height:0;pointer-events:none;content:\" \";border:solid transparent;border-bottom-color:rgba(var(--ax-color-danger-100))}form.ax-float-error .ax-error-message:before{margin-inline-start:-1px;border-width:.375rem;border-bottom-color:rgba(var(--ax-color-danger-200))}form.ax-float-error .ax-error-message:after{border-width:5px}\n"] }]
10
+ args: [{ selector: 'ax-form-field', template: `<ng-content></ng-content>`, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".ax-dark ax-form.ax-form-normal .ax-error-message{background:rgba(var(--ax-color-danger-900));border-color:rgba(var(--ax-color-danger-700));color:rgba(var(--ax-color-danger-100))}.ax-dark ax-form.ax-form-normal .ax-error-message:before,.ax-dark ax-form.ax-form-normal .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-900))}.ax-dark ax-form.ax-form-normal .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-700))}.ax-dark ax-form form.ax-float-error .ax-error-message{background:rgba(var(--ax-color-danger-800));color:rgba(var(--ax-color-danger-fore));border-color:rgba(var(--ax-color-danger-950))}.ax-dark ax-form form.ax-float-error .ax-error-message:before,.ax-dark ax-form form.ax-float-error .ax-error-message:after{border-bottom-color:rgba(var(--ax-color-danger-800))}.ax-dark ax-form form.ax-float-error .ax-error-message:before{border-bottom-color:rgba(var(--ax-color-danger-800))}ax-form-field{position:relative;display:block}ax-form-field .ax-error-message{display:block;font-size:.75rem;margin:.25rem 0}form.ax-bottom-error .ax-error-message{color:rgba(var(--ax-color-danger-500))}form.ax-float-error .ax-error-message{position:absolute;display:block;border:1px solid;background:rgba(var(--ax-color-danger-100));color:rgba(var(--ax-color-danger-700));border-radius:.375rem;border-color:rgba(var(--ax-color-danger-200));z-index:10;padding:.25rem .5rem;bottom:-2.25rem;font-weight:400;width:-moz-fit-content;width:fit-content}form.ax-float-error .ax-error-message:before,form.ax-float-error .ax-error-message:after{position:absolute;bottom:100%;inset-inline-start:10px;z-index:15;width:0;height:0;pointer-events:none;content:\" \";border:solid transparent;border-bottom-color:rgba(var(--ax-color-danger-100))}form.ax-float-error .ax-error-message:before{margin-inline-start:-1px;border-width:.375rem;border-bottom-color:rgba(var(--ax-color-danger-200))}form.ax-float-error .ax-error-message:after{border-width:5px}\n"] }]
11
11
  }] });
12
12
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZm9ybS9zcmMvbGliL2Zvcm0tZmllbGQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7O0FBU3ZCLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxlQUFlOzhHQUE1QyxvQkFBb0I7a0dBQXBCLG9CQUFvQiw0RUFMckIsMkJBQTJCOzsyRkFLMUIsb0JBQW9CO2tCQVBoQyxTQUFTOytCQUNFLGVBQWUsWUFDZiwyQkFBMkIsaUJBRXRCLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNWEJhc2VDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtZm9ybS1maWVsZCcsXG4gIHRlbXBsYXRlOiBgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PmAsXG4gIHN0eWxlVXJsczogWycuL2Zvcm0tZmllbGQuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEFYRm9ybUZpZWxkQ29tcG9uZW50IGV4dGVuZHMgTVhCYXNlQ29tcG9uZW50IHtcbn1cbiJdfQ==
@@ -30,13 +30,13 @@ export class AXLabelComponent extends MXBaseComponent {
30
30
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXLabelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
31
31
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.9", type: AXLabelComponent, selector: "ax-label", inputs: { required: "required" }, outputs: { requiredChange: "requiredChange" }, providers: [
32
32
  { provide: MXBaseComponent, useExisting: AXLabelComponent }
33
- ], usesInheritance: true, ngImport: i0, template: "<label [attr.for]=\"target\">\n <ng-content></ng-content>\n <span class=\"ax-state-required\" *ngIf=\"required\">&nbsp;*</span>\n</label>", styles: ["ax-label label{display:block;font-weight:500;font-size:.875rem;cursor:inherit;margin-bottom:.25rem;color:rgba(var(--ax-color-text-default))}ax-label label .ax-state-required{color:rgba(var(--ax-color-danger-500))}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
33
+ ], usesInheritance: true, ngImport: i0, template: "<label [attr.for]=\"target\">\n <ng-content></ng-content>\n <span class=\"ax-state-required\" *ngIf=\"required\">&nbsp;*</span>\n</label>", styles: ["ax-label label{display:block;font-weight:500;font-size:.875rem;cursor:inherit;margin-bottom:.5rem;color:rgba(var(--ax-color-text-default))}ax-label label .ax-state-required{color:rgba(var(--ax-color-danger-500))}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
34
34
  }
35
35
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXLabelComponent, decorators: [{
36
36
  type: Component,
37
37
  args: [{ selector: 'ax-label', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
38
38
  { provide: MXBaseComponent, useExisting: AXLabelComponent }
39
- ], template: "<label [attr.for]=\"target\">\n <ng-content></ng-content>\n <span class=\"ax-state-required\" *ngIf=\"required\">&nbsp;*</span>\n</label>", styles: ["ax-label label{display:block;font-weight:500;font-size:.875rem;cursor:inherit;margin-bottom:.25rem;color:rgba(var(--ax-color-text-default))}ax-label label .ax-state-required{color:rgba(var(--ax-color-danger-500))}\n"] }]
39
+ ], template: "<label [attr.for]=\"target\">\n <ng-content></ng-content>\n <span class=\"ax-state-required\" *ngIf=\"required\">&nbsp;*</span>\n</label>", styles: ["ax-label label{display:block;font-weight:500;font-size:.875rem;cursor:inherit;margin-bottom:.5rem;color:rgba(var(--ax-color-text-default))}ax-label label .ax-state-required{color:rgba(var(--ax-color-danger-500))}\n"] }]
40
40
  }], propDecorators: { requiredChange: [{
41
41
  type: Output
42
42
  }], required: [{
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvbXBvbmVudHMtbGlzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9saXN0L3NyYy9hY29yZXgtY29tcG9uZW50cy1saXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -0,0 +1,3 @@
1
+ export * from './lib/list.component';
2
+ export * from './lib/list.module';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvbGlzdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbGlzdC5tb2R1bGUnO1xuIl19
@@ -0,0 +1,221 @@
1
+ import { Component, ViewEncapsulation, ChangeDetectionStrategy, Input, TemplateRef, HostBinding, HostListener, forwardRef } from '@angular/core';
2
+ import { MXSelectionValueComponent, AXComponent, AXFocusableComponent, AXValuableComponent } from '@acorex/components/common';
3
+ import { BehaviorSubject, Subscription, debounceTime, distinctUntilChanged } from 'rxjs';
4
+ import { DataSource } from '@angular/cdk/collections';
5
+ import { CdkVirtualScrollableElement } from '@angular/cdk/scrolling';
6
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/cdk/scrolling";
9
+ import * as i2 from "@angular/common";
10
+ export class AXListDataSource extends DataSource {
11
+ get cachedItems() {
12
+ return this._cachedData || [];
13
+ }
14
+ /**
15
+ * @ignore
16
+ */
17
+ constructor(config) {
18
+ super();
19
+ this.config = config;
20
+ this.pageSize = 20;
21
+ this.debounceTime = 300;
22
+ this._cachedData = new Array(this.config.pageSize);
23
+ this.fetchedPages = new Set();
24
+ this.subscription = new Subscription();
25
+ this.initiated = false;
26
+ this.dataStream = new BehaviorSubject(this._cachedData);
27
+ this.loadingState = new BehaviorSubject(true);
28
+ this.source = config.source;
29
+ if (config.pageSize)
30
+ this.pageSize = config.pageSize;
31
+ if (config.debounceTime)
32
+ this.debounceTime = config.debounceTime;
33
+ }
34
+ connect(collectionViewer) {
35
+ this.subscription.add(collectionViewer.viewChange
36
+ .pipe(debounceTime(this.debounceTime))
37
+ .pipe(distinctUntilChanged())
38
+ .subscribe(range => {
39
+ const startPage = this.getPageForIndex(range.start);
40
+ const endPage = this.getPageForIndex(range.end - 1);
41
+ for (let i = startPage; i <= endPage; i++) {
42
+ this.fetchPage(i);
43
+ }
44
+ }));
45
+ return this.dataStream;
46
+ }
47
+ disconnect() {
48
+ this.subscription.unsubscribe();
49
+ }
50
+ getPageForIndex(index) {
51
+ return Math.floor(index / this.pageSize);
52
+ }
53
+ fetchPage(page) {
54
+ if (this.fetchedPages.has(page)) {
55
+ return;
56
+ }
57
+ this.loadingState.next(true);
58
+ this.fetchedPages.add(page);
59
+ if (Array.isArray(this.source)) {
60
+ this._cachedData = this.source;
61
+ this.dataStream.next(this._cachedData);
62
+ this.loadingState.next(false);
63
+ }
64
+ else if (typeof this.source == 'function') {
65
+ const promise = this.source({
66
+ take: this.pageSize,
67
+ skip: this.pageSize * page
68
+ });
69
+ promise.then(result => {
70
+ if (!this.initiated) {
71
+ this._cachedData = new Array(result.total);
72
+ this.initiated = true;
73
+ }
74
+ this._cachedData.splice(page * this.pageSize, this.pageSize, ...result.items);
75
+ this.dataStream.next(this._cachedData);
76
+ }).finally(() => {
77
+ this.loadingState.next(false);
78
+ });
79
+ }
80
+ }
81
+ }
82
+ export class AXListComponent extends MXSelectionValueComponent {
83
+ constructor() {
84
+ super(...arguments);
85
+ this.source = [];
86
+ this.itemHeight = 40;
87
+ this.checkbox = true;
88
+ this.isLoading = true;
89
+ this.hasItems = false;
90
+ }
91
+ trackByIdx(i) {
92
+ return i;
93
+ }
94
+ ngOnInit() {
95
+ super.ngOnInit();
96
+ this.dataSource = new AXListDataSource({
97
+ source: this.source
98
+ });
99
+ this.dataSource.loadingState.subscribe(data => {
100
+ this.isLoading = data;
101
+ });
102
+ this.dataSource.dataStream.subscribe(data => {
103
+ this.hasItems = data.length > 0;
104
+ });
105
+ }
106
+ ngAfterViewInit() {
107
+ super.ngAfterViewInit();
108
+ }
109
+ _handleOnItemClick(e, item) {
110
+ if (this.readonly || this.disabled) {
111
+ e.preventDefault();
112
+ e.stopPropagation();
113
+ return;
114
+ }
115
+ if (this.isItemDisabled(item)) {
116
+ return;
117
+ }
118
+ this.toggleSelect(item);
119
+ }
120
+ _handleKeydown(e) {
121
+ if ((e.code === 'ArrowDown' || e.code === 'ArrowUp') && this.hasItems) {
122
+ this.focusItemByNav(e.key === 'ArrowDown' ? 1 : -1);
123
+ e.preventDefault();
124
+ }
125
+ if ((e.code === 'Space' || e.code === 'Enter') && this.hasItems) {
126
+ if (this.readonly || this.disabled) {
127
+ e.preventDefault();
128
+ e.stopPropagation();
129
+ return;
130
+ }
131
+ const id = document.activeElement?.closest('li')?.dataset?.id;
132
+ this.toggleSelect(id);
133
+ e.preventDefault();
134
+ e.stopPropagation();
135
+ }
136
+ }
137
+ focusItemByNav(sign) {
138
+ const list = this.getHostElement().querySelector('ul');
139
+ const fn = (s) => list.querySelector(s);
140
+ const itemDiv = document.activeElement?.closest('li') ||
141
+ fn(`li.ax-state-selected`) ||
142
+ fn(`li`);
143
+ const next = (sign == 1 ? itemDiv.nextElementSibling : itemDiv.previousElementSibling);
144
+ if (next) {
145
+ next.focus();
146
+ }
147
+ }
148
+ /**
149
+ * @ignore
150
+ */
151
+ get __hostClass() {
152
+ const _class = `ax-default`;
153
+ return this.itemTemplate ? '' : _class;
154
+ }
155
+ getItemByKey(key) {
156
+ const cachedItem = this.dataSource.cachedItems.find(c => c && c[this.valueField] == key);
157
+ return cachedItem || { [this.valueField]: key, [this.textField]: key };
158
+ }
159
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXListComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
160
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.9", type: AXListComponent, selector: "ax-list", inputs: { id: "id", name: "name", disabled: "disabled", readonly: "readonly", valueField: "valueField", textField: "textField", disabledField: "disabledField", multiple: "multiple", source: "source", itemHeight: "itemHeight", itemTemplate: "itemTemplate", emptyTemplate: "emptyTemplate", loadingTemplate: "loadingTemplate", checkbox: "checkbox" }, outputs: { onValueChanged: "onValueChanged", disabledChange: "disabledChange", readOnlyChange: "readOnlyChange", onBlur: "onBlur", onFocus: "onFocus" }, host: { listeners: { "keydown": "_handleKeydown($event)" }, properties: { "class": "this.__hostClass" } }, providers: [
161
+ { provide: AXComponent, useExisting: AXListComponent },
162
+ { provide: AXFocusableComponent, useExisting: AXListComponent },
163
+ { provide: AXValuableComponent, useExisting: AXListComponent },
164
+ {
165
+ provide: NG_VALUE_ACCESSOR,
166
+ useExisting: forwardRef(() => AXListComponent),
167
+ multi: true,
168
+ },
169
+ ], usesInheritance: true, hostDirectives: [{ directive: i1.CdkVirtualScrollableElement }], ngImport: i0, template: "<ng-content select=\"ax-header\"></ng-content>\n<cdk-virtual-scroll-viewport [itemSize]=\"itemHeight\" [style.--item-height]=\"itemHeight+'px'\"\n class=\"ax-list-items-container\">\n <ul>\n <!-- Item Template -->\n <ng-container *cdkVirtualFor=\"let item of dataSource;let i = index; trackBy: trackByIdx\">\n <ng-container *ngIf=\"item;else loadingTpl\">\n <li [class.ax-state-selected]=\"isItemSelected(item)\" [class.ax-state-disabled]=\"isItemDisabled(item)\"\n [attr.tabindex]=\"i\" (click)=\"_handleOnItemClick($event, item)\" [attr.data-id]=\"item\">\n <!-- Custom Item Template -->\n <ng-container *ngIf=\"itemTemplate;else defaultItemTpl\">\n <ng-container *ngTemplateOutlet=\"itemTemplate;context: { $implicit: { data:item } }\">\n </ng-container>\n </ng-container>\n <!-- Default Item Template -->\n <ng-template #defaultItemTpl>\n <ng-container *ngIf=\"item;else loadingTpl\">\n <div class=\"ax-label-container\">\n <input class=\"ax-checkbox\" *ngIf=\"multiple && checkbox\" type=\"checkbox\"\n [checked]=\"isItemSelected(item)\" [disabled]=\"isItemDisabled(item)\" tabindex=\"0\" />\n <span [class.ax-checkbox-label]=\"multiple && checkbox\">{{getDisplayText(item)}}</span>\n </div>\n <i class=\"ax-icon ax-icon-done ax-selected-icon\" *ngIf=\"isItemSelected(item) \"></i>\n </ng-container>\n </ng-template>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n</cdk-virtual-scroll-viewport>\n<!-- Empty Template -->\n<ng-container *ngIf=\"emptyTemplate && !hasItems && isLoading===false\">\n <ng-container *ngTemplateOutlet=\"emptyTemplate\"></ng-container>\n</ng-container>\n<!-- Loading Template -->\n<ng-template #loadingTpl>\n <!-- Custom Loading Template -->\n <ng-container *ngIf=\"loadingTemplate;else defaultLoadingTpl\">\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\n </ng-container>\n </ng-container>\n <!-- Default Loading Template -->\n <ng-template #defaultLoadingTpl>\n <li>Loading...</li>\n </ng-template>\n</ng-template>\n<ng-content select=\"ax-footer\"></ng-content>", styles: ["ax-list{width:100%;height:100%;display:flex;flex-direction:column}ax-list.ax-default .cdk-virtual-scroll-viewport li{padding-inline-start:.75rem;padding-inline-end:1rem;position:relative;height:var(--ax-size-default);display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none;cursor:pointer}ax-list.ax-default .cdk-virtual-scroll-viewport li:focus,ax-list.ax-default .cdk-virtual-scroll-viewport li:focus-within,ax-list.ax-default .cdk-virtual-scroll-viewport li:focus-visible{outline:transparent;background-color:rgba(var(--ax-color-primary-100))}ax-list.ax-default .cdk-virtual-scroll-viewport li .ax-label-container{display:flex;align-items:center}ax-list.ax-default .cdk-virtual-scroll-viewport li .ax-checkbox-label{margin-inline-start:.5rem}ax-list.ax-default .cdk-virtual-scroll-viewport li .ax-selected-icon{color:rgba(var(--ax-color-primary-500));font-size:1.5rem}ax-list.ax-default .cdk-virtual-scroll-viewport li.ax-state-selected:not(ax-list.ax-default .cdk-virtual-scroll-viewport li:focus,ax-list.ax-default .cdk-virtual-scroll-viewport li:focus-within,ax-list.ax-default .cdk-virtual-scroll-viewport li:focus-visible){background-color:rgba(var(--ax-color-default))!important;color:rgba(var(--ax-color-default-fore))!important}ax-list.ax-default .cdk-virtual-scroll-viewport li.ax-state-disabled{cursor:not-allowed;opacity:.5}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i1.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i1.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
170
+ }
171
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXListComponent, decorators: [{
172
+ type: Component,
173
+ args: [{ selector: 'ax-list', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, inputs: [
174
+ 'id',
175
+ 'name',
176
+ 'disabled',
177
+ 'readonly',
178
+ 'valueField',
179
+ 'textField',
180
+ 'disabledField',
181
+ 'multiple'
182
+ ], outputs: [
183
+ 'onValueChanged',
184
+ 'disabledChange',
185
+ 'readOnlyChange',
186
+ 'onBlur',
187
+ 'onFocus'
188
+ ], hostDirectives: [
189
+ {
190
+ directive: CdkVirtualScrollableElement
191
+ }
192
+ ], providers: [
193
+ { provide: AXComponent, useExisting: AXListComponent },
194
+ { provide: AXFocusableComponent, useExisting: AXListComponent },
195
+ { provide: AXValuableComponent, useExisting: AXListComponent },
196
+ {
197
+ provide: NG_VALUE_ACCESSOR,
198
+ useExisting: forwardRef(() => AXListComponent),
199
+ multi: true,
200
+ },
201
+ ], template: "<ng-content select=\"ax-header\"></ng-content>\n<cdk-virtual-scroll-viewport [itemSize]=\"itemHeight\" [style.--item-height]=\"itemHeight+'px'\"\n class=\"ax-list-items-container\">\n <ul>\n <!-- Item Template -->\n <ng-container *cdkVirtualFor=\"let item of dataSource;let i = index; trackBy: trackByIdx\">\n <ng-container *ngIf=\"item;else loadingTpl\">\n <li [class.ax-state-selected]=\"isItemSelected(item)\" [class.ax-state-disabled]=\"isItemDisabled(item)\"\n [attr.tabindex]=\"i\" (click)=\"_handleOnItemClick($event, item)\" [attr.data-id]=\"item\">\n <!-- Custom Item Template -->\n <ng-container *ngIf=\"itemTemplate;else defaultItemTpl\">\n <ng-container *ngTemplateOutlet=\"itemTemplate;context: { $implicit: { data:item } }\">\n </ng-container>\n </ng-container>\n <!-- Default Item Template -->\n <ng-template #defaultItemTpl>\n <ng-container *ngIf=\"item;else loadingTpl\">\n <div class=\"ax-label-container\">\n <input class=\"ax-checkbox\" *ngIf=\"multiple && checkbox\" type=\"checkbox\"\n [checked]=\"isItemSelected(item)\" [disabled]=\"isItemDisabled(item)\" tabindex=\"0\" />\n <span [class.ax-checkbox-label]=\"multiple && checkbox\">{{getDisplayText(item)}}</span>\n </div>\n <i class=\"ax-icon ax-icon-done ax-selected-icon\" *ngIf=\"isItemSelected(item) \"></i>\n </ng-container>\n </ng-template>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n</cdk-virtual-scroll-viewport>\n<!-- Empty Template -->\n<ng-container *ngIf=\"emptyTemplate && !hasItems && isLoading===false\">\n <ng-container *ngTemplateOutlet=\"emptyTemplate\"></ng-container>\n</ng-container>\n<!-- Loading Template -->\n<ng-template #loadingTpl>\n <!-- Custom Loading Template -->\n <ng-container *ngIf=\"loadingTemplate;else defaultLoadingTpl\">\n <ng-container *ngTemplateOutlet=\"loadingTemplate\">\n </ng-container>\n </ng-container>\n <!-- Default Loading Template -->\n <ng-template #defaultLoadingTpl>\n <li>Loading...</li>\n </ng-template>\n</ng-template>\n<ng-content select=\"ax-footer\"></ng-content>", styles: ["ax-list{width:100%;height:100%;display:flex;flex-direction:column}ax-list.ax-default .cdk-virtual-scroll-viewport li{padding-inline-start:.75rem;padding-inline-end:1rem;position:relative;height:var(--ax-size-default);display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none;cursor:pointer}ax-list.ax-default .cdk-virtual-scroll-viewport li:focus,ax-list.ax-default .cdk-virtual-scroll-viewport li:focus-within,ax-list.ax-default .cdk-virtual-scroll-viewport li:focus-visible{outline:transparent;background-color:rgba(var(--ax-color-primary-100))}ax-list.ax-default .cdk-virtual-scroll-viewport li .ax-label-container{display:flex;align-items:center}ax-list.ax-default .cdk-virtual-scroll-viewport li .ax-checkbox-label{margin-inline-start:.5rem}ax-list.ax-default .cdk-virtual-scroll-viewport li .ax-selected-icon{color:rgba(var(--ax-color-primary-500));font-size:1.5rem}ax-list.ax-default .cdk-virtual-scroll-viewport li.ax-state-selected:not(ax-list.ax-default .cdk-virtual-scroll-viewport li:focus,ax-list.ax-default .cdk-virtual-scroll-viewport li:focus-within,ax-list.ax-default .cdk-virtual-scroll-viewport li:focus-visible){background-color:rgba(var(--ax-color-default))!important;color:rgba(var(--ax-color-default-fore))!important}ax-list.ax-default .cdk-virtual-scroll-viewport li.ax-state-disabled{cursor:not-allowed;opacity:.5}\n"] }]
202
+ }], propDecorators: { source: [{
203
+ type: Input
204
+ }], itemHeight: [{
205
+ type: Input
206
+ }], itemTemplate: [{
207
+ type: Input
208
+ }], emptyTemplate: [{
209
+ type: Input
210
+ }], loadingTemplate: [{
211
+ type: Input
212
+ }], checkbox: [{
213
+ type: Input
214
+ }], _handleKeydown: [{
215
+ type: HostListener,
216
+ args: ['keydown', ['$event']]
217
+ }], __hostClass: [{
218
+ type: HostBinding,
219
+ args: ['class']
220
+ }] } });
221
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC9zcmMvbGliL2xpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xpc3Qvc3JjL2xpYi9saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQXlCLEtBQUssRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEssT0FBTyxFQUFrRCx5QkFBeUIsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5SyxPQUFPLEVBQUUsZUFBZSxFQUFjLFlBQVksRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQU0sTUFBTSxNQUFNLENBQUM7QUFDekcsT0FBTyxFQUFvQixVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUduRCxNQUFNLE9BQU8sZ0JBQTBCLFNBQVEsVUFBYTtJQVd4RCxJQUFXLFdBQVc7UUFDbEIsT0FBTyxJQUFJLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBSUQ7O09BRUc7SUFDSCxZQUFtQixNQUE2RTtRQUM1RixLQUFLLEVBQUUsQ0FBQztRQURPLFdBQU0sR0FBTixNQUFNLENBQXVFO1FBbkJ4RixhQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2QsaUJBQVksR0FBRyxHQUFHLENBQUM7UUFDbkIsZ0JBQVcsR0FBUSxJQUFJLEtBQUssQ0FBQyxJQUFJLENB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RSxXQUFXLGlCQUFpQixFQUFFO3dCQUN0RCxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxXQUFXLGlCQUFpQixFQUFFO3dCQUMvRCxFQUFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLGlCQUFpQixFQUFFO3dCQUM5RDs0QkFDSSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxnQkFBZ0IsQ0FBQzs0QkFDOUMsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0o7OEJBS0QsTUFBTTtzQkFETCxLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBSU4sYUFBYTtzQkFEWixLQUFLO2dCQUlOLGVBQWU7c0JBRGQsS0FBSztnQkFLTixRQUFRO3NCQURQLEtBQUs7Z0JBMENOLGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBcUMvQixXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24sIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBPbkluaXQsIEFmdGVyVmlld0luaXQsIElucHV0LCBUZW1wbGF0ZVJlZiwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhEYXRhTGlzdEZldGNoQ2FsbGJhY2tSZXN1bHQsIEFYRGF0YUxpc3RJdGVtcywgTVhTZWxlY3Rpb25WYWx1ZUNvbXBvbmVudCwgQVhDb21wb25lbnQsIEFYRm9jdXNhYmxlQ29tcG9uZW50LCBBWFZhbHVhYmxlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbW1vbic7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiwgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbGxlY3Rpb25WaWV3ZXIsIERhdGFTb3VyY2UgfSBmcm9tICdAYW5ndWxhci9jZGsvY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgQ2RrVmlydHVhbFNjcm9sbGFibGVFbGVtZW50IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuXG5leHBvcnQgY2xhc3MgQVhMaXN0RGF0YVNvdXJjZTxUID0gYW55PiBleHRlbmRzIERhdGFTb3VyY2U8VD4ge1xuICAgIHByaXZhdGUgcGFnZVNpemUgPSAyMDtcbiAgICBwcml2YXRlIGRlYm91bmNlVGltZSA9IDMwMDtcbiAgICBwcml2YXRlIF9jYWNoZWREYXRhOiBUW10gPSBuZXcgQXJyYXkodGhpcy5jb25maWcucGFnZVNpemUpO1xuICAgIHByaXZhdGUgZmV0Y2hlZFBhZ2VzID0gbmV3IFNldDxudW1iZXI+KCk7XG4gICAgcHJpdmF0ZSBzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG4gICAgcHJpdmF0ZSBpbml0aWF0ZWQgPSBmYWxzZTtcbiAgICBwcml2YXRlIHNvdXJjZTogQVhEYXRhTGlzdEl0ZW1zO1xuXG4gICAgcHVibGljIGRhdGFTdHJlYW0gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRbXT4odGhpcy5fY2FjaGVkRGF0YSk7XG4gICAgcHVibGljIGxvYWRpbmdTdGF0ZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG4gICAgcHVibGljIGdldCBjYWNoZWRJdGVtcygpOiBUW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5fY2FjaGVkRGF0YSB8fCBbXTtcbiAgICB9XG5cblxuXG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBjb25maWc6IHsgc291cmNlOiBBWERhdGFMaXN0SXRlbXMsIHBhZ2VTaXplPzogbnVtYmVyLCBkZWJvdW5jZVRpbWU/OiBudW1iZXIgfSkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLnNvdXJjZSA9IGNvbmZpZy5zb3VyY2U7XG4gICAgICAgIGlmIChjb25maWcucGFnZVNpemUpXG4gICAgICAgICAgICB0aGlzLnBhZ2VTaXplID0gY29uZmlnLnBhZ2VTaXplO1xuICAgICAgICBpZiAoY29uZmlnLmRlYm91bmNlVGltZSlcbiAgICAgICAgICAgIHRoaXMuZGVib3VuY2VUaW1lID0gY29uZmlnLmRlYm91bmNlVGltZTtcbiAgICB9XG5cbiAgICBjb25uZWN0KGNvbGxlY3Rpb25WaWV3ZXI6IENvbGxlY3Rpb25WaWV3ZXIpOiBPYnNlcnZhYmxlPFRbXT4ge1xuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoXG4gICAgICAgICAgICBjb2xsZWN0aW9uVmlld2VyLnZpZXdDaGFuZ2VcbiAgICAgICAgICAgICAgICAucGlwZShkZWJvdW5jZVRpbWUodGhpcy5kZWJvdW5jZVRpbWUpKVxuICAgICAgICAgICAgICAgIC5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZShyYW5nZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0YXJ0UGFnZSA9IHRoaXMuZ2V0UGFnZUZvckluZGV4KHJhbmdlLnN0YXJ0KTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZW5kUGFnZSA9IHRoaXMuZ2V0UGFnZUZvckluZGV4KHJhbmdlLmVuZCAtIDEpO1xuICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gc3RhcnRQYWdlOyBpIDw9IGVuZFBhZ2U7IGkrKykge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5mZXRjaFBhZ2UoaSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGFTdHJlYW07XG4gICAgfVxuXG4gICAgZGlzY29ubmVjdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFBhZ2VGb3JJbmRleChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIE1hdGguZmxvb3IoaW5kZXggLyB0aGlzLnBhZ2VTaXplKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZldGNoUGFnZShwYWdlOiBudW1iZXIpIHtcbiAgICAgICAgaWYgKHRoaXMuZmV0Y2hlZFBhZ2VzLmhhcyhwYWdlKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubG9hZGluZ1N0YXRlLm5leHQodHJ1ZSk7XG4gICAgICAgIHRoaXMuZmV0Y2hlZFBhZ2VzLmFkZChwYWdlKTtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5zb3VyY2UpKSB7XG4gICAgICAgICAgICB0aGlzLl9jYWNoZWREYXRhID0gdGhpcy5zb3VyY2U7XG4gICAgICAgICAgICB0aGlzLmRhdGFTdHJlYW0ubmV4dCh0aGlzLl9jYWNoZWREYXRhKTtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZ1N0YXRlLm5leHQoZmFsc2UpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKHR5cGVvZiB0aGlzLnNvdXJjZSA9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICBjb25zdCBwcm9taXNlID0gdGhpcy5zb3VyY2Uoe1xuICAgICAgICAgICAgICAgIHRha2U6IHRoaXMucGFnZVNpemUsXG4gICAgICAgICAgICAgICAgc2tpcDogdGhpcy5wYWdlU2l6ZSAqIHBhZ2VcbiAgICAgICAgICAgIH0pIGFzIFByb21pc2U8QVhEYXRhTGlzdEZldGNoQ2FsbGJhY2tSZXN1bHQ+O1xuICAgICAgICAgICAgcHJvbWlzZS50aGVuKHJlc3VsdCA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLmluaXRpYXRlZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jYWNoZWREYXRhID0gbmV3IEFycmF5KHJlc3VsdC50b3RhbCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW5pdGlhdGVkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5fY2FjaGVkRGF0YS5zcGxpY2UocGFnZSAqIHRoaXMucGFnZVNpemUsIHRoaXMucGFnZVNpemUsXG4gICAgICAgICAgICAgICAgICAgIC4uLnJlc3VsdC5pdGVtcyk7XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhU3RyZWFtLm5leHQodGhpcy5fY2FjaGVkRGF0YSk7XG4gICAgICAgICAgICB9KS5maW5hbGx5KCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmdTdGF0ZS5uZXh0KGZhbHNlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXgtbGlzdCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2xpc3QuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2xpc3QuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGlucHV0czogW1xuICAgICAgICAnaWQnLFxuICAgICAgICAnbmFtZScsXG4gICAgICAgICdkaXNhYmxlZCcsXG4gICAgICAgICdyZWFkb25seScsXG4gICAgICAgICd2YWx1ZUZpZWxkJyxcbiAgICAgICAgJ3RleHRGaWVsZCcsXG4gICAgICAgICdkaXNhYmxlZEZpZWxkJyxcbiAgICAgICAgJ211bHRpcGxlJ1xuICAgIF0sXG4gICAgb3V0cHV0czogW1xuICAgICAgICAnb25WYWx1ZUNoYW5nZWQnLFxuICAgICAgICAnZGlzYWJsZWRDaGFuZ2UnLFxuICAgICAgICAncmVhZE9ubHlDaGFuZ2UnLFxuICAgICAgICAnb25CbHVyJyxcbiAgICAgICAgJ29uRm9jdXMnXG4gICAgXSxcbiAgICBob3N0RGlyZWN0aXZlczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBkaXJlY3RpdmU6IENka1ZpcnR1YWxTY3JvbGxhYmxlRWxlbWVudFxuICAgICAgICB9XG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBBWENvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYTGlzdENvbXBvbmVudCB9LFxuICAgICAgICB7IHByb3ZpZGU6IEFYRm9jdXNhYmxlQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhMaXN0Q29tcG9uZW50IH0sXG4gICAgICAgIHsgcHJvdmlkZTogQVhWYWx1YWJsZUNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYTGlzdENvbXBvbmVudCB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEFYTGlzdENvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWExpc3RDb21wb25lbnQgZXh0ZW5kcyBNWFNlbGVjdGlvblZhbHVlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcblxuICAgIEBJbnB1dCgpXG4gICAgc291cmNlOiBBWERhdGFMaXN0SXRlbXMgPSBbXTtcblxuICAgIEBJbnB1dCgpXG4gICAgaXRlbUhlaWdodDogbnVtYmVyIHwgJ2F1dG8nID0gNDA7XG5cbiAgICBASW5wdXQoKVxuICAgIGl0ZW1UZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj5cblxuICAgIEBJbnB1dCgpXG4gICAgZW1wdHlUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj5cblxuICAgIEBJbnB1dCgpXG4gICAgbG9hZGluZ1RlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPlxuXG5cbiAgICBASW5wdXQoKVxuICAgIGNoZWNrYm94ID0gdHJ1ZTtcblxuICAgIHByb3RlY3RlZCBkYXRhU291cmNlOiBBWExpc3REYXRhU291cmNlPHVua25vd24+O1xuICAgIHByb3RlY3RlZCBpc0xvYWRpbmcgPSB0cnVlO1xuICAgIHByb3RlY3RlZCBoYXNJdGVtcyA9IGZhbHNlO1xuXG4gICAgdHJhY2tCeUlkeChpKSB7XG4gICAgICAgIHJldHVybiBpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLmRhdGFTb3VyY2UgPSBuZXcgQVhMaXN0RGF0YVNvdXJjZTx1bmtub3duPih7XG4gICAgICAgICAgICBzb3VyY2U6IHRoaXMuc291cmNlXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmRhdGFTb3VyY2UubG9hZGluZ1N0YXRlLnN1YnNjcmliZShkYXRhID0+IHtcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZGF0YTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZS5kYXRhU3RyZWFtLnN1YnNjcmliZShkYXRhID0+IHtcbiAgICAgICAgICAgIHRoaXMuaGFzSXRlbXMgPSBkYXRhLmxlbmd0aCA+IDA7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG4gICAgfVxuXG4gICAgX2hhbmRsZU9uSXRlbUNsaWNrKGU6IE1vdXNlRXZlbnQsIGl0ZW06IGFueSkge1xuICAgICAgICBpZiAodGhpcy5yZWFkb25seSB8fCB0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmlzSXRlbURpc2FibGVkKGl0ZW0pKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy50b2dnbGVTZWxlY3QoaXRlbSk7XG4gICAgfVxuXG5cbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcbiAgICBfaGFuZGxlS2V5ZG93bihlOiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGlmICgoZS5jb2RlID09PSAnQXJyb3dEb3duJyB8fCBlLmNvZGUgPT09ICdBcnJvd1VwJykgJiYgdGhpcy5oYXNJdGVtcykge1xuICAgICAgICAgICAgdGhpcy5mb2N1c0l0ZW1CeU5hdihlLmtleSA9PT0gJ0Fycm93RG93bicgPyAxIDogLTEpO1xuICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG4gICAgICAgIGlmICgoZS5jb2RlID09PSAnU3BhY2UnIHx8IGUuY29kZSA9PT0gJ0VudGVyJykgJiYgdGhpcy5oYXNJdGVtcykge1xuICAgICAgICAgICAgaWYgKHRoaXMucmVhZG9ubHkgfHwgdGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGlkID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudD8uY2xvc2VzdCgnbGknKT8uZGF0YXNldD8uaWQ7XG4gICAgICAgICAgICB0aGlzLnRvZ2dsZVNlbGVjdChpZCk7XG4gICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIHByaXZhdGUgZm9jdXNJdGVtQnlOYXYoc2lnbjogLTEgfCAxKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGxpc3QgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcigndWwnKTtcbiAgICAgICAgY29uc3QgZm4gPSAocykgPT4gbGlzdC5xdWVyeVNlbGVjdG9yPEhUTUxEaXZFbGVtZW50PihzKTtcbiAgICAgICAgY29uc3QgaXRlbURpdjogSFRNTEVsZW1lbnQgPVxuICAgICAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudD8uY2xvc2VzdCgnbGknKSB8fFxuICAgICAgICAgICAgZm4oYGxpLmF4LXN0YXRlLXNlbGVjdGVkYCkgfHxcbiAgICAgICAgICAgIGZuKGBsaWApO1xuICAgICAgICBjb25zdCBuZXh0ID0gKHNpZ24gPT0gMSA/IGl0ZW1EaXYubmV4dEVsZW1lbnRTaWJsaW5nIDogaXRlbURpdi5wcmV2aW91c0VsZW1lbnRTaWJsaW5nKSBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgaWYgKG5leHQpIHtcbiAgICAgICAgICAgIG5leHQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqICBAaWdub3JlXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IF9faG9zdENsYXNzKCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IF9jbGFzcyA9IGBheC1kZWZhdWx0YDtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXRlbVRlbXBsYXRlID8gJycgOiBfY2xhc3M7XG4gICAgfVxuXG4gICAgZ2V0SXRlbUJ5S2V5KGtleTogdW5rbm93bik6IHVua25vd24ge1xuICAgICAgICBjb25zdCBjYWNoZWRJdGVtID0gdGhpcy5kYXRhU291cmNlLmNhY2hlZEl0ZW1zLmZpbmQoYyA9PiBjICYmIGNbdGhpcy52YWx1ZUZpZWxkXSA9PSBrZXkpO1xuICAgICAgICByZXR1cm4gY2FjaGVkSXRlbSB8fCB7IFt0aGlzLnZhbHVlRmllbGRdOiBrZXksIFt0aGlzLnRleHRGaWVsZF06IGtleSB9O1xuICAgIH1cblxufVxuIiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtaGVhZGVyXCI+PC9uZy1jb250ZW50PlxuPGNkay12aXJ0dWFsLXNjcm9sbC12aWV3cG9ydCBbaXRlbVNpemVdPVwiaXRlbUhlaWdodFwiIFtzdHlsZS4tLWl0ZW0taGVpZ2h0XT1cIml0ZW1IZWlnaHQrJ3B4J1wiXG4gICAgY2xhc3M9XCJheC1saXN0LWl0ZW1zLWNvbnRhaW5lclwiPlxuICAgIDx1bD5cbiAgICAgICAgPCEtLSAgSXRlbSBUZW1wbGF0ZSAgLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKmNka1ZpcnR1YWxGb3I9XCJsZXQgaXRlbSBvZiBkYXRhU291cmNlO2xldCBpID0gaW5kZXg7IHRyYWNrQnk6IHRyYWNrQnlJZHhcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtO2Vsc2UgbG9hZGluZ1RwbFwiPlxuICAgICAgICAgICAgICAgIDxsaSBbY2xhc3MuYXgtc3RhdGUtc2VsZWN0ZWRdPVwiaXNJdGVtU2VsZWN0ZWQoaXRlbSlcIiBbY2xhc3MuYXgtc3RhdGUtZGlzYWJsZWRdPVwiaXNJdGVtRGlzYWJsZWQoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci50YWJpbmRleF09XCJpXCIgKGNsaWNrKT1cIl9oYW5kbGVPbkl0ZW1DbGljaygkZXZlbnQsIGl0ZW0pXCIgW2F0dHIuZGF0YS1pZF09XCJpdGVtXCI+XG4gICAgICAgICAgICAgICAgICAgIDwhLS0gIEN1c3RvbSBJdGVtIFRlbXBsYXRlICAtLT5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW1UZW1wbGF0ZTtlbHNlIGRlZmF1bHRJdGVtVHBsXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlO2NvbnRleHQ6IHsgJGltcGxpY2l0OiB7IGRhdGE6aXRlbSB9IH1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPCEtLSAgRGVmYXVsdCBJdGVtIFRlbXBsYXRlICAtLT5cbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0SXRlbVRwbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtO2Vsc2UgbG9hZGluZ1RwbFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1sYWJlbC1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiYXgtY2hlY2tib3hcIiAqbmdJZj1cIm11bHRpcGxlICYmIGNoZWNrYm94XCIgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cImlzSXRlbVNlbGVjdGVkKGl0ZW0pXCIgW2Rpc2FibGVkXT1cImlzSXRlbURpc2FibGVkKGl0ZW0pXCIgdGFiaW5kZXg9XCIwXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gW2NsYXNzLmF4LWNoZWNrYm94LWxhYmVsXT1cIm11bHRpcGxlICYmIGNoZWNrYm94XCI+e3tnZXREaXNwbGF5VGV4dChpdGVtKX19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLWRvbmUgYXgtc2VsZWN0ZWQtaWNvblwiICpuZ0lmPVwiaXNJdGVtU2VsZWN0ZWQoaXRlbSkgXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L3VsPlxuPC9jZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQ+XG48IS0tICBFbXB0eSBUZW1wbGF0ZSAgLS0+XG48bmctY29udGFpbmVyICpuZ0lmPVwiZW1wdHlUZW1wbGF0ZSAmJiAhaGFzSXRlbXMgJiYgaXNMb2FkaW5nPT09ZmFsc2VcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiZW1wdHlUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG48IS0tICBMb2FkaW5nIFRlbXBsYXRlICAtLT5cbjxuZy10ZW1wbGF0ZSAjbG9hZGluZ1RwbD5cbiAgICA8IS0tICBDdXN0b20gTG9hZGluZyBUZW1wbGF0ZSAgLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxvYWRpbmdUZW1wbGF0ZTtlbHNlIGRlZmF1bHRMb2FkaW5nVHBsXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsb2FkaW5nVGVtcGxhdGVcIj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPCEtLSAgRGVmYXVsdCBMb2FkaW5nIFRlbXBsYXRlICAtLT5cbiAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRMb2FkaW5nVHBsPlxuICAgICAgICA8bGk+TG9hZGluZy4uLjwvbGk+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvbmctdGVtcGxhdGU+XG48bmctY29udGVudCBzZWxlY3Q9XCJheC1mb290ZXJcIj48L25nLWNvbnRlbnQ+Il19
@@ -0,0 +1,22 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { AXListComponent } from './list.component';
4
+ import { ScrollingModule } from '@angular/cdk/scrolling';
5
+ import * as i0 from "@angular/core";
6
+ const COMPONENT = [AXListComponent];
7
+ const MODULES = [CommonModule, ScrollingModule];
8
+ export class AXListModule {
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
10
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.9", ngImport: i0, type: AXListModule, declarations: [AXListComponent], imports: [CommonModule, ScrollingModule], exports: [AXListComponent] }); }
11
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXListModule, imports: [MODULES] }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.9", ngImport: i0, type: AXListModule, decorators: [{
14
+ type: NgModule,
15
+ args: [{
16
+ declarations: [...COMPONENT],
17
+ imports: [...MODULES],
18
+ exports: [...COMPONENT],
19
+ providers: [],
20
+ }]
21
+ }] });
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC9zcmMvbGliL2xpc3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBRXpELE1BQU0sU0FBUyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7QUFDcEMsTUFBTSxPQUFPLEdBQUcsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDLENBQUM7QUFRaEQsTUFBTSxPQUFPLFlBQVk7OEdBQVosWUFBWTsrR0FBWixZQUFZLGlCQVROLGVBQWUsYUFDakIsWUFBWSxFQUFFLGVBQWUsYUFEM0IsZUFBZTsrR0FTckIsWUFBWSxZQUpSLE9BQU87OzJGQUlYLFlBQVk7a0JBTnhCLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUM7b0JBQzVCLE9BQU8sRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDO29CQUNyQixPQUFPLEVBQUUsQ0FBQyxHQUFHLFNBQVMsQ0FBQztvQkFDdkIsU0FBUyxFQUFFLEVBQUU7aUJBQ2hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBWExpc3RDb21wb25lbnQgfSBmcm9tICcuL2xpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IFNjcm9sbGluZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY3JvbGxpbmcnO1xuXG5jb25zdCBDT01QT05FTlQgPSBbQVhMaXN0Q29tcG9uZW50XTtcbmNvbnN0IE1PRFVMRVMgPSBbQ29tbW9uTW9kdWxlLCBTY3JvbGxpbmdNb2R1bGVdO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogWy4uLkNPTVBPTkVOVF0sXG4gICAgaW1wb3J0czogWy4uLk1PRFVMRVNdLFxuICAgIGV4cG9ydHM6IFsuLi5DT01QT05FTlRdLFxuICAgIHByb3ZpZGVyczogW10sXG59KVxuZXhwb3J0IGNsYXNzIEFYTGlzdE1vZHVsZSB7IH1cbiJdfQ==