@wavemaker/app-ng-runtime 11.6.0-next.24749 → 11.6.0-next.52052

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 (39) hide show
  1. app-ng-runtime/components/base/bundles/index.umd.js +1 -0
  2. app-ng-runtime/components/base/esm2020/widgets/common/partial/partial.directive.mjs +2 -1
  3. app-ng-runtime/components/base/fesm2015/index.mjs +1 -0
  4. app-ng-runtime/components/base/fesm2015/index.mjs.map +1 -1
  5. app-ng-runtime/components/base/fesm2020/index.mjs +1 -0
  6. app-ng-runtime/components/base/fesm2020/index.mjs.map +1 -1
  7. app-ng-runtime/components/chart/bundles/index.umd.js +3 -1
  8. app-ng-runtime/components/chart/esm2020/chart.component.mjs +4 -2
  9. app-ng-runtime/components/chart/fesm2015/index.mjs +3 -1
  10. app-ng-runtime/components/chart/fesm2015/index.mjs.map +1 -1
  11. app-ng-runtime/components/chart/fesm2020/index.mjs +3 -1
  12. app-ng-runtime/components/chart/fesm2020/index.mjs.map +1 -1
  13. app-ng-runtime/components/data/table/bundles/index.umd.js +3 -2
  14. app-ng-runtime/components/data/table/esm2020/table.component.mjs +4 -3
  15. app-ng-runtime/components/data/table/fesm2015/index.mjs +3 -2
  16. app-ng-runtime/components/data/table/fesm2015/index.mjs.map +1 -1
  17. app-ng-runtime/components/data/table/fesm2020/index.mjs +3 -2
  18. app-ng-runtime/components/data/table/fesm2020/index.mjs.map +1 -1
  19. app-ng-runtime/components/data/table/table.component.d.ts +1 -1
  20. app-ng-runtime/components/navigation/popover/bundles/index.umd.js +2 -1
  21. app-ng-runtime/components/navigation/popover/esm2020/popover.component.mjs +3 -2
  22. app-ng-runtime/components/navigation/popover/fesm2015/index.mjs +2 -1
  23. app-ng-runtime/components/navigation/popover/fesm2015/index.mjs.map +1 -1
  24. app-ng-runtime/components/navigation/popover/fesm2020/index.mjs +2 -1
  25. app-ng-runtime/components/navigation/popover/fesm2020/index.mjs.map +1 -1
  26. app-ng-runtime/components/prefab/bundles/index.umd.js +1 -0
  27. app-ng-runtime/components/prefab/esm2020/prefab-container/prefab-container.directive.mjs +2 -1
  28. app-ng-runtime/components/prefab/fesm2015/index.mjs +1 -0
  29. app-ng-runtime/components/prefab/fesm2015/index.mjs.map +1 -1
  30. app-ng-runtime/components/prefab/fesm2020/index.mjs +1 -0
  31. app-ng-runtime/components/prefab/fesm2020/index.mjs.map +1 -1
  32. app-ng-runtime/mobile/components/basic/default/bundles/index.umd.js +1 -1
  33. app-ng-runtime/mobile/components/basic/default/esm2020/image-cache/image-cache.directive.mjs +3 -3
  34. app-ng-runtime/mobile/components/basic/default/fesm2015/index.mjs +1 -1
  35. app-ng-runtime/mobile/components/basic/default/fesm2015/index.mjs.map +1 -1
  36. app-ng-runtime/mobile/components/basic/default/fesm2020/index.mjs +1 -1
  37. app-ng-runtime/mobile/components/basic/default/fesm2020/index.mjs.map +1 -1
  38. app-ng-runtime/package.json +1 -1
  39. app-ng-runtime/scripts/datatable/datatable.js +3 -3
@@ -245,7 +245,7 @@ export declare class TableComponent extends StylableComponent implements AfterCo
245
245
  setIsDataUpdatedByUser: (value: any) => void;
246
246
  onDataRender: () => void;
247
247
  onRowSelect: (row: any, e: any) => void;
248
- assignSelectedItems: (row: any, e: any) => void;
248
+ assignSelectedItems: (row: any, e: any, isRowSelected: any) => void;
249
249
  onRowDblClick: (row: any, e: any) => void;
250
250
  onRowDeselect: (row: any, e: any) => void;
251
251
  callOnRowDeselectEvent: (row: any, e: any) => void;
@@ -144,7 +144,8 @@
144
144
  if (root) {
145
145
  $('body > popover-container').wrap('<' + root + '/>');
146
146
  }
147
- if (activePopover && activePopover.isOpen) {
147
+ // Fix for [WMS-25125]: Not closing the existing opened popovers when the autoclose property is DISABLED
148
+ if (activePopover && activePopover.isOpen && activePopover.autoclose !== base.AUTOCLOSE_TYPE.DISABLED) {
148
149
  activePopover.isOpen = false;
149
150
  }
150
151
  activePopover = this;
@@ -92,7 +92,8 @@ export class PopoverComponent extends StylableComponent {
92
92
  if (root) {
93
93
  $('body > popover-container').wrap('<' + root + '/>');
94
94
  }
95
- if (activePopover && activePopover.isOpen) {
95
+ // Fix for [WMS-25125]: Not closing the existing opened popovers when the autoclose property is DISABLED
96
+ if (activePopover && activePopover.isOpen && activePopover.autoclose !== AUTOCLOSE_TYPE.DISABLED) {
96
97
  activePopover.isOpen = false;
97
98
  }
98
99
  activePopover = this;
@@ -279,4 +280,4 @@ PopoverComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PopoverCom
279
280
  type: ContentChild,
280
281
  args: ['partial']
281
282
  }] }); })();
282
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvbmF2aWdhdGlvbi9wb3BvdmVyL3NyYy9wb3BvdmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9uYXZpZ2F0aW9uL3BvcG92ZXIvc3JjL3BvcG92ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBVSxRQUFRLEVBQVUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVySSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBVyxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDdkksT0FBTyxFQUFvQyxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLHVCQUF1QixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFL0osT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7Ozs7QUFJaEQsTUFBTSxXQUFXLEdBQUcscUJBQXFCLENBQUM7QUFDMUMsTUFBTSxhQUFhLEdBQWtCO0lBQ2pDLFVBQVUsRUFBRSxZQUFZO0lBQ3hCLFNBQVMsRUFBRSxXQUFXO0NBQ3pCLENBQUM7QUFFRixNQUFNLFNBQVMsR0FBRztJQUNkLEtBQUssRUFBRSxPQUFPO0lBQ2QsS0FBSyxFQUFFLGtCQUFrQjtJQUN6QixPQUFPLEVBQUUsa0JBQWtCO0NBQzlCLENBQUM7QUFFRixJQUFJLGFBQStCLENBQUM7QUFVcEMsTUFBTSxPQUFPLGdCQUFpQixTQUFR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R0FBZ0c7UUFDaEcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ25DLENBQUM7O0FBblFNLGdDQUFlLEdBQUcsYUFBYSxFQUFFLENBQUM7Z0ZBRGhDLGdCQUFnQjttRUFBaEIsZ0JBQWdCO29DQWlDWCxXQUFXOzs7Ozs7O3VCQUZkLGdCQUFnQjs7Ozs7OzBDQXBDaEI7WUFDUCxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQztTQUN2QztRQzlCTCwrQkFvQytDO1FBOUIzQyw0RkFBVyxhQUFTLElBQUMsaUZBQ1QsY0FBVSxJQURELHFGQThCVixrQ0FBOEIsSUE5QnBCO1FBK0J6QixpQkFBSTs7UUF4QkEsd0JBQWU7UUFMZiw0SEFBa0Y7UUFSbkYsNkNBQTJCLCtCQUFBLDJCQUFBLG1DQUFBLGtDQUFBLHVCQUFBLDRDQUFBLHNCQUFBLDBCQUFBLGtCQUFBLDZEQUFBLDBDQUFBO1FBZ0IxQix3REFBMEMsNkJBQUE7O3VGRGlCakMsZ0JBQWdCO2NBUjVCLFNBQVM7MkJBQ0ksWUFBWSxhQUVYO29CQUNQLGtCQUFrQixrQkFBa0I7aUJBQ3ZDOzZFQWtDb0Msa0JBQWtCO2tCQUF0RCxTQUFTO21CQUFDLGdCQUFnQjtZQUNZLFNBQVM7a0JBQS9DLFNBQVM7bUJBQUMsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtZQUNWLGVBQWU7a0JBQXpDLFlBQVk7bUJBQUMsV0FBVztZQUNBLFVBQVU7a0JBQWxDLFlBQVk7bUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgQ29udGVudENoaWxkLCBFbGVtZW50UmVmLCBJbmplY3QsIEluamVjdG9yLCBPbkluaXQsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgUG9wb3ZlckRpcmVjdGl2ZSB9IGZyb20gJ25neC1ib290c3RyYXAvcG9wb3Zlcic7XG5cbmltcG9ydCB7IGFkZENsYXNzLCBBcHAsIHNldEF0dHIsIHNldENTU0Zyb21PYmosIGZpbmRSb290Q29udGFpbmVyLCBhZGp1c3RDb250YWluZXJQb3NpdGlvbiwgYWRqdXN0Q29udGFpbmVyUmlnaHRFZGdlc30gZnJvbSAnQHdtL2NvcmUnO1xuaW1wb3J0IHsgQVBQTFlfU1RZTEVTX1RZUEUsIElXaWRnZXRDb25maWcsIHN0eWxlciwgU3R5bGFibGVDb21wb25lbnQsIHByb3ZpZGVBc1dpZGdldFJlZiwgQVVUT0NMT1NFX1RZUEUsIGdldENvbnRhaW5lclRhcmdldENsYXNzIH0gZnJvbSAnQHdtL2NvbXBvbmVudHMvYmFzZSc7XG5cbmltcG9ydCB7IHJlZ2lzdGVyUHJvcHMgfSBmcm9tICcuL3BvcG92ZXIucHJvcHMnO1xuXG5kZWNsYXJlIGNvbnN0IF8sICQ7XG5cbmNvbnN0IERFRkFVTFRfQ0xTID0gJ2FwcC1wb3BvdmVyLXdyYXBwZXInO1xuY29uc3QgV0lER0VUX0NPTkZJRzogSVdpZGdldENvbmZpZyA9IHtcbiAgICB3aWRnZXRUeXBlOiAnd20tcG9wb3ZlcicsXG4gICAgaG9zdENsYXNzOiBERUZBVUxUX0NMU1xufTtcblxuY29uc3QgZXZlbnRzTWFwID0ge1xuICAgIGNsaWNrOiAnY2xpY2snLFxuICAgIGhvdmVyOiAnbW91c2VlbnRlcjpjbGljaycsXG4gICAgZGVmYXVsdDogJ2NsaWNrIG1vdXNlZW50ZXInXG59O1xuXG5sZXQgYWN0aXZlUG9wb3ZlcjogUG9wb3ZlckNvbXBvbmVudDtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd3bS1wb3BvdmVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcG9wb3Zlci5jb21wb25lbnQuaHRtbCcsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHByb3ZpZGVBc1dpZGdldFJlZihQb3BvdmVyQ29tcG9uZW50KVxuICAgIF1cbn0pXG5cbmV4cG9ydCBjbGFzcyBQb3BvdmVyQ29tcG9uZW50IGV4dGVuZHMgU3R5bGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICAgIHN0YXRpYyBpbml0aWFsaXplUHJvcHMgPSByZWdpc3RlclByb3BzKCk7XG5cbiAgICBwdWJsaWMgZXZlbnQ6IHN0cmluZztcbiAgICBwdWJsaWMgaXNPcGVuID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBjbG9zZVBvcG92ZXJUaW1lb3V0O1xuICAgIHB1YmxpYyByZWFkb25seSBwb3BvdmVyQ29udGFpbmVyQ2xzO1xuICAgIHB1YmxpYyBjYW5Qb3BvdmVyT3BlbiA9IHRydWU7XG4gICAgcHJpdmF0ZSBXaWRnZXRzO1xuICAgIHByaXZhdGUgVmFyaWFibGVzO1xuICAgIHByaXZhdGUgQWN0aW9ucztcblxuICAgIHB1YmxpYyBpbnRlcmFjdGlvbjogc3RyaW5nO1xuICAgIHB1YmxpYyBwb3BvdmVyYXJyb3c6IGJvb2xlYW47XG4gICAgcHVibGljIHBvcG92ZXJ3aWR0aDogc3RyaW5nO1xuICAgIHB1YmxpYyBwb3BvdmVyaGVpZ2h0OiBzdHJpbmc7XG4gICAgcHVibGljIGNvbnRlbnRhbmltYXRpb246IHN0cmluZztcbiAgICBwdWJsaWMgY29udGVudHNvdXJjZTogc3RyaW5nO1xuICAgIHB1YmxpYyBjb250ZW50OiBzdHJpbmc7XG4gICAgcHVibGljIHBvcG92ZXJwbGFjZW1lbnQ6IHN0cmluZztcbiAgICBwdWJsaWMgb3V0c2lkZWNsaWNrOiBib29sZWFuO1xuICAgIHB1YmxpYyBhdXRvY2xvc2U6IHN0cmluZztcblxuICAgIHB1YmxpYyBjbGFzczogc3RyaW5nO1xuICAgIHB1YmxpYyB0aXRsZTogc3RyaW5nO1xuICAgIHB1YmxpYyB0YWJpbmRleDogYW55O1xuICAgIHB1YmxpYyBuYW1lOiBzdHJpbmc7XG4gICAgcHVibGljIGFkYXB0aXZlcG9zaXRpb246Ym9vbGVhbjtcbiAgICBwdWJsaWMgY29udGFpbmVyVGFyZ2V0OiBzdHJpbmc7XG4gICAgcHVibGljIGhpbnQ6IHN0cmluZztcblxuICAgIEBWaWV3Q2hpbGQoUG9wb3ZlckRpcmVjdGl2ZSkgcHJpdmF0ZSBic1BvcG92ZXJEaXJlY3RpdmU7XG4gICAgQFZpZXdDaGlsZCgnYW5jaG9yJywgeyBzdGF0aWM6IHRydWUgfSkgYW5jaG9yUmVmOiBFbGVtZW50UmVmO1xuICAgIEBDb250ZW50Q2hpbGQoVGVtcGxhdGVSZWYpIHBvcG92ZXJUZW1wbGF0ZTtcbiAgICBAQ29udGVudENoaWxkKCdwYXJ0aWFsJykgcGFydGlhbFJlZjtcblxuICAgIGNvbnN0cnVjdG9yKGluajogSW5qZWN0b3IsIHByaXZhdGUgYXBwOiBBcHApIHtcbiAgICAgICAgc3VwZXIoaW5qLCBXSURHRVRfQ09ORklHKTtcbiAgICAgICAgdGhpcy5wb3BvdmVyQ29udGFpbmVyQ2xzID0gYGFwcC1wb3BvdmVyLSR7dGhpcy53aWRnZXRJZH1gO1xuICAgIH1cblxuICAgIC8vIFRoaXMgbWVodG9kIGlzIHVzZWQgdG8gc2hvdy9vcGVuIHRoZSBwb3BvdmVyLiBUaGlzIHJlZmVycyB0byB0aGUgc2FtZSBtZXRob2Qgc2hvd1BvcG92ZXIuXG4gICAgcHVibGljIG9wZW4oKSB7XG4gICAgICAgIHRoaXMuc2hvd1BvcG92ZXIoKTtcbiAgICB9XG5cbiAgICAvLyBUaGlzIG1laHRvZCBpcyB1c2VkIHRvIGhpZGUvY2xvc2UgdGhlIHBvcG92ZXIuXG4gICAgcHVibGljIGNsb3NlKCkge1xuICAgICAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8vIFRyaWdnZXIgb24gaGlkaW5nIHBvcG92ZXJcbiAgICBwdWJsaWMgb25IaWRkZW4oKSB7XG4gICAgICAgIHRoaXMuaW52b2tlRXZlbnRDYWxsYmFjaygnaGlkZScsIHskZXZlbnQ6IHt0eXBlOiAnaGlkZSd9fSk7XG4gICAgICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRGb2N1c1RvUG9wb3ZlckxpbmsoKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5hbmNob3JSZWYubmF0aXZlRWxlbWVudC5mb2N1cygpLCAxMCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhZGp1c3RQb3BvdmVyQXJyb3dQb3NpdGlvbihwb3BvdmVyRWxlbSwgcG9wb3ZlckxlZnRTaGlmdCkge1xuICAgICAgICB0aGlzLmJzUG9wb3ZlckRpcmVjdGl2ZS5fcG9wb3Zlci5fbmdab25lLm9uU3RhYmxlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBwb3BvdmVyRWxlbS5maW5kKCcucG9wb3Zlci1hcnJvdycpLmNzcygnbGVmdCcsIHBvcG92ZXJMZWZ0U2hpZnQgKyAncHgnKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVQb3BvdmVyUG9zdGlvbihlbGVtZW50KSB7XG5cbiAgICAgICAgY29uc3QgcG9wb3ZlckVsZW0gPSAkKGVsZW1lbnQpO1xuICAgICAgICBsZXQgcG9wb3ZlckxlZnQgPSAgcG9wb3ZlckVsZW0ub2Zmc2V0KCkubGVmdDtcbiAgICAgICAgY29uc3QgcG9wb3ZlcldpZHRoID0gcG9wb3ZlckVsZW1bMF0ub2Zmc2V0V2lkdGg7XG4gICAgICAgIGNvbnN0IHZpZXdQb3J0V2lkdGggPSAkKHdpbmRvdykud2lkdGgoKTtcbiAgICAgICAgY29uc3QgcGFyZW50RGltZXNpb24gPSB0aGlzLmFuY2hvclJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAvLyBBZGp1c3RpbmcgcG9wb3ZlciBwb3NpdGlvbiwgaWYgaXQgaXMgbm90IHZpc2libGUgYXQgbGVmdCBzaWRlXG4gICAgICAgIGlmIChwb3BvdmVyTGVmdCA8IDApIHtcbiAgICAgICAgICAgIGFkanVzdENvbnRhaW5lclBvc2l0aW9uKHBvcG92ZXJFbGVtLCB0aGlzLm5hdGl2ZUVsZW1lbnQsIHRoaXMuYnNQb3BvdmVyRGlyZWN0aXZlLl9wb3BvdmVyKTtcbiAgICAgICAgICAgIGNvbnN0IHBvcG92ZXJMZWZ0U2hpZnQgPSA0O1xuICAgICAgICAgICAgY29uc3QgYXJyb3dMZWZ0U2hpZnQgPSAocGFyZW50RGltZXNpb24ubGVmdCArIChwYXJlbnREaW1lc2lvbi53aWR0aCAvIDIpKSAtIHBvcG92ZXJMZWZ0U2hpZnQ7XG4gICAgICAgICAgICB0aGlzLmFkanVzdFBvcG92ZXJBcnJvd1Bvc2l0aW9uKHBvcG92ZXJFbGVtLCBhcnJvd0xlZnRTaGlmdCk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gQWRqdXN0aW5nIHBvcG92ZXIgcG9zaXRpb24sIGlmIGl0IGlzIG5vdCB2aXNpYmxlIGF0IHJpZ2h0IHNpZGVcbiAgICAgICAgaWYgKHBvcG92ZXJMZWZ0ICsgcG9wb3ZlcldpZHRoID4gdmlld1BvcnRXaWR0aCkge1xuICAgICAgICAgICAgYWRqdXN0Q29udGFpbmVyUmlnaHRFZGdlcyhwb3BvdmVyRWxlbSwgdGhpcy5uYXRpdmVFbGVtZW50LCB0aGlzLmJzUG9wb3ZlckRpcmVjdGl2ZS5fcG9wb3Zlcik7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBwb3BvdmVyTGVmdCA9IHBvcG92ZXJFbGVtLm9mZnNldCgpLmxlZnQ7XG4gICAgICAgICAgICAgICAgY29uc3QgcG9wb3ZlckxlZnRBZGp1c3QgPSAocG9wb3ZlckxlZnQgKyBwb3BvdmVyV2lkdGgpIC0gdmlld1BvcnRXaWR0aDtcbiAgICAgICAgICAgICAgICBjb25zdCBwb3BvdmVyTGVmdFNoaWZ0ID0gIHBvcG92ZXJMZWZ0IC0gcG9wb3ZlckxlZnRBZGp1c3Q7XG4gICAgICAgICAgICAgICAgbGV0IGFycm93TGVmdFNoaWZ0IDtcbiAgICAgICAgICAgICAgICBpZihwb3BvdmVyTGVmdDw9MTAwKXtcbiAgICAgICAgICAgICAgICAgICAgYXJyb3dMZWZ0U2hpZnQgPSAgKHBhcmVudERpbWVzaW9uLmxlZnQgKyAocGFyZW50RGltZXNpb24ud2lkdGggLyAyKSkgLSBwb3BvdmVyTGVmdDtcbiAgICAgICAgICAgICAgICB9ZWxzZXtcbiAgICAgICAgICAgICAgICAgICAgYXJyb3dMZWZ0U2hpZnQgPSAocGFyZW50RGltZXNpb24ubGVmdCArIChwYXJlbnREaW1lc2lvbi53aWR0aCAvIDIpKSAtIHBvcG92ZXJMZWZ0U2hpZnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmKHZpZXdQb3J0V2lkdGggPiA1MDApe1xuICAgICAgICAgICAgICAgICAgICBhcnJvd0xlZnRTaGlmdCArPSAzMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICB0aGlzLmFkanVzdFBvcG92ZXJBcnJvd1Bvc2l0aW9uKHBvcG92ZXJFbGVtLCBhcnJvd0xlZnRTaGlmdCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFRyaWdnZXIgb24gc2hvd2luZyBwb3BvdmVyXG4gICAgcHVibGljIG9uU2hvd24oKSB7XG4gICAgICAgIGNvbnN0IHJvb3QgPSBmaW5kUm9vdENvbnRhaW5lcih0aGlzLiRlbGVtZW50KTtcbiAgICAgICAgLy8gaWYgcGFnZSBzdHlsZXMgaGF2ZSB0byBiZSBhcHBsaWVkIHRvIHBvcG92ZXIgdGhlbiBwb3BvdmVyIGhhcyB0byBiZSBjaGlsZCBvZiBwYWdlIGVsZW1lbnQuXG4gICAgICAgIGlmIChyb290KSB7XG4gICAgICAgICAgICAkKCdib2R5ID4gcG9wb3Zlci1jb250YWluZXInKS53cmFwKCc8JyArIHJvb3QgKyAnLz4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChhY3RpdmVQb3BvdmVyICYmIGFjdGl2ZVBvcG92ZXIuaXNPcGVuKSB7XG4gICAgICAgICAgICBhY3RpdmVQb3BvdmVyLmlzT3BlbiA9IGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgYWN0aXZlUG9wb3ZlciA9IHRoaXM7XG4gICAgICAgIGFjdGl2ZVBvcG92ZXIuaXNPcGVuID0gdHJ1ZTtcblxuICAgICAgICBjb25zdCBwb3BvdmVyQ29udGFpbmVyICA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYC4ke3RoaXMucG9wb3ZlckNvbnRhaW5lckNsc31gKSBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgc2V0Q1NTRnJvbU9iaihwb3BvdmVyQ29udGFpbmVyLCB7XG4gICAgICAgICAgICBoZWlnaHQ6IHRoaXMucG9wb3ZlcmhlaWdodCxcbiAgICAgICAgICAgIG1pbldpZHRoOiB0aGlzLnBvcG92ZXJ3aWR0aCxcbiAgICAgICAgICAgIHdpZHRoOiB0aGlzLnBvcG92ZXJ3aWR0aFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKCF0aGlzLnBvcG92ZXJhcnJvdykge1xuICAgICAgICAgICAgYWRkQ2xhc3MocG9wb3ZlckNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCcuYXJyb3cnKSBhcyBIVE1MRWxlbWVudCwgJ2hpZGRlbicpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmludGVyYWN0aW9uID09PSAnaG92ZXInIHx8IHRoaXMuaW50ZXJhY3Rpb24gPT09ICdkZWZhdWx0Jykge1xuXG4gICAgICAgICAgICAvLyBkbyBub3QgdXNlIGFkZEV2ZW50TGlzdGVuZXIgaGVyZVxuICAgICAgICAgICAgLy8gYXR0YWNoaW5nIHRoZSBldmVudCB0aGlzIHdheSB3aWxsIG92ZXJyaWRlIHRoZSBleGlzdGluZyBldmVudCBoYW5kbGVyc1xuICAgICAgICAgICAgcG9wb3ZlckNvbnRhaW5lci5vbm1vdXNlZW50ZXIgPSAoKSA9PiBjbGVhclRpbWVvdXQodGhpcy5jbG9zZVBvcG92ZXJUaW1lb3V0KTtcbiAgICAgICAgICAgIHBvcG92ZXJDb250YWluZXIub25tb3VzZWxlYXZlID0gKCkgPT4gdGhpcy5oaWRlUG9wb3ZlcigpO1xuICAgICAgICAgICAgdGhpcy5hbmNob3JSZWYubmF0aXZlRWxlbWVudC5vbm1vdXNlZW50ZXIgPSAoKSA9PiBjbGVhclRpbWVvdXQodGhpcy5jbG9zZVBvcG92ZXJUaW1lb3V0KTtcbiAgICAgICAgICAgIHRoaXMuYW5jaG9yUmVmLm5hdGl2ZUVsZW1lbnQub25tb3VzZWxlYXZlID0gKCkgPT4gdGhpcy5oaWRlUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hbmNob3JSZWYubmF0aXZlRWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoJ2FyaWEtZGVzY3JpYmVkYnknKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IGRlUmVnaXN0ZXIgPSB0aGlzLmV2ZW50TWFuYWdlci5hZGRFdmVudExpc3RlbmVyKHBvcG92ZXJDb250YWluZXIsICdrZXlkb3duLmVzYycsICgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLnNldEZvY3VzVG9Qb3BvdmVyTGluaygpO1xuICAgICAgICAgICAgZGVSZWdpc3RlcigpO1xuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgcG9wb3ZlclN0YXJ0QnRuOiBIVE1MRWxlbWVudCA9IHBvcG92ZXJDb250YWluZXIucXVlcnlTZWxlY3RvcignLnBvcG92ZXItc3RhcnQnKTtcbiAgICAgICAgY29uc3QgcG9wb3ZlckVuZEJ0bjogSFRNTEVsZW1lbnQgPSBwb3BvdmVyQ29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJy5wb3BvdmVyLWVuZCcpO1xuICAgICAgICBwb3BvdmVyU3RhcnRCdG4ub25rZXlkb3duID0gKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAvLyBDaGVjayBmb3IgU2hpZnQrVGFiIGtleVxuICAgICAgICAgICAgaWYgKGV2ZW50LnNoaWZ0S2V5ICYmIGV2ZW50LmtleSA9PT0gJ1RhYicpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmJzUG9wb3ZlckRpcmVjdGl2ZS5oaWRlKCk7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnNldEZvY3VzVG9Qb3BvdmVyTGluaygpO1xuICAgICAgICAgICAgICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7ICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICBwb3BvdmVyRW5kQnRuLm9ua2V5ZG93biA9IChldmVudCkgPT4ge1xuICAgICAgICAgICAgLy8gQ2hlY2sgZm9yIFRhYiBrZXlcbiAgICAgICAgICAgIGlmICghZXZlbnQuc2hpZnRLZXkgJiYgZXZlbnQua2V5ID09PSAnVGFiJykge1xuICAgICAgICAgICAgICAgIHRoaXMuYnNQb3BvdmVyRGlyZWN0aXZlLmhpZGUoKTtcbiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0Rm9jdXNUb1BvcG92ZXJMaW5rKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5pc09wZW4gPSBmYWxzZTsgICAgICAgICAgICB9XG4gICAgICAgIH07XG5cbiAgICAgICAgLy9XaGVuZXZlciBhdXRvY2xvc2UgcHJvcGVydHkgaXMgc2V0IHRvICdhbHdheXMnLCBhZGRpbmcgdGhlIG9uY2xpY2sgbGlzdGVuZXIgdG8gdGhlIHBvcG92ZXIgY29udGFpbmVyIHRvIGNsb3NlIHRoZSBwb3BvdmVyLlxuICAgICAgICBpZiAodGhpcy5hdXRvY2xvc2UgPT09IEFVVE9DTE9TRV9UWVBFLkFMV0FZUykge1xuICAgICAgICAgICAgcG9wb3ZlckNvbnRhaW5lci5vbmNsaWNrID0gKCkgPT4gdGhpcy5jbG9zZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiBwb3BvdmVyU3RhcnRCdG4uZm9jdXMoKSwgNTApO1xuICAgICAgICAvLyBBZGp1c3RpbmcgcG9wb3ZlciBwb3NpdGlvbiBpZiB0aGUgcG9wb3ZlciBwbGFjZW1lbnQgaXMgdG9wIG9yIGJvdHRvbVxuICAgICAgICBzZXRUaW1lb3V0KCAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuYWRhcHRpdmVwb3NpdGlvbiApIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNhbGN1bGF0ZVBvcG92ZXJQb3N0aW9uKHBvcG92ZXJDb250YWluZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gdHJpZ2dlcmluZyBvbmxvYWQgYW5kIG9uc2hvdyBldmVudHMgYWZ0ZXIgcG9wb3ZlciBjb250ZW50IGhhcyByZW5kZXJlZFxuICAgICAgICAgICAgdGhpcy50cmlnZ2VyUG9wb3ZlckV2ZW50cygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB0cmlnZ2VyUG9wb3ZlckV2ZW50cygpIHtcbiAgICAgICAgaWYgKHRoaXMuY29udGVudHNvdXJjZSA9PT0gJ3BhcnRpYWwnKSB7XG4gICAgICAgICAgICBjb25zdCBjYW5jZWxTdWJzY3JpcHRpb24gPSB0aGlzLmFwcC5zdWJzY3JpYmUoJ3BhcnRpYWxMb2FkZWQnLCAoZGF0YSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHBhckVsZSA9IHRoaXMucGFydGlhbFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICAgICAgICAgIGxldCBwYXJ0aWFsU2NvcGU7XG5cbiAgICAgICAgICAgICAgICBpZiAocGFyRWxlKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhcnRpYWxTY29wZSAgPSBwYXJFbGUud2lkZ2V0O1xuICAgICAgICAgICAgICAgICAgICB0aGlzLldpZGdldHMgICA9IHBhcnRpYWxTY29wZS5XaWRnZXRzO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLlZhcmlhYmxlcyA9IHBhcnRpYWxTY29wZS5WYXJpYWJsZXM7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuQWN0aW9ucyAgID0gcGFydGlhbFNjb3BlLkFjdGlvbnM7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaW52b2tlRXZlbnRDYWxsYmFjaygnbG9hZCcpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmludm9rZUV2ZW50Q2FsbGJhY2soJ3Nob3cnLCB7JGV2ZW50OiB7dHlwZTogJ3Nob3cnfX0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYW5jZWxTdWJzY3JpcHRpb24oKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5XaWRnZXRzICAgPSB0aGlzLnZpZXdQYXJlbnQuV2lkZ2V0cztcbiAgICAgICAgICAgIHRoaXMuVmFyaWFibGVzID0gdGhpcy52aWV3UGFyZW50LlZhcmlhYmxlcztcbiAgICAgICAgICAgIHRoaXMuQWN0aW9ucyAgID0gdGhpcy52aWV3UGFyZW50LkFjdGlvbnM7XG4gICAgICAgICAgICB0aGlzLmludm9rZUV2ZW50Q2FsbGJhY2soJ3Nob3cnLCB7JGV2ZW50OiB7dHlwZTogJ3Nob3cnfX0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoaWRlUG9wb3ZlcigpIHtcbiAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXJUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB0aGlzLmlzT3BlbiA9IGZhbHNlLCA1MDApO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2hvd1BvcG92ZXIoKSB7XG4gICAgICAgIHRoaXMuYnNQb3BvdmVyRGlyZWN0aXZlLnNob3coKTtcbiAgICB9XG5cbiAgICBvblBvcG92ZXJBbmNob3JLZXlkb3duKCRldmVudCkge1xuICAgICAgICAvLyBpZiB0aGVyZSBpcyBubyBjb250ZW50IGF2YWlsYWJsZSwgdGhlIHBvcG92ZXIgc2hvdWxkIG5vdCBvcGVuIHRocm91Z2ggZW50ZXIga2V5LiBTbyBjaGVja2luZyB3aGV0aGVyIHRoZSBjYW5Qb3BvdmVyT3BlbiBmbGFnIGlzIHRydWUgb3Igbm90LlxuICAgICAgICBpZiAoIXRoaXMuY2FuUG9wb3Zlck9wZW4pIHtcbiAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmICgkZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgICAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICB0aGlzLnNob3dQb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblByb3BlcnR5Q2hhbmdlKGtleTogc3RyaW5nLCBudjogYW55LCBvdj86IGFueSkge1xuICAgICAgICBpZiAoa2V5ID09PSAnY2xhc3MnIHx8IGtleSA9PT0gJ3RhYmluZGV4Jykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlmIChrZXkgPT09ICdjb250ZW50c291cmNlJykge1xuICAgICAgICAgICAgLy8gaWYgdGhlcmUgaXMgbm8gcGFydGlhbCBjb250ZW50IGF2YWlsYWJsZSwgdGhlIHBvcG92ZXIgc2hvdWxkIG5vdCBvcGVuXG4gICAgICAgICAgICBpZiAodGhpcy5jb250ZW50c291cmNlID09PSAncGFydGlhbCcgJiYgIXRoaXMuY29udGVudCkge1xuICAgICAgICAgICAgICAgIHRoaXMuY2FuUG9wb3Zlck9wZW4gPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoa2V5ID09PSAnY29udGVudCcgJiYgbnYpIHtcbiAgICAgICAgICAgIHRoaXMuY2FuUG9wb3Zlck9wZW4gPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChrZXkgPT09ICdhdXRvY2xvc2UnKSB7XG4gICAgICAgICAgICB0aGlzLm91dHNpZGVjbGljayA9IChudiA9PT0gQVVUT0NMT1NFX1RZUEUuT1VUU0lERUNMSUNLIHx8IG52ID09PSBBVVRPQ0xPU0VfVFlQRS5BTFdBWVMpID8gdHJ1ZSA6IGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHN1cGVyLm9uUHJvcGVydHlDaGFuZ2Uoa2V5LCBudiwgb3YpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLmV2ZW50ID0gZXZlbnRzTWFwW3RoaXMuaW50ZXJhY3Rpb25dO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG4gICAgICAgIHN0eWxlcih0aGlzLmFuY2hvclJlZi5uYXRpdmVFbGVtZW50LCB0aGlzKTtcbiAgICAgICAgdGhpcy5jb250YWluZXJUYXJnZXQgPSBnZXRDb250YWluZXJUYXJnZXRDbGFzcyh0aGlzLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICBsZXQgcGFyZW50RWxlbVBvcG92ZXIgPSAkKHRoaXMubmF0aXZlRWxlbWVudCkucGFyZW50cygpO1xuICAgICAgICBpZiAocGFyZW50RWxlbVBvcG92ZXIuY2xvc2VzdCgnW3dtVGFibGVdJykubGVuZ3RoIHx8XG4gICAgICAgICAgICBwYXJlbnRFbGVtUG9wb3Zlci5jbG9zZXN0KCdbd210YWJzXScpLmxlbmd0aCB8fFxuICAgICAgICAgICAgcGFyZW50RWxlbVBvcG92ZXIuY2xvc2VzdCgnbW9kYWwtY29udGFpbmVyJykubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmFkYXB0aXZlcG9zaXRpb24gPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25EZXRhY2goKSB7XG4gICAgICAgIC8vIEhpZGUgdGhlIHBvcG92ZXIgY29udGFpbmVyIHdoaWxlIGF0dGFjaGluZyB0aGUgbmV4dCBjb21wb25lbnQgYXMgcGFydCBvZiBwYWdlIHJldXNlIHN0cmF0ZWd5LlxuICAgICAgICB0aGlzLmJzUG9wb3ZlckRpcmVjdGl2ZS5oaWRlKCk7XG4gICAgfVxufVxuIiwiPGEgW3BvcG92ZXJdPVwicG9wb3ZlclRlbXBsYXRlXCJcbiAgICBbcG9wb3ZlckNvbnRleHRdPVwiY29udGV4dFwiXG4gICAgW3BvcG92ZXJUaXRsZV09XCJ0aXRsZVwiXG4gICAgW3BsYWNlbWVudF09XCJwb3BvdmVycGxhY2VtZW50XCJcbiAgICBbb3V0c2lkZUNsaWNrXT1cIm91dHNpZGVjbGlja1wiXG4gICAgW3RyaWdnZXJzXT1cImV2ZW50XCJcbiAgICAob25TaG93bik9XCJvblNob3duKClcIlxuICAgIChvbkhpZGRlbik9XCJvbkhpZGRlbigpXCJcbiAgICBjb250YWluZXJDbGFzcz1cImFwcC1wb3BvdmVyIGFuaW1hdGVkIHt7Y29udGVudGFuaW1hdGlvbn19IHt7cG9wb3ZlckNvbnRhaW5lckNsc319XCJcbiAgICBbY29udGFpbmVyXT1cImNvbnRhaW5lclRhcmdldCB8fCAnYm9keSdcIlxuICAgIFtpc09wZW5dPVwiaXNPcGVuXCJcbiAgICBbdGFiaW5kZXhdPVwidGFiaW5kZXhcIlxuICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgIFtjbGFzc109XCJjbGFzc1wiXG4gICAgW25nQ2xhc3NdPVwieydkaXNhYmxlLXBvcG92ZXInOiAhY2FuUG9wb3Zlck9wZW59XCJcbiAgICBbYWRhcHRpdmVQb3NpdGlvbl09XCJhZGFwdGl2ZXBvc2l0aW9uXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImhpbnQgfHwgJ1BvcG92ZXIgbWVudSdcIlxuICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiaXNPcGVuXCJcbiAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAjYW5jaG9yXG4gICAgbmFtZS5iaW5kPVwibmFtZVwiXG4gICAgd21BbmNob3JcbiAgICBhbmltYXRpb24uYmluZD1cImFuaW1hdGlvblwiXG4gICAgYmFkZ2V2YWx1ZS5iaW5kPVwiYmFkZ2V2YWx1ZVwiXG4gICAgY2FwdGlvbi5iaW5kPVwiY2FwdGlvblwiXG4gICAgZW5jb2RldXJsLmJpbmQ9XCJlbmNvZGV1cmxcIlxuICAgIGhpbnQuYmluZD1cImhpbnRcIlxuICAgIGh5cGVybGluay5iaW5kPVwiaHlwZXJsaW5rXCJcbiAgICBpY29udXJsLmJpbmQ9XCJpY29udXJsXCJcbiAgICBpY29ud2lkdGguYmluZD1cImljb253aWR0aFwiXG4gICAgaWNvbmhlaWdodC5iaW5kPVwiaWNvbmhlaWdodFwiXG4gICAgaWNvbm1hcmdpbi5iaW5kPVwiaWNvbm1hcmdpblwiXG4gICAgaWNvbmNsYXNzLmJpbmQ9XCJpY29uY2xhc3NcIlxuICAgIGljb25wb3NpdGlvbi5iaW5kPVwiaWNvbnBvc2l0aW9uXCJcbiAgICBzaG9ydGN1dGtleS5iaW5kPVwic2hvcnRjdXRrZXlcIlxuICAgIHRhYmluZGV4LmJpbmQ9XCJ0YWJpbmRleFwiXG4gICAgKGtleWRvd24pPVwib25Qb3BvdmVyQW5jaG9yS2V5ZG93bigkZXZlbnQpXCI+XG48L2E+XG4iXX0=
283
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvbmF2aWdhdGlvbi9wb3BvdmVyL3NyYy9wb3BvdmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvd2lkZ2V0cy9uYXZpZ2F0aW9uL3BvcG92ZXIvc3JjL3BvcG92ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBVSxRQUFRLEVBQVUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVySSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBVyxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDdkksT0FBTyxFQUFvQyxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLHVCQUF1QixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFL0osT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7Ozs7QUFJaEQsTUFBTSxXQUFXLEdBQUcscUJBQXFCLENBQUM7QUFDMUMsTUFBTSxhQUFhLEdBQWtCO0lBQ2pDLFVBQVUsRUFBRSxZQUFZO0lBQ3hCLFNBQVMsRUFBRSxXQUFXO0NBQ3pCLENBQUM7QUFFRixNQUFNLFNBQVMsR0FBRztJQUNkLEtBQUssRUFBRSxPQUFPO0lBQ2QsS0FBSyxFQUFFLGtCQUFrQjtJQUN6QixPQUFPLEVBQUUsa0JBQWtCO0NBQzlCLENBQUM7QUFFRixJQUFJLGFBQStCLENBQUM7QUFVcEMsTUFBTSxPQUFPLGdCQUFpQixTQUFR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QkFBZ0IsR0FBRyxLQUFLLENBQUM7U0FDakM7SUFDTCxDQUFDO0lBRUQsVUFBVTtRQUNOLGdHQUFnRztRQUNoRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDbkMsQ0FBQzs7QUFuUU0sZ0NBQWUsR0FBRyxhQUFhLEVBQUUsQ0FBQztnRkFEaEMsZ0JBQWdCO21FQUFoQixnQkFBZ0I7b0NBaUNYLFdBQVc7Ozs7Ozs7dUJBRmQsZ0JBQWdCOzs7Ozs7MENBcENoQjtZQUNQLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDO1NBQ3ZDO1FDOUJMLCtCQW9DK0M7UUE5QjNDLDRGQUFXLGFBQVMsSUFBQyxpRkFDVCxjQUFVLElBREQscUZBOEJWLGtDQUE4QixJQTlCcEI7UUErQnpCLGlCQUFJOztRQXhCQSx3QkFBZTtRQUxmLDRIQUFrRjtRQVJuRiw2Q0FBMkIsK0JBQUEsMkJBQUEsbUNBQUEsa0NBQUEsdUJBQUEsNENBQUEsc0JBQUEsMEJBQUEsa0JBQUEsNkRBQUEsMENBQUE7UUFnQjFCLHdEQUEwQyw2QkFBQTs7dUZEaUJqQyxnQkFBZ0I7Y0FSNUIsU0FBUzsyQkFDSSxZQUFZLGFBRVg7b0JBQ1Asa0JBQWtCLGtCQUFrQjtpQkFDdkM7NkVBa0NvQyxrQkFBa0I7a0JBQXRELFNBQVM7bUJBQUMsZ0JBQWdCO1lBQ1ksU0FBUztrQkFBL0MsU0FBUzttQkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO1lBQ1YsZUFBZTtrQkFBekMsWUFBWTttQkFBQyxXQUFXO1lBQ0EsVUFBVTtrQkFBbEMsWUFBWTttQkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIEVsZW1lbnRSZWYsIEluamVjdCwgSW5qZWN0b3IsIE9uSW5pdCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBQb3BvdmVyRGlyZWN0aXZlIH0gZnJvbSAnbmd4LWJvb3RzdHJhcC9wb3BvdmVyJztcblxuaW1wb3J0IHsgYWRkQ2xhc3MsIEFwcCwgc2V0QXR0ciwgc2V0Q1NTRnJvbU9iaiwgZmluZFJvb3RDb250YWluZXIsIGFkanVzdENvbnRhaW5lclBvc2l0aW9uLCBhZGp1c3RDb250YWluZXJSaWdodEVkZ2VzfSBmcm9tICdAd20vY29yZSc7XG5pbXBvcnQgeyBBUFBMWV9TVFlMRVNfVFlQRSwgSVdpZGdldENvbmZpZywgc3R5bGVyLCBTdHlsYWJsZUNvbXBvbmVudCwgcHJvdmlkZUFzV2lkZ2V0UmVmLCBBVVRPQ0xPU0VfVFlQRSwgZ2V0Q29udGFpbmVyVGFyZ2V0Q2xhc3MgfSBmcm9tICdAd20vY29tcG9uZW50cy9iYXNlJztcblxuaW1wb3J0IHsgcmVnaXN0ZXJQcm9wcyB9IGZyb20gJy4vcG9wb3Zlci5wcm9wcyc7XG5cbmRlY2xhcmUgY29uc3QgXywgJDtcblxuY29uc3QgREVGQVVMVF9DTFMgPSAnYXBwLXBvcG92ZXItd3JhcHBlcic7XG5jb25zdCBXSURHRVRfQ09ORklHOiBJV2lkZ2V0Q29uZmlnID0ge1xuICAgIHdpZGdldFR5cGU6ICd3bS1wb3BvdmVyJyxcbiAgICBob3N0Q2xhc3M6IERFRkFVTFRfQ0xTXG59O1xuXG5jb25zdCBldmVudHNNYXAgPSB7XG4gICAgY2xpY2s6ICdjbGljaycsXG4gICAgaG92ZXI6ICdtb3VzZWVudGVyOmNsaWNrJyxcbiAgICBkZWZhdWx0OiAnY2xpY2sgbW91c2VlbnRlcidcbn07XG5cbmxldCBhY3RpdmVQb3BvdmVyOiBQb3BvdmVyQ29tcG9uZW50O1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3dtLXBvcG92ZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wb3BvdmVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgcHJvdmlkZUFzV2lkZ2V0UmVmKFBvcG92ZXJDb21wb25lbnQpXG4gICAgXVxufSlcblxuZXhwb3J0IGNsYXNzIFBvcG92ZXJDb21wb25lbnQgZXh0ZW5kcyBTdHlsYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgc3RhdGljIGluaXRpYWxpemVQcm9wcyA9IHJlZ2lzdGVyUHJvcHMoKTtcblxuICAgIHB1YmxpYyBldmVudDogc3RyaW5nO1xuICAgIHB1YmxpYyBpc09wZW4gPSBmYWxzZTtcbiAgICBwcml2YXRlIGNsb3NlUG9wb3ZlclRpbWVvdXQ7XG4gICAgcHVibGljIHJlYWRvbmx5IHBvcG92ZXJDb250YWluZXJDbHM7XG4gICAgcHVibGljIGNhblBvcG92ZXJPcGVuID0gdHJ1ZTtcbiAgICBwcml2YXRlIFdpZGdldHM7XG4gICAgcHJpdmF0ZSBWYXJpYWJsZXM7XG4gICAgcHJpdmF0ZSBBY3Rpb25zO1xuXG4gICAgcHVibGljIGludGVyYWN0aW9uOiBzdHJpbmc7XG4gICAgcHVibGljIHBvcG92ZXJhcnJvdzogYm9vbGVhbjtcbiAgICBwdWJsaWMgcG9wb3ZlcndpZHRoOiBzdHJpbmc7XG4gICAgcHVibGljIHBvcG92ZXJoZWlnaHQ6IHN0cmluZztcbiAgICBwdWJsaWMgY29udGVudGFuaW1hdGlvbjogc3RyaW5nO1xuICAgIHB1YmxpYyBjb250ZW50c291cmNlOiBzdHJpbmc7XG4gICAgcHVibGljIGNvbnRlbnQ6IHN0cmluZztcbiAgICBwdWJsaWMgcG9wb3ZlcnBsYWNlbWVudDogc3RyaW5nO1xuICAgIHB1YmxpYyBvdXRzaWRlY2xpY2s6IGJvb2xlYW47XG4gICAgcHVibGljIGF1dG9jbG9zZTogc3RyaW5nO1xuXG4gICAgcHVibGljIGNsYXNzOiBzdHJpbmc7XG4gICAgcHVibGljIHRpdGxlOiBzdHJpbmc7XG4gICAgcHVibGljIHRhYmluZGV4OiBhbnk7XG4gICAgcHVibGljIG5hbWU6IHN0cmluZztcbiAgICBwdWJsaWMgYWRhcHRpdmVwb3NpdGlvbjpib29sZWFuO1xuICAgIHB1YmxpYyBjb250YWluZXJUYXJnZXQ6IHN0cmluZztcbiAgICBwdWJsaWMgaGludDogc3RyaW5nO1xuXG4gICAgQFZpZXdDaGlsZChQb3BvdmVyRGlyZWN0aXZlKSBwcml2YXRlIGJzUG9wb3ZlckRpcmVjdGl2ZTtcbiAgICBAVmlld0NoaWxkKCdhbmNob3InLCB7IHN0YXRpYzogdHJ1ZSB9KSBhbmNob3JSZWY6IEVsZW1lbnRSZWY7XG4gICAgQENvbnRlbnRDaGlsZChUZW1wbGF0ZVJlZikgcG9wb3ZlclRlbXBsYXRlO1xuICAgIEBDb250ZW50Q2hpbGQoJ3BhcnRpYWwnKSBwYXJ0aWFsUmVmO1xuXG4gICAgY29uc3RydWN0b3IoaW5qOiBJbmplY3RvciwgcHJpdmF0ZSBhcHA6IEFwcCkge1xuICAgICAgICBzdXBlcihpbmosIFdJREdFVF9DT05GSUcpO1xuICAgICAgICB0aGlzLnBvcG92ZXJDb250YWluZXJDbHMgPSBgYXBwLXBvcG92ZXItJHt0aGlzLndpZGdldElkfWA7XG4gICAgfVxuXG4gICAgLy8gVGhpcyBtZWh0b2QgaXMgdXNlZCB0byBzaG93L29wZW4gdGhlIHBvcG92ZXIuIFRoaXMgcmVmZXJzIHRvIHRoZSBzYW1lIG1ldGhvZCBzaG93UG9wb3Zlci5cbiAgICBwdWJsaWMgb3BlbigpIHtcbiAgICAgICAgdGhpcy5zaG93UG9wb3ZlcigpO1xuICAgIH1cblxuICAgIC8vIFRoaXMgbWVodG9kIGlzIHVzZWQgdG8gaGlkZS9jbG9zZSB0aGUgcG9wb3Zlci5cbiAgICBwdWJsaWMgY2xvc2UoKSB7XG4gICAgICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gVHJpZ2dlciBvbiBoaWRpbmcgcG9wb3ZlclxuICAgIHB1YmxpYyBvbkhpZGRlbigpIHtcbiAgICAgICAgdGhpcy5pbnZva2VFdmVudENhbGxiYWNrKCdoaWRlJywgeyRldmVudDoge3R5cGU6ICdoaWRlJ319KTtcbiAgICAgICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldEZvY3VzVG9Qb3BvdmVyTGluaygpIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmFuY2hvclJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKCksIDEwKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkanVzdFBvcG92ZXJBcnJvd1Bvc2l0aW9uKHBvcG92ZXJFbGVtLCBwb3BvdmVyTGVmdFNoaWZ0KSB7XG4gICAgICAgIHRoaXMuYnNQb3BvdmVyRGlyZWN0aXZlLl9wb3BvdmVyLl9uZ1pvbmUub25TdGFibGUuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHBvcG92ZXJFbGVtLmZpbmQoJy5wb3BvdmVyLWFycm93JykuY3NzKCdsZWZ0JywgcG9wb3ZlckxlZnRTaGlmdCArICdweCcpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNhbGN1bGF0ZVBvcG92ZXJQb3N0aW9uKGVsZW1lbnQpIHtcblxuICAgICAgICBjb25zdCBwb3BvdmVyRWxlbSA9ICQoZWxlbWVudCk7XG4gICAgICAgIGxldCBwb3BvdmVyTGVmdCA9ICBwb3BvdmVyRWxlbS5vZmZzZXQoKS5sZWZ0O1xuICAgICAgICBjb25zdCBwb3BvdmVyV2lkdGggPSBwb3BvdmVyRWxlbVswXS5vZmZzZXRXaWR0aDtcbiAgICAgICAgY29uc3Qgdmlld1BvcnRXaWR0aCA9ICQod2luZG93KS53aWR0aCgpO1xuICAgICAgICBjb25zdCBwYXJlbnREaW1lc2lvbiA9IHRoaXMuYW5jaG9yUmVmLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICAgIC8vIEFkanVzdGluZyBwb3BvdmVyIHBvc2l0aW9uLCBpZiBpdCBpcyBub3QgdmlzaWJsZSBhdCBsZWZ0IHNpZGVcbiAgICAgICAgaWYgKHBvcG92ZXJMZWZ0IDwgMCkge1xuICAgICAgICAgICAgYWRqdXN0Q29udGFpbmVyUG9zaXRpb24ocG9wb3ZlckVsZW0sIHRoaXMubmF0aXZlRWxlbWVudCwgdGhpcy5ic1BvcG92ZXJEaXJlY3RpdmUuX3BvcG92ZXIpO1xuICAgICAgICAgICAgY29uc3QgcG9wb3ZlckxlZnRTaGlmdCA9IDQ7XG4gICAgICAgICAgICBjb25zdCBhcnJvd0xlZnRTaGlmdCA9IChwYXJlbnREaW1lc2lvbi5sZWZ0ICsgKHBhcmVudERpbWVzaW9uLndpZHRoIC8gMikpIC0gcG9wb3ZlckxlZnRTaGlmdDtcbiAgICAgICAgICAgIHRoaXMuYWRqdXN0UG9wb3ZlckFycm93UG9zaXRpb24ocG9wb3ZlckVsZW0sIGFycm93TGVmdFNoaWZ0KTtcbiAgICAgICAgfVxuICAgICAgICAvLyBBZGp1c3RpbmcgcG9wb3ZlciBwb3NpdGlvbiwgaWYgaXQgaXMgbm90IHZpc2libGUgYXQgcmlnaHQgc2lkZVxuICAgICAgICBpZiAocG9wb3ZlckxlZnQgKyBwb3BvdmVyV2lkdGggPiB2aWV3UG9ydFdpZHRoKSB7XG4gICAgICAgICAgICBhZGp1c3RDb250YWluZXJSaWdodEVkZ2VzKHBvcG92ZXJFbGVtLCB0aGlzLm5hdGl2ZUVsZW1lbnQsIHRoaXMuYnNQb3BvdmVyRGlyZWN0aXZlLl9wb3BvdmVyKTtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHBvcG92ZXJMZWZ0ID0gcG9wb3ZlckVsZW0ub2Zmc2V0KCkubGVmdDtcbiAgICAgICAgICAgICAgICBjb25zdCBwb3BvdmVyTGVmdEFkanVzdCA9IChwb3BvdmVyTGVmdCArIHBvcG92ZXJXaWR0aCkgLSB2aWV3UG9ydFdpZHRoO1xuICAgICAgICAgICAgICAgIGNvbnN0IHBvcG92ZXJMZWZ0U2hpZnQgPSAgcG9wb3ZlckxlZnQgLSBwb3BvdmVyTGVmdEFkanVzdDtcbiAgICAgICAgICAgICAgICBsZXQgYXJyb3dMZWZ0U2hpZnQgO1xuICAgICAgICAgICAgICAgIGlmKHBvcG92ZXJMZWZ0PD0xMDApe1xuICAgICAgICAgICAgICAgICAgICBhcnJvd0xlZnRTaGlmdCA9ICAocGFyZW50RGltZXNpb24ubGVmdCArIChwYXJlbnREaW1lc2lvbi53aWR0aCAvIDIpKSAtIHBvcG92ZXJMZWZ0O1xuICAgICAgICAgICAgICAgIH1lbHNle1xuICAgICAgICAgICAgICAgICAgICBhcnJvd0xlZnRTaGlmdCA9IChwYXJlbnREaW1lc2lvbi5sZWZ0ICsgKHBhcmVudERpbWVzaW9uLndpZHRoIC8gMikpIC0gcG9wb3ZlckxlZnRTaGlmdDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYodmlld1BvcnRXaWR0aCA+IDUwMCl7XG4gICAgICAgICAgICAgICAgICAgIGFycm93TGVmdFNoaWZ0ICs9IDMwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIHRoaXMuYWRqdXN0UG9wb3ZlckFycm93UG9zaXRpb24ocG9wb3ZlckVsZW0sIGFycm93TGVmdFNoaWZ0KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVHJpZ2dlciBvbiBzaG93aW5nIHBvcG92ZXJcbiAgICBwdWJsaWMgb25TaG93bigpIHtcbiAgICAgICAgY29uc3Qgcm9vdCA9IGZpbmRSb290Q29udGFpbmVyKHRoaXMuJGVsZW1lbnQpO1xuICAgICAgICAvLyBpZiBwYWdlIHN0eWxlcyBoYXZlIHRvIGJlIGFwcGxpZWQgdG8gcG9wb3ZlciB0aGVuIHBvcG92ZXIgaGFzIHRvIGJlIGNoaWxkIG9mIHBhZ2UgZWxlbWVudC5cbiAgICAgICAgaWYgKHJvb3QpIHtcbiAgICAgICAgICAgICQoJ2JvZHkgPiBwb3BvdmVyLWNvbnRhaW5lcicpLndyYXAoJzwnICsgcm9vdCArICcvPicpO1xuICAgICAgICB9XG4gICAgICAgIC8vIEZpeCBmb3IgW1dNUy0yNTEyNV06IE5vdCBjbG9zaW5nIHRoZSBleGlzdGluZyBvcGVuZWQgcG9wb3ZlcnMgd2hlbiB0aGUgYXV0b2Nsb3NlIHByb3BlcnR5IGlzIERJU0FCTEVEXG4gICAgICAgIGlmIChhY3RpdmVQb3BvdmVyICYmIGFjdGl2ZVBvcG92ZXIuaXNPcGVuICYmIGFjdGl2ZVBvcG92ZXIuYXV0b2Nsb3NlICE9PSBBVVRPQ0xPU0VfVFlQRS5ESVNBQkxFRCkge1xuICAgICAgICAgICAgYWN0aXZlUG9wb3Zlci5pc09wZW4gPSBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGFjdGl2ZVBvcG92ZXIgPSB0aGlzO1xuICAgICAgICBhY3RpdmVQb3BvdmVyLmlzT3BlbiA9IHRydWU7XG5cbiAgICAgICAgY29uc3QgcG9wb3ZlckNvbnRhaW5lciAgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGAuJHt0aGlzLnBvcG92ZXJDb250YWluZXJDbHN9YCkgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgIHNldENTU0Zyb21PYmoocG9wb3ZlckNvbnRhaW5lciwge1xuICAgICAgICAgICAgaGVpZ2h0OiB0aGlzLnBvcG92ZXJoZWlnaHQsXG4gICAgICAgICAgICBtaW5XaWR0aDogdGhpcy5wb3BvdmVyd2lkdGgsXG4gICAgICAgICAgICB3aWR0aDogdGhpcy5wb3BvdmVyd2lkdGhcbiAgICAgICAgfSk7XG4gICAgICAgIGlmICghdGhpcy5wb3BvdmVyYXJyb3cpIHtcbiAgICAgICAgICAgIGFkZENsYXNzKHBvcG92ZXJDb250YWluZXIucXVlcnlTZWxlY3RvcignLmFycm93JykgYXMgSFRNTEVsZW1lbnQsICdoaWRkZW4nKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pbnRlcmFjdGlvbiA9PT0gJ2hvdmVyJyB8fCB0aGlzLmludGVyYWN0aW9uID09PSAnZGVmYXVsdCcpIHtcblxuICAgICAgICAgICAgLy8gZG8gbm90IHVzZSBhZGRFdmVudExpc3RlbmVyIGhlcmVcbiAgICAgICAgICAgIC8vIGF0dGFjaGluZyB0aGUgZXZlbnQgdGhpcyB3YXkgd2lsbCBvdmVycmlkZSB0aGUgZXhpc3RpbmcgZXZlbnQgaGFuZGxlcnNcbiAgICAgICAgICAgIHBvcG92ZXJDb250YWluZXIub25tb3VzZWVudGVyID0gKCkgPT4gY2xlYXJUaW1lb3V0KHRoaXMuY2xvc2VQb3BvdmVyVGltZW91dCk7XG4gICAgICAgICAgICBwb3BvdmVyQ29udGFpbmVyLm9ubW91c2VsZWF2ZSA9ICgpID0+IHRoaXMuaGlkZVBvcG92ZXIoKTtcbiAgICAgICAgICAgIHRoaXMuYW5jaG9yUmVmLm5hdGl2ZUVsZW1lbnQub25tb3VzZWVudGVyID0gKCkgPT4gY2xlYXJUaW1lb3V0KHRoaXMuY2xvc2VQb3BvdmVyVGltZW91dCk7XG4gICAgICAgICAgICB0aGlzLmFuY2hvclJlZi5uYXRpdmVFbGVtZW50Lm9ubW91c2VsZWF2ZSA9ICgpID0+IHRoaXMuaGlkZVBvcG92ZXIoKTtcbiAgICAgICAgfVxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYW5jaG9yUmVmLm5hdGl2ZUVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWRlc2NyaWJlZGJ5Jyk7XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBkZVJlZ2lzdGVyID0gdGhpcy5ldmVudE1hbmFnZXIuYWRkRXZlbnRMaXN0ZW5lcihwb3BvdmVyQ29udGFpbmVyLCAna2V5ZG93bi5lc2MnLCAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5zZXRGb2N1c1RvUG9wb3ZlckxpbmsoKTtcbiAgICAgICAgICAgIGRlUmVnaXN0ZXIoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IHBvcG92ZXJTdGFydEJ0bjogSFRNTEVsZW1lbnQgPSBwb3BvdmVyQ29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJy5wb3BvdmVyLXN0YXJ0Jyk7XG4gICAgICAgIGNvbnN0IHBvcG92ZXJFbmRCdG46IEhUTUxFbGVtZW50ID0gcG9wb3ZlckNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCcucG9wb3Zlci1lbmQnKTtcbiAgICAgICAgcG9wb3ZlclN0YXJ0QnRuLm9ua2V5ZG93biA9IChldmVudCkgPT4ge1xuICAgICAgICAgICAgLy8gQ2hlY2sgZm9yIFNoaWZ0K1RhYiBrZXlcbiAgICAgICAgICAgIGlmIChldmVudC5zaGlmdEtleSAmJiBldmVudC5rZXkgPT09ICdUYWInKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5ic1BvcG92ZXJEaXJlY3RpdmUuaGlkZSgpO1xuICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRGb2N1c1RvUG9wb3ZlckxpbmsoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmlzT3BlbiA9IGZhbHNlOyAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgcG9wb3ZlckVuZEJ0bi5vbmtleWRvd24gPSAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgIC8vIENoZWNrIGZvciBUYWIga2V5XG4gICAgICAgICAgICBpZiAoIWV2ZW50LnNoaWZ0S2V5ICYmIGV2ZW50LmtleSA9PT0gJ1RhYicpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmJzUG9wb3ZlckRpcmVjdGl2ZS5oaWRlKCk7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnNldEZvY3VzVG9Qb3BvdmVyTGluaygpO1xuICAgICAgICAgICAgICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7ICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIC8vV2hlbmV2ZXIgYXV0b2Nsb3NlIHByb3BlcnR5IGlzIHNldCB0byAnYWx3YXlzJywgYWRkaW5nIHRoZSBvbmNsaWNrIGxpc3RlbmVyIHRvIHRoZSBwb3BvdmVyIGNvbnRhaW5lciB0byBjbG9zZSB0aGUgcG9wb3Zlci5cbiAgICAgICAgaWYgKHRoaXMuYXV0b2Nsb3NlID09PSBBVVRPQ0xPU0VfVFlQRS5BTFdBWVMpIHtcbiAgICAgICAgICAgIHBvcG92ZXJDb250YWluZXIub25jbGljayA9ICgpID0+IHRoaXMuY2xvc2UoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gcG9wb3ZlclN0YXJ0QnRuLmZvY3VzKCksIDUwKTtcbiAgICAgICAgLy8gQWRqdXN0aW5nIHBvcG92ZXIgcG9zaXRpb24gaWYgdGhlIHBvcG92ZXIgcGxhY2VtZW50IGlzIHRvcCBvciBib3R0b21cbiAgICAgICAgc2V0VGltZW91dCggKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmFkYXB0aXZlcG9zaXRpb24gKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jYWxjdWxhdGVQb3BvdmVyUG9zdGlvbihwb3BvdmVyQ29udGFpbmVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIHRyaWdnZXJpbmcgb25sb2FkIGFuZCBvbnNob3cgZXZlbnRzIGFmdGVyIHBvcG92ZXIgY29udGVudCBoYXMgcmVuZGVyZWRcbiAgICAgICAgICAgIHRoaXMudHJpZ2dlclBvcG92ZXJFdmVudHMoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgdHJpZ2dlclBvcG92ZXJFdmVudHMoKSB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRlbnRzb3VyY2UgPT09ICdwYXJ0aWFsJykge1xuICAgICAgICAgICAgY29uc3QgY2FuY2VsU3Vic2NyaXB0aW9uID0gdGhpcy5hcHAuc3Vic2NyaWJlKCdwYXJ0aWFsTG9hZGVkJywgKGRhdGEpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBwYXJFbGUgPSB0aGlzLnBhcnRpYWxSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgICAgICAgICBsZXQgcGFydGlhbFNjb3BlO1xuXG4gICAgICAgICAgICAgICAgaWYgKHBhckVsZSkge1xuICAgICAgICAgICAgICAgICAgICBwYXJ0aWFsU2NvcGUgID0gcGFyRWxlLndpZGdldDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5XaWRnZXRzICAgPSBwYXJ0aWFsU2NvcGUuV2lkZ2V0cztcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5WYXJpYWJsZXMgPSBwYXJ0aWFsU2NvcGUuVmFyaWFibGVzO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLkFjdGlvbnMgICA9IHBhcnRpYWxTY29wZS5BY3Rpb25zO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmludm9rZUV2ZW50Q2FsbGJhY2soJ2xvYWQnKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pbnZva2VFdmVudENhbGxiYWNrKCdzaG93JywgeyRldmVudDoge3R5cGU6ICdzaG93J319KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2FuY2VsU3Vic2NyaXB0aW9uKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuV2lkZ2V0cyAgID0gdGhpcy52aWV3UGFyZW50LldpZGdldHM7XG4gICAgICAgICAgICB0aGlzLlZhcmlhYmxlcyA9IHRoaXMudmlld1BhcmVudC5WYXJpYWJsZXM7XG4gICAgICAgICAgICB0aGlzLkFjdGlvbnMgICA9IHRoaXMudmlld1BhcmVudC5BY3Rpb25zO1xuICAgICAgICAgICAgdGhpcy5pbnZva2VFdmVudENhbGxiYWNrKCdzaG93JywgeyRldmVudDoge3R5cGU6ICdzaG93J319KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaGlkZVBvcG92ZXIoKSB7XG4gICAgICAgIHRoaXMuY2xvc2VQb3BvdmVyVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4gdGhpcy5pc09wZW4gPSBmYWxzZSwgNTAwKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNob3dQb3BvdmVyKCkge1xuICAgICAgICB0aGlzLmJzUG9wb3ZlckRpcmVjdGl2ZS5zaG93KCk7XG4gICAgfVxuXG4gICAgb25Qb3BvdmVyQW5jaG9yS2V5ZG93bigkZXZlbnQpIHtcbiAgICAgICAgLy8gaWYgdGhlcmUgaXMgbm8gY29udGVudCBhdmFpbGFibGUsIHRoZSBwb3BvdmVyIHNob3VsZCBub3Qgb3BlbiB0aHJvdWdoIGVudGVyIGtleS4gU28gY2hlY2tpbmcgd2hldGhlciB0aGUgY2FuUG9wb3Zlck9wZW4gZmxhZyBpcyB0cnVlIG9yIG5vdC5cbiAgICAgICAgaWYgKCF0aGlzLmNhblBvcG92ZXJPcGVuKSB7XG4gICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoJGV2ZW50LmtleSA9PT0gJ0VudGVyJykge1xuICAgICAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgdGhpcy5zaG93UG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25Qcm9wZXJ0eUNoYW5nZShrZXk6IHN0cmluZywgbnY6IGFueSwgb3Y/OiBhbnkpIHtcbiAgICAgICAgaWYgKGtleSA9PT0gJ2NsYXNzJyB8fCBrZXkgPT09ICd0YWJpbmRleCcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoa2V5ID09PSAnY29udGVudHNvdXJjZScpIHtcbiAgICAgICAgICAgIC8vIGlmIHRoZXJlIGlzIG5vIHBhcnRpYWwgY29udGVudCBhdmFpbGFibGUsIHRoZSBwb3BvdmVyIHNob3VsZCBub3Qgb3BlblxuICAgICAgICAgICAgaWYgKHRoaXMuY29udGVudHNvdXJjZSA9PT0gJ3BhcnRpYWwnICYmICF0aGlzLmNvbnRlbnQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNhblBvcG92ZXJPcGVuID0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGtleSA9PT0gJ2NvbnRlbnQnICYmIG52KSB7XG4gICAgICAgICAgICB0aGlzLmNhblBvcG92ZXJPcGVuID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoa2V5ID09PSAnYXV0b2Nsb3NlJykge1xuICAgICAgICAgICAgdGhpcy5vdXRzaWRlY2xpY2sgPSAobnYgPT09IEFVVE9DTE9TRV9UWVBFLk9VVFNJREVDTElDSyB8fCBudiA9PT0gQVVUT0NMT1NFX1RZUEUuQUxXQVlTKSA/IHRydWUgOiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICBzdXBlci5vblByb3BlcnR5Q2hhbmdlKGtleSwgbnYsIG92KTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5ldmVudCA9IGV2ZW50c01hcFt0aGlzLmludGVyYWN0aW9uXTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xuICAgICAgICBzdHlsZXIodGhpcy5hbmNob3JSZWYubmF0aXZlRWxlbWVudCwgdGhpcyk7XG4gICAgICAgIHRoaXMuY29udGFpbmVyVGFyZ2V0ID0gZ2V0Q29udGFpbmVyVGFyZ2V0Q2xhc3ModGhpcy5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgbGV0IHBhcmVudEVsZW1Qb3BvdmVyID0gJCh0aGlzLm5hdGl2ZUVsZW1lbnQpLnBhcmVudHMoKTtcbiAgICAgICAgaWYgKHBhcmVudEVsZW1Qb3BvdmVyLmNsb3Nlc3QoJ1t3bVRhYmxlXScpLmxlbmd0aCB8fFxuICAgICAgICAgICAgcGFyZW50RWxlbVBvcG92ZXIuY2xvc2VzdCgnW3dtdGFic10nKS5sZW5ndGggfHxcbiAgICAgICAgICAgIHBhcmVudEVsZW1Qb3BvdmVyLmNsb3Nlc3QoJ21vZGFsLWNvbnRhaW5lcicpLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5hZGFwdGl2ZXBvc2l0aW9uID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGV0YWNoKCkge1xuICAgICAgICAvLyBIaWRlIHRoZSBwb3BvdmVyIGNvbnRhaW5lciB3aGlsZSBhdHRhY2hpbmcgdGhlIG5leHQgY29tcG9uZW50IGFzIHBhcnQgb2YgcGFnZSByZXVzZSBzdHJhdGVneS5cbiAgICAgICAgdGhpcy5ic1BvcG92ZXJEaXJlY3RpdmUuaGlkZSgpO1xuICAgIH1cbn1cbiIsIjxhIFtwb3BvdmVyXT1cInBvcG92ZXJUZW1wbGF0ZVwiXG4gICAgW3BvcG92ZXJDb250ZXh0XT1cImNvbnRleHRcIlxuICAgIFtwb3BvdmVyVGl0bGVdPVwidGl0bGVcIlxuICAgIFtwbGFjZW1lbnRdPVwicG9wb3ZlcnBsYWNlbWVudFwiXG4gICAgW291dHNpZGVDbGlja109XCJvdXRzaWRlY2xpY2tcIlxuICAgIFt0cmlnZ2Vyc109XCJldmVudFwiXG4gICAgKG9uU2hvd24pPVwib25TaG93bigpXCJcbiAgICAob25IaWRkZW4pPVwib25IaWRkZW4oKVwiXG4gICAgY29udGFpbmVyQ2xhc3M9XCJhcHAtcG9wb3ZlciBhbmltYXRlZCB7e2NvbnRlbnRhbmltYXRpb259fSB7e3BvcG92ZXJDb250YWluZXJDbHN9fVwiXG4gICAgW2NvbnRhaW5lcl09XCJjb250YWluZXJUYXJnZXQgfHwgJ2JvZHknXCJcbiAgICBbaXNPcGVuXT1cImlzT3BlblwiXG4gICAgW3RhYmluZGV4XT1cInRhYmluZGV4XCJcbiAgICBbbmFtZV09XCJuYW1lXCJcbiAgICBbY2xhc3NdPVwiY2xhc3NcIlxuICAgIFtuZ0NsYXNzXT1cInsnZGlzYWJsZS1wb3BvdmVyJzogIWNhblBvcG92ZXJPcGVufVwiXG4gICAgW2FkYXB0aXZlUG9zaXRpb25dPVwiYWRhcHRpdmVwb3NpdGlvblwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCJoaW50IHx8ICdQb3BvdmVyIG1lbnUnXCJcbiAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImlzT3BlblwiXG4gICAgcm9sZT1cImJ1dHRvblwiXG4gICAgI2FuY2hvclxuICAgIG5hbWUuYmluZD1cIm5hbWVcIlxuICAgIHdtQW5jaG9yXG4gICAgYW5pbWF0aW9uLmJpbmQ9XCJhbmltYXRpb25cIlxuICAgIGJhZGdldmFsdWUuYmluZD1cImJhZGdldmFsdWVcIlxuICAgIGNhcHRpb24uYmluZD1cImNhcHRpb25cIlxuICAgIGVuY29kZXVybC5iaW5kPVwiZW5jb2RldXJsXCJcbiAgICBoaW50LmJpbmQ9XCJoaW50XCJcbiAgICBoeXBlcmxpbmsuYmluZD1cImh5cGVybGlua1wiXG4gICAgaWNvbnVybC5iaW5kPVwiaWNvbnVybFwiXG4gICAgaWNvbndpZHRoLmJpbmQ9XCJpY29ud2lkdGhcIlxuICAgIGljb25oZWlnaHQuYmluZD1cImljb25oZWlnaHRcIlxuICAgIGljb25tYXJnaW4uYmluZD1cImljb25tYXJnaW5cIlxuICAgIGljb25jbGFzcy5iaW5kPVwiaWNvbmNsYXNzXCJcbiAgICBpY29ucG9zaXRpb24uYmluZD1cImljb25wb3NpdGlvblwiXG4gICAgc2hvcnRjdXRrZXkuYmluZD1cInNob3J0Y3V0a2V5XCJcbiAgICB0YWJpbmRleC5iaW5kPVwidGFiaW5kZXhcIlxuICAgIChrZXlkb3duKT1cIm9uUG9wb3ZlckFuY2hvcktleWRvd24oJGV2ZW50KVwiPlxuPC9hPlxuIl19
@@ -127,7 +127,8 @@ class PopoverComponent extends StylableComponent {
127
127
  if (root) {
128
128
  $('body > popover-container').wrap('<' + root + '/>');
129
129
  }
130
- if (activePopover && activePopover.isOpen) {
130
+ // Fix for [WMS-25125]: Not closing the existing opened popovers when the autoclose property is DISABLED
131
+ if (activePopover && activePopover.isOpen && activePopover.autoclose !== AUTOCLOSE_TYPE.DISABLED) {
131
132
  activePopover.isOpen = false;
132
133
  }
133
134
  activePopover = this;
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/navigation/popover/src/popover.props.ts","../../../../../projects/components/widgets/navigation/popover/src/popover.component.ts","../../../../../projects/components/widgets/navigation/popover/src/popover.component.html","../../../../../projects/components/widgets/navigation/popover/src/popover.module.ts","../../../../../projects/components/widgets/navigation/popover/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-popover',\n new Map(\n [\n ['autoclose', {value: 'outsideClick', ...PROP_STRING}],\n ['badgevalue', PROP_STRING],\n ['caption', {value: 'Link', ...PROP_STRING}],\n ['class', PROP_STRING],\n ['conditionalclass', PROP_ANY],\n ['content', PROP_STRING],\n ['contentanimation', PROP_STRING],\n ['contentsource', {value: 'partial', ...PROP_STRING}],\n ['encodeurl', PROP_BOOLEAN],\n ['hint', PROP_STRING],\n ['hyperlink', {value: 'javascript:void(0)', PROP_STRING}],\n ['iconclass', PROP_STRING],\n ['iconheight', PROP_STRING],\n ['iconmargin', PROP_STRING],\n ['iconposition', PROP_STRING],\n ['iconurl', PROP_STRING],\n ['iconwidth', PROP_STRING],\n ['interaction', {value: 'click', ...PROP_STRING}],\n ['name', PROP_STRING],\n ['popoverarrow', {value: true, ...PROP_BOOLEAN}],\n ['popoverheight', PROP_STRING],\n ['popoverplacement', {value: 'bottom', ... PROP_STRING}],\n ['popoverwidth', PROP_STRING],\n ['shortcutkey', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['title', PROP_STRING],\n ['adaptiveposition', {value: true, ...PROP_BOOLEAN}]\n\n ]\n )\n );\n};\n","import { AfterViewInit, Component, ContentChild, ElementRef, Inject, Injector, OnInit, TemplateRef, ViewChild } from '@angular/core';\n\nimport { PopoverDirective } from 'ngx-bootstrap/popover';\n\nimport { addClass, App, setAttr, setCSSFromObj, findRootContainer, adjustContainerPosition, adjustContainerRightEdges} from '@wm/core';\nimport { APPLY_STYLES_TYPE, IWidgetConfig, styler, StylableComponent, provideAsWidgetRef, AUTOCLOSE_TYPE, getContainerTargetClass } from '@wm/components/base';\n\nimport { registerProps } from './popover.props';\n\ndeclare const _, $;\n\nconst DEFAULT_CLS = 'app-popover-wrapper';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-popover',\n hostClass: DEFAULT_CLS\n};\n\nconst eventsMap = {\n click: 'click',\n hover: 'mouseenter:click',\n default: 'click mouseenter'\n};\n\nlet activePopover: PopoverComponent;\n\n@Component({\n selector: 'wm-popover',\n templateUrl: './popover.component.html',\n providers: [\n provideAsWidgetRef(PopoverComponent)\n ]\n})\n\nexport class PopoverComponent extends StylableComponent implements OnInit, AfterViewInit {\n static initializeProps = registerProps();\n\n public event: string;\n public isOpen = false;\n private closePopoverTimeout;\n public readonly popoverContainerCls;\n public canPopoverOpen = true;\n private Widgets;\n private Variables;\n private Actions;\n\n public interaction: string;\n public popoverarrow: boolean;\n public popoverwidth: string;\n public popoverheight: string;\n public contentanimation: string;\n public contentsource: string;\n public content: string;\n public popoverplacement: string;\n public outsideclick: boolean;\n public autoclose: string;\n\n public class: string;\n public title: string;\n public tabindex: any;\n public name: string;\n public adaptiveposition:boolean;\n public containerTarget: string;\n public hint: string;\n\n @ViewChild(PopoverDirective) private bsPopoverDirective;\n @ViewChild('anchor', { static: true }) anchorRef: ElementRef;\n @ContentChild(TemplateRef) popoverTemplate;\n @ContentChild('partial') partialRef;\n\n constructor(inj: Injector, private app: App) {\n super(inj, WIDGET_CONFIG);\n this.popoverContainerCls = `app-popover-${this.widgetId}`;\n }\n\n // This mehtod is used to show/open the popover. This refers to the same method showPopover.\n public open() {\n this.showPopover();\n }\n\n // This mehtod is used to hide/close the popover.\n public close() {\n this.isOpen = false;\n }\n\n // Trigger on hiding popover\n public onHidden() {\n this.invokeEventCallback('hide', {$event: {type: 'hide'}});\n this.isOpen = false;\n }\n\n private setFocusToPopoverLink() {\n setTimeout(() => this.anchorRef.nativeElement.focus(), 10);\n }\n\n private adjustPopoverArrowPosition(popoverElem, popoverLeftShift) {\n this.bsPopoverDirective._popover._ngZone.onStable.subscribe(() => {\n popoverElem.find('.popover-arrow').css('left', popoverLeftShift + 'px');\n });\n }\n\n private calculatePopoverPostion(element) {\n\n const popoverElem = $(element);\n let popoverLeft = popoverElem.offset().left;\n const popoverWidth = popoverElem[0].offsetWidth;\n const viewPortWidth = $(window).width();\n const parentDimesion = this.anchorRef.nativeElement.getBoundingClientRect();\n // Adjusting popover position, if it is not visible at left side\n if (popoverLeft < 0) {\n adjustContainerPosition(popoverElem, this.nativeElement, this.bsPopoverDirective._popover);\n const popoverLeftShift = 4;\n const arrowLeftShift = (parentDimesion.left + (parentDimesion.width / 2)) - popoverLeftShift;\n this.adjustPopoverArrowPosition(popoverElem, arrowLeftShift);\n }\n // Adjusting popover position, if it is not visible at right side\n if (popoverLeft + popoverWidth > viewPortWidth) {\n adjustContainerRightEdges(popoverElem, this.nativeElement, this.bsPopoverDirective._popover);\n setTimeout(() => {\n popoverLeft = popoverElem.offset().left;\n const popoverLeftAdjust = (popoverLeft + popoverWidth) - viewPortWidth;\n const popoverLeftShift = popoverLeft - popoverLeftAdjust;\n let arrowLeftShift ;\n if(popoverLeft<=100){\n arrowLeftShift = (parentDimesion.left + (parentDimesion.width / 2)) - popoverLeft;\n }else{\n arrowLeftShift = (parentDimesion.left + (parentDimesion.width / 2)) - popoverLeftShift;\n }\n if(viewPortWidth > 500){\n arrowLeftShift += 30;\n }\n this.adjustPopoverArrowPosition(popoverElem, arrowLeftShift);\n });\n }\n }\n\n // Trigger on showing popover\n public onShown() {\n const root = findRootContainer(this.$element);\n // if page styles have to be applied to popover then popover has to be child of page element.\n if (root) {\n $('body > popover-container').wrap('<' + root + '/>');\n }\n\n if (activePopover && activePopover.isOpen) {\n activePopover.isOpen = false;\n }\n\n activePopover = this;\n activePopover.isOpen = true;\n\n const popoverContainer = document.querySelector(`.${this.popoverContainerCls}`) as HTMLElement;\n setCSSFromObj(popoverContainer, {\n height: this.popoverheight,\n minWidth: this.popoverwidth,\n width: this.popoverwidth\n });\n if (!this.popoverarrow) {\n addClass(popoverContainer.querySelector('.arrow') as HTMLElement, 'hidden');\n }\n if (this.interaction === 'hover' || this.interaction === 'default') {\n\n // do not use addEventListener here\n // attaching the event this way will override the existing event handlers\n popoverContainer.onmouseenter = () => clearTimeout(this.closePopoverTimeout);\n popoverContainer.onmouseleave = () => this.hidePopover();\n this.anchorRef.nativeElement.onmouseenter = () => clearTimeout(this.closePopoverTimeout);\n this.anchorRef.nativeElement.onmouseleave = () => this.hidePopover();\n }\n setTimeout(() => {\n this.anchorRef.nativeElement.removeAttribute('aria-describedby');\n });\n const deRegister = this.eventManager.addEventListener(popoverContainer, 'keydown.esc', () => {\n this.isOpen = false;\n this.setFocusToPopoverLink();\n deRegister();\n });\n const popoverStartBtn: HTMLElement = popoverContainer.querySelector('.popover-start');\n const popoverEndBtn: HTMLElement = popoverContainer.querySelector('.popover-end');\n popoverStartBtn.onkeydown = (event) => {\n // Check for Shift+Tab key\n if (event.shiftKey && event.key === 'Tab') {\n this.bsPopoverDirective.hide();\n event.preventDefault();\n this.setFocusToPopoverLink();\n this.isOpen = false; }\n };\n popoverEndBtn.onkeydown = (event) => {\n // Check for Tab key\n if (!event.shiftKey && event.key === 'Tab') {\n this.bsPopoverDirective.hide();\n event.preventDefault();\n this.setFocusToPopoverLink();\n this.isOpen = false; }\n };\n\n //Whenever autoclose property is set to 'always', adding the onclick listener to the popover container to close the popover.\n if (this.autoclose === AUTOCLOSE_TYPE.ALWAYS) {\n popoverContainer.onclick = () => this.close();\n }\n\n setTimeout(() => popoverStartBtn.focus(), 50);\n // Adjusting popover position if the popover placement is top or bottom\n setTimeout( () => {\n if (!this.adaptiveposition ) {\n this.calculatePopoverPostion(popoverContainer);\n }\n // triggering onload and onshow events after popover content has rendered\n this.triggerPopoverEvents();\n });\n }\n\n triggerPopoverEvents() {\n if (this.contentsource === 'partial') {\n const cancelSubscription = this.app.subscribe('partialLoaded', (data) => {\n const parEle = this.partialRef.nativeElement;\n let partialScope;\n\n if (parEle) {\n partialScope = parEle.widget;\n this.Widgets = partialScope.Widgets;\n this.Variables = partialScope.Variables;\n this.Actions = partialScope.Actions;\n this.invokeEventCallback('load');\n this.invokeEventCallback('show', {$event: {type: 'show'}});\n }\n cancelSubscription();\n });\n } else {\n this.Widgets = this.viewParent.Widgets;\n this.Variables = this.viewParent.Variables;\n this.Actions = this.viewParent.Actions;\n this.invokeEventCallback('show', {$event: {type: 'show'}});\n }\n }\n\n private hidePopover() {\n this.closePopoverTimeout = setTimeout(() => this.isOpen = false, 500);\n }\n\n private showPopover() {\n this.bsPopoverDirective.show();\n }\n\n onPopoverAnchorKeydown($event) {\n // if there is no content available, the popover should not open through enter key. So checking whether the canPopoverOpen flag is true or not.\n if (!this.canPopoverOpen) {\n return;\n }\n if ($event.key === 'Enter') {\n $event.stopPropagation();\n this.showPopover();\n }\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'class' || key === 'tabindex') {\n return;\n }\n if (key === 'contentsource') {\n // if there is no partial content available, the popover should not open\n if (this.contentsource === 'partial' && !this.content) {\n this.canPopoverOpen = false;\n }\n }\n if (key === 'content' && nv) {\n this.canPopoverOpen = true;\n }\n if (key === 'autoclose') {\n this.outsideclick = (nv === AUTOCLOSE_TYPE.OUTSIDECLICK || nv === AUTOCLOSE_TYPE.ALWAYS) ? true : false;\n }\n super.onPropertyChange(key, nv, ov);\n }\n\n ngOnInit() {\n super.ngOnInit();\n this.event = eventsMap[this.interaction];\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n styler(this.anchorRef.nativeElement, this);\n this.containerTarget = getContainerTargetClass(this.nativeElement);\n let parentElemPopover = $(this.nativeElement).parents();\n if (parentElemPopover.closest('[wmTable]').length ||\n parentElemPopover.closest('[wmtabs]').length ||\n parentElemPopover.closest('modal-container').length) {\n this.adaptiveposition = false;\n }\n }\n\n ngOnDetach() {\n // Hide the popover container while attaching the next component as part of page reuse strategy.\n this.bsPopoverDirective.hide();\n }\n}\n","<a [popover]=\"popoverTemplate\"\n [popoverContext]=\"context\"\n [popoverTitle]=\"title\"\n [placement]=\"popoverplacement\"\n [outsideClick]=\"outsideclick\"\n [triggers]=\"event\"\n (onShown)=\"onShown()\"\n (onHidden)=\"onHidden()\"\n containerClass=\"app-popover animated {{contentanimation}} {{popoverContainerCls}}\"\n [container]=\"containerTarget || 'body'\"\n [isOpen]=\"isOpen\"\n [tabindex]=\"tabindex\"\n [name]=\"name\"\n [class]=\"class\"\n [ngClass]=\"{'disable-popover': !canPopoverOpen}\"\n [adaptivePosition]=\"adaptiveposition\"\n [attr.aria-label]=\"hint || 'Popover menu'\"\n [attr.aria-expanded]=\"isOpen\"\n role=\"button\"\n #anchor\n name.bind=\"name\"\n wmAnchor\n animation.bind=\"animation\"\n badgevalue.bind=\"badgevalue\"\n caption.bind=\"caption\"\n encodeurl.bind=\"encodeurl\"\n hint.bind=\"hint\"\n hyperlink.bind=\"hyperlink\"\n iconurl.bind=\"iconurl\"\n iconwidth.bind=\"iconwidth\"\n iconheight.bind=\"iconheight\"\n iconmargin.bind=\"iconmargin\"\n iconclass.bind=\"iconclass\"\n iconposition.bind=\"iconposition\"\n shortcutkey.bind=\"shortcutkey\"\n tabindex.bind=\"tabindex\"\n (keydown)=\"onPopoverAnchorKeydown($event)\">\n</a>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { PopoverModule as NgxPopoverModule } from 'ngx-bootstrap/popover';\n\nimport { WmComponentsModule } from '@wm/components/base';\nimport { BasicModule } from '@wm/components/basic';\n\nimport { PopoverComponent } from './popover.component';\n\nconst components = [\n PopoverComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n BasicModule,\n NgxPopoverModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class PopoverModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["NgxPopoverModule"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/navigation/popover/src/popover.props.ts","../../../../../projects/components/widgets/navigation/popover/src/popover.component.ts","../../../../../projects/components/widgets/navigation/popover/src/popover.component.html","../../../../../projects/components/widgets/navigation/popover/src/popover.module.ts","../../../../../projects/components/widgets/navigation/popover/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-popover',\n new Map(\n [\n ['autoclose', {value: 'outsideClick', ...PROP_STRING}],\n ['badgevalue', PROP_STRING],\n ['caption', {value: 'Link', ...PROP_STRING}],\n ['class', PROP_STRING],\n ['conditionalclass', PROP_ANY],\n ['content', PROP_STRING],\n ['contentanimation', PROP_STRING],\n ['contentsource', {value: 'partial', ...PROP_STRING}],\n ['encodeurl', PROP_BOOLEAN],\n ['hint', PROP_STRING],\n ['hyperlink', {value: 'javascript:void(0)', PROP_STRING}],\n ['iconclass', PROP_STRING],\n ['iconheight', PROP_STRING],\n ['iconmargin', PROP_STRING],\n ['iconposition', PROP_STRING],\n ['iconurl', PROP_STRING],\n ['iconwidth', PROP_STRING],\n ['interaction', {value: 'click', ...PROP_STRING}],\n ['name', PROP_STRING],\n ['popoverarrow', {value: true, ...PROP_BOOLEAN}],\n ['popoverheight', PROP_STRING],\n ['popoverplacement', {value: 'bottom', ... PROP_STRING}],\n ['popoverwidth', PROP_STRING],\n ['shortcutkey', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['title', PROP_STRING],\n ['adaptiveposition', {value: true, ...PROP_BOOLEAN}]\n\n ]\n )\n );\n};\n","import { AfterViewInit, Component, ContentChild, ElementRef, Inject, Injector, OnInit, TemplateRef, ViewChild } from '@angular/core';\n\nimport { PopoverDirective } from 'ngx-bootstrap/popover';\n\nimport { addClass, App, setAttr, setCSSFromObj, findRootContainer, adjustContainerPosition, adjustContainerRightEdges} from '@wm/core';\nimport { APPLY_STYLES_TYPE, IWidgetConfig, styler, StylableComponent, provideAsWidgetRef, AUTOCLOSE_TYPE, getContainerTargetClass } from '@wm/components/base';\n\nimport { registerProps } from './popover.props';\n\ndeclare const _, $;\n\nconst DEFAULT_CLS = 'app-popover-wrapper';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-popover',\n hostClass: DEFAULT_CLS\n};\n\nconst eventsMap = {\n click: 'click',\n hover: 'mouseenter:click',\n default: 'click mouseenter'\n};\n\nlet activePopover: PopoverComponent;\n\n@Component({\n selector: 'wm-popover',\n templateUrl: './popover.component.html',\n providers: [\n provideAsWidgetRef(PopoverComponent)\n ]\n})\n\nexport class PopoverComponent extends StylableComponent implements OnInit, AfterViewInit {\n static initializeProps = registerProps();\n\n public event: string;\n public isOpen = false;\n private closePopoverTimeout;\n public readonly popoverContainerCls;\n public canPopoverOpen = true;\n private Widgets;\n private Variables;\n private Actions;\n\n public interaction: string;\n public popoverarrow: boolean;\n public popoverwidth: string;\n public popoverheight: string;\n public contentanimation: string;\n public contentsource: string;\n public content: string;\n public popoverplacement: string;\n public outsideclick: boolean;\n public autoclose: string;\n\n public class: string;\n public title: string;\n public tabindex: any;\n public name: string;\n public adaptiveposition:boolean;\n public containerTarget: string;\n public hint: string;\n\n @ViewChild(PopoverDirective) private bsPopoverDirective;\n @ViewChild('anchor', { static: true }) anchorRef: ElementRef;\n @ContentChild(TemplateRef) popoverTemplate;\n @ContentChild('partial') partialRef;\n\n constructor(inj: Injector, private app: App) {\n super(inj, WIDGET_CONFIG);\n this.popoverContainerCls = `app-popover-${this.widgetId}`;\n }\n\n // This mehtod is used to show/open the popover. This refers to the same method showPopover.\n public open() {\n this.showPopover();\n }\n\n // This mehtod is used to hide/close the popover.\n public close() {\n this.isOpen = false;\n }\n\n // Trigger on hiding popover\n public onHidden() {\n this.invokeEventCallback('hide', {$event: {type: 'hide'}});\n this.isOpen = false;\n }\n\n private setFocusToPopoverLink() {\n setTimeout(() => this.anchorRef.nativeElement.focus(), 10);\n }\n\n private adjustPopoverArrowPosition(popoverElem, popoverLeftShift) {\n this.bsPopoverDirective._popover._ngZone.onStable.subscribe(() => {\n popoverElem.find('.popover-arrow').css('left', popoverLeftShift + 'px');\n });\n }\n\n private calculatePopoverPostion(element) {\n\n const popoverElem = $(element);\n let popoverLeft = popoverElem.offset().left;\n const popoverWidth = popoverElem[0].offsetWidth;\n const viewPortWidth = $(window).width();\n const parentDimesion = this.anchorRef.nativeElement.getBoundingClientRect();\n // Adjusting popover position, if it is not visible at left side\n if (popoverLeft < 0) {\n adjustContainerPosition(popoverElem, this.nativeElement, this.bsPopoverDirective._popover);\n const popoverLeftShift = 4;\n const arrowLeftShift = (parentDimesion.left + (parentDimesion.width / 2)) - popoverLeftShift;\n this.adjustPopoverArrowPosition(popoverElem, arrowLeftShift);\n }\n // Adjusting popover position, if it is not visible at right side\n if (popoverLeft + popoverWidth > viewPortWidth) {\n adjustContainerRightEdges(popoverElem, this.nativeElement, this.bsPopoverDirective._popover);\n setTimeout(() => {\n popoverLeft = popoverElem.offset().left;\n const popoverLeftAdjust = (popoverLeft + popoverWidth) - viewPortWidth;\n const popoverLeftShift = popoverLeft - popoverLeftAdjust;\n let arrowLeftShift ;\n if(popoverLeft<=100){\n arrowLeftShift = (parentDimesion.left + (parentDimesion.width / 2)) - popoverLeft;\n }else{\n arrowLeftShift = (parentDimesion.left + (parentDimesion.width / 2)) - popoverLeftShift;\n }\n if(viewPortWidth > 500){\n arrowLeftShift += 30;\n }\n this.adjustPopoverArrowPosition(popoverElem, arrowLeftShift);\n });\n }\n }\n\n // Trigger on showing popover\n public onShown() {\n const root = findRootContainer(this.$element);\n // if page styles have to be applied to popover then popover has to be child of page element.\n if (root) {\n $('body > popover-container').wrap('<' + root + '/>');\n }\n // Fix for [WMS-25125]: Not closing the existing opened popovers when the autoclose property is DISABLED\n if (activePopover && activePopover.isOpen && activePopover.autoclose !== AUTOCLOSE_TYPE.DISABLED) {\n activePopover.isOpen = false;\n }\n\n activePopover = this;\n activePopover.isOpen = true;\n\n const popoverContainer = document.querySelector(`.${this.popoverContainerCls}`) as HTMLElement;\n setCSSFromObj(popoverContainer, {\n height: this.popoverheight,\n minWidth: this.popoverwidth,\n width: this.popoverwidth\n });\n if (!this.popoverarrow) {\n addClass(popoverContainer.querySelector('.arrow') as HTMLElement, 'hidden');\n }\n if (this.interaction === 'hover' || this.interaction === 'default') {\n\n // do not use addEventListener here\n // attaching the event this way will override the existing event handlers\n popoverContainer.onmouseenter = () => clearTimeout(this.closePopoverTimeout);\n popoverContainer.onmouseleave = () => this.hidePopover();\n this.anchorRef.nativeElement.onmouseenter = () => clearTimeout(this.closePopoverTimeout);\n this.anchorRef.nativeElement.onmouseleave = () => this.hidePopover();\n }\n setTimeout(() => {\n this.anchorRef.nativeElement.removeAttribute('aria-describedby');\n });\n const deRegister = this.eventManager.addEventListener(popoverContainer, 'keydown.esc', () => {\n this.isOpen = false;\n this.setFocusToPopoverLink();\n deRegister();\n });\n const popoverStartBtn: HTMLElement = popoverContainer.querySelector('.popover-start');\n const popoverEndBtn: HTMLElement = popoverContainer.querySelector('.popover-end');\n popoverStartBtn.onkeydown = (event) => {\n // Check for Shift+Tab key\n if (event.shiftKey && event.key === 'Tab') {\n this.bsPopoverDirective.hide();\n event.preventDefault();\n this.setFocusToPopoverLink();\n this.isOpen = false; }\n };\n popoverEndBtn.onkeydown = (event) => {\n // Check for Tab key\n if (!event.shiftKey && event.key === 'Tab') {\n this.bsPopoverDirective.hide();\n event.preventDefault();\n this.setFocusToPopoverLink();\n this.isOpen = false; }\n };\n\n //Whenever autoclose property is set to 'always', adding the onclick listener to the popover container to close the popover.\n if (this.autoclose === AUTOCLOSE_TYPE.ALWAYS) {\n popoverContainer.onclick = () => this.close();\n }\n\n setTimeout(() => popoverStartBtn.focus(), 50);\n // Adjusting popover position if the popover placement is top or bottom\n setTimeout( () => {\n if (!this.adaptiveposition ) {\n this.calculatePopoverPostion(popoverContainer);\n }\n // triggering onload and onshow events after popover content has rendered\n this.triggerPopoverEvents();\n });\n }\n\n triggerPopoverEvents() {\n if (this.contentsource === 'partial') {\n const cancelSubscription = this.app.subscribe('partialLoaded', (data) => {\n const parEle = this.partialRef.nativeElement;\n let partialScope;\n\n if (parEle) {\n partialScope = parEle.widget;\n this.Widgets = partialScope.Widgets;\n this.Variables = partialScope.Variables;\n this.Actions = partialScope.Actions;\n this.invokeEventCallback('load');\n this.invokeEventCallback('show', {$event: {type: 'show'}});\n }\n cancelSubscription();\n });\n } else {\n this.Widgets = this.viewParent.Widgets;\n this.Variables = this.viewParent.Variables;\n this.Actions = this.viewParent.Actions;\n this.invokeEventCallback('show', {$event: {type: 'show'}});\n }\n }\n\n private hidePopover() {\n this.closePopoverTimeout = setTimeout(() => this.isOpen = false, 500);\n }\n\n private showPopover() {\n this.bsPopoverDirective.show();\n }\n\n onPopoverAnchorKeydown($event) {\n // if there is no content available, the popover should not open through enter key. So checking whether the canPopoverOpen flag is true or not.\n if (!this.canPopoverOpen) {\n return;\n }\n if ($event.key === 'Enter') {\n $event.stopPropagation();\n this.showPopover();\n }\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'class' || key === 'tabindex') {\n return;\n }\n if (key === 'contentsource') {\n // if there is no partial content available, the popover should not open\n if (this.contentsource === 'partial' && !this.content) {\n this.canPopoverOpen = false;\n }\n }\n if (key === 'content' && nv) {\n this.canPopoverOpen = true;\n }\n if (key === 'autoclose') {\n this.outsideclick = (nv === AUTOCLOSE_TYPE.OUTSIDECLICK || nv === AUTOCLOSE_TYPE.ALWAYS) ? true : false;\n }\n super.onPropertyChange(key, nv, ov);\n }\n\n ngOnInit() {\n super.ngOnInit();\n this.event = eventsMap[this.interaction];\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n styler(this.anchorRef.nativeElement, this);\n this.containerTarget = getContainerTargetClass(this.nativeElement);\n let parentElemPopover = $(this.nativeElement).parents();\n if (parentElemPopover.closest('[wmTable]').length ||\n parentElemPopover.closest('[wmtabs]').length ||\n parentElemPopover.closest('modal-container').length) {\n this.adaptiveposition = false;\n }\n }\n\n ngOnDetach() {\n // Hide the popover container while attaching the next component as part of page reuse strategy.\n this.bsPopoverDirective.hide();\n }\n}\n","<a [popover]=\"popoverTemplate\"\n [popoverContext]=\"context\"\n [popoverTitle]=\"title\"\n [placement]=\"popoverplacement\"\n [outsideClick]=\"outsideclick\"\n [triggers]=\"event\"\n (onShown)=\"onShown()\"\n (onHidden)=\"onHidden()\"\n containerClass=\"app-popover animated {{contentanimation}} {{popoverContainerCls}}\"\n [container]=\"containerTarget || 'body'\"\n [isOpen]=\"isOpen\"\n [tabindex]=\"tabindex\"\n [name]=\"name\"\n [class]=\"class\"\n [ngClass]=\"{'disable-popover': !canPopoverOpen}\"\n [adaptivePosition]=\"adaptiveposition\"\n [attr.aria-label]=\"hint || 'Popover menu'\"\n [attr.aria-expanded]=\"isOpen\"\n role=\"button\"\n #anchor\n name.bind=\"name\"\n wmAnchor\n animation.bind=\"animation\"\n badgevalue.bind=\"badgevalue\"\n caption.bind=\"caption\"\n encodeurl.bind=\"encodeurl\"\n hint.bind=\"hint\"\n hyperlink.bind=\"hyperlink\"\n iconurl.bind=\"iconurl\"\n iconwidth.bind=\"iconwidth\"\n iconheight.bind=\"iconheight\"\n iconmargin.bind=\"iconmargin\"\n iconclass.bind=\"iconclass\"\n iconposition.bind=\"iconposition\"\n shortcutkey.bind=\"shortcutkey\"\n tabindex.bind=\"tabindex\"\n (keydown)=\"onPopoverAnchorKeydown($event)\">\n</a>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { PopoverModule as NgxPopoverModule } from 'ngx-bootstrap/popover';\n\nimport { WmComponentsModule } from '@wm/components/base';\nimport { BasicModule } from '@wm/components/basic';\n\nimport { PopoverComponent } from './popover.component';\n\nconst components = [\n PopoverComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n BasicModule,\n NgxPopoverModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class PopoverModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["NgxPopoverModule"],"mappings":"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"}
@@ -127,7 +127,8 @@ class PopoverComponent extends StylableComponent {
127
127
  if (root) {
128
128
  $('body > popover-container').wrap('<' + root + '/>');
129
129
  }
130
- if (activePopover && activePopover.isOpen) {
130
+ // Fix for [WMS-25125]: Not closing the existing opened popovers when the autoclose property is DISABLED
131
+ if (activePopover && activePopover.isOpen && activePopover.autoclose !== AUTOCLOSE_TYPE.DISABLED) {
131
132
  activePopover.isOpen = false;
132
133
  }
133
134
  activePopover = this;
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/navigation/popover/src/popover.props.ts","../../../../../projects/components/widgets/navigation/popover/src/popover.component.ts","../../../../../projects/components/widgets/navigation/popover/src/popover.component.html","../../../../../projects/components/widgets/navigation/popover/src/popover.module.ts","../../../../../projects/components/widgets/navigation/popover/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-popover',\n new Map(\n [\n ['autoclose', {value: 'outsideClick', ...PROP_STRING}],\n ['badgevalue', PROP_STRING],\n ['caption', {value: 'Link', ...PROP_STRING}],\n ['class', PROP_STRING],\n ['conditionalclass', PROP_ANY],\n ['content', PROP_STRING],\n ['contentanimation', PROP_STRING],\n ['contentsource', {value: 'partial', ...PROP_STRING}],\n ['encodeurl', PROP_BOOLEAN],\n ['hint', PROP_STRING],\n ['hyperlink', {value: 'javascript:void(0)', PROP_STRING}],\n ['iconclass', PROP_STRING],\n ['iconheight', PROP_STRING],\n ['iconmargin', PROP_STRING],\n ['iconposition', PROP_STRING],\n ['iconurl', PROP_STRING],\n ['iconwidth', PROP_STRING],\n ['interaction', {value: 'click', ...PROP_STRING}],\n ['name', PROP_STRING],\n ['popoverarrow', {value: true, ...PROP_BOOLEAN}],\n ['popoverheight', PROP_STRING],\n ['popoverplacement', {value: 'bottom', ... PROP_STRING}],\n ['popoverwidth', PROP_STRING],\n ['shortcutkey', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['title', PROP_STRING],\n ['adaptiveposition', {value: true, ...PROP_BOOLEAN}]\n\n ]\n )\n );\n};\n","import { AfterViewInit, Component, ContentChild, ElementRef, Inject, Injector, OnInit, TemplateRef, ViewChild } from '@angular/core';\n\nimport { PopoverDirective } from 'ngx-bootstrap/popover';\n\nimport { addClass, App, setAttr, setCSSFromObj, findRootContainer, adjustContainerPosition, adjustContainerRightEdges} from '@wm/core';\nimport { APPLY_STYLES_TYPE, IWidgetConfig, styler, StylableComponent, provideAsWidgetRef, AUTOCLOSE_TYPE, getContainerTargetClass } from '@wm/components/base';\n\nimport { registerProps } from './popover.props';\n\ndeclare const _, $;\n\nconst DEFAULT_CLS = 'app-popover-wrapper';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-popover',\n hostClass: DEFAULT_CLS\n};\n\nconst eventsMap = {\n click: 'click',\n hover: 'mouseenter:click',\n default: 'click mouseenter'\n};\n\nlet activePopover: PopoverComponent;\n\n@Component({\n selector: 'wm-popover',\n templateUrl: './popover.component.html',\n providers: [\n provideAsWidgetRef(PopoverComponent)\n ]\n})\n\nexport class PopoverComponent extends StylableComponent implements OnInit, AfterViewInit {\n static initializeProps = registerProps();\n\n public event: string;\n public isOpen = false;\n private closePopoverTimeout;\n public readonly popoverContainerCls;\n public canPopoverOpen = true;\n private Widgets;\n private Variables;\n private Actions;\n\n public interaction: string;\n public popoverarrow: boolean;\n public popoverwidth: string;\n public popoverheight: string;\n public contentanimation: string;\n public contentsource: string;\n public content: string;\n public popoverplacement: string;\n public outsideclick: boolean;\n public autoclose: string;\n\n public class: string;\n public title: string;\n public tabindex: any;\n public name: string;\n public adaptiveposition:boolean;\n public containerTarget: string;\n public hint: string;\n\n @ViewChild(PopoverDirective) private bsPopoverDirective;\n @ViewChild('anchor', { static: true }) anchorRef: ElementRef;\n @ContentChild(TemplateRef) popoverTemplate;\n @ContentChild('partial') partialRef;\n\n constructor(inj: Injector, private app: App) {\n super(inj, WIDGET_CONFIG);\n this.popoverContainerCls = `app-popover-${this.widgetId}`;\n }\n\n // This mehtod is used to show/open the popover. This refers to the same method showPopover.\n public open() {\n this.showPopover();\n }\n\n // This mehtod is used to hide/close the popover.\n public close() {\n this.isOpen = false;\n }\n\n // Trigger on hiding popover\n public onHidden() {\n this.invokeEventCallback('hide', {$event: {type: 'hide'}});\n this.isOpen = false;\n }\n\n private setFocusToPopoverLink() {\n setTimeout(() => this.anchorRef.nativeElement.focus(), 10);\n }\n\n private adjustPopoverArrowPosition(popoverElem, popoverLeftShift) {\n this.bsPopoverDirective._popover._ngZone.onStable.subscribe(() => {\n popoverElem.find('.popover-arrow').css('left', popoverLeftShift + 'px');\n });\n }\n\n private calculatePopoverPostion(element) {\n\n const popoverElem = $(element);\n let popoverLeft = popoverElem.offset().left;\n const popoverWidth = popoverElem[0].offsetWidth;\n const viewPortWidth = $(window).width();\n const parentDimesion = this.anchorRef.nativeElement.getBoundingClientRect();\n // Adjusting popover position, if it is not visible at left side\n if (popoverLeft < 0) {\n adjustContainerPosition(popoverElem, this.nativeElement, this.bsPopoverDirective._popover);\n const popoverLeftShift = 4;\n const arrowLeftShift = (parentDimesion.left + (parentDimesion.width / 2)) - popoverLeftShift;\n this.adjustPopoverArrowPosition(popoverElem, arrowLeftShift);\n }\n // Adjusting popover position, if it is not visible at right side\n if (popoverLeft + popoverWidth > viewPortWidth) {\n adjustContainerRightEdges(popoverElem, this.nativeElement, this.bsPopoverDirective._popover);\n setTimeout(() => {\n popoverLeft = popoverElem.offset().left;\n const popoverLeftAdjust = (popoverLeft + popoverWidth) - viewPortWidth;\n const popoverLeftShift = popoverLeft - popoverLeftAdjust;\n let arrowLeftShift ;\n if(popoverLeft<=100){\n arrowLeftShift = (parentDimesion.left + (parentDimesion.width / 2)) - popoverLeft;\n }else{\n arrowLeftShift = (parentDimesion.left + (parentDimesion.width / 2)) - popoverLeftShift;\n }\n if(viewPortWidth > 500){\n arrowLeftShift += 30;\n }\n this.adjustPopoverArrowPosition(popoverElem, arrowLeftShift);\n });\n }\n }\n\n // Trigger on showing popover\n public onShown() {\n const root = findRootContainer(this.$element);\n // if page styles have to be applied to popover then popover has to be child of page element.\n if (root) {\n $('body > popover-container').wrap('<' + root + '/>');\n }\n\n if (activePopover && activePopover.isOpen) {\n activePopover.isOpen = false;\n }\n\n activePopover = this;\n activePopover.isOpen = true;\n\n const popoverContainer = document.querySelector(`.${this.popoverContainerCls}`) as HTMLElement;\n setCSSFromObj(popoverContainer, {\n height: this.popoverheight,\n minWidth: this.popoverwidth,\n width: this.popoverwidth\n });\n if (!this.popoverarrow) {\n addClass(popoverContainer.querySelector('.arrow') as HTMLElement, 'hidden');\n }\n if (this.interaction === 'hover' || this.interaction === 'default') {\n\n // do not use addEventListener here\n // attaching the event this way will override the existing event handlers\n popoverContainer.onmouseenter = () => clearTimeout(this.closePopoverTimeout);\n popoverContainer.onmouseleave = () => this.hidePopover();\n this.anchorRef.nativeElement.onmouseenter = () => clearTimeout(this.closePopoverTimeout);\n this.anchorRef.nativeElement.onmouseleave = () => this.hidePopover();\n }\n setTimeout(() => {\n this.anchorRef.nativeElement.removeAttribute('aria-describedby');\n });\n const deRegister = this.eventManager.addEventListener(popoverContainer, 'keydown.esc', () => {\n this.isOpen = false;\n this.setFocusToPopoverLink();\n deRegister();\n });\n const popoverStartBtn: HTMLElement = popoverContainer.querySelector('.popover-start');\n const popoverEndBtn: HTMLElement = popoverContainer.querySelector('.popover-end');\n popoverStartBtn.onkeydown = (event) => {\n // Check for Shift+Tab key\n if (event.shiftKey && event.key === 'Tab') {\n this.bsPopoverDirective.hide();\n event.preventDefault();\n this.setFocusToPopoverLink();\n this.isOpen = false; }\n };\n popoverEndBtn.onkeydown = (event) => {\n // Check for Tab key\n if (!event.shiftKey && event.key === 'Tab') {\n this.bsPopoverDirective.hide();\n event.preventDefault();\n this.setFocusToPopoverLink();\n this.isOpen = false; }\n };\n\n //Whenever autoclose property is set to 'always', adding the onclick listener to the popover container to close the popover.\n if (this.autoclose === AUTOCLOSE_TYPE.ALWAYS) {\n popoverContainer.onclick = () => this.close();\n }\n\n setTimeout(() => popoverStartBtn.focus(), 50);\n // Adjusting popover position if the popover placement is top or bottom\n setTimeout( () => {\n if (!this.adaptiveposition ) {\n this.calculatePopoverPostion(popoverContainer);\n }\n // triggering onload and onshow events after popover content has rendered\n this.triggerPopoverEvents();\n });\n }\n\n triggerPopoverEvents() {\n if (this.contentsource === 'partial') {\n const cancelSubscription = this.app.subscribe('partialLoaded', (data) => {\n const parEle = this.partialRef.nativeElement;\n let partialScope;\n\n if (parEle) {\n partialScope = parEle.widget;\n this.Widgets = partialScope.Widgets;\n this.Variables = partialScope.Variables;\n this.Actions = partialScope.Actions;\n this.invokeEventCallback('load');\n this.invokeEventCallback('show', {$event: {type: 'show'}});\n }\n cancelSubscription();\n });\n } else {\n this.Widgets = this.viewParent.Widgets;\n this.Variables = this.viewParent.Variables;\n this.Actions = this.viewParent.Actions;\n this.invokeEventCallback('show', {$event: {type: 'show'}});\n }\n }\n\n private hidePopover() {\n this.closePopoverTimeout = setTimeout(() => this.isOpen = false, 500);\n }\n\n private showPopover() {\n this.bsPopoverDirective.show();\n }\n\n onPopoverAnchorKeydown($event) {\n // if there is no content available, the popover should not open through enter key. So checking whether the canPopoverOpen flag is true or not.\n if (!this.canPopoverOpen) {\n return;\n }\n if ($event.key === 'Enter') {\n $event.stopPropagation();\n this.showPopover();\n }\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'class' || key === 'tabindex') {\n return;\n }\n if (key === 'contentsource') {\n // if there is no partial content available, the popover should not open\n if (this.contentsource === 'partial' && !this.content) {\n this.canPopoverOpen = false;\n }\n }\n if (key === 'content' && nv) {\n this.canPopoverOpen = true;\n }\n if (key === 'autoclose') {\n this.outsideclick = (nv === AUTOCLOSE_TYPE.OUTSIDECLICK || nv === AUTOCLOSE_TYPE.ALWAYS) ? true : false;\n }\n super.onPropertyChange(key, nv, ov);\n }\n\n ngOnInit() {\n super.ngOnInit();\n this.event = eventsMap[this.interaction];\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n styler(this.anchorRef.nativeElement, this);\n this.containerTarget = getContainerTargetClass(this.nativeElement);\n let parentElemPopover = $(this.nativeElement).parents();\n if (parentElemPopover.closest('[wmTable]').length ||\n parentElemPopover.closest('[wmtabs]').length ||\n parentElemPopover.closest('modal-container').length) {\n this.adaptiveposition = false;\n }\n }\n\n ngOnDetach() {\n // Hide the popover container while attaching the next component as part of page reuse strategy.\n this.bsPopoverDirective.hide();\n }\n}\n","<a [popover]=\"popoverTemplate\"\n [popoverContext]=\"context\"\n [popoverTitle]=\"title\"\n [placement]=\"popoverplacement\"\n [outsideClick]=\"outsideclick\"\n [triggers]=\"event\"\n (onShown)=\"onShown()\"\n (onHidden)=\"onHidden()\"\n containerClass=\"app-popover animated {{contentanimation}} {{popoverContainerCls}}\"\n [container]=\"containerTarget || 'body'\"\n [isOpen]=\"isOpen\"\n [tabindex]=\"tabindex\"\n [name]=\"name\"\n [class]=\"class\"\n [ngClass]=\"{'disable-popover': !canPopoverOpen}\"\n [adaptivePosition]=\"adaptiveposition\"\n [attr.aria-label]=\"hint || 'Popover menu'\"\n [attr.aria-expanded]=\"isOpen\"\n role=\"button\"\n #anchor\n name.bind=\"name\"\n wmAnchor\n animation.bind=\"animation\"\n badgevalue.bind=\"badgevalue\"\n caption.bind=\"caption\"\n encodeurl.bind=\"encodeurl\"\n hint.bind=\"hint\"\n hyperlink.bind=\"hyperlink\"\n iconurl.bind=\"iconurl\"\n iconwidth.bind=\"iconwidth\"\n iconheight.bind=\"iconheight\"\n iconmargin.bind=\"iconmargin\"\n iconclass.bind=\"iconclass\"\n iconposition.bind=\"iconposition\"\n shortcutkey.bind=\"shortcutkey\"\n tabindex.bind=\"tabindex\"\n (keydown)=\"onPopoverAnchorKeydown($event)\">\n</a>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { PopoverModule as NgxPopoverModule } from 'ngx-bootstrap/popover';\n\nimport { WmComponentsModule } from '@wm/components/base';\nimport { BasicModule } from '@wm/components/basic';\n\nimport { PopoverComponent } from './popover.component';\n\nconst components = [\n PopoverComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n BasicModule,\n NgxPopoverModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class PopoverModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["NgxPopoverModule"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/navigation/popover/src/popover.props.ts","../../../../../projects/components/widgets/navigation/popover/src/popover.component.ts","../../../../../projects/components/widgets/navigation/popover/src/popover.component.html","../../../../../projects/components/widgets/navigation/popover/src/popover.module.ts","../../../../../projects/components/widgets/navigation/popover/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-popover',\n new Map(\n [\n ['autoclose', {value: 'outsideClick', ...PROP_STRING}],\n ['badgevalue', PROP_STRING],\n ['caption', {value: 'Link', ...PROP_STRING}],\n ['class', PROP_STRING],\n ['conditionalclass', PROP_ANY],\n ['content', PROP_STRING],\n ['contentanimation', PROP_STRING],\n ['contentsource', {value: 'partial', ...PROP_STRING}],\n ['encodeurl', PROP_BOOLEAN],\n ['hint', PROP_STRING],\n ['hyperlink', {value: 'javascript:void(0)', PROP_STRING}],\n ['iconclass', PROP_STRING],\n ['iconheight', PROP_STRING],\n ['iconmargin', PROP_STRING],\n ['iconposition', PROP_STRING],\n ['iconurl', PROP_STRING],\n ['iconwidth', PROP_STRING],\n ['interaction', {value: 'click', ...PROP_STRING}],\n ['name', PROP_STRING],\n ['popoverarrow', {value: true, ...PROP_BOOLEAN}],\n ['popoverheight', PROP_STRING],\n ['popoverplacement', {value: 'bottom', ... PROP_STRING}],\n ['popoverwidth', PROP_STRING],\n ['shortcutkey', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['title', PROP_STRING],\n ['adaptiveposition', {value: true, ...PROP_BOOLEAN}]\n\n ]\n )\n );\n};\n","import { AfterViewInit, Component, ContentChild, ElementRef, Inject, Injector, OnInit, TemplateRef, ViewChild } from '@angular/core';\n\nimport { PopoverDirective } from 'ngx-bootstrap/popover';\n\nimport { addClass, App, setAttr, setCSSFromObj, findRootContainer, adjustContainerPosition, adjustContainerRightEdges} from '@wm/core';\nimport { APPLY_STYLES_TYPE, IWidgetConfig, styler, StylableComponent, provideAsWidgetRef, AUTOCLOSE_TYPE, getContainerTargetClass } from '@wm/components/base';\n\nimport { registerProps } from './popover.props';\n\ndeclare const _, $;\n\nconst DEFAULT_CLS = 'app-popover-wrapper';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-popover',\n hostClass: DEFAULT_CLS\n};\n\nconst eventsMap = {\n click: 'click',\n hover: 'mouseenter:click',\n default: 'click mouseenter'\n};\n\nlet activePopover: PopoverComponent;\n\n@Component({\n selector: 'wm-popover',\n templateUrl: './popover.component.html',\n providers: [\n provideAsWidgetRef(PopoverComponent)\n ]\n})\n\nexport class PopoverComponent extends StylableComponent implements OnInit, AfterViewInit {\n static initializeProps = registerProps();\n\n public event: string;\n public isOpen = false;\n private closePopoverTimeout;\n public readonly popoverContainerCls;\n public canPopoverOpen = true;\n private Widgets;\n private Variables;\n private Actions;\n\n public interaction: string;\n public popoverarrow: boolean;\n public popoverwidth: string;\n public popoverheight: string;\n public contentanimation: string;\n public contentsource: string;\n public content: string;\n public popoverplacement: string;\n public outsideclick: boolean;\n public autoclose: string;\n\n public class: string;\n public title: string;\n public tabindex: any;\n public name: string;\n public adaptiveposition:boolean;\n public containerTarget: string;\n public hint: string;\n\n @ViewChild(PopoverDirective) private bsPopoverDirective;\n @ViewChild('anchor', { static: true }) anchorRef: ElementRef;\n @ContentChild(TemplateRef) popoverTemplate;\n @ContentChild('partial') partialRef;\n\n constructor(inj: Injector, private app: App) {\n super(inj, WIDGET_CONFIG);\n this.popoverContainerCls = `app-popover-${this.widgetId}`;\n }\n\n // This mehtod is used to show/open the popover. This refers to the same method showPopover.\n public open() {\n this.showPopover();\n }\n\n // This mehtod is used to hide/close the popover.\n public close() {\n this.isOpen = false;\n }\n\n // Trigger on hiding popover\n public onHidden() {\n this.invokeEventCallback('hide', {$event: {type: 'hide'}});\n this.isOpen = false;\n }\n\n private setFocusToPopoverLink() {\n setTimeout(() => this.anchorRef.nativeElement.focus(), 10);\n }\n\n private adjustPopoverArrowPosition(popoverElem, popoverLeftShift) {\n this.bsPopoverDirective._popover._ngZone.onStable.subscribe(() => {\n popoverElem.find('.popover-arrow').css('left', popoverLeftShift + 'px');\n });\n }\n\n private calculatePopoverPostion(element) {\n\n const popoverElem = $(element);\n let popoverLeft = popoverElem.offset().left;\n const popoverWidth = popoverElem[0].offsetWidth;\n const viewPortWidth = $(window).width();\n const parentDimesion = this.anchorRef.nativeElement.getBoundingClientRect();\n // Adjusting popover position, if it is not visible at left side\n if (popoverLeft < 0) {\n adjustContainerPosition(popoverElem, this.nativeElement, this.bsPopoverDirective._popover);\n const popoverLeftShift = 4;\n const arrowLeftShift = (parentDimesion.left + (parentDimesion.width / 2)) - popoverLeftShift;\n this.adjustPopoverArrowPosition(popoverElem, arrowLeftShift);\n }\n // Adjusting popover position, if it is not visible at right side\n if (popoverLeft + popoverWidth > viewPortWidth) {\n adjustContainerRightEdges(popoverElem, this.nativeElement, this.bsPopoverDirective._popover);\n setTimeout(() => {\n popoverLeft = popoverElem.offset().left;\n const popoverLeftAdjust = (popoverLeft + popoverWidth) - viewPortWidth;\n const popoverLeftShift = popoverLeft - popoverLeftAdjust;\n let arrowLeftShift ;\n if(popoverLeft<=100){\n arrowLeftShift = (parentDimesion.left + (parentDimesion.width / 2)) - popoverLeft;\n }else{\n arrowLeftShift = (parentDimesion.left + (parentDimesion.width / 2)) - popoverLeftShift;\n }\n if(viewPortWidth > 500){\n arrowLeftShift += 30;\n }\n this.adjustPopoverArrowPosition(popoverElem, arrowLeftShift);\n });\n }\n }\n\n // Trigger on showing popover\n public onShown() {\n const root = findRootContainer(this.$element);\n // if page styles have to be applied to popover then popover has to be child of page element.\n if (root) {\n $('body > popover-container').wrap('<' + root + '/>');\n }\n // Fix for [WMS-25125]: Not closing the existing opened popovers when the autoclose property is DISABLED\n if (activePopover && activePopover.isOpen && activePopover.autoclose !== AUTOCLOSE_TYPE.DISABLED) {\n activePopover.isOpen = false;\n }\n\n activePopover = this;\n activePopover.isOpen = true;\n\n const popoverContainer = document.querySelector(`.${this.popoverContainerCls}`) as HTMLElement;\n setCSSFromObj(popoverContainer, {\n height: this.popoverheight,\n minWidth: this.popoverwidth,\n width: this.popoverwidth\n });\n if (!this.popoverarrow) {\n addClass(popoverContainer.querySelector('.arrow') as HTMLElement, 'hidden');\n }\n if (this.interaction === 'hover' || this.interaction === 'default') {\n\n // do not use addEventListener here\n // attaching the event this way will override the existing event handlers\n popoverContainer.onmouseenter = () => clearTimeout(this.closePopoverTimeout);\n popoverContainer.onmouseleave = () => this.hidePopover();\n this.anchorRef.nativeElement.onmouseenter = () => clearTimeout(this.closePopoverTimeout);\n this.anchorRef.nativeElement.onmouseleave = () => this.hidePopover();\n }\n setTimeout(() => {\n this.anchorRef.nativeElement.removeAttribute('aria-describedby');\n });\n const deRegister = this.eventManager.addEventListener(popoverContainer, 'keydown.esc', () => {\n this.isOpen = false;\n this.setFocusToPopoverLink();\n deRegister();\n });\n const popoverStartBtn: HTMLElement = popoverContainer.querySelector('.popover-start');\n const popoverEndBtn: HTMLElement = popoverContainer.querySelector('.popover-end');\n popoverStartBtn.onkeydown = (event) => {\n // Check for Shift+Tab key\n if (event.shiftKey && event.key === 'Tab') {\n this.bsPopoverDirective.hide();\n event.preventDefault();\n this.setFocusToPopoverLink();\n this.isOpen = false; }\n };\n popoverEndBtn.onkeydown = (event) => {\n // Check for Tab key\n if (!event.shiftKey && event.key === 'Tab') {\n this.bsPopoverDirective.hide();\n event.preventDefault();\n this.setFocusToPopoverLink();\n this.isOpen = false; }\n };\n\n //Whenever autoclose property is set to 'always', adding the onclick listener to the popover container to close the popover.\n if (this.autoclose === AUTOCLOSE_TYPE.ALWAYS) {\n popoverContainer.onclick = () => this.close();\n }\n\n setTimeout(() => popoverStartBtn.focus(), 50);\n // Adjusting popover position if the popover placement is top or bottom\n setTimeout( () => {\n if (!this.adaptiveposition ) {\n this.calculatePopoverPostion(popoverContainer);\n }\n // triggering onload and onshow events after popover content has rendered\n this.triggerPopoverEvents();\n });\n }\n\n triggerPopoverEvents() {\n if (this.contentsource === 'partial') {\n const cancelSubscription = this.app.subscribe('partialLoaded', (data) => {\n const parEle = this.partialRef.nativeElement;\n let partialScope;\n\n if (parEle) {\n partialScope = parEle.widget;\n this.Widgets = partialScope.Widgets;\n this.Variables = partialScope.Variables;\n this.Actions = partialScope.Actions;\n this.invokeEventCallback('load');\n this.invokeEventCallback('show', {$event: {type: 'show'}});\n }\n cancelSubscription();\n });\n } else {\n this.Widgets = this.viewParent.Widgets;\n this.Variables = this.viewParent.Variables;\n this.Actions = this.viewParent.Actions;\n this.invokeEventCallback('show', {$event: {type: 'show'}});\n }\n }\n\n private hidePopover() {\n this.closePopoverTimeout = setTimeout(() => this.isOpen = false, 500);\n }\n\n private showPopover() {\n this.bsPopoverDirective.show();\n }\n\n onPopoverAnchorKeydown($event) {\n // if there is no content available, the popover should not open through enter key. So checking whether the canPopoverOpen flag is true or not.\n if (!this.canPopoverOpen) {\n return;\n }\n if ($event.key === 'Enter') {\n $event.stopPropagation();\n this.showPopover();\n }\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'class' || key === 'tabindex') {\n return;\n }\n if (key === 'contentsource') {\n // if there is no partial content available, the popover should not open\n if (this.contentsource === 'partial' && !this.content) {\n this.canPopoverOpen = false;\n }\n }\n if (key === 'content' && nv) {\n this.canPopoverOpen = true;\n }\n if (key === 'autoclose') {\n this.outsideclick = (nv === AUTOCLOSE_TYPE.OUTSIDECLICK || nv === AUTOCLOSE_TYPE.ALWAYS) ? true : false;\n }\n super.onPropertyChange(key, nv, ov);\n }\n\n ngOnInit() {\n super.ngOnInit();\n this.event = eventsMap[this.interaction];\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n styler(this.anchorRef.nativeElement, this);\n this.containerTarget = getContainerTargetClass(this.nativeElement);\n let parentElemPopover = $(this.nativeElement).parents();\n if (parentElemPopover.closest('[wmTable]').length ||\n parentElemPopover.closest('[wmtabs]').length ||\n parentElemPopover.closest('modal-container').length) {\n this.adaptiveposition = false;\n }\n }\n\n ngOnDetach() {\n // Hide the popover container while attaching the next component as part of page reuse strategy.\n this.bsPopoverDirective.hide();\n }\n}\n","<a [popover]=\"popoverTemplate\"\n [popoverContext]=\"context\"\n [popoverTitle]=\"title\"\n [placement]=\"popoverplacement\"\n [outsideClick]=\"outsideclick\"\n [triggers]=\"event\"\n (onShown)=\"onShown()\"\n (onHidden)=\"onHidden()\"\n containerClass=\"app-popover animated {{contentanimation}} {{popoverContainerCls}}\"\n [container]=\"containerTarget || 'body'\"\n [isOpen]=\"isOpen\"\n [tabindex]=\"tabindex\"\n [name]=\"name\"\n [class]=\"class\"\n [ngClass]=\"{'disable-popover': !canPopoverOpen}\"\n [adaptivePosition]=\"adaptiveposition\"\n [attr.aria-label]=\"hint || 'Popover menu'\"\n [attr.aria-expanded]=\"isOpen\"\n role=\"button\"\n #anchor\n name.bind=\"name\"\n wmAnchor\n animation.bind=\"animation\"\n badgevalue.bind=\"badgevalue\"\n caption.bind=\"caption\"\n encodeurl.bind=\"encodeurl\"\n hint.bind=\"hint\"\n hyperlink.bind=\"hyperlink\"\n iconurl.bind=\"iconurl\"\n iconwidth.bind=\"iconwidth\"\n iconheight.bind=\"iconheight\"\n iconmargin.bind=\"iconmargin\"\n iconclass.bind=\"iconclass\"\n iconposition.bind=\"iconposition\"\n shortcutkey.bind=\"shortcutkey\"\n tabindex.bind=\"tabindex\"\n (keydown)=\"onPopoverAnchorKeydown($event)\">\n</a>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { PopoverModule as NgxPopoverModule } from 'ngx-bootstrap/popover';\n\nimport { WmComponentsModule } from '@wm/components/base';\nimport { BasicModule } from '@wm/components/basic';\n\nimport { PopoverComponent } from './popover.component';\n\nconst components = [\n PopoverComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n BasicModule,\n NgxPopoverModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class PopoverModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["NgxPopoverModule"],"mappings":"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"}
@@ -144,6 +144,7 @@
144
144
  }
145
145
  ngOnDestroy() {
146
146
  this.callback('destroy');
147
+ super.ngOnDestroy();
147
148
  }
148
149
  }
149
150
  PrefabContainerDirective.initializeProps = registerProps();
@@ -29,6 +29,7 @@ export class PrefabContainerDirective extends StylableComponent {
29
29
  }
30
30
  ngOnDestroy() {
31
31
  this.callback('destroy');
32
+ super.ngOnDestroy();
32
33
  }
33
34
  }
34
35
  PrefabContainerDirective.initializeProps = registerProps();
@@ -45,4 +46,4 @@ PrefabContainerDirective.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: Pr
45
46
  ]
46
47
  }]
47
48
  }], function () { return [{ type: i0.Injector }, { type: i1.Viewport }]; }, null); })();
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZmFiLWNvbnRhaW5lci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvcHJlZmFiL3NyYy9wcmVmYWItY29udGFpbmVyL3ByZWZhYi1jb250YWluZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsUUFBUSxFQUFzQixNQUFNLGVBQWUsQ0FBQztBQUV2RSxPQUFPLEVBQWlCLGtCQUFrQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25HLE9BQU8sRUFBQyxRQUFRLEVBQWdCLE1BQU0sVUFBVSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBRXpELE1BQU0sV0FBVyxHQUFHLGtDQUFrQyxDQUFDO0FBQ3ZELE1BQU0sYUFBYSxHQUFrQjtJQUNqQyxVQUFVLEVBQUUscUJBQXFCO0lBQ2pDLFNBQVMsRUFBRSxXQUFXO0NBQ3pCLENBQUM7QUFTRixNQUFNLE9BQU8sd0JBQXlCLFNBQVEsaUJBQWlCO0lBRzNELFlBQVksR0FBYSxFQUFVLFFBQWtCO1FBQ2pELEtBQUssQ0FBQyxHQUFHLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFESyxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBRWpELE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRWpDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsc0NBQXVCLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25ILElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsNkRBQW1DLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDOUksQ0FBQztJQUVPLFFBQVEsQ0FBQyxTQUFTLEVBQUUsTUFBZTtRQUN2QyxNQUFNLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFTSxVQUFVO1FBQ2IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRU0sVUFBVTtRQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVNLFdBQVc7UUFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzdCLENBQUM7O0FBekJNLHdDQUFlLEdBQUcsYUFBYSxFQUFFLENBQUM7Z0dBRGhDLHdCQUF3QjsyRUFBeEIsd0JBQXdCLCtFQUp0QjtZQUNQLGtCQUFrQixDQUFDLHdCQUF3QixDQUFDO1NBQy9DO3VGQUVRLHdCQUF3QjtjQU5wQyxTQUFTO2VBQUM7Z0JBQ1AsUUFBUSxFQUFFLHFCQUFxQjtnQkFDL0IsU0FBUyxFQUFFO29CQUNQLGtCQUFrQiwwQkFBMEI7aUJBQy9DO2FBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgSW5qZWN0b3IsIE9uRGVzdHJveSwgT3B0aW9uYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBJV2lkZ2V0Q29uZmlnLCBwcm92aWRlQXNXaWRnZXRSZWYsIFN0eWxhYmxlQ29tcG9uZW50LCBzdHlsZXIgfSBmcm9tICdAd20vY29tcG9uZW50cy9iYXNlJztcbmltcG9ydCB7Vmlld3BvcnQsIFZpZXdwb3J0RXZlbnR9IGZyb20gJ0B3bS9jb3JlJztcbmltcG9ydCB7IHJlZ2lzdGVyUHJvcHMgfSBmcm9tICcuL3ByZWZhYi1jb250YWluZXIucHJvcHMnO1xuXG5jb25zdCBERUZBVUxUX0NMUyA9ICdhcHAtcHJlZmFiLWNvbnRhaW5lciBmdWxsLWhlaWdodCc7XG5jb25zdCBXSURHRVRfQ09ORklHOiBJV2lkZ2V0Q29uZmlnID0ge1xuICAgIHdpZGdldFR5cGU6ICd3bS1wcmVmYWItY29udGFpbmVyJyxcbiAgICBob3N0Q2xhc3M6IERFRkFVTFRfQ0xTXG59O1xuZGVjbGFyZSBjb25zdCBfO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1t3bVByZWZhYkNvbnRhaW5lcl0nLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBwcm92aWRlQXNXaWRnZXRSZWYoUHJlZmFiQ29udGFpbmVyRGlyZWN0aXZlKVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgUHJlZmFiQ29udGFpbmVyRGlyZWN0aXZlIGV4dGVuZHMgU3R5bGFibGVDb21wb25lbnQgIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICBzdGF0aWMgaW5pdGlhbGl6ZVByb3BzID0gcmVnaXN0ZXJQcm9wcygpO1xuXG4gICAgY29uc3RydWN0b3IoaW5qOiBJbmplY3RvciwgcHJpdmF0ZSB2aWV3cG9ydDogVmlld3BvcnQpIHtcbiAgICAgICAgc3VwZXIoaW5qLCBXSURHRVRfQ09ORklHKTtcbiAgICAgICAgc3R5bGVyKHRoaXMubmF0aXZlRWxlbWVudCwgdGhpcyk7XG5cbiAgICAgICAgdGhpcy5yZWdpc3RlckRlc3Ryb3lMaXN0ZW5lcih0aGlzLnZpZXdwb3J0LnN1YnNjcmliZShWaWV3cG9ydEV2ZW50LlJFU0laRSwgZGF0YSA9PiB0aGlzLmNhbGxiYWNrKCdyZXNpemUnLCBkYXRhKSkpO1xuICAgICAgICB0aGlzLnJlZ2lzdGVyRGVzdHJveUxpc3RlbmVyKHRoaXMudmlld3BvcnQuc3Vic2NyaWJlKFZpZXdwb3J0RXZlbnQuT1JJRU5UQVRJT05fQ0hBTkdFLCBkYXRhID0+IHRoaXMuY2FsbGJhY2soJ29yaWVudGF0aW9uY2hhbmdlJywgZGF0YSkpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNhbGxiYWNrKGV2ZW50TmFtZSwgbG9jYWxzPzogb2JqZWN0KSB7XG4gICAgICAgIGxvY2FscyA9IF8uYXNzaWduKHsgd2lkZ2V0OiB0aGlzIH0sIGxvY2Fscyk7XG4gICAgICAgIHRoaXMuaW52b2tlRXZlbnRDYWxsYmFjayhldmVudE5hbWUsIGxvY2Fscyk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25BdHRhY2goKSB7XG4gICAgICAgIHRoaXMuY2FsbGJhY2soJ2F0dGFjaCcpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGV0YWNoKCkge1xuICAgICAgICB0aGlzLmNhbGxiYWNrKCdkZXRhY2gnKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuY2FsbGJhY2soJ2Rlc3Ryb3knKTtcbiAgICB9XG59XG4iXX0=
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlZmFiLWNvbnRhaW5lci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3dpZGdldHMvcHJlZmFiL3NyYy9wcmVmYWItY29udGFpbmVyL3ByZWZhYi1jb250YWluZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsUUFBUSxFQUFzQixNQUFNLGVBQWUsQ0FBQztBQUV2RSxPQUFPLEVBQWlCLGtCQUFrQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25HLE9BQU8sRUFBQyxRQUFRLEVBQWdCLE1BQU0sVUFBVSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBRXpELE1BQU0sV0FBVyxHQUFHLGtDQUFrQyxDQUFDO0FBQ3ZELE1BQU0sYUFBYSxHQUFrQjtJQUNqQyxVQUFVLEVBQUUscUJBQXFCO0lBQ2pDLFNBQVMsRUFBRSxXQUFXO0NBQ3pCLENBQUM7QUFTRixNQUFNLE9BQU8sd0JBQXlCLFNBQVEsaUJBQWlCO0lBRzNELFlBQVksR0FBYSxFQUFVLFFBQWtCO1FBQ2pELEtBQUssQ0FBQyxHQUFHLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFESyxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBRWpELE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRWpDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsc0NBQXVCLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25ILElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsNkRBQW1DLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDOUksQ0FBQztJQUVPLFFBQVEsQ0FBQyxTQUFTLEVBQUUsTUFBZTtRQUN2QyxNQUFNLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFTSxVQUFVO1FBQ2IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRU0sVUFBVTtRQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVNLFdBQVc7UUFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3pCLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4QixDQUFDOztBQTFCTSx3Q0FBZSxHQUFHLGFBQWEsRUFBRSxDQUFDO2dHQURoQyx3QkFBd0I7MkVBQXhCLHdCQUF3QiwrRUFKdEI7WUFDUCxrQkFBa0IsQ0FBQyx3QkFBd0IsQ0FBQztTQUMvQzt1RkFFUSx3QkFBd0I7Y0FOcEMsU0FBUztlQUFDO2dCQUNQLFFBQVEsRUFBRSxxQkFBcUI7Z0JBQy9CLFNBQVMsRUFBRTtvQkFDUCxrQkFBa0IsMEJBQTBCO2lCQUMvQzthQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEluamVjdG9yLCBPbkRlc3Ryb3ksIE9wdGlvbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgSVdpZGdldENvbmZpZywgcHJvdmlkZUFzV2lkZ2V0UmVmLCBTdHlsYWJsZUNvbXBvbmVudCwgc3R5bGVyIH0gZnJvbSAnQHdtL2NvbXBvbmVudHMvYmFzZSc7XG5pbXBvcnQge1ZpZXdwb3J0LCBWaWV3cG9ydEV2ZW50fSBmcm9tICdAd20vY29yZSc7XG5pbXBvcnQgeyByZWdpc3RlclByb3BzIH0gZnJvbSAnLi9wcmVmYWItY29udGFpbmVyLnByb3BzJztcblxuY29uc3QgREVGQVVMVF9DTFMgPSAnYXBwLXByZWZhYi1jb250YWluZXIgZnVsbC1oZWlnaHQnO1xuY29uc3QgV0lER0VUX0NPTkZJRzogSVdpZGdldENvbmZpZyA9IHtcbiAgICB3aWRnZXRUeXBlOiAnd20tcHJlZmFiLWNvbnRhaW5lcicsXG4gICAgaG9zdENsYXNzOiBERUZBVUxUX0NMU1xufTtcbmRlY2xhcmUgY29uc3QgXztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbd21QcmVmYWJDb250YWluZXJdJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgcHJvdmlkZUFzV2lkZ2V0UmVmKFByZWZhYkNvbnRhaW5lckRpcmVjdGl2ZSlcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFByZWZhYkNvbnRhaW5lckRpcmVjdGl2ZSBleHRlbmRzIFN0eWxhYmxlQ29tcG9uZW50ICBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgc3RhdGljIGluaXRpYWxpemVQcm9wcyA9IHJlZ2lzdGVyUHJvcHMoKTtcblxuICAgIGNvbnN0cnVjdG9yKGluajogSW5qZWN0b3IsIHByaXZhdGUgdmlld3BvcnQ6IFZpZXdwb3J0KSB7XG4gICAgICAgIHN1cGVyKGluaiwgV0lER0VUX0NPTkZJRyk7XG4gICAgICAgIHN0eWxlcih0aGlzLm5hdGl2ZUVsZW1lbnQsIHRoaXMpO1xuXG4gICAgICAgIHRoaXMucmVnaXN0ZXJEZXN0cm95TGlzdGVuZXIodGhpcy52aWV3cG9ydC5zdWJzY3JpYmUoVmlld3BvcnRFdmVudC5SRVNJWkUsIGRhdGEgPT4gdGhpcy5jYWxsYmFjaygncmVzaXplJywgZGF0YSkpKTtcbiAgICAgICAgdGhpcy5yZWdpc3RlckRlc3Ryb3lMaXN0ZW5lcih0aGlzLnZpZXdwb3J0LnN1YnNjcmliZShWaWV3cG9ydEV2ZW50Lk9SSUVOVEFUSU9OX0NIQU5HRSwgZGF0YSA9PiB0aGlzLmNhbGxiYWNrKCdvcmllbnRhdGlvbmNoYW5nZScsIGRhdGEpKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxsYmFjayhldmVudE5hbWUsIGxvY2Fscz86IG9iamVjdCkge1xuICAgICAgICBsb2NhbHMgPSBfLmFzc2lnbih7IHdpZGdldDogdGhpcyB9LCBsb2NhbHMpO1xuICAgICAgICB0aGlzLmludm9rZUV2ZW50Q2FsbGJhY2soZXZlbnROYW1lLCBsb2NhbHMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uQXR0YWNoKCkge1xuICAgICAgICB0aGlzLmNhbGxiYWNrKCdhdHRhY2gnKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkRldGFjaCgpIHtcbiAgICAgICAgdGhpcy5jYWxsYmFjaygnZGV0YWNoJyk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmNhbGxiYWNrKCdkZXN0cm95Jyk7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgfVxufVxuIl19
@@ -125,6 +125,7 @@ class PrefabContainerDirective extends StylableComponent {
125
125
  }
126
126
  ngOnDestroy() {
127
127
  this.callback('destroy');
128
+ super.ngOnDestroy();
128
129
  }
129
130
  }
130
131
  PrefabContainerDirective.initializeProps = registerProps();
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../projects/components/widgets/prefab/src/prefab.props.ts","../../../../projects/components/widgets/prefab/src/prefab.directive.ts","../../../../projects/components/widgets/prefab/src/prefab-container/prefab-container.props.ts","../../../../projects/components/widgets/prefab/src/prefab-container/prefab-container.directive.ts","../../../../projects/components/widgets/prefab/src/prefab.module.ts","../../../../projects/components/widgets/prefab/src/index.ts"],"sourcesContent":["import { PROP_BOOLEAN, PROP_STRING } from '@wm/components/base'; \n\nexport const prefabProps = new Map(\n [\n ['animation', PROP_STRING],\n ['class', {value: '', ...PROP_STRING}],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}]\n ]\n);\n","import {Attribute, ChangeDetectorRef, Directive, ElementRef, Injector, OnDestroy, Optional} from '@angular/core';\n\nimport {setCSS, noop} from '@wm/core';\n\nimport { PROP_TYPE, register, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';\nimport { prefabProps } from './prefab.props';\n\nconst DEFAULT_CLS = 'app-prefab';\n\nconst registeredPropsSet = new Set<string>();\n\ndeclare const _;\n\n@Directive({\n selector: 'section[wmPrefab]',\n providers: [\n provideAsWidgetRef(PrefabDirective)\n ]\n})\nexport class PrefabDirective extends StylableComponent implements OnDestroy {\n\n widgetType: string;\n prefabName: string;\n name: string;\n propsReady: Function;\n\n constructor(inj: Injector, elRef: ElementRef, cdr: ChangeDetectorRef, @Attribute('prefabname') prefabName) {\n const widgetType = `wm-prefab-${prefabName}`;\n const WIDGET_CONFIG = {widgetType, hostClass: DEFAULT_CLS};\n let resolveFn: Function = noop;\n\n super(inj, WIDGET_CONFIG, new Promise(res => resolveFn = res));\n this.propsReady = resolveFn;\n this.prefabName = prefabName;\n this.widgetType = widgetType;\n this.name = elRef.nativeElement.getAttribute('name');\n\n styler(this.nativeElement, this);\n\n // Call on property change on name to set name attribute on element.\n this.registerReadyStateListener(() => {\n super.onPropertyChange('name', this.name);\n });\n }\n\n onStyleChange(key: string, nv: any, ov: any) {\n if (key === 'height') {\n setCSS(this.nativeElement, 'overflow', 'auto');\n }\n }\n\n public setProps(config) {\n if (!config || !config.properties) {\n return;\n }\n\n if (!registeredPropsSet.has(this.widgetType)) {\n register(this.widgetType, this.prepareProps(config.properties));\n }\n\n this.propsReady();\n }\n\n protected handleEvent() {\n // do not call the super;\n // prevent events from getting registered\n }\n\n private prepareProps(props = {}) {\n const propsMap = new Map(prefabProps);\n Object.entries(props).forEach(([k, v]: [string, any]) => {\n let type = PROP_TYPE.STRING;\n\n if (v.type === 'boolean') {\n type = PROP_TYPE.BOOLEAN;\n } else if (v.type === 'number') {\n type = PROP_TYPE.NUMBER;\n } else if (v.type !== 'string') {\n type = v.type;\n }\n\n // Do not set the 'bind:*' values\n propsMap.set(k, {type, value: _.startsWith(v.value, 'bind:') ? undefined : v.value});\n });\n\n registeredPropsSet.add(this.widgetType);\n\n return propsMap;\n }\n\n ngOnDestroy() {\n this.invokeEventCallback('destroy', { widget: this });\n }\n}\n","import { PROP_BOOLEAN, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-prefab-container',\n new Map(\n [\n ['class', PROP_STRING],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ]\n )\n );\n};\n","import {Directive, Injector, OnDestroy, Optional} from '@angular/core';\n\nimport { IWidgetConfig, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';\nimport {Viewport, ViewportEvent} from '@wm/core';\nimport { registerProps } from './prefab-container.props';\n\nconst DEFAULT_CLS = 'app-prefab-container full-height';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-prefab-container',\n hostClass: DEFAULT_CLS\n};\ndeclare const _;\n\n@Directive({\n selector: '[wmPrefabContainer]',\n providers: [\n provideAsWidgetRef(PrefabContainerDirective)\n ]\n})\nexport class PrefabContainerDirective extends StylableComponent implements OnDestroy {\n static initializeProps = registerProps();\n\n constructor(inj: Injector, private viewport: Viewport) {\n super(inj, WIDGET_CONFIG);\n styler(this.nativeElement, this);\n\n this.registerDestroyListener(this.viewport.subscribe(ViewportEvent.RESIZE, data => this.callback('resize', data)));\n this.registerDestroyListener(this.viewport.subscribe(ViewportEvent.ORIENTATION_CHANGE, data => this.callback('orientationchange', data)));\n }\n\n private callback(eventName, locals?: object) {\n locals = _.assign({ widget: this }, locals);\n this.invokeEventCallback(eventName, locals);\n }\n\n public ngOnAttach() {\n this.callback('attach');\n }\n\n public ngOnDetach() {\n this.callback('detach');\n }\n\n public ngOnDestroy() {\n this.callback('destroy');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { PrefabDirective } from './prefab.directive';\nimport { PrefabContainerDirective } from './prefab-container/prefab-container.directive';\n\nconst components = [\n PrefabDirective,\n PrefabContainerDirective\n];\n\n@NgModule({\n imports: [\n CommonModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class PrefabModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["DEFAULT_CLS"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../projects/components/widgets/prefab/src/prefab.props.ts","../../../../projects/components/widgets/prefab/src/prefab.directive.ts","../../../../projects/components/widgets/prefab/src/prefab-container/prefab-container.props.ts","../../../../projects/components/widgets/prefab/src/prefab-container/prefab-container.directive.ts","../../../../projects/components/widgets/prefab/src/prefab.module.ts","../../../../projects/components/widgets/prefab/src/index.ts"],"sourcesContent":["import { PROP_BOOLEAN, PROP_STRING } from '@wm/components/base'; \n\nexport const prefabProps = new Map(\n [\n ['animation', PROP_STRING],\n ['class', {value: '', ...PROP_STRING}],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}]\n ]\n);\n","import {Attribute, ChangeDetectorRef, Directive, ElementRef, Injector, OnDestroy, Optional} from '@angular/core';\n\nimport {setCSS, noop} from '@wm/core';\n\nimport { PROP_TYPE, register, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';\nimport { prefabProps } from './prefab.props';\n\nconst DEFAULT_CLS = 'app-prefab';\n\nconst registeredPropsSet = new Set<string>();\n\ndeclare const _;\n\n@Directive({\n selector: 'section[wmPrefab]',\n providers: [\n provideAsWidgetRef(PrefabDirective)\n ]\n})\nexport class PrefabDirective extends StylableComponent implements OnDestroy {\n\n widgetType: string;\n prefabName: string;\n name: string;\n propsReady: Function;\n\n constructor(inj: Injector, elRef: ElementRef, cdr: ChangeDetectorRef, @Attribute('prefabname') prefabName) {\n const widgetType = `wm-prefab-${prefabName}`;\n const WIDGET_CONFIG = {widgetType, hostClass: DEFAULT_CLS};\n let resolveFn: Function = noop;\n\n super(inj, WIDGET_CONFIG, new Promise(res => resolveFn = res));\n this.propsReady = resolveFn;\n this.prefabName = prefabName;\n this.widgetType = widgetType;\n this.name = elRef.nativeElement.getAttribute('name');\n\n styler(this.nativeElement, this);\n\n // Call on property change on name to set name attribute on element.\n this.registerReadyStateListener(() => {\n super.onPropertyChange('name', this.name);\n });\n }\n\n onStyleChange(key: string, nv: any, ov: any) {\n if (key === 'height') {\n setCSS(this.nativeElement, 'overflow', 'auto');\n }\n }\n\n public setProps(config) {\n if (!config || !config.properties) {\n return;\n }\n\n if (!registeredPropsSet.has(this.widgetType)) {\n register(this.widgetType, this.prepareProps(config.properties));\n }\n\n this.propsReady();\n }\n\n protected handleEvent() {\n // do not call the super;\n // prevent events from getting registered\n }\n\n private prepareProps(props = {}) {\n const propsMap = new Map(prefabProps);\n Object.entries(props).forEach(([k, v]: [string, any]) => {\n let type = PROP_TYPE.STRING;\n\n if (v.type === 'boolean') {\n type = PROP_TYPE.BOOLEAN;\n } else if (v.type === 'number') {\n type = PROP_TYPE.NUMBER;\n } else if (v.type !== 'string') {\n type = v.type;\n }\n\n // Do not set the 'bind:*' values\n propsMap.set(k, {type, value: _.startsWith(v.value, 'bind:') ? undefined : v.value});\n });\n\n registeredPropsSet.add(this.widgetType);\n\n return propsMap;\n }\n\n ngOnDestroy() {\n this.invokeEventCallback('destroy', { widget: this });\n }\n}\n","import { PROP_BOOLEAN, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-prefab-container',\n new Map(\n [\n ['class', PROP_STRING],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ]\n )\n );\n};\n","import {Directive, Injector, OnDestroy, Optional} from '@angular/core';\n\nimport { IWidgetConfig, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';\nimport {Viewport, ViewportEvent} from '@wm/core';\nimport { registerProps } from './prefab-container.props';\n\nconst DEFAULT_CLS = 'app-prefab-container full-height';\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-prefab-container',\n hostClass: DEFAULT_CLS\n};\ndeclare const _;\n\n@Directive({\n selector: '[wmPrefabContainer]',\n providers: [\n provideAsWidgetRef(PrefabContainerDirective)\n ]\n})\nexport class PrefabContainerDirective extends StylableComponent implements OnDestroy {\n static initializeProps = registerProps();\n\n constructor(inj: Injector, private viewport: Viewport) {\n super(inj, WIDGET_CONFIG);\n styler(this.nativeElement, this);\n\n this.registerDestroyListener(this.viewport.subscribe(ViewportEvent.RESIZE, data => this.callback('resize', data)));\n this.registerDestroyListener(this.viewport.subscribe(ViewportEvent.ORIENTATION_CHANGE, data => this.callback('orientationchange', data)));\n }\n\n private callback(eventName, locals?: object) {\n locals = _.assign({ widget: this }, locals);\n this.invokeEventCallback(eventName, locals);\n }\n\n public ngOnAttach() {\n this.callback('attach');\n }\n\n public ngOnDetach() {\n this.callback('detach');\n }\n\n public ngOnDestroy() {\n this.callback('destroy');\n super.ngOnDestroy();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { PrefabDirective } from './prefab.directive';\nimport { PrefabContainerDirective } from './prefab-container/prefab-container.directive';\n\nconst components = [\n PrefabDirective,\n PrefabContainerDirective\n];\n\n@NgModule({\n imports: [\n CommonModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components]\n})\nexport class PrefabModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["DEFAULT_CLS"],"mappings":"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"}