verben-ng-ui 1.2.73 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/INTEGRATION.md +270 -0
- package/README.md +17 -0
- package/THEMING.md +134 -0
- package/esm2022/public-api.mjs +3 -1
- package/esm2022/src/lib/components/card/card.component.mjs +2 -2
- package/esm2022/src/lib/components/card-data-view/card-data-view.component.mjs +3 -3
- package/esm2022/src/lib/components/chip/chip.component.mjs +3 -3
- package/esm2022/src/lib/components/data-columns/data-columns.component.mjs +3 -3
- package/esm2022/src/lib/components/data-export/data-export.component.mjs +3 -3
- package/esm2022/src/lib/components/data-extend/data-extend.component.mjs +3 -3
- package/esm2022/src/lib/components/data-filter/data-filter.component.mjs +3 -3
- package/esm2022/src/lib/components/data-import/data-import.component.mjs +3 -3
- package/esm2022/src/lib/components/data-sort/data-sort.component.mjs +3 -3
- package/esm2022/src/lib/components/data-table/data-table.component.mjs +33 -18
- package/esm2022/src/lib/components/data-table/data-table.types.mjs +1 -1
- package/esm2022/src/lib/components/data-table/footer.util.mjs +73 -0
- package/esm2022/src/lib/components/data-table/public-api.mjs +2 -1
- package/esm2022/src/lib/components/data-view/data-view-click-outside.directive.mjs +7 -3
- package/esm2022/src/lib/components/data-view/data-view.component.mjs +3 -3
- package/esm2022/src/lib/components/data-xport/data-xport.component.mjs +9 -5
- package/esm2022/src/lib/components/data-xport/data-xport.service.mjs +39 -3
- package/esm2022/src/lib/components/date-picker/date-picker.component.mjs +4 -4
- package/esm2022/src/lib/components/drop-down/drop-down-item/drop-down-item.component.mjs +3 -3
- package/esm2022/src/lib/components/drop-down/drop-down.component.mjs +4 -4
- package/esm2022/src/lib/components/notification/notification.component.mjs +3 -3
- package/esm2022/src/lib/components/number-input/number-input.component.mjs +2 -2
- package/esm2022/src/lib/components/pop-up/pop-up.component.mjs +4 -4
- package/esm2022/src/lib/components/sort-table/sort-table.component.mjs +3 -3
- package/esm2022/src/lib/components/svg/svg.component.mjs +6 -1
- package/esm2022/src/lib/components/table-filter/table-filter.component.mjs +3 -3
- package/esm2022/src/lib/components/tooltip/tooltip.component.mjs +3 -3
- package/esm2022/src/lib/components/verben-dialogue/verben-dialogue.component.mjs +6 -6
- package/esm2022/src/lib/components/verben-mail/verben-mail.component.mjs +4 -4
- package/esm2022/src/lib/components/verben-time-picker/verben-time-picker.component.mjs +2 -2
- package/esm2022/src/lib/components/verbena-tab/tab-item.component.mjs +2 -2
- package/esm2022/src/lib/components/verbena-tab/verbena-tab.component.mjs +2 -2
- package/esm2022/src/lib/components/visible-column/visible-column.component.mjs +3 -3
- package/esm2022/src/lib/services/notification.services.mjs +17 -17
- package/esm2022/src/lib/theme/index.mjs +2 -0
- package/esm2022/src/lib/theme/public-api.mjs +5 -0
- package/esm2022/src/lib/theme/theme.service.mjs +121 -0
- package/esm2022/src/lib/theme/theme.token.mjs +7 -0
- package/esm2022/src/lib/theme/theme.types.mjs +2 -0
- package/esm2022/src/lib/theme/verben-ng-ui-src-lib-theme.mjs +5 -0
- package/esm2022/src/lib/theme/verben-ui.module.mjs +41 -0
- package/esm2022/src/lib/theme-switcher/theme-switcher.directive.mjs +52 -44
- package/esm2022/src/lib/validate/error-message.service.mjs +4 -4
- package/esm2022/src/lib/validate/validate.directive.mjs +3 -3
- package/esm2022/src/lib/verbena-badge/verbena-badge.component.mjs +3 -3
- package/esm2022/src/lib/verbena-button/verbena-button.component.mjs +27 -25
- package/esm2022/src/lib/verbena-input/verbena-input.component.mjs +7 -7
- package/esm2022/src/lib/verbena-switch/verbena-switch.component.mjs +5 -5
- package/esm2022/src/lib/verbena-textarea/verbena-textarea.component.mjs +5 -5
- package/fesm2022/verben-ng-ui-src-lib-components-card-data-view.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-card-data-view.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-card.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-card.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-chip.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-chip.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-data-columns.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-data-columns.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-data-export.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-data-export.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-data-extend.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-data-extend.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-data-filter.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-data-filter.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-data-import.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-data-import.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-data-sort.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-data-sort.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-data-table.mjs +105 -18
- package/fesm2022/verben-ng-ui-src-lib-components-data-table.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-data-view.mjs +8 -4
- package/fesm2022/verben-ng-ui-src-lib-components-data-view.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-data-xport.mjs +46 -6
- package/fesm2022/verben-ng-ui-src-lib-components-data-xport.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-date-picker.mjs +3 -3
- package/fesm2022/verben-ng-ui-src-lib-components-date-picker.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-drop-down.mjs +5 -5
- package/fesm2022/verben-ng-ui-src-lib-components-drop-down.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-notification.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-notification.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-number-input.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-number-input.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-pop-up.mjs +3 -3
- package/fesm2022/verben-ng-ui-src-lib-components-pop-up.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-sort-table.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-sort-table.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-svg.mjs +5 -0
- package/fesm2022/verben-ng-ui-src-lib-components-svg.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-table-filter.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-table-filter.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-tooltip.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-tooltip.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-verben-dialogue.mjs +5 -5
- package/fesm2022/verben-ng-ui-src-lib-components-verben-dialogue.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-verben-mail.mjs +3 -3
- package/fesm2022/verben-ng-ui-src-lib-components-verben-mail.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-verben-time-picker.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-verben-time-picker.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-verbena-tab.mjs +3 -3
- package/fesm2022/verben-ng-ui-src-lib-components-verbena-tab.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-components-visible-column.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-components-visible-column.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-services.mjs +16 -16
- package/fesm2022/verben-ng-ui-src-lib-services.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-theme-switcher.mjs +50 -42
- package/fesm2022/verben-ng-ui-src-lib-theme-switcher.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-theme.mjs +170 -0
- package/fesm2022/verben-ng-ui-src-lib-theme.mjs.map +1 -0
- package/fesm2022/verben-ng-ui-src-lib-validate.mjs +5 -5
- package/fesm2022/verben-ng-ui-src-lib-validate.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-verbena-badge.mjs +2 -2
- package/fesm2022/verben-ng-ui-src-lib-verbena-badge.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-verbena-button.mjs +26 -24
- package/fesm2022/verben-ng-ui-src-lib-verbena-button.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-verbena-input.mjs +6 -6
- package/fesm2022/verben-ng-ui-src-lib-verbena-input.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-verbena-switch.mjs +4 -4
- package/fesm2022/verben-ng-ui-src-lib-verbena-switch.mjs.map +1 -1
- package/fesm2022/verben-ng-ui-src-lib-verbena-textarea.mjs +4 -4
- package/fesm2022/verben-ng-ui-src-lib-verbena-textarea.mjs.map +1 -1
- package/fesm2022/verben-ng-ui.mjs +2 -0
- package/fesm2022/verben-ng-ui.mjs.map +1 -1
- package/package.json +100 -94
- package/public-api.d.ts +2 -0
- package/src/lib/components/data-table/data-table.component.d.ts +4 -1
- package/src/lib/components/data-table/data-table.types.d.ts +33 -0
- package/src/lib/components/data-table/footer.util.d.ts +20 -0
- package/src/lib/components/data-table/public-api.d.ts +1 -0
- package/src/lib/components/data-xport/data-xport.component.d.ts +3 -1
- package/src/lib/components/data-xport/data-xport.service.d.ts +10 -1
- package/src/lib/theme/index.d.ts +1 -0
- package/src/lib/theme/public-api.d.ts +4 -0
- package/src/lib/theme/theme.service.d.ts +28 -0
- package/src/lib/theme/theme.token.d.ts +7 -0
- package/src/lib/theme/theme.types.d.ts +56 -0
- package/src/lib/theme/verben-ui.module.d.ts +30 -0
- package/src/lib/theme-switcher/theme-switcher.directive.d.ts +21 -9
- package/styles/theme.css +156 -0
|
@@ -110,11 +110,11 @@ export class CardDataViewComponent {
|
|
|
110
110
|
this.editClicked.emit();
|
|
111
111
|
}
|
|
112
112
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CardDataViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
113
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.10", type: CardDataViewComponent, selector: "verben-card-data-view", inputs: { pd: "pd", mg: "mg", lHeight: "lHeight", rHeight: "rHeight", rWidth: "rWidth", lWidth: "lWidth", textColor: "textColor", lbgColor: "lbgColor", rbgColor: "rbgColor", border: "border", display: "display", borderRadius: "borderRadius", activeCss: "activeCss", inActiveCss: "inActiveCss", displayAsRow: "displayAsRow", cardDataList: "cardDataList", dataId: "dataId", totalRecords: "totalRecords", footer: "footer", noOfVisibleChildren: "noOfVisibleChildren", showEditIcon: "showEditIcon", useVirtualScroll: "useVirtualScroll", virtualScrollItemSize: "virtualScrollItemSize", onItemClick: "onItemClick", onCardChildClick: "onCardChildClick" }, outputs: { editClicked: "editClicked", loadMoreClick: "loadMoreClick" }, queries: [{ propertyName: "rightContent", first: true, predicate: RightCardDataViewComponent, descendants: true }, { propertyName: "card", first: true, predicate: ["card"], descendants: true }], ngImport: i0, template: "<div #main class=\"flex-col\" [style.display]=\"'flex'\">\n <!-- Header -->\n <ng-container ngProjectAs=\"verben-card-data-view-header\">\n <ng-content select=\"verben-card-data-view-header\"></ng-content>\n </ng-container>\n\n <div\n [ngClass]=\"\n !hasCurrentItem() ? 'master-only-container' : 'master-detail-container'\n \"\n >\n <!-- Card and Footer -->\n <div\n [style.borderRadius]=\"borderRadius\"\n [style.backgroundColor]=\"lbgColor\"\n class=\"flex-col\"\n >\n <!-- Card section -->\n <ng-template #content>\n <ng-content select=\"verben-left-card-data-view\"></ng-content>\n </ng-template>\n\n <cdk-virtual-scroll-viewport\n *ngIf=\"useVirtualScroll; else normalView\"\n [itemSize]=\"virtualScrollItemSize\"\n class=\"virtual-scroll-viewport\"\n [style.height.px]=\"virtualScrollItemSize * 50\"\n >\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </cdk-virtual-scroll-viewport>\n\n <ng-template #normalView>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-template>\n\n <!-- Footer-->\n <ng-container ngProjectAs=\"verben-card-data-view-footer\">\n <ng-content select=\"verben-card-data-view-footer\"></ng-content>\n </ng-container>\n </div>\n <!-- Detail Section-->\n <div\n class=\"card-detail-section\"\n [style.backgroundColor]=\"rbgColor\"\n *ngIf=\"hasCurrentItem()\"\n [style.borderRadius]=\"borderRadius\"\n >\n <div class=\"flex justify-between items-center\">\n <div>\n <verben-svg\n *ngIf=\"this.showEditIcon\"\n (click)=\"onEditClicked()\"\n class=\"cursor-pointer\"\n icon=\"edit\"\n [width]=\"20\"\n [height]=\"20\"\n color=\"
|
|
113
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.10", type: CardDataViewComponent, selector: "verben-card-data-view", inputs: { pd: "pd", mg: "mg", lHeight: "lHeight", rHeight: "rHeight", rWidth: "rWidth", lWidth: "lWidth", textColor: "textColor", lbgColor: "lbgColor", rbgColor: "rbgColor", border: "border", display: "display", borderRadius: "borderRadius", activeCss: "activeCss", inActiveCss: "inActiveCss", displayAsRow: "displayAsRow", cardDataList: "cardDataList", dataId: "dataId", totalRecords: "totalRecords", footer: "footer", noOfVisibleChildren: "noOfVisibleChildren", showEditIcon: "showEditIcon", useVirtualScroll: "useVirtualScroll", virtualScrollItemSize: "virtualScrollItemSize", onItemClick: "onItemClick", onCardChildClick: "onCardChildClick" }, outputs: { editClicked: "editClicked", loadMoreClick: "loadMoreClick" }, queries: [{ propertyName: "rightContent", first: true, predicate: RightCardDataViewComponent, descendants: true }, { propertyName: "card", first: true, predicate: ["card"], descendants: true }], ngImport: i0, template: "<div #main class=\"flex-col\" [style.display]=\"'flex'\">\n <!-- Header -->\n <ng-container ngProjectAs=\"verben-card-data-view-header\">\n <ng-content select=\"verben-card-data-view-header\"></ng-content>\n </ng-container>\n\n <div\n [ngClass]=\"\n !hasCurrentItem() ? 'master-only-container' : 'master-detail-container'\n \"\n >\n <!-- Card and Footer -->\n <div\n [style.borderRadius]=\"borderRadius\"\n [style.backgroundColor]=\"lbgColor\"\n class=\"flex-col\"\n >\n <!-- Card section -->\n <ng-template #content>\n <ng-content select=\"verben-left-card-data-view\"></ng-content>\n </ng-template>\n\n <cdk-virtual-scroll-viewport\n *ngIf=\"useVirtualScroll; else normalView\"\n [itemSize]=\"virtualScrollItemSize\"\n class=\"virtual-scroll-viewport\"\n [style.height.px]=\"virtualScrollItemSize * 50\"\n >\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </cdk-virtual-scroll-viewport>\n\n <ng-template #normalView>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-template>\n\n <!-- Footer-->\n <ng-container ngProjectAs=\"verben-card-data-view-footer\">\n <ng-content select=\"verben-card-data-view-footer\"></ng-content>\n </ng-container>\n </div>\n <!-- Detail Section-->\n <div\n class=\"card-detail-section\"\n [style.backgroundColor]=\"rbgColor\"\n *ngIf=\"hasCurrentItem()\"\n [style.borderRadius]=\"borderRadius\"\n >\n <div class=\"flex justify-between items-center\">\n <div>\n <verben-svg\n *ngIf=\"this.showEditIcon\"\n (click)=\"onEditClicked()\"\n class=\"cursor-pointer\"\n icon=\"edit\"\n [width]=\"20\"\n [height]=\"20\"\n color=\"var(--vbn-color-text)\"\n ></verben-svg>\n </div>\n <verben-svg\n (click)=\"clearData()\"\n class=\"cursor-pointer toRight\"\n icon=\"close\"\n [width]=\"20\"\n [height]=\"20\"\n color=\"var(--vbn-color-text)\"\n ></verben-svg>\n </div>\n <ng-container #right ngProjectAs=\"verben-right-card-data-view\">\n <ng-content\n #rightContent\n select=\"verben-right-card-data-view\"\n ></ng-content>\n </ng-container>\n </div>\n </div>\n</div>\n", styles: [".container{gap:10px}:host{border-radius:12px}.master-detail-container{display:grid;grid-template-columns:30% 70%;gap:15px;justify-content:center}.master-only-container{display:grid;grid-template-columns:100%;justify-content:center}.paginator-text{margin-left:auto;margin-right:auto}.cursor-pointer{cursor:pointer}.toRight{align-self:flex-end}.card-detail-section{display:flex;flex-direction:column;gap:15px;padding:15px 20px 20px}::ng-deep .master-detail-container>div>verben-left-card-data-view>verben-left-card-data{display:flex!important;flex-direction:column}::ng-deep .master-detail-container>div .cdk-virtual-scroll-content-wrapper>verben-left-card-data-view>verben-left-card-data{display:flex!important;flex-direction:column}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.SvgComponent, selector: "verben-svg", inputs: ["icon", "width", "height", "fill", "stroke", "type", "size"] }, { kind: "directive", type: i3.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "component", type: i3.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }] });
|
|
114
114
|
}
|
|
115
115
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CardDataViewComponent, decorators: [{
|
|
116
116
|
type: Component,
|
|
117
|
-
args: [{ selector: 'verben-card-data-view', template: "<div #main class=\"flex-col\" [style.display]=\"'flex'\">\n <!-- Header -->\n <ng-container ngProjectAs=\"verben-card-data-view-header\">\n <ng-content select=\"verben-card-data-view-header\"></ng-content>\n </ng-container>\n\n <div\n [ngClass]=\"\n !hasCurrentItem() ? 'master-only-container' : 'master-detail-container'\n \"\n >\n <!-- Card and Footer -->\n <div\n [style.borderRadius]=\"borderRadius\"\n [style.backgroundColor]=\"lbgColor\"\n class=\"flex-col\"\n >\n <!-- Card section -->\n <ng-template #content>\n <ng-content select=\"verben-left-card-data-view\"></ng-content>\n </ng-template>\n\n <cdk-virtual-scroll-viewport\n *ngIf=\"useVirtualScroll; else normalView\"\n [itemSize]=\"virtualScrollItemSize\"\n class=\"virtual-scroll-viewport\"\n [style.height.px]=\"virtualScrollItemSize * 50\"\n >\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </cdk-virtual-scroll-viewport>\n\n <ng-template #normalView>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-template>\n\n <!-- Footer-->\n <ng-container ngProjectAs=\"verben-card-data-view-footer\">\n <ng-content select=\"verben-card-data-view-footer\"></ng-content>\n </ng-container>\n </div>\n <!-- Detail Section-->\n <div\n class=\"card-detail-section\"\n [style.backgroundColor]=\"rbgColor\"\n *ngIf=\"hasCurrentItem()\"\n [style.borderRadius]=\"borderRadius\"\n >\n <div class=\"flex justify-between items-center\">\n <div>\n <verben-svg\n *ngIf=\"this.showEditIcon\"\n (click)=\"onEditClicked()\"\n class=\"cursor-pointer\"\n icon=\"edit\"\n [width]=\"20\"\n [height]=\"20\"\n color=\"
|
|
117
|
+
args: [{ selector: 'verben-card-data-view', template: "<div #main class=\"flex-col\" [style.display]=\"'flex'\">\n <!-- Header -->\n <ng-container ngProjectAs=\"verben-card-data-view-header\">\n <ng-content select=\"verben-card-data-view-header\"></ng-content>\n </ng-container>\n\n <div\n [ngClass]=\"\n !hasCurrentItem() ? 'master-only-container' : 'master-detail-container'\n \"\n >\n <!-- Card and Footer -->\n <div\n [style.borderRadius]=\"borderRadius\"\n [style.backgroundColor]=\"lbgColor\"\n class=\"flex-col\"\n >\n <!-- Card section -->\n <ng-template #content>\n <ng-content select=\"verben-left-card-data-view\"></ng-content>\n </ng-template>\n\n <cdk-virtual-scroll-viewport\n *ngIf=\"useVirtualScroll; else normalView\"\n [itemSize]=\"virtualScrollItemSize\"\n class=\"virtual-scroll-viewport\"\n [style.height.px]=\"virtualScrollItemSize * 50\"\n >\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </cdk-virtual-scroll-viewport>\n\n <ng-template #normalView>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-template>\n\n <!-- Footer-->\n <ng-container ngProjectAs=\"verben-card-data-view-footer\">\n <ng-content select=\"verben-card-data-view-footer\"></ng-content>\n </ng-container>\n </div>\n <!-- Detail Section-->\n <div\n class=\"card-detail-section\"\n [style.backgroundColor]=\"rbgColor\"\n *ngIf=\"hasCurrentItem()\"\n [style.borderRadius]=\"borderRadius\"\n >\n <div class=\"flex justify-between items-center\">\n <div>\n <verben-svg\n *ngIf=\"this.showEditIcon\"\n (click)=\"onEditClicked()\"\n class=\"cursor-pointer\"\n icon=\"edit\"\n [width]=\"20\"\n [height]=\"20\"\n color=\"var(--vbn-color-text)\"\n ></verben-svg>\n </div>\n <verben-svg\n (click)=\"clearData()\"\n class=\"cursor-pointer toRight\"\n icon=\"close\"\n [width]=\"20\"\n [height]=\"20\"\n color=\"var(--vbn-color-text)\"\n ></verben-svg>\n </div>\n <ng-container #right ngProjectAs=\"verben-right-card-data-view\">\n <ng-content\n #rightContent\n select=\"verben-right-card-data-view\"\n ></ng-content>\n </ng-container>\n </div>\n </div>\n</div>\n", styles: [".container{gap:10px}:host{border-radius:12px}.master-detail-container{display:grid;grid-template-columns:30% 70%;gap:15px;justify-content:center}.master-only-container{display:grid;grid-template-columns:100%;justify-content:center}.paginator-text{margin-left:auto;margin-right:auto}.cursor-pointer{cursor:pointer}.toRight{align-self:flex-end}.card-detail-section{display:flex;flex-direction:column;gap:15px;padding:15px 20px 20px}::ng-deep .master-detail-container>div>verben-left-card-data-view>verben-left-card-data{display:flex!important;flex-direction:column}::ng-deep .master-detail-container>div .cdk-virtual-scroll-content-wrapper>verben-left-card-data-view>verben-left-card-data{display:flex!important;flex-direction:column}\n"] }]
|
|
118
118
|
}], propDecorators: { pd: [{
|
|
119
119
|
type: Input
|
|
120
120
|
}], mg: [{
|
|
@@ -176,4 +176,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.10", ngImpo
|
|
|
176
176
|
}], loadMoreClick: [{
|
|
177
177
|
type: Output
|
|
178
178
|
}] } });
|
|
179
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1kYXRhLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmVyYmVuLW5nLXVpL3NyYy9saWIvY29tcG9uZW50cy9jYXJkLWRhdGEtdmlldy9jYXJkLWRhdGEtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2NhcmQtZGF0YS12aWV3L2NhcmQtZGF0YS12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBRVQsWUFBWSxFQUdaLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxHQUlQLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDOzs7OztBQVFuRyxNQUFNLE9BQU8scUJBQXFCO0lBQ3ZCLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDWixFQUFFLEdBQUcsS0FBSyxDQUFDO0lBQ1gsT0FBTyxHQUFZLE1BQU0sQ0FBQztJQUMxQixPQUFPLEdBQVksTUFBTSxDQUFDO0lBQzFCLE1BQU0sR0FBWSxLQUFLLENBQUM7SUFDeEIsTUFBTSxHQUFZLEtBQUssQ0FBQztJQUN4QixTQUFTLENBQVU7SUFDbkIsUUFBUSxDQUFVO0lBQ2xCLFFBQVEsQ0FBVTtJQUNsQixNQUFNLENBQVU7SUFDaEIsT0FBTyxDQUFVO0lBQ2pCLFlBQVksR0FBWSxNQUFNLENBQUM7SUFDL0IsU0FBUyxDQUFVO0lBQ25CLFdBQVcsQ0FBVTtJQUNyQixZQUFZLEdBQWEsSUFBSSxDQUFDO0lBQzlCLFlBQVksR0FBZSxFQUFFLENBQUM7SUFDOUIsTUFBTSxDQUFVLENBQUMsbUNBQW1DO0lBQ3BELFlBQVksR0FBVyxDQUFDLENBQUM7SUFDekIsTUFBTSxHQUFZLEtBQUssQ0FBQztJQUN4Qixt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O3NCQUF4QixLQUFLO2dCQXVCSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ29tcG9uZW50LFxuICBjb250ZW50Q2hpbGQsXG4gIENvbnRlbnRDaGlsZCxcbiAgZWZmZWN0LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFRlbXBsYXRlUmVmLFxuICB2aWV3Q2hpbGQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDYXJkRGF0YSB9IGZyb20gJy4vY2FyZC1kYXRhJztcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBSaWdodENhcmREYXRhVmlld0NvbXBvbmVudCB9IGZyb20gJy4vcmlnaHQtY2FyZC1kYXRhLXZpZXcvcmlnaHQtY2FyZC1kYXRhLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IExlZnRDYXJkRGF0YUNvbXBvbmVudCB9IGZyb20gJy4vbGVmdC1jYXJkLWRhdGEvbGVmdC1jYXJkLWRhdGEuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmVyYmVuLWNhcmQtZGF0YS12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhcmQtZGF0YS12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2NhcmQtZGF0YS12aWV3LmNvbXBvbmVudC5jc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBDYXJkRGF0YVZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSBwZCA9ICcxMHB4JztcbiAgQElucHV0KCkgbWcgPSAnMHB4JztcbiAgQElucHV0KCkgbEhlaWdodD86IHN0cmluZyA9ICcxMDAlJztcbiAgQElucHV0KCkgckhlaWdodD86IHN0cmluZyA9ICcxMDAlJztcbiAgQElucHV0KCkgcldpZHRoPzogc3RyaW5nID0gJzcwJSc7XG4gIEBJbnB1dCgpIGxXaWR0aD86IHN0cmluZyA9ICczMCUnO1xuICBASW5wdXQoKSB0ZXh0Q29sb3I/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGxiZ0NvbG9yPzogc3RyaW5nO1xuICBASW5wdXQoKSByYmdDb2xvcj86IHN0cmluZztcbiAgQElucHV0KCkgYm9yZGVyPzogc3RyaW5nO1xuICBASW5wdXQoKSBkaXNwbGF5Pzogc3RyaW5nO1xuICBASW5wdXQoKSBib3JkZXJSYWRpdXM/OiBzdHJpbmcgPSAnMTJweCc7XG4gIEBJbnB1dCgpIGFjdGl2ZUNzcz86IHN0cmluZztcbiAgQElucHV0KCkgaW5BY3RpdmVDc3M/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRpc3BsYXlBc1Jvdz86IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBjYXJkRGF0YUxpc3Q6IENhcmREYXRhW10gPSBbXTtcbiAgQElucHV0KCkgZGF0YUlkITogc3RyaW5nOyAvL3doYXQgdG8gdXNlIHRvIGlkZW50aWZ5IGVhY2ggZGF0YVxuICBASW5wdXQoKSB0b3RhbFJlY29yZHM6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIGZvb3RlcjogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBub09mVmlzaWJsZUNoaWxkcmVuOiBudW1iZXIgPSAzO1xuICBASW5wdXQoKSBzaG93RWRpdEljb246IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgdXNlVmlydHVhbFNjcm9sbDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSB2aXJ0dWFsU2Nyb2xsSXRlbVNpemU6IG51bWJlciA9IDQ4O1xuICBAT3V0cHV0KCkgZWRpdENsaWNrZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQENvbnRlbnRDaGlsZChSaWdodENhcmREYXRhVmlld0NvbXBvbmVudClcbiAgcmlnaHRDb250ZW50ITogUmlnaHRDYXJkRGF0YVZpZXdDb21wb25lbnQ7XG4gIC8vIEBDb250ZW50Q2hpbGQoTGVmdENhcmREYXRhQ29tcG9uZW50KSBsZWZ0ITpMZWZ0Q2FyZERhdGFDb21wb25lbnQ7XG4gIEBDb250ZW50Q2hpbGQoJ2NhcmQnKSBjYXJkITogVGVtcGxhdGVSZWY8YW55PjtcbiAgLy8gQENvbnRlbnRDaGlsZCgnY29udGVudCcpIGNvbnRlbnQhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBjdXJyZW50SXRlbTogYW55ID0ge307XG4gIGN1cnJlbnRDaGlsZEl0ZW06IGFueSA9IHt9O1xuXG4gIGhhc0N1cnJlbnRJdGVtKCkge1xuICAgIHJldHVybiAoXG4gICAgICAhIU9iamVjdC5rZXlzKHRoaXMuY3VycmVudEl0ZW0gPz8ge30pLmxlbmd0aCB8fFxuICAgICAgISFPYmplY3Qua2V5cyh0aGlzLmN1cnJlbnRDaGlsZEl0ZW0gPz8ge30pLmxlbmd0aFxuICAgICk7XG4gIH1cbiAgY2xlYXJEYXRhKCkge1xuICAgIHRoaXMuY3VycmVudEl0ZW0gPSB7fSBhcyBDYXJkRGF0YTtcbiAgICB0aGlzLmN1cnJlbnRDaGlsZEl0ZW0gPSB7fSBhcyBDYXJkRGF0YTtcbiAgICB0aGlzLmNhcmREYXRhTGlzdC5mb3JFYWNoKChfKSA9PiB7XG4gICAgICBfLnNlbGVjdGVkID0gZmFsc2U7XG4gICAgICBfLmNoaWxkcmVuLmZvckVhY2goKGMpID0+IHtcbiAgICAgICAgYy5zZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICBjLmlzQ2hpbGRyZW5FeHBhbmRlZCA9IGZhbHNlO1xuICAgICAgfSk7XG4gICAgICBfLmlzQ2hpbGRyZW5FeHBhbmRlZCA9IGZhbHNlO1xuICAgIH0pO1xuICB9XG4gIHNldERldGFpbERhdGEoKSB7XG4gICAgdGhpcy5yaWdodENvbnRlbnQucGFyZW50RGF0YSA9IHRoaXMuY3VycmVudEl0ZW07XG4gICAgdGhpcy5yaWdodENvbnRlbnQuY2hpbERhdGEgPSB0aGlzLmN1cnJlbnRDaGlsZEl0ZW07XG4gIH1cbiAgQElucHV0KCkgb25JdGVtQ2xpY2soaXRlbTogQ2FyZERhdGEpIHtcbiAgICB0aGlzLnJlc2V0Q2hpbGRyZW4oaXRlbSk7XG4gICAgaXRlbS5zZWxlY3RlZCA9IHRydWU7XG4gICAgdGhpcy5jYXJkRGF0YUxpc3QuZm9yRWFjaCgoZWxlbWVudCkgPT4ge1xuICAgICAgaWYgKGVsZW1lbnQuZGF0YVt0aGlzLmRhdGFJZF0gPT0gaXRlbS5kYXRhW3RoaXMuZGF0YUlkXSkge1xuICAgICAgICB0aGlzLmN1cnJlbnRJdGVtID0gaXRlbTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVsZW1lbnQuc2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLnNldERldGFpbERhdGEoKTtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50SXRlbTtcbiAgfVxuICByZXNldENoaWxkcmVuKG5ld1NlbGVjdDogQ2FyZERhdGEpIHtcbiAgICBpZiAodGhpcy5jdXJyZW50SXRlbSAmJiB0aGlzLmN1cnJlbnRJdGVtLmNoaWxkcmVuPy5sZW5ndGgpIHtcbiAgICAgICh0aGlzLmN1cnJlbnRJdGVtLmNoaWxkcmVuIGFzIGFueVtdKS5mb3JFYWNoKChjKSA9PiB7XG4gICAgICAgIGMuc2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgIH0pO1xuICAgICAgaWYgKG5ld1NlbGVjdC5kYXRhW3RoaXMuZGF0YUlkXSAhPSB0aGlzLmN1cnJlbnRJdGVtLmRhdGFbdGhpcy5kYXRhSWRdKVxuICAgICAgICB0aGlzLmN1cnJlbnRJdGVtLmlzQ2hpbGRyZW5FeHBhbmRlZCA9IGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLmN1cnJlbnRDaGlsZEl0ZW0gPSBudWxsO1xuICB9XG4gIEBJbnB1dCgpIG9uQ2FyZENoaWxkQ2xpY2soY2hpbGRJbmRleDogbnVtYmVyKSB7XG4gICAgdmFyIGl0ZW0gPSB0aGlzLmN1cnJlbnRJdGVtLmNoaWxkcmVuW2NoaWxkSW5kZXhdO1xuICAgICh0aGlzLmN1cnJlbnRJdGVtLmNoaWxkcmVuIGFzIGFueVtdKS5mb3JFYWNoKChlbGVtZW50KSA9PiB7XG4gICAgICBpZiAoZWxlbWVudC5kYXRhW3RoaXMuZGF0YUlkXSA9PSBpdGVtLmRhdGFbdGhpcy5kYXRhSWRdKSB7XG4gICAgICAgIHRoaXMuY3VycmVudENoaWxkSXRlbSA9IGl0ZW07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBlbGVtZW50LnNlbGVjdGVkID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy5jdXJyZW50Q2hpbGRJdGVtLnNlbGVjdGVkID0gdHJ1ZTtcbiAgICB0aGlzLnNldERldGFpbERhdGEoKTtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50Q2hpbGRJdGVtO1xuICB9XG4gIHNob3dDaGlsZHJlbihpdGVtOiBDYXJkRGF0YSkge1xuICAgIHZhciBjdXJyVG9nZ2xlU3RhdGUgPSBpdGVtLmlzQ2hpbGRyZW5FeHBhbmRlZDtcbiAgICB0aGlzLmNhcmREYXRhTGlzdC5mb3JFYWNoKChfKSA9PiB7XG4gICAgICBfLmlzQ2hpbGRyZW5FeHBhbmRlZCA9IGZhbHNlO1xuICAgICAgXy5zZWxlY3RlZCA9IGZhbHNlO1xuICAgIH0pO1xuICAgIGl0ZW0uc2VsZWN0ZWQgPSB0cnVlO1xuICAgIGl0ZW0uaXNDaGlsZHJlbkV4cGFuZGVkID0gIWN1cnJUb2dnbGVTdGF0ZTtcbiAgfVxuXG4gIEBPdXRwdXQoKSBsb2FkTW9yZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBvbkxvYWRNb3JlQ2xpY2soKSB7XG4gICAgdGhpcy5sb2FkTW9yZUNsaWNrLmVtaXQoKTtcbiAgfVxuXG4gIG9uRWRpdENsaWNrZWQoKSB7XG4gICAgdGhpcy5lZGl0Q2xpY2tlZC5lbWl0KCk7XG4gIH1cbn1cbiIsIjxkaXYgI21haW4gY2xhc3M9XCJmbGV4LWNvbFwiIFtzdHlsZS5kaXNwbGF5XT1cIidmbGV4J1wiPlxuICA8IS0tIEhlYWRlciAtLT5cbiAgPG5nLWNvbnRhaW5lciBuZ1Byb2plY3RBcz1cInZlcmJlbi1jYXJkLWRhdGEtdmlldy1oZWFkZXJcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ2ZXJiZW4tY2FyZC1kYXRhLXZpZXctaGVhZGVyXCI+PC9uZy1jb250ZW50PlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8ZGl2XG4gICAgW25nQ2xhc3NdPVwiXG4gICAgICAhaGFzQ3VycmVudEl0ZW0oKSA/ICdtYXN0ZXItb25seS1jb250YWluZXInIDogJ21hc3Rlci1kZXRhaWwtY29udGFpbmVyJ1xuICAgIFwiXG4gID5cbiAgICA8IS0tIENhcmQgYW5kIEZvb3RlciAtLT5cbiAgICA8ZGl2XG4gICAgICBbc3R5bGUuYm9yZGVyUmFkaXVzXT1cImJvcmRlclJhZGl1c1wiXG4gICAgICBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImxiZ0NvbG9yXCJcbiAgICAgIGNsYXNzPVwiZmxleC1jb2xcIlxuICAgID5cbiAgICAgIDwhLS0gQ2FyZCBzZWN0aW9uIC0tPlxuICAgICAgPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ2ZXJiZW4tbGVmdC1jYXJkLWRhdGEtdmlld1wiPjwvbmctY29udGVudD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgIDxjZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnRcbiAgICAgICAgKm5nSWY9XCJ1c2VWaXJ0dWFsU2Nyb2xsOyBlbHNlIG5vcm1hbFZpZXdcIlxuICAgICAgICBbaXRlbVNpemVdPVwidmlydHVhbFNjcm9sbEl0ZW1TaXplXCJcbiAgICAgICAgY2xhc3M9XCJ2aXJ0dWFsLXNjcm9sbC12aWV3cG9ydFwiXG4gICAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwidmlydHVhbFNjcm9sbEl0ZW1TaXplICogNTBcIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9jZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQ+XG5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjbm9ybWFsVmlldz5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgIDwhLS0gRm9vdGVyLS0+XG4gICAgICA8bmctY29udGFpbmVyIG5nUHJvamVjdEFzPVwidmVyYmVuLWNhcmQtZGF0YS12aWV3LWZvb3RlclwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ2ZXJiZW4tY2FyZC1kYXRhLXZpZXctZm9vdGVyXCI+PC9uZy1jb250ZW50PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPCEtLSBEZXRhaWwgU2VjdGlvbi0tPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiY2FyZC1kZXRhaWwtc2VjdGlvblwiXG4gICAgICBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cInJiZ0NvbG9yXCJcbiAgICAgICpuZ0lmPVwiaGFzQ3VycmVudEl0ZW0oKVwiXG4gICAgICBbc3R5bGUuYm9yZGVyUmFkaXVzXT1cImJvcmRlclJhZGl1c1wiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1iZXR3ZWVuIGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDx2ZXJiZW4tc3ZnXG4gICAgICAgICAgICAqbmdJZj1cInRoaXMuc2hvd0VkaXRJY29uXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkVkaXRDbGlja2VkKClcIlxuICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICBpY29uPVwiZWRpdFwiXG4gICAgICAgICAgICBbd2lkdGhdPVwiMjBcIlxuICAgICAgICAgICAgW2hlaWdodF09XCIyMFwiXG4gICAgICAgICAgICBjb2xvcj1cImJsYWNrXCJcbiAgICAgICAgICA+PC92ZXJiZW4tc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHZlcmJlbi1zdmdcbiAgICAgICAgICAoY2xpY2spPVwiY2xlYXJEYXRhKClcIlxuICAgICAgICAgIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXIgdG9SaWdodFwiXG4gICAgICAgICAgaWNvbj1cImNsb3NlXCJcbiAgICAgICAgICBbd2lkdGhdPVwiMjBcIlxuICAgICAgICAgIFtoZWlnaHRdPVwiMjBcIlxuICAgICAgICAgIGNvbG9yPVwiYmxhY2tcIlxuICAgICAgICA+PC92ZXJiZW4tc3ZnPlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctY29udGFpbmVyICNyaWdodCBuZ1Byb2plY3RBcz1cInZlcmJlbi1yaWdodC1jYXJkLWRhdGEtdmlld1wiPlxuICAgICAgICA8bmctY29udGVudFxuICAgICAgICAgICNyaWdodENvbnRlbnRcbiAgICAgICAgICBzZWxlY3Q9XCJ2ZXJiZW4tcmlnaHQtY2FyZC1kYXRhLXZpZXdcIlxuICAgICAgICA+PC9uZy1jb250ZW50PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
179
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1kYXRhLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmVyYmVuLW5nLXVpL3NyYy9saWIvY29tcG9uZW50cy9jYXJkLWRhdGEtdmlldy9jYXJkLWRhdGEtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2NhcmQtZGF0YS12aWV3L2NhcmQtZGF0YS12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBRVQsWUFBWSxFQUdaLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxHQUlQLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDOzs7OztBQVFuRyxNQUFNLE9BQU8scUJBQXFCO0lBQ3ZCLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDWixFQUFFLEdBQUcsS0FBSyxDQUFDO0lBQ1gsT0FBTyxHQUFZLE1BQU0sQ0FBQztJQUMxQixPQUFPLEdBQVksTUFBTSxDQUFDO0lBQzFCLE1BQU0sR0FBWSxLQUFLLENBQUM7SUFDeEIsTUFBTSxHQUFZLEtBQUssQ0FBQztJQUN4QixTQUFTLENBQVU7SUFDbkIsUUFBUSxDQUFVO0lBQ2xCLFFBQVEsQ0FBVTtJQUNsQixNQUFNLENBQVU7SUFDaEIsT0FBTyxDQUFVO0lBQ2pCLFlBQVksR0FBWSxNQUFNLENBQUM7SUFDL0IsU0FBUyxDQUFVO0lBQ25CLFdBQVcsQ0FBVTtJQUNyQixZQUFZLEdBQWEsSUFBSSxDQUFDO0lBQzlCLFlBQVksR0FBZSxFQUFFLENBQUM7SUFDOUIsTUFBTSxDQUFVLENBQUMsbUNBQW1DO0lBQ3BELFlBQVksR0FBVyxDQUFDLENBQUM7SUFDekIsTUFBTSxHQUFZLEtBQUssQ0FBQztJQUN4Qixt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O3NCQUF4QixLQUFLO2dCQXVCSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ29tcG9uZW50LFxuICBjb250ZW50Q2hpbGQsXG4gIENvbnRlbnRDaGlsZCxcbiAgZWZmZWN0LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFRlbXBsYXRlUmVmLFxuICB2aWV3Q2hpbGQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDYXJkRGF0YSB9IGZyb20gJy4vY2FyZC1kYXRhJztcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBSaWdodENhcmREYXRhVmlld0NvbXBvbmVudCB9IGZyb20gJy4vcmlnaHQtY2FyZC1kYXRhLXZpZXcvcmlnaHQtY2FyZC1kYXRhLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IExlZnRDYXJkRGF0YUNvbXBvbmVudCB9IGZyb20gJy4vbGVmdC1jYXJkLWRhdGEvbGVmdC1jYXJkLWRhdGEuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmVyYmVuLWNhcmQtZGF0YS12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhcmQtZGF0YS12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2NhcmQtZGF0YS12aWV3LmNvbXBvbmVudC5jc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBDYXJkRGF0YVZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSBwZCA9ICcxMHB4JztcbiAgQElucHV0KCkgbWcgPSAnMHB4JztcbiAgQElucHV0KCkgbEhlaWdodD86IHN0cmluZyA9ICcxMDAlJztcbiAgQElucHV0KCkgckhlaWdodD86IHN0cmluZyA9ICcxMDAlJztcbiAgQElucHV0KCkgcldpZHRoPzogc3RyaW5nID0gJzcwJSc7XG4gIEBJbnB1dCgpIGxXaWR0aD86IHN0cmluZyA9ICczMCUnO1xuICBASW5wdXQoKSB0ZXh0Q29sb3I/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGxiZ0NvbG9yPzogc3RyaW5nO1xuICBASW5wdXQoKSByYmdDb2xvcj86IHN0cmluZztcbiAgQElucHV0KCkgYm9yZGVyPzogc3RyaW5nO1xuICBASW5wdXQoKSBkaXNwbGF5Pzogc3RyaW5nO1xuICBASW5wdXQoKSBib3JkZXJSYWRpdXM/OiBzdHJpbmcgPSAnMTJweCc7XG4gIEBJbnB1dCgpIGFjdGl2ZUNzcz86IHN0cmluZztcbiAgQElucHV0KCkgaW5BY3RpdmVDc3M/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRpc3BsYXlBc1Jvdz86IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBjYXJkRGF0YUxpc3Q6IENhcmREYXRhW10gPSBbXTtcbiAgQElucHV0KCkgZGF0YUlkITogc3RyaW5nOyAvL3doYXQgdG8gdXNlIHRvIGlkZW50aWZ5IGVhY2ggZGF0YVxuICBASW5wdXQoKSB0b3RhbFJlY29yZHM6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIGZvb3RlcjogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBub09mVmlzaWJsZUNoaWxkcmVuOiBudW1iZXIgPSAzO1xuICBASW5wdXQoKSBzaG93RWRpdEljb246IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgdXNlVmlydHVhbFNjcm9sbDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSB2aXJ0dWFsU2Nyb2xsSXRlbVNpemU6IG51bWJlciA9IDQ4O1xuICBAT3V0cHV0KCkgZWRpdENsaWNrZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQENvbnRlbnRDaGlsZChSaWdodENhcmREYXRhVmlld0NvbXBvbmVudClcbiAgcmlnaHRDb250ZW50ITogUmlnaHRDYXJkRGF0YVZpZXdDb21wb25lbnQ7XG4gIC8vIEBDb250ZW50Q2hpbGQoTGVmdENhcmREYXRhQ29tcG9uZW50KSBsZWZ0ITpMZWZ0Q2FyZERhdGFDb21wb25lbnQ7XG4gIEBDb250ZW50Q2hpbGQoJ2NhcmQnKSBjYXJkITogVGVtcGxhdGVSZWY8YW55PjtcbiAgLy8gQENvbnRlbnRDaGlsZCgnY29udGVudCcpIGNvbnRlbnQhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBjdXJyZW50SXRlbTogYW55ID0ge307XG4gIGN1cnJlbnRDaGlsZEl0ZW06IGFueSA9IHt9O1xuXG4gIGhhc0N1cnJlbnRJdGVtKCkge1xuICAgIHJldHVybiAoXG4gICAgICAhIU9iamVjdC5rZXlzKHRoaXMuY3VycmVudEl0ZW0gPz8ge30pLmxlbmd0aCB8fFxuICAgICAgISFPYmplY3Qua2V5cyh0aGlzLmN1cnJlbnRDaGlsZEl0ZW0gPz8ge30pLmxlbmd0aFxuICAgICk7XG4gIH1cbiAgY2xlYXJEYXRhKCkge1xuICAgIHRoaXMuY3VycmVudEl0ZW0gPSB7fSBhcyBDYXJkRGF0YTtcbiAgICB0aGlzLmN1cnJlbnRDaGlsZEl0ZW0gPSB7fSBhcyBDYXJkRGF0YTtcbiAgICB0aGlzLmNhcmREYXRhTGlzdC5mb3JFYWNoKChfKSA9PiB7XG4gICAgICBfLnNlbGVjdGVkID0gZmFsc2U7XG4gICAgICBfLmNoaWxkcmVuLmZvckVhY2goKGMpID0+IHtcbiAgICAgICAgYy5zZWxlY3RlZCA9IGZhbHNlO1xuICAgICAgICBjLmlzQ2hpbGRyZW5FeHBhbmRlZCA9IGZhbHNlO1xuICAgICAgfSk7XG4gICAgICBfLmlzQ2hpbGRyZW5FeHBhbmRlZCA9IGZhbHNlO1xuICAgIH0pO1xuICB9XG4gIHNldERldGFpbERhdGEoKSB7XG4gICAgdGhpcy5yaWdodENvbnRlbnQucGFyZW50RGF0YSA9IHRoaXMuY3VycmVudEl0ZW07XG4gICAgdGhpcy5yaWdodENvbnRlbnQuY2hpbERhdGEgPSB0aGlzLmN1cnJlbnRDaGlsZEl0ZW07XG4gIH1cbiAgQElucHV0KCkgb25JdGVtQ2xpY2soaXRlbTogQ2FyZERhdGEpIHtcbiAgICB0aGlzLnJlc2V0Q2hpbGRyZW4oaXRlbSk7XG4gICAgaXRlbS5zZWxlY3RlZCA9IHRydWU7XG4gICAgdGhpcy5jYXJkRGF0YUxpc3QuZm9yRWFjaCgoZWxlbWVudCkgPT4ge1xuICAgICAgaWYgKGVsZW1lbnQuZGF0YVt0aGlzLmRhdGFJZF0gPT0gaXRlbS5kYXRhW3RoaXMuZGF0YUlkXSkge1xuICAgICAgICB0aGlzLmN1cnJlbnRJdGVtID0gaXRlbTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVsZW1lbnQuc2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLnNldERldGFpbERhdGEoKTtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50SXRlbTtcbiAgfVxuICByZXNldENoaWxkcmVuKG5ld1NlbGVjdDogQ2FyZERhdGEpIHtcbiAgICBpZiAodGhpcy5jdXJyZW50SXRlbSAmJiB0aGlzLmN1cnJlbnRJdGVtLmNoaWxkcmVuPy5sZW5ndGgpIHtcbiAgICAgICh0aGlzLmN1cnJlbnRJdGVtLmNoaWxkcmVuIGFzIGFueVtdKS5mb3JFYWNoKChjKSA9PiB7XG4gICAgICAgIGMuc2VsZWN0ZWQgPSBmYWxzZTtcbiAgICAgIH0pO1xuICAgICAgaWYgKG5ld1NlbGVjdC5kYXRhW3RoaXMuZGF0YUlkXSAhPSB0aGlzLmN1cnJlbnRJdGVtLmRhdGFbdGhpcy5kYXRhSWRdKVxuICAgICAgICB0aGlzLmN1cnJlbnRJdGVtLmlzQ2hpbGRyZW5FeHBhbmRlZCA9IGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLmN1cnJlbnRDaGlsZEl0ZW0gPSBudWxsO1xuICB9XG4gIEBJbnB1dCgpIG9uQ2FyZENoaWxkQ2xpY2soY2hpbGRJbmRleDogbnVtYmVyKSB7XG4gICAgdmFyIGl0ZW0gPSB0aGlzLmN1cnJlbnRJdGVtLmNoaWxkcmVuW2NoaWxkSW5kZXhdO1xuICAgICh0aGlzLmN1cnJlbnRJdGVtLmNoaWxkcmVuIGFzIGFueVtdKS5mb3JFYWNoKChlbGVtZW50KSA9PiB7XG4gICAgICBpZiAoZWxlbWVudC5kYXRhW3RoaXMuZGF0YUlkXSA9PSBpdGVtLmRhdGFbdGhpcy5kYXRhSWRdKSB7XG4gICAgICAgIHRoaXMuY3VycmVudENoaWxkSXRlbSA9IGl0ZW07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBlbGVtZW50LnNlbGVjdGVkID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy5jdXJyZW50Q2hpbGRJdGVtLnNlbGVjdGVkID0gdHJ1ZTtcbiAgICB0aGlzLnNldERldGFpbERhdGEoKTtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50Q2hpbGRJdGVtO1xuICB9XG4gIHNob3dDaGlsZHJlbihpdGVtOiBDYXJkRGF0YSkge1xuICAgIHZhciBjdXJyVG9nZ2xlU3RhdGUgPSBpdGVtLmlzQ2hpbGRyZW5FeHBhbmRlZDtcbiAgICB0aGlzLmNhcmREYXRhTGlzdC5mb3JFYWNoKChfKSA9PiB7XG4gICAgICBfLmlzQ2hpbGRyZW5FeHBhbmRlZCA9IGZhbHNlO1xuICAgICAgXy5zZWxlY3RlZCA9IGZhbHNlO1xuICAgIH0pO1xuICAgIGl0ZW0uc2VsZWN0ZWQgPSB0cnVlO1xuICAgIGl0ZW0uaXNDaGlsZHJlbkV4cGFuZGVkID0gIWN1cnJUb2dnbGVTdGF0ZTtcbiAgfVxuXG4gIEBPdXRwdXQoKSBsb2FkTW9yZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBvbkxvYWRNb3JlQ2xpY2soKSB7XG4gICAgdGhpcy5sb2FkTW9yZUNsaWNrLmVtaXQoKTtcbiAgfVxuXG4gIG9uRWRpdENsaWNrZWQoKSB7XG4gICAgdGhpcy5lZGl0Q2xpY2tlZC5lbWl0KCk7XG4gIH1cbn1cbiIsIjxkaXYgI21haW4gY2xhc3M9XCJmbGV4LWNvbFwiIFtzdHlsZS5kaXNwbGF5XT1cIidmbGV4J1wiPlxuICA8IS0tIEhlYWRlciAtLT5cbiAgPG5nLWNvbnRhaW5lciBuZ1Byb2plY3RBcz1cInZlcmJlbi1jYXJkLWRhdGEtdmlldy1oZWFkZXJcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ2ZXJiZW4tY2FyZC1kYXRhLXZpZXctaGVhZGVyXCI+PC9uZy1jb250ZW50PlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8ZGl2XG4gICAgW25nQ2xhc3NdPVwiXG4gICAgICAhaGFzQ3VycmVudEl0ZW0oKSA/ICdtYXN0ZXItb25seS1jb250YWluZXInIDogJ21hc3Rlci1kZXRhaWwtY29udGFpbmVyJ1xuICAgIFwiXG4gID5cbiAgICA8IS0tIENhcmQgYW5kIEZvb3RlciAtLT5cbiAgICA8ZGl2XG4gICAgICBbc3R5bGUuYm9yZGVyUmFkaXVzXT1cImJvcmRlclJhZGl1c1wiXG4gICAgICBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImxiZ0NvbG9yXCJcbiAgICAgIGNsYXNzPVwiZmxleC1jb2xcIlxuICAgID5cbiAgICAgIDwhLS0gQ2FyZCBzZWN0aW9uIC0tPlxuICAgICAgPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ2ZXJiZW4tbGVmdC1jYXJkLWRhdGEtdmlld1wiPjwvbmctY29udGVudD5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgIDxjZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnRcbiAgICAgICAgKm5nSWY9XCJ1c2VWaXJ0dWFsU2Nyb2xsOyBlbHNlIG5vcm1hbFZpZXdcIlxuICAgICAgICBbaXRlbVNpemVdPVwidmlydHVhbFNjcm9sbEl0ZW1TaXplXCJcbiAgICAgICAgY2xhc3M9XCJ2aXJ0dWFsLXNjcm9sbC12aWV3cG9ydFwiXG4gICAgICAgIFtzdHlsZS5oZWlnaHQucHhdPVwidmlydHVhbFNjcm9sbEl0ZW1TaXplICogNTBcIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9jZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQ+XG5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjbm9ybWFsVmlldz5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgIDwhLS0gRm9vdGVyLS0+XG4gICAgICA8bmctY29udGFpbmVyIG5nUHJvamVjdEFzPVwidmVyYmVuLWNhcmQtZGF0YS12aWV3LWZvb3RlclwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ2ZXJiZW4tY2FyZC1kYXRhLXZpZXctZm9vdGVyXCI+PC9uZy1jb250ZW50PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPCEtLSBEZXRhaWwgU2VjdGlvbi0tPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiY2FyZC1kZXRhaWwtc2VjdGlvblwiXG4gICAgICBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cInJiZ0NvbG9yXCJcbiAgICAgICpuZ0lmPVwiaGFzQ3VycmVudEl0ZW0oKVwiXG4gICAgICBbc3R5bGUuYm9yZGVyUmFkaXVzXT1cImJvcmRlclJhZGl1c1wiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1iZXR3ZWVuIGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDx2ZXJiZW4tc3ZnXG4gICAgICAgICAgICAqbmdJZj1cInRoaXMuc2hvd0VkaXRJY29uXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkVkaXRDbGlja2VkKClcIlxuICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICBpY29uPVwiZWRpdFwiXG4gICAgICAgICAgICBbd2lkdGhdPVwiMjBcIlxuICAgICAgICAgICAgW2hlaWdodF09XCIyMFwiXG4gICAgICAgICAgICBjb2xvcj1cInZhcigtLXZibi1jb2xvci10ZXh0KVwiXG4gICAgICAgICAgPjwvdmVyYmVuLXN2Zz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDx2ZXJiZW4tc3ZnXG4gICAgICAgICAgKGNsaWNrKT1cImNsZWFyRGF0YSgpXCJcbiAgICAgICAgICBjbGFzcz1cImN1cnNvci1wb2ludGVyIHRvUmlnaHRcIlxuICAgICAgICAgIGljb249XCJjbG9zZVwiXG4gICAgICAgICAgW3dpZHRoXT1cIjIwXCJcbiAgICAgICAgICBbaGVpZ2h0XT1cIjIwXCJcbiAgICAgICAgICBjb2xvcj1cInZhcigtLXZibi1jb2xvci10ZXh0KVwiXG4gICAgICAgID48L3ZlcmJlbi1zdmc+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxuZy1jb250YWluZXIgI3JpZ2h0IG5nUHJvamVjdEFzPVwidmVyYmVuLXJpZ2h0LWNhcmQtZGF0YS12aWV3XCI+XG4gICAgICAgIDxuZy1jb250ZW50XG4gICAgICAgICAgI3JpZ2h0Q29udGVudFxuICAgICAgICAgIHNlbGVjdD1cInZlcmJlbi1yaWdodC1jYXJkLWRhdGEtdmlld1wiXG4gICAgICAgID48L25nLWNvbnRlbnQ+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -159,11 +159,11 @@ export class ChipComponent {
|
|
|
159
159
|
return this.chips && this.chips.length == 0 ? this.placeholder : '';
|
|
160
160
|
}
|
|
161
161
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: ChipComponent, deps: [{ token: i1.NgControl, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
162
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.10", type: ChipComponent, isStandalone: true, selector: "verben-chip", inputs: { width: "width", placeholder: "placeholder", max: "max", styleClass: "styleClass", separator: "separator", disabled: "disabled", required: "required", invalidMessage: "invalidMessage", errorPosition: "errorPosition" }, outputs: { onChange: "onChange" }, host: { listeners: { "focus": "onFocus()", "blur": "onBlur()" }, properties: { "class.focused": "this.isFocused" } }, queries: [{ propertyName: "templates", predicate: TemplateDirective }], ngImport: i0, template: "<div [ngClass]=\"styleClass\" [style.width]=\"width\"\n [ngClass]=\"{'right-error': errorPosition == 'right', 'left-error': errorPosition == 'left', 'top-error': errorPosition == 'top'}\"\n class=\"chip\">\n <div [class.focused]=\"isFocused\" [ngClass]=\"{'ng-invalid': isInvalid, 'disabled': disabled}\" (focus)=\"onFocus()\"\n (blur)=\"onBlur()\" tabindex=\"0\" class=\"chip-content-input verben-input flex\">\n <div class=\"chip-main-content\">\n <div class=\"default-item flex\">\n <!-- <div class=\"dropdown-label place-holder\" *ngIf=\"this.chips.length == 0\">{{placeholder}}</div> -->\n <div *ngIf=\"chips && this.chips.length > 0\" class=\"chips-container flex\">\n <span *ngFor=\"let item of chips; index as i\" class=\"item-chip flex\">\n <ng-container *ngIf=\"itemTemplate; else defaultItem\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-container>\n </ng-container>\n <ng-template #defaultItem>\n <span>{{item}}</span>\n </ng-template>\n <verben-svg (click)=\"removeChip(i, $event);\" icon=\"close-circle-full\" [width]=\"15\"\n [height]=\"15\"></verben-svg>\n <!-- <svg (click)=\"removeChip(i, $event);\" width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M5.00065 9.33333C7.30184 9.33333 9.16732 7.46785 9.16732 5.16667C9.16732 2.86548 7.30184 1 5.00065 1C2.69946 1 0.833984 2.86548 0.833984 5.16667C0.833984 7.46785 2.69946 9.33333 5.00065 9.33333Z\"\n stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\n <path d=\"M6.25 3.91797L3.75 6.41797\" stroke=\"currentColor\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M3.75 3.91797L6.25 6.41797\" stroke=\"currentColor\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n </svg> -->\n </span>\n </div>\n </div>\n </div>\n <div class=\"input-container\">\n <input [disabled]=\"this.max != null && chips && this.chips.length == max\" (keydown)=\"onKeyDown($event)\"\n [placeholder]=\"placeholderState\" [(ngModel)]=\"chipInput\" (focus)=\"onInputFocus()\" (blur)=\"onInputBlur()\"\n class=\"chip-input\" />\n </div>\n </div>\n <div *ngIf=\"this.isInvalid && this.invalidMessage\" class=\"verben-error-message error-message\">{{invalidMessage}}\n </div>\n</div>", styles: ["*{font-family:
|
|
162
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.10", type: ChipComponent, isStandalone: true, selector: "verben-chip", inputs: { width: "width", placeholder: "placeholder", max: "max", styleClass: "styleClass", separator: "separator", disabled: "disabled", required: "required", invalidMessage: "invalidMessage", errorPosition: "errorPosition" }, outputs: { onChange: "onChange" }, host: { listeners: { "focus": "onFocus()", "blur": "onBlur()" }, properties: { "class.focused": "this.isFocused" } }, queries: [{ propertyName: "templates", predicate: TemplateDirective }], ngImport: i0, template: "<div [ngClass]=\"styleClass\" [style.width]=\"width\"\n [ngClass]=\"{'right-error': errorPosition == 'right', 'left-error': errorPosition == 'left', 'top-error': errorPosition == 'top'}\"\n class=\"chip\">\n <div [class.focused]=\"isFocused\" [ngClass]=\"{'ng-invalid': isInvalid, 'disabled': disabled}\" (focus)=\"onFocus()\"\n (blur)=\"onBlur()\" tabindex=\"0\" class=\"chip-content-input verben-input flex\">\n <div class=\"chip-main-content\">\n <div class=\"default-item flex\">\n <!-- <div class=\"dropdown-label place-holder\" *ngIf=\"this.chips.length == 0\">{{placeholder}}</div> -->\n <div *ngIf=\"chips && this.chips.length > 0\" class=\"chips-container flex\">\n <span *ngFor=\"let item of chips; index as i\" class=\"item-chip flex\">\n <ng-container *ngIf=\"itemTemplate; else defaultItem\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-container>\n </ng-container>\n <ng-template #defaultItem>\n <span>{{item}}</span>\n </ng-template>\n <verben-svg (click)=\"removeChip(i, $event);\" icon=\"close-circle-full\" [width]=\"15\"\n [height]=\"15\"></verben-svg>\n <!-- <svg (click)=\"removeChip(i, $event);\" width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M5.00065 9.33333C7.30184 9.33333 9.16732 7.46785 9.16732 5.16667C9.16732 2.86548 7.30184 1 5.00065 1C2.69946 1 0.833984 2.86548 0.833984 5.16667C0.833984 7.46785 2.69946 9.33333 5.00065 9.33333Z\"\n stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\n <path d=\"M6.25 3.91797L3.75 6.41797\" stroke=\"currentColor\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M3.75 3.91797L6.25 6.41797\" stroke=\"currentColor\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n </svg> -->\n </span>\n </div>\n </div>\n </div>\n <div class=\"input-container\">\n <input [disabled]=\"this.max != null && chips && this.chips.length == max\" (keydown)=\"onKeyDown($event)\"\n [placeholder]=\"placeholderState\" [(ngModel)]=\"chipInput\" (focus)=\"onInputFocus()\" (blur)=\"onInputBlur()\"\n class=\"chip-input\" />\n </div>\n </div>\n <div *ngIf=\"this.isInvalid && this.invalidMessage\" class=\"verben-error-message error-message\">{{invalidMessage}}\n </div>\n</div>", styles: ["*{font-family:var(--vbn-font-family);font-size:var(--vbn-font-size-base)}.w-100{width:100%}.h-100{height:100%}.flex{display:flex}.flex-col{flex-direction:column}.font-bold{font-weight:var(--vbn-font-weight-bold)}.justify-center{justify-content:center}.justify-end{justify-content:end}.align-items-center{align-items:center}.grid{display:grid}.verben-error-message{font-size:var(--vbn-font-size-sm);color:var(--vbn-color-error)}.verben-input{border:1px solid var(--vbn-input-border);outline:none;border-radius:var(--vbn-radius);color:var(--vbn-input-text);transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,outline-color .2s}.verben-input::placeholder{color:var(--vbn-input-placeholder)}.verben-input:hover{border:1px solid var(--vbn-input-border-hover)}.verben-input.disabled{opacity:1;background-color:var(--vbn-input-disabled-bg);pointer-events:none;color:var(--vbn-color-text-muted)}.verben-input:disabled{opacity:1;background-color:var(--vbn-input-disabled-bg);pointer-events:none;color:var(--vbn-color-text-muted)}.verben-input.focused{border-color:var(--vbn-input-border-focus);outline:none}.verben-input:focus{border-color:var(--vbn-input-border-focus);outline:none}.verben-input.ng-invalid{border-color:var(--vbn-color-error)}.verben-button{padding:8px 15px;border-radius:var(--vbn-radius-sm);border:none;text-align:center}.verben-button.primary{background-color:var(--vbn-color-primary)}.verben-button.secondary{background-color:var(--vbn-color-secondary)}.chip{position:relative}.chip-content-input{gap:5px;padding:5px;flex-wrap:wrap;min-height:23px;align-items:center}.chip-content-input.disabled .chips-container{color:var(--vbn-color-text-muted)}.chip-main-content{min-width:0}.chips-container{width:100%;gap:5px;color:var(--vbn-color-text);flex-wrap:wrap}.item-chip{cursor:pointer;align-items:center;gap:5px;border-radius:5px;padding:1px 5px;background-color:var(--vbn-chip-bg)}.item-chip>span{max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-chip>svg{width:12px;height:12px}.input-container{flex:1 1 0}.chip-input{width:100%;border:none;outline:none;background-color:transparent}.chip-input::placeholder{color:var(--vbn-color-text-muted)}.error-message{position:absolute;z-index:1;left:0;right:0;bottom:-20px}.top-error .error-message{top:-20px!important;bottom:initial!important}.left-error .error-message{bottom:50%!important;right:calc(100% + 10px)!important;width:max-content;left:initial!important;transform:translateY(50%)}.right-error .error-message{bottom:50%!important;left:calc(100% + 10px)!important;width:max-content;right:initial!important;transform:translateY(50%)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: SharedModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: SvgModule }, { kind: "component", type: i3.SvgComponent, selector: "verben-svg", inputs: ["icon", "width", "height", "fill", "stroke", "type", "size"] }] });
|
|
163
163
|
}
|
|
164
164
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: ChipComponent, decorators: [{
|
|
165
165
|
type: Component,
|
|
166
|
-
args: [{ selector: 'verben-chip', standalone: true, imports: [CommonModule, SharedModule, FormsModule, SvgModule], template: "<div [ngClass]=\"styleClass\" [style.width]=\"width\"\n [ngClass]=\"{'right-error': errorPosition == 'right', 'left-error': errorPosition == 'left', 'top-error': errorPosition == 'top'}\"\n class=\"chip\">\n <div [class.focused]=\"isFocused\" [ngClass]=\"{'ng-invalid': isInvalid, 'disabled': disabled}\" (focus)=\"onFocus()\"\n (blur)=\"onBlur()\" tabindex=\"0\" class=\"chip-content-input verben-input flex\">\n <div class=\"chip-main-content\">\n <div class=\"default-item flex\">\n <!-- <div class=\"dropdown-label place-holder\" *ngIf=\"this.chips.length == 0\">{{placeholder}}</div> -->\n <div *ngIf=\"chips && this.chips.length > 0\" class=\"chips-container flex\">\n <span *ngFor=\"let item of chips; index as i\" class=\"item-chip flex\">\n <ng-container *ngIf=\"itemTemplate; else defaultItem\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-container>\n </ng-container>\n <ng-template #defaultItem>\n <span>{{item}}</span>\n </ng-template>\n <verben-svg (click)=\"removeChip(i, $event);\" icon=\"close-circle-full\" [width]=\"15\"\n [height]=\"15\"></verben-svg>\n <!-- <svg (click)=\"removeChip(i, $event);\" width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M5.00065 9.33333C7.30184 9.33333 9.16732 7.46785 9.16732 5.16667C9.16732 2.86548 7.30184 1 5.00065 1C2.69946 1 0.833984 2.86548 0.833984 5.16667C0.833984 7.46785 2.69946 9.33333 5.00065 9.33333Z\"\n stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\n <path d=\"M6.25 3.91797L3.75 6.41797\" stroke=\"currentColor\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M3.75 3.91797L6.25 6.41797\" stroke=\"currentColor\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n </svg> -->\n </span>\n </div>\n </div>\n </div>\n <div class=\"input-container\">\n <input [disabled]=\"this.max != null && chips && this.chips.length == max\" (keydown)=\"onKeyDown($event)\"\n [placeholder]=\"placeholderState\" [(ngModel)]=\"chipInput\" (focus)=\"onInputFocus()\" (blur)=\"onInputBlur()\"\n class=\"chip-input\" />\n </div>\n </div>\n <div *ngIf=\"this.isInvalid && this.invalidMessage\" class=\"verben-error-message error-message\">{{invalidMessage}}\n </div>\n</div>", styles: ["*{font-family:
|
|
166
|
+
args: [{ selector: 'verben-chip', standalone: true, imports: [CommonModule, SharedModule, FormsModule, SvgModule], template: "<div [ngClass]=\"styleClass\" [style.width]=\"width\"\n [ngClass]=\"{'right-error': errorPosition == 'right', 'left-error': errorPosition == 'left', 'top-error': errorPosition == 'top'}\"\n class=\"chip\">\n <div [class.focused]=\"isFocused\" [ngClass]=\"{'ng-invalid': isInvalid, 'disabled': disabled}\" (focus)=\"onFocus()\"\n (blur)=\"onBlur()\" tabindex=\"0\" class=\"chip-content-input verben-input flex\">\n <div class=\"chip-main-content\">\n <div class=\"default-item flex\">\n <!-- <div class=\"dropdown-label place-holder\" *ngIf=\"this.chips.length == 0\">{{placeholder}}</div> -->\n <div *ngIf=\"chips && this.chips.length > 0\" class=\"chips-container flex\">\n <span *ngFor=\"let item of chips; index as i\" class=\"item-chip flex\">\n <ng-container *ngIf=\"itemTemplate; else defaultItem\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: { $implicit: item }\"></ng-container>\n </ng-container>\n <ng-template #defaultItem>\n <span>{{item}}</span>\n </ng-template>\n <verben-svg (click)=\"removeChip(i, $event);\" icon=\"close-circle-full\" [width]=\"15\"\n [height]=\"15\"></verben-svg>\n <!-- <svg (click)=\"removeChip(i, $event);\" width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M5.00065 9.33333C7.30184 9.33333 9.16732 7.46785 9.16732 5.16667C9.16732 2.86548 7.30184 1 5.00065 1C2.69946 1 0.833984 2.86548 0.833984 5.16667C0.833984 7.46785 2.69946 9.33333 5.00065 9.33333Z\"\n stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\n <path d=\"M6.25 3.91797L3.75 6.41797\" stroke=\"currentColor\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n <path d=\"M3.75 3.91797L6.25 6.41797\" stroke=\"currentColor\" stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n </svg> -->\n </span>\n </div>\n </div>\n </div>\n <div class=\"input-container\">\n <input [disabled]=\"this.max != null && chips && this.chips.length == max\" (keydown)=\"onKeyDown($event)\"\n [placeholder]=\"placeholderState\" [(ngModel)]=\"chipInput\" (focus)=\"onInputFocus()\" (blur)=\"onInputBlur()\"\n class=\"chip-input\" />\n </div>\n </div>\n <div *ngIf=\"this.isInvalid && this.invalidMessage\" class=\"verben-error-message error-message\">{{invalidMessage}}\n </div>\n</div>", styles: ["*{font-family:var(--vbn-font-family);font-size:var(--vbn-font-size-base)}.w-100{width:100%}.h-100{height:100%}.flex{display:flex}.flex-col{flex-direction:column}.font-bold{font-weight:var(--vbn-font-weight-bold)}.justify-center{justify-content:center}.justify-end{justify-content:end}.align-items-center{align-items:center}.grid{display:grid}.verben-error-message{font-size:var(--vbn-font-size-sm);color:var(--vbn-color-error)}.verben-input{border:1px solid var(--vbn-input-border);outline:none;border-radius:var(--vbn-radius);color:var(--vbn-input-text);transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,outline-color .2s}.verben-input::placeholder{color:var(--vbn-input-placeholder)}.verben-input:hover{border:1px solid var(--vbn-input-border-hover)}.verben-input.disabled{opacity:1;background-color:var(--vbn-input-disabled-bg);pointer-events:none;color:var(--vbn-color-text-muted)}.verben-input:disabled{opacity:1;background-color:var(--vbn-input-disabled-bg);pointer-events:none;color:var(--vbn-color-text-muted)}.verben-input.focused{border-color:var(--vbn-input-border-focus);outline:none}.verben-input:focus{border-color:var(--vbn-input-border-focus);outline:none}.verben-input.ng-invalid{border-color:var(--vbn-color-error)}.verben-button{padding:8px 15px;border-radius:var(--vbn-radius-sm);border:none;text-align:center}.verben-button.primary{background-color:var(--vbn-color-primary)}.verben-button.secondary{background-color:var(--vbn-color-secondary)}.chip{position:relative}.chip-content-input{gap:5px;padding:5px;flex-wrap:wrap;min-height:23px;align-items:center}.chip-content-input.disabled .chips-container{color:var(--vbn-color-text-muted)}.chip-main-content{min-width:0}.chips-container{width:100%;gap:5px;color:var(--vbn-color-text);flex-wrap:wrap}.item-chip{cursor:pointer;align-items:center;gap:5px;border-radius:5px;padding:1px 5px;background-color:var(--vbn-chip-bg)}.item-chip>span{max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-chip>svg{width:12px;height:12px}.input-container{flex:1 1 0}.chip-input{width:100%;border:none;outline:none;background-color:transparent}.chip-input::placeholder{color:var(--vbn-color-text-muted)}.error-message{position:absolute;z-index:1;left:0;right:0;bottom:-20px}.top-error .error-message{top:-20px!important;bottom:initial!important}.left-error .error-message{bottom:50%!important;right:calc(100% + 10px)!important;width:max-content;left:initial!important;transform:translateY(50%)}.right-error .error-message{bottom:50%!important;left:calc(100% + 10px)!important;width:max-content;right:initial!important;transform:translateY(50%)}\n"] }]
|
|
167
167
|
}], ctorParameters: () => [{ type: i1.NgControl, decorators: [{
|
|
168
168
|
type: Self
|
|
169
169
|
}] }], propDecorators: { width: [{
|
|
@@ -199,4 +199,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.10", ngImpo
|
|
|
199
199
|
type: HostListener,
|
|
200
200
|
args: ['blur']
|
|
201
201
|
}] } });
|
|
202
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2NoaXAvY2hpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2NoaXAvY2hpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVOLElBQUksR0FFTCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLFdBQVcsRUFBYSxNQUFNLGdCQUFnQixDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7OztBQVNoRSxNQUFNLE9BQU8sYUFBYTtJQWdESTtJQTdDNUIsU0FBUztJQUNBLEtBQUssR0FBVyxNQUFNLENBQUM7SUFDdkIsV0FBVyxHQUFXLEVBQUUsQ0FBQztJQUN6QixHQUFHLENBQVU7SUFDYixVQUFVLEdBQVcsRUFBRSxDQUFDO0lBQ3hCLFNBQVMsR0FBVyxHQUFHLENBQUM7SUFDeEIsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUMxQixRQUFRLEdBQVksS0FBSyxDQUFDO0lBQzFCLGNBQWMsQ0FBVTtJQUN4QixhQUFhLEdBQVcsRUFBRSxDQUFDO0lBRXBDLFVBQVU7SUFDQSxRQUFRLEdBQWtDLElBQUksWUFBWSxFQUFFLENBQUM7SUFD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ZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBTZWxmLFxuICBUZW1wbGF0ZVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgRm9ybXNNb2R1bGUsIE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGlwQ2hhbmdlRXZlbnQgfSBmcm9tICcuL0NoaXBDaGFuZ2VFdmVudCc7XG5pbXBvcnQgeyBTaGFyZWRNb2R1bGUgfSBmcm9tICd2ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZCc7XG5pbXBvcnQgeyBUZW1wbGF0ZURpcmVjdGl2ZSB9IGZyb20gJ3ZlcmJlbi1uZy11aS9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkJztcbmltcG9ydCB7IFN2Z01vZHVsZSB9IGZyb20gJ3ZlcmJlbi1uZy11aS9zcmMvbGliL2NvbXBvbmVudHMvc3ZnJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmVyYmVuLWNoaXAnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBTaGFyZWRNb2R1bGUsIEZvcm1zTW9kdWxlLCBTdmdNb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hpcC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9jaGlwLmNvbXBvbmVudC5jc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBDaGlwQ29tcG9uZW50XG4gIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCwgQWZ0ZXJDb250ZW50SW5pdFxue1xuICAvLyBJTlBVVFNcbiAgQElucHV0KCkgd2lkdGg6IHN0cmluZyA9ICcxMDAlJztcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBtYXg/OiBudW1iZXI7XG4gIEBJbnB1dCgpIHN0eWxlQ2xhc3M6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBzZXBhcmF0b3I6IHN0cmluZyA9ICcsJztcbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgaW52YWxpZE1lc3NhZ2U/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGVycm9yUG9zaXRpb246IHN0cmluZyA9ICcnO1xuXG4gIC8vIE9VVFBVVFNcbiAgQE91dHB1dCgpIG9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q2hpcENoYW5nZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgLy8gQE91dHB1dCgpIG9uQ2xlYXI6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgb25JdGVtQ2hhbmdlOiAodmFsdWU6IGFueSkgPT4gdm9pZCA9ICgpID0+IHt9O1xuICBvblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7fTtcbiAgaXNJbnZhbGlkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLy9URU1QTEFUSU5HXG4gIEBDb250ZW50Q2hpbGRyZW4oVGVtcGxhdGVEaXJlY3RpdmUpIHRlbXBsYXRlcyE6IFF1ZXJ5TGlzdDxUZW1wbGF0ZURpcmVjdGl2ZT47XG4gIEBIb3N0QmluZGluZygnY2xhc3MuZm9jdXNlZCcpIGlzRm9jdXNlZCA9IGZhbHNlO1xuICBpc0lucHV0Rm9jdXNlZCA9IGZhbHNlO1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJykgb25Gb2N1cygpIHtcbiAgICB0aGlzLmlzRm9jdXNlZCA9IHRydWU7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdibHVyJykgb25CbHVyKCkge1xuICAgIHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XG4gIH1cblxuICBvbklucHV0Rm9jdXMoKSB7XG4gICAgdGhpcy5pc0ZvY3VzZWQgPSB0cnVlO1xuICB9XG5cbiAgb25JbnB1dEJsdXIoKSB7XG4gICAgdGhpcy5pc0ZvY3VzZWQgPSBmYWxzZTtcbiAgfVxuXG4gIGl0ZW1UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IG51bGwgPSBudWxsO1xuXG4gIGNoaXBzOiBzdHJpbmdbXSA9IFtdO1xuICBjaGlwSW5wdXQ6IHN0cmluZyA9ICcnO1xuXG4gIGNvbnN0cnVjdG9yKEBTZWxmKCkgcHJpdmF0ZSBuZ0NvbnRyb2w6IE5nQ29udHJvbCkge1xuICAgIGlmICh0aGlzLm5nQ29udHJvbCkge1xuICAgICAgdGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7IC8vIEFzc2lnbiB0aGlzIGNvbXBvbmVudCBhcyB0aGUgdmFsdWUgYWNjZXNzb3JcbiAgICAgIHRoaXMubmdDb250cm9sPy5zdGF0dXNDaGFuZ2VzPy5zdWJzY3JpYmUoKHN0YXR1cykgPT4ge1xuICAgICAgICB0aGlzLmlzSW52YWxpZCA9IHRoaXMubmdDb250cm9sLnRvdWNoZWRcbiAgICAgICAgICA/IHN0YXR1cyA9PT0gJ0lOVkFMSUQnICYmIHRoaXMubmdDb250cm9sLnRvdWNoZWRcbiAgICAgICAgICA6IGZhbHNlO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgdGhpcy50ZW1wbGF0ZXMuZm9yRWFjaCgodGVtcGxhdGVEaXJlY3RpdmUpID0+IHtcbiAgICAgIGlmICh0ZW1wbGF0ZURpcmVjdGl2ZS52VGVtcGxhdGUgPT09ICdpdGVtJykge1xuICAgICAgICB0aGlzLml0ZW1UZW1wbGF0ZSA9IHRlbXBsYXRlRGlyZWN0aXZlLnRlbXBsYXRlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgaW5wdXRWYWx1ZSA9IChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWU7XG4gICAgLy8gQ2hlY2sgZm9yICdFbnRlcicga2V5IG9yIGN1c3RvbSBzZXBhcmF0b3JcbiAgICBpZiAoZXZlbnQua2V5ID09PSAnRW50ZXInIHx8IGV2ZW50LmtleSA9PSB0aGlzLnNlcGFyYXRvcikge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuYWRkQ2hpcHMoaW5wdXRWYWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gSGFuZGxlICdCYWNrc3BhY2UnIGtleSB3aGVuIGlucHV0IGlzIGVtcHR5XG4gICAgaWYgKFxuICAgICAgZXZlbnQua2V5ID09PSAnQmFja3NwYWNlJyAmJlxuICAgICAgaW5wdXRWYWx1ZS5sZW5ndGggPT09IDAgJiZcbiAgICAgIHRoaXMuY2hpcHMubGVuZ3RoID4gMFxuICAgICkge1xuICAgICAgdGhpcy5yZW1vdmVMYXN0Q2hpcCgpO1xuICAgIH1cbiAgfVxuXG4gIGFkZENoaXBzKGlucHV0VmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIFNwbGl0IGJ5IHNlcGFyYXRvciBhbmQgdHJpbSBlYWNoIHBhcnRcbiAgICBjb25zdCB2YWx1ZXMgPSBpbnB1dFZhbHVlXG4gICAgICAuc3BsaXQodGhpcy5zZXBhcmF0b3IpXG4gICAgICAubWFwKCh2YWx1ZSkgPT4gdmFsdWUudHJpbSgpKTtcblxuICAgIHZhbHVlcy5mb3JFYWNoKCh2YWx1ZSkgPT4ge1xuICAgICAgaWYgKHZhbHVlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgaWYgKHRoaXMubWF4ICYmIHRoaXMuY2hpcHMubGVuZ3RoID09IHRoaXMubWF4KSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2hpcHMucHVzaCh2YWx1ZSk7IC8vIEFkZCBjaGlwXG4gICAgICB9XG4gICAgfSk7XG4gICAgaWYgKHRoaXMuaXNJbnZhbGlkKSB7XG4gICAgICB0aGlzLmlzSW52YWxpZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIHRoaXMuY2hpcElucHV0ID0gJyc7IC8vIENsZWFyIGlucHV0XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoeyB2YWx1ZTogdGhpcy5jaGlwcyB9KTtcbiAgfVxuXG4gIHJlbW92ZUNoaXAoaW5kZXg6IG51bWJlciwgZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jaGlwcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIGlmICh0aGlzLmNoaXBzLmxlbmd0aCA9PSAwKSB7XG4gICAgICBpZiAodGhpcy5yZXF1aXJlZCA9PSB0cnVlKSB7XG4gICAgICAgIHRoaXMuaXNJbnZhbGlkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoeyBvcmlnaW5hbEV2ZW50OiBldmVudCwgdmFsdWU6IHRoaXMuY2hpcHMgfSk7XG4gIH1cblxuICByZW1vdmVMYXN0Q2hpcCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNoaXBzLnBvcCgpOyAvLyBSZW1vdmUgdGhlIGxhc3QgY2hpcFxuICAgIGlmICh0aGlzLmNoaXBzLmxlbmd0aCA9PSAwKSB7XG4gICAgICBpZiAodGhpcy5yZXF1aXJlZCA9PSB0cnVlKSB7XG4gICAgICAgIHRoaXMuaXNJbnZhbGlkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoeyBvcmlnaW5hbEV2ZW50OiBldmVudCwgdmFsdWU6IHRoaXMuY2hpcHMgfSk7XG4gIH1cblxuICAvLyBjbGVhclNlbGVjdGlvbihldmVudDogRXZlbnQpIHtcbiAgLy8gICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAvLyAgICAgcmV0dXJuO1xuICAvLyAgIH1cbiAgLy8gICB0aGlzLmNoaXBzID0gW107XG4gIC8vICAgaWYgKHRoaXMucmVxdWlyZWQgPT0gdHJ1ZSkge1xuICAvLyAgICAgdGhpcy5pc0ludmFsaWQgPSB0cnVlO1xuICAvLyAgIH1cbiAgLy8gICB0aGlzLm9uVG91Y2hlZCgpO1xuICAvLyAgIHRoaXMub25DaGFuZ2UuZW1pdCh7IG9yaWdpbmFsRXZlbnQ6IGV2ZW50LCB2YWx1ZTogdGhpcy5jaGlwcyB9KTtcbiAgLy8gfVxuXG4gIHdyaXRlVmFsdWUob2JqOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMuY2hpcHMgPSBvYmo7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoeyB2YWx1ZTogdGhpcy5jaGlwcyB9KTtcbiAgfVxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uSXRlbUNoYW5nZSA9IGZuO1xuICB9XG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIGdldCBwbGFjZWhvbGRlclN0YXRlKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuY2hpcHMgJiYgdGhpcy5jaGlwcy5sZW5ndGggPT0gMCA/IHRoaXMucGxhY2Vob2xkZXIgOiAnJztcbiAgfVxufVxuIiwiPGRpdiBbbmdDbGFzc109XCJzdHlsZUNsYXNzXCIgW3N0eWxlLndpZHRoXT1cIndpZHRoXCJcbiAgW25nQ2xhc3NdPVwieydyaWdodC1lcnJvcic6IGVycm9yUG9zaXRpb24gPT0gJ3JpZ2h0JywgJ2xlZnQtZXJyb3InOiBlcnJvclBvc2l0aW9uID09ICdsZWZ0JywgJ3RvcC1lcnJvcic6IGVycm9yUG9zaXRpb24gPT0gJ3RvcCd9XCJcbiAgY2xhc3M9XCJjaGlwXCI+XG4gIDxkaXYgW2NsYXNzLmZvY3VzZWRdPVwiaXNGb2N1c2VkXCIgW25nQ2xhc3NdPVwieyduZy1pbnZhbGlkJzogaXNJbnZhbGlkLCAnZGlzYWJsZWQnOiBkaXNhYmxlZH1cIiAoZm9jdXMpPVwib25Gb2N1cygpXCJcbiAgICAoYmx1cik9XCJvbkJsdXIoKVwiIHRhYmluZGV4PVwiMFwiIGNsYXNzPVwiY2hpcC1jb250ZW50LWlucHV0IHZlcmJlbi1pbnB1dCBmbGV4XCI+XG4gICAgPGRpdiBjbGFzcz1cImNoaXAtbWFpbi1jb250ZW50XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1pdGVtIGZsZXhcIj5cbiAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tbGFiZWwgcGxhY2UtaG9sZGVyXCIgKm5nSWY9XCJ0aGlzLmNoaXBzLmxlbmd0aCA9PSAwXCI+e3twbGFjZWhvbGRlcn19PC9kaXY+IC0tPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiY2hpcHMgJiYgdGhpcy5jaGlwcy5sZW5ndGggPiAwXCIgY2xhc3M9XCJjaGlwcy1jb250YWluZXIgZmxleFwiPlxuICAgICAgICAgIDxzcGFuICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNoaXBzOyBpbmRleCBhcyBpXCIgY2xhc3M9XCJpdGVtLWNoaXAgZmxleFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW1UZW1wbGF0ZTsgZWxzZSBkZWZhdWx0SXRlbVwiPlxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbSB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdEl0ZW0+XG4gICAgICAgICAgICAgIDxzcGFuPnt7aXRlbX19PC9zcGFuPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDx2ZXJiZW4tc3ZnIChjbGljayk9XCJyZW1vdmVDaGlwKGksICRldmVudCk7XCIgaWNvbj1cImNsb3NlLWNpcmNsZS1mdWxsXCIgW3dpZHRoXT1cIjE1XCJcbiAgICAgICAgICAgICAgW2hlaWdodF09XCIxNVwiPjwvdmVyYmVuLXN2Zz5cbiAgICAgICAgICAgIDwhLS0gPHN2ZyAoY2xpY2spPVwicmVtb3ZlQ2hpcChpLCAkZXZlbnQpO1wiIHdpZHRoPVwiMTBcIiBoZWlnaHQ9XCIxMFwiIHZpZXdCb3g9XCIwIDAgMTAgMTBcIiBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cbiAgICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgICBkPVwiTTUuMDAwNjUgOS4zMzMzM0M3LjMwMTg0IDkuMzMzMzMgOS4xNjczMiA3LjQ2Nzg1IDkuMTY3MzIgNS4xNjY2N0M5LjE2NzMyIDIuODY1NDggNy4zMDE4NCAxIDUuMDAwNjUgMUMyLjY5OTQ2IDEgMC44MzM5ODQgMi44NjU0OCAwLjgzMzk4NCA1LjE2NjY3QzAuODMzOTg0IDcuNDY3ODUgMi42OTk0NiA5LjMzMzMzIDUuMDAwNjUgOS4zMzMzM1pcIlxuICAgICAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XG4gICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4yNSAzLjkxNzk3TDMuNzUgNi40MTc5N1wiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cbiAgICAgICAgICAgICAgPHBhdGggZD1cIk0zLjc1IDMuOTE3OTdMNi4yNSA2LjQxNzk3XCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxuICAgICAgICAgICAgPC9zdmc+IC0tPlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtY29udGFpbmVyXCI+XG4gICAgICA8aW5wdXQgW2Rpc2FibGVkXT1cInRoaXMubWF4ICE9IG51bGwgJiYgY2hpcHMgJiYgdGhpcy5jaGlwcy5sZW5ndGggPT0gbWF4XCIgKGtleWRvd24pPVwib25LZXlEb3duKCRldmVudClcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJTdGF0ZVwiIFsobmdNb2RlbCldPVwiY2hpcElucHV0XCIgKGZvY3VzKT1cIm9uSW5wdXRGb2N1cygpXCIgKGJsdXIpPVwib25JbnB1dEJsdXIoKVwiXG4gICAgICAgIGNsYXNzPVwiY2hpcC1pbnB1dFwiIC8+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwidGhpcy5pc0ludmFsaWQgJiYgdGhpcy5pbnZhbGlkTWVzc2FnZVwiIGNsYXNzPVwidmVyYmVuLWVycm9yLW1lc3NhZ2UgZXJyb3ItbWVzc2FnZVwiPnt7aW52YWxpZE1lc3NhZ2V9fVxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
|
|
202
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2NoaXAvY2hpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2NoaXAvY2hpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUVOLElBQUksR0FFTCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLFdBQVcsRUFBYSxNQUFNLGdCQUFnQixDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDM0UsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7OztBQVNoRSxNQUFNLE9BQU8sYUFBYTtJQWdESTtJQTdDNUIsU0FBUztJQUNBLEtBQUssR0FBVyxNQUFNLENBQUM7SUFDdkIsV0FBVyxHQUFXLEVBQUUsQ0FBQztJQUN6QixHQUFHLENBQVU7SUFDYixVQUFVLEdBQVcsRUFBRSxDQUFDO0lBQ3hCLFNBQVMsR0FBVyxHQUFHLENBQUM7SUFDeEIsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUMxQixRQUFRLEdBQVksS0FBSyxDQUFDO0lBQzFCLGNBQWMsQ0FBVTtJQUN4QixhQUFhLEdBQVcsRUFBRSxDQUFDO0lBRXBDLFVBQVU7SUFDQSxRQUFRLEdBQWtDLElBQUksWUFBWSxFQUFFLENBQUM7SUFD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ZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBTZWxmLFxuICBUZW1wbGF0ZVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgRm9ybXNNb2R1bGUsIE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGlwQ2hhbmdlRXZlbnQgfSBmcm9tICcuL0NoaXBDaGFuZ2VFdmVudCc7XG5pbXBvcnQgeyBTaGFyZWRNb2R1bGUgfSBmcm9tICd2ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL3NoYXJlZCc7XG5pbXBvcnQgeyBUZW1wbGF0ZURpcmVjdGl2ZSB9IGZyb20gJ3ZlcmJlbi1uZy11aS9zcmMvbGliL2NvbXBvbmVudHMvc2hhcmVkJztcbmltcG9ydCB7IFN2Z01vZHVsZSB9IGZyb20gJ3ZlcmJlbi1uZy11aS9zcmMvbGliL2NvbXBvbmVudHMvc3ZnJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmVyYmVuLWNoaXAnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBTaGFyZWRNb2R1bGUsIEZvcm1zTW9kdWxlLCBTdmdNb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hpcC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9jaGlwLmNvbXBvbmVudC5jc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBDaGlwQ29tcG9uZW50XG4gIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCwgQWZ0ZXJDb250ZW50SW5pdFxue1xuICAvLyBJTlBVVFNcbiAgQElucHV0KCkgd2lkdGg6IHN0cmluZyA9ICcxMDAlJztcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBtYXg/OiBudW1iZXI7XG4gIEBJbnB1dCgpIHN0eWxlQ2xhc3M6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBzZXBhcmF0b3I6IHN0cmluZyA9ICcsJztcbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgaW52YWxpZE1lc3NhZ2U/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGVycm9yUG9zaXRpb246IHN0cmluZyA9ICcnO1xuXG4gIC8vIE9VVFBVVFNcbiAgQE91dHB1dCgpIG9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Q2hpcENoYW5nZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgLy8gQE91dHB1dCgpIG9uQ2xlYXI6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgb25JdGVtQ2hhbmdlOiAodmFsdWU6IGFueSkgPT4gdm9pZCA9ICgpID0+IHt9O1xuICBvblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7fTtcbiAgaXNJbnZhbGlkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLy9URU1QTEFUSU5HXG4gIEBDb250ZW50Q2hpbGRyZW4oVGVtcGxhdGVEaXJlY3RpdmUpIHRlbXBsYXRlcyE6IFF1ZXJ5TGlzdDxUZW1wbGF0ZURpcmVjdGl2ZT47XG4gIEBIb3N0QmluZGluZygnY2xhc3MuZm9jdXNlZCcpIGlzRm9jdXNlZCA9IGZhbHNlO1xuICBpc0lucHV0Rm9jdXNlZCA9IGZhbHNlO1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJykgb25Gb2N1cygpIHtcbiAgICB0aGlzLmlzRm9jdXNlZCA9IHRydWU7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdibHVyJykgb25CbHVyKCkge1xuICAgIHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XG4gIH1cblxuICBvbklucHV0Rm9jdXMoKSB7XG4gICAgdGhpcy5pc0ZvY3VzZWQgPSB0cnVlO1xuICB9XG5cbiAgb25JbnB1dEJsdXIoKSB7XG4gICAgdGhpcy5pc0ZvY3VzZWQgPSBmYWxzZTtcbiAgfVxuXG4gIGl0ZW1UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PiB8IG51bGwgPSBudWxsO1xuXG4gIGNoaXBzOiBzdHJpbmdbXSA9IFtdO1xuICBjaGlwSW5wdXQ6IHN0cmluZyA9ICcnO1xuXG4gIGNvbnN0cnVjdG9yKEBTZWxmKCkgcHJpdmF0ZSBuZ0NvbnRyb2w6IE5nQ29udHJvbCkge1xuICAgIGlmICh0aGlzLm5nQ29udHJvbCkge1xuICAgICAgdGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7IC8vIEFzc2lnbiB0aGlzIGNvbXBvbmVudCBhcyB0aGUgdmFsdWUgYWNjZXNzb3JcbiAgICAgIHRoaXMubmdDb250cm9sPy5zdGF0dXNDaGFuZ2VzPy5zdWJzY3JpYmUoKHN0YXR1cykgPT4ge1xuICAgICAgICB0aGlzLmlzSW52YWxpZCA9IHRoaXMubmdDb250cm9sLnRvdWNoZWRcbiAgICAgICAgICA/IHN0YXR1cyA9PT0gJ0lOVkFMSUQnICYmIHRoaXMubmdDb250cm9sLnRvdWNoZWRcbiAgICAgICAgICA6IGZhbHNlO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgdGhpcy50ZW1wbGF0ZXMuZm9yRWFjaCgodGVtcGxhdGVEaXJlY3RpdmUpID0+IHtcbiAgICAgIGlmICh0ZW1wbGF0ZURpcmVjdGl2ZS52VGVtcGxhdGUgPT09ICdpdGVtJykge1xuICAgICAgICB0aGlzLml0ZW1UZW1wbGF0ZSA9IHRlbXBsYXRlRGlyZWN0aXZlLnRlbXBsYXRlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgaW5wdXRWYWx1ZSA9IChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWU7XG4gICAgLy8gQ2hlY2sgZm9yICdFbnRlcicga2V5IG9yIGN1c3RvbSBzZXBhcmF0b3JcbiAgICBpZiAoZXZlbnQua2V5ID09PSAnRW50ZXInIHx8IGV2ZW50LmtleSA9PSB0aGlzLnNlcGFyYXRvcikge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMuYWRkQ2hpcHMoaW5wdXRWYWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gSGFuZGxlICdCYWNrc3BhY2UnIGtleSB3aGVuIGlucHV0IGlzIGVtcHR5XG4gICAgaWYgKFxuICAgICAgZXZlbnQua2V5ID09PSAnQmFja3NwYWNlJyAmJlxuICAgICAgaW5wdXRWYWx1ZS5sZW5ndGggPT09IDAgJiZcbiAgICAgIHRoaXMuY2hpcHMubGVuZ3RoID4gMFxuICAgICkge1xuICAgICAgdGhpcy5yZW1vdmVMYXN0Q2hpcCgpO1xuICAgIH1cbiAgfVxuXG4gIGFkZENoaXBzKGlucHV0VmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIFNwbGl0IGJ5IHNlcGFyYXRvciBhbmQgdHJpbSBlYWNoIHBhcnRcbiAgICBjb25zdCB2YWx1ZXMgPSBpbnB1dFZhbHVlXG4gICAgICAuc3BsaXQodGhpcy5zZXBhcmF0b3IpXG4gICAgICAubWFwKCh2YWx1ZSkgPT4gdmFsdWUudHJpbSgpKTtcblxuICAgIHZhbHVlcy5mb3JFYWNoKCh2YWx1ZSkgPT4ge1xuICAgICAgaWYgKHZhbHVlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgaWYgKHRoaXMubWF4ICYmIHRoaXMuY2hpcHMubGVuZ3RoID09IHRoaXMubWF4KSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2hpcHMucHVzaCh2YWx1ZSk7IC8vIEFkZCBjaGlwXG4gICAgICB9XG4gICAgfSk7XG4gICAgaWYgKHRoaXMuaXNJbnZhbGlkKSB7XG4gICAgICB0aGlzLmlzSW52YWxpZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIHRoaXMuY2hpcElucHV0ID0gJyc7IC8vIENsZWFyIGlucHV0XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoeyB2YWx1ZTogdGhpcy5jaGlwcyB9KTtcbiAgfVxuXG4gIHJlbW92ZUNoaXAoaW5kZXg6IG51bWJlciwgZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jaGlwcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIGlmICh0aGlzLmNoaXBzLmxlbmd0aCA9PSAwKSB7XG4gICAgICBpZiAodGhpcy5yZXF1aXJlZCA9PSB0cnVlKSB7XG4gICAgICAgIHRoaXMuaXNJbnZhbGlkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoeyBvcmlnaW5hbEV2ZW50OiBldmVudCwgdmFsdWU6IHRoaXMuY2hpcHMgfSk7XG4gIH1cblxuICByZW1vdmVMYXN0Q2hpcCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNoaXBzLnBvcCgpOyAvLyBSZW1vdmUgdGhlIGxhc3QgY2hpcFxuICAgIGlmICh0aGlzLmNoaXBzLmxlbmd0aCA9PSAwKSB7XG4gICAgICBpZiAodGhpcy5yZXF1aXJlZCA9PSB0cnVlKSB7XG4gICAgICAgIHRoaXMuaXNJbnZhbGlkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoeyBvcmlnaW5hbEV2ZW50OiBldmVudCwgdmFsdWU6IHRoaXMuY2hpcHMgfSk7XG4gIH1cblxuICAvLyBjbGVhclNlbGVjdGlvbihldmVudDogRXZlbnQpIHtcbiAgLy8gICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAvLyAgICAgcmV0dXJuO1xuICAvLyAgIH1cbiAgLy8gICB0aGlzLmNoaXBzID0gW107XG4gIC8vICAgaWYgKHRoaXMucmVxdWlyZWQgPT0gdHJ1ZSkge1xuICAvLyAgICAgdGhpcy5pc0ludmFsaWQgPSB0cnVlO1xuICAvLyAgIH1cbiAgLy8gICB0aGlzLm9uVG91Y2hlZCgpO1xuICAvLyAgIHRoaXMub25DaGFuZ2UuZW1pdCh7IG9yaWdpbmFsRXZlbnQ6IGV2ZW50LCB2YWx1ZTogdGhpcy5jaGlwcyB9KTtcbiAgLy8gfVxuXG4gIHdyaXRlVmFsdWUob2JqOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMuY2hpcHMgPSBvYmo7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoeyB2YWx1ZTogdGhpcy5jaGlwcyB9KTtcbiAgfVxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uSXRlbUNoYW5nZSA9IGZuO1xuICB9XG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIGdldCBwbGFjZWhvbGRlclN0YXRlKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuY2hpcHMgJiYgdGhpcy5jaGlwcy5sZW5ndGggPT0gMCA/IHRoaXMucGxhY2Vob2xkZXIgOiAnJztcbiAgfVxufVxuIiwiPGRpdiBbbmdDbGFzc109XCJzdHlsZUNsYXNzXCIgW3N0eWxlLndpZHRoXT1cIndpZHRoXCJcbiAgW25nQ2xhc3NdPVwieydyaWdodC1lcnJvcic6IGVycm9yUG9zaXRpb24gPT0gJ3JpZ2h0JywgJ2xlZnQtZXJyb3InOiBlcnJvclBvc2l0aW9uID09ICdsZWZ0JywgJ3RvcC1lcnJvcic6IGVycm9yUG9zaXRpb24gPT0gJ3RvcCd9XCJcbiAgY2xhc3M9XCJjaGlwXCI+XG4gIDxkaXYgW2NsYXNzLmZvY3VzZWRdPVwiaXNGb2N1c2VkXCIgW25nQ2xhc3NdPVwieyduZy1pbnZhbGlkJzogaXNJbnZhbGlkLCAnZGlzYWJsZWQnOiBkaXNhYmxlZH1cIiAoZm9jdXMpPVwib25Gb2N1cygpXCJcbiAgICAoYmx1cik9XCJvbkJsdXIoKVwiIHRhYmluZGV4PVwiMFwiIGNsYXNzPVwiY2hpcC1jb250ZW50LWlucHV0IHZlcmJlbi1pbnB1dCBmbGV4XCI+XG4gICAgPGRpdiBjbGFzcz1cImNoaXAtbWFpbi1jb250ZW50XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1pdGVtIGZsZXhcIj5cbiAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tbGFiZWwgcGxhY2UtaG9sZGVyXCIgKm5nSWY9XCJ0aGlzLmNoaXBzLmxlbmd0aCA9PSAwXCI+e3twbGFjZWhvbGRlcn19PC9kaXY+IC0tPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiY2hpcHMgJiYgdGhpcy5jaGlwcy5sZW5ndGggPiAwXCIgY2xhc3M9XCJjaGlwcy1jb250YWluZXIgZmxleFwiPlxuICAgICAgICAgIDxzcGFuICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNoaXBzOyBpbmRleCBhcyBpXCIgY2xhc3M9XCJpdGVtLWNoaXAgZmxleFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW1UZW1wbGF0ZTsgZWxzZSBkZWZhdWx0SXRlbVwiPlxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaXRlbVRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogaXRlbSB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdEl0ZW0+XG4gICAgICAgICAgICAgIDxzcGFuPnt7aXRlbX19PC9zcGFuPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDx2ZXJiZW4tc3ZnIChjbGljayk9XCJyZW1vdmVDaGlwKGksICRldmVudCk7XCIgaWNvbj1cImNsb3NlLWNpcmNsZS1mdWxsXCIgW3dpZHRoXT1cIjE1XCJcbiAgICAgICAgICAgICAgW2hlaWdodF09XCIxNVwiPjwvdmVyYmVuLXN2Zz5cbiAgICAgICAgICAgIDwhLS0gPHN2ZyAoY2xpY2spPVwicmVtb3ZlQ2hpcChpLCAkZXZlbnQpO1wiIHdpZHRoPVwiMTBcIiBoZWlnaHQ9XCIxMFwiIHZpZXdCb3g9XCIwIDAgMTAgMTBcIiBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cbiAgICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgICBkPVwiTTUuMDAwNjUgOS4zMzMzM0M3LjMwMTg0IDkuMzMzMzMgOS4xNjczMiA3LjQ2Nzg1IDkuMTY3MzIgNS4xNjY2N0M5LjE2NzMyIDIuODY1NDggNy4zMDE4NCAxIDUuMDAwNjUgMUMyLjY5OTQ2IDEgMC44MzM5ODQgMi44NjU0OCAwLjgzMzk4NCA1LjE2NjY3QzAuODMzOTg0IDcuNDY3ODUgMi42OTk0NiA5LjMzMzMzIDUuMDAwNjUgOS4zMzMzM1pcIlxuICAgICAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XG4gICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4yNSAzLjkxNzk3TDMuNzUgNi40MTc5N1wiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxuICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cbiAgICAgICAgICAgICAgPHBhdGggZD1cIk0zLjc1IDMuOTE3OTdMNi4yNSA2LjQxNzk3XCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxuICAgICAgICAgICAgPC9zdmc+IC0tPlxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtY29udGFpbmVyXCI+XG4gICAgICA8aW5wdXQgW2Rpc2FibGVkXT1cInRoaXMubWF4ICE9IG51bGwgJiYgY2hpcHMgJiYgdGhpcy5jaGlwcy5sZW5ndGggPT0gbWF4XCIgKGtleWRvd24pPVwib25LZXlEb3duKCRldmVudClcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJTdGF0ZVwiIFsobmdNb2RlbCldPVwiY2hpcElucHV0XCIgKGZvY3VzKT1cIm9uSW5wdXRGb2N1cygpXCIgKGJsdXIpPVwib25JbnB1dEJsdXIoKVwiXG4gICAgICAgIGNsYXNzPVwiY2hpcC1pbnB1dFwiIC8+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwidGhpcy5pc0ludmFsaWQgJiYgdGhpcy5pbnZhbGlkTWVzc2FnZVwiIGNsYXNzPVwidmVyYmVuLWVycm9yLW1lc3NhZ2UgZXJyb3ItbWVzc2FnZVwiPnt7aW52YWxpZE1lc3NhZ2V9fVxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==
|
|
@@ -94,11 +94,11 @@ export class DataColumnsComponent {
|
|
|
94
94
|
.length;
|
|
95
95
|
}
|
|
96
96
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: DataColumnsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
97
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.10", type: DataColumnsComponent, selector: "lib-data-columns", inputs: { columns: "columns", enableDragAndDrop: "enableDragAndDrop", maxVisibleItems: "maxVisibleItems" }, outputs: { columnsUpdated: "columnsUpdated" }, ngImport: i0, template: "<verben-card width=\"24rem\" borderRadius=\"1rem\" [border]=\"'1px solid
|
|
97
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.10", type: DataColumnsComponent, selector: "lib-data-columns", inputs: { columns: "columns", enableDragAndDrop: "enableDragAndDrop", maxVisibleItems: "maxVisibleItems" }, outputs: { columnsUpdated: "columnsUpdated" }, ngImport: i0, template: "<verben-card width=\"24rem\" borderRadius=\"1rem\" [border]=\"'1px solid var(--vbn-color-primary)'\" bgColor=\"var(--vbn-color-surface)\">\n <div card-header class=\"card-header\">\n <h4 class=\"header-title\">Column <sup>({{ activeColumnCount }})</sup></h4>\n <button class=\"reset-button\" (click)=\"resetColumns()\">Reset</button>\n </div>\n \n <div card-body class=\"card-body\">\n <!-- Column Options -->\n <section class=\"section\">\n <div class=\"section-header\">\n <h3 class=\"section-title\">Properties</h3>\n <verben-svg icon=\"info\" [width]=\"15\" [height]=\"15\" fill=\"var(--vbn-color-text-muted)\"></verben-svg>\n </div>\n \n <!-- Select All -->\n <div class=\"select-all-wrapper\">\n <label class=\"select-all\">\n <input \n type=\"checkbox\" \n [checked]=\"selectAll\"\n (change)=\"toggleSelectAll()\"\n />\n <span>Select All</span>\n </label>\n </div>\n \n @for (column of columnsToShow; track column.id) {\n <div \n class=\"column-option\"\n [attr.draggable]=\"enableDragAndDrop\"\n (dragstart)=\"onDragStart($index, $event)\"\n (dragover)=\"onDragOver($event)\"\n (drop)=\"onDrop($index, $event)\"\n >\n <div class=\"column-option-content\">\n @if (enableDragAndDrop) {\n <verben-svg\n icon=\"square-dot\"\n [width]=\"15\"\n [height]=\"15\"\n fill=\"var(--vbn-color-text)\"\n class=\"drag-handle\"\n ></verben-svg>\n }\n <input \n type=\"checkbox\" \n [checked]=\"isColumnVisible(column.id)\"\n (change)=\"toggleColumnVisibility(column.id)\"\n />\n <span>{{ getColumnHeader(column) }}</span>\n </div>\n </div>\n }\n \n @if (visibleColumns.length > maxVisibleItems) {\n <button\n (click)=\"showAllColumns = !showAllColumns\"\n class=\"show-more\"\n >\n <span>{{ showAllColumns ? \"Show Less\" : \"Show More\" }}</span>\n <verben-svg\n icon=\"chevron\"\n [width]=\"8\"\n [height]=\"6\"\n fill=\"var(--vbn-color-text)\"\n stroke=\"var(--vbn-color-text)\"\n ></verben-svg>\n </button>\n }\n </section>\n </div>\n \n <div card-footer class=\"card-footer\">\n <button class=\"save-button\" (click)=\"emitUpdatedColumns()\">Save</button>\n </div>\n </verben-card>", styles: [".card-header{display:flex;justify-content:space-between;align-items:center;background-color:transparent;padding:4px!important}.header-title{font-weight:600;font-size:.8125rem}.header-title sup{color:var(--vbn-color-border-focus)}.reset-button{color:var(--vbn-color-border-focus);background-color:transparent;border:none;cursor:pointer;font-size:12px}.card-body{display:flex;flex-direction:column;gap:.5rem}.section{display:flex;flex-direction:column;gap:.75rem}.section-header{display:flex;justify-content:space-between;align-items:center}.section-title{font-size:.8125rem}.select-all-wrapper{display:flex;align-items:center}.select-all{display:flex;align-items:center;gap:.5rem;font-size:12px;font-weight:500;cursor:pointer}.column-option{margin:0 -1.5rem;cursor:move}.column-option-content{display:flex;align-items:center;gap:.5rem;font-size:12px}.drag-handle{cursor:grab}.show-more{display:flex;gap:.5em;align-items:center;color:var(--vbn-color-text-muted);cursor:pointer;font-size:12px}.card-footer{display:flex;justify-content:flex-end;background-color:transparent}.save-button{margin-top:.5rem;outline:none;border:none;padding:.2rem 1.6rem;background-color:var(--vbn-color-primary);color:var(--vbn-color-on-primary);font-size:.75rem;font-weight:600;cursor:pointer}\n"], dependencies: [{ kind: "component", type: i1.SvgComponent, selector: "verben-svg", inputs: ["icon", "width", "height", "fill", "stroke", "type", "size"] }, { kind: "component", type: i2.CardComponent, selector: "verben-card", inputs: ["pd", "mg", "height", "width", "textColor", "bgColor", "border", "borderRadius", "disabled", "aspectRatio"] }] });
|
|
98
98
|
}
|
|
99
99
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: DataColumnsComponent, decorators: [{
|
|
100
100
|
type: Component,
|
|
101
|
-
args: [{ selector: 'lib-data-columns', template: "<verben-card width=\"24rem\" borderRadius=\"1rem\" [border]=\"'1px solid
|
|
101
|
+
args: [{ selector: 'lib-data-columns', template: "<verben-card width=\"24rem\" borderRadius=\"1rem\" [border]=\"'1px solid var(--vbn-color-primary)'\" bgColor=\"var(--vbn-color-surface)\">\n <div card-header class=\"card-header\">\n <h4 class=\"header-title\">Column <sup>({{ activeColumnCount }})</sup></h4>\n <button class=\"reset-button\" (click)=\"resetColumns()\">Reset</button>\n </div>\n \n <div card-body class=\"card-body\">\n <!-- Column Options -->\n <section class=\"section\">\n <div class=\"section-header\">\n <h3 class=\"section-title\">Properties</h3>\n <verben-svg icon=\"info\" [width]=\"15\" [height]=\"15\" fill=\"var(--vbn-color-text-muted)\"></verben-svg>\n </div>\n \n <!-- Select All -->\n <div class=\"select-all-wrapper\">\n <label class=\"select-all\">\n <input \n type=\"checkbox\" \n [checked]=\"selectAll\"\n (change)=\"toggleSelectAll()\"\n />\n <span>Select All</span>\n </label>\n </div>\n \n @for (column of columnsToShow; track column.id) {\n <div \n class=\"column-option\"\n [attr.draggable]=\"enableDragAndDrop\"\n (dragstart)=\"onDragStart($index, $event)\"\n (dragover)=\"onDragOver($event)\"\n (drop)=\"onDrop($index, $event)\"\n >\n <div class=\"column-option-content\">\n @if (enableDragAndDrop) {\n <verben-svg\n icon=\"square-dot\"\n [width]=\"15\"\n [height]=\"15\"\n fill=\"var(--vbn-color-text)\"\n class=\"drag-handle\"\n ></verben-svg>\n }\n <input \n type=\"checkbox\" \n [checked]=\"isColumnVisible(column.id)\"\n (change)=\"toggleColumnVisibility(column.id)\"\n />\n <span>{{ getColumnHeader(column) }}</span>\n </div>\n </div>\n }\n \n @if (visibleColumns.length > maxVisibleItems) {\n <button\n (click)=\"showAllColumns = !showAllColumns\"\n class=\"show-more\"\n >\n <span>{{ showAllColumns ? \"Show Less\" : \"Show More\" }}</span>\n <verben-svg\n icon=\"chevron\"\n [width]=\"8\"\n [height]=\"6\"\n fill=\"var(--vbn-color-text)\"\n stroke=\"var(--vbn-color-text)\"\n ></verben-svg>\n </button>\n }\n </section>\n </div>\n \n <div card-footer class=\"card-footer\">\n <button class=\"save-button\" (click)=\"emitUpdatedColumns()\">Save</button>\n </div>\n </verben-card>", styles: [".card-header{display:flex;justify-content:space-between;align-items:center;background-color:transparent;padding:4px!important}.header-title{font-weight:600;font-size:.8125rem}.header-title sup{color:var(--vbn-color-border-focus)}.reset-button{color:var(--vbn-color-border-focus);background-color:transparent;border:none;cursor:pointer;font-size:12px}.card-body{display:flex;flex-direction:column;gap:.5rem}.section{display:flex;flex-direction:column;gap:.75rem}.section-header{display:flex;justify-content:space-between;align-items:center}.section-title{font-size:.8125rem}.select-all-wrapper{display:flex;align-items:center}.select-all{display:flex;align-items:center;gap:.5rem;font-size:12px;font-weight:500;cursor:pointer}.column-option{margin:0 -1.5rem;cursor:move}.column-option-content{display:flex;align-items:center;gap:.5rem;font-size:12px}.drag-handle{cursor:grab}.show-more{display:flex;gap:.5em;align-items:center;color:var(--vbn-color-text-muted);cursor:pointer;font-size:12px}.card-footer{display:flex;justify-content:flex-end;background-color:transparent}.save-button{margin-top:.5rem;outline:none;border:none;padding:.2rem 1.6rem;background-color:var(--vbn-color-primary);color:var(--vbn-color-on-primary);font-size:.75rem;font-weight:600;cursor:pointer}\n"] }]
|
|
102
102
|
}], propDecorators: { columns: [{
|
|
103
103
|
type: Input
|
|
104
104
|
}], enableDragAndDrop: [{
|
|
@@ -108,4 +108,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.10", ngImpo
|
|
|
108
108
|
}], columnsUpdated: [{
|
|
109
109
|
type: Output
|
|
110
110
|
}] } });
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb2x1bW5zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZlcmJlbi1uZy11aS9zcmMvbGliL2NvbXBvbmVudHMvZGF0YS1jb2x1bW5zL2RhdGEtY29sdW1ucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2RhdGEtY29sdW1ucy9kYXRhLWNvbHVtbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVUvRSxNQUFNLE9BQU8sb0JBQW9CO0lBQ3RCLE9BQU8sQ0FBeUI7SUFDaEMsaUJBQWlCLEdBQVksSUFBSSxDQUFDO0lBQ2xDLGVBQWUsR0FBVyxDQUFDLENBQUM7SUFDM0IsY0FBYyxHQUFHLElBQUksWUFBWSxFQUF5QixDQUFDO0lBRXJFLGNBQWMsR0FBMEIsRUFBRSxDQUFDO0lBQzNDLGNBQWMsR0FBRyxLQUFLLENBQUM7SUFDdkIsWUFBWSxHQUFrQixJQUFJLENBQUM7SUFDbkMsU0FBUyxHQUFZLEtBQUssQ0FBQztJQUMzQixnQkFBZ0IsR0FBeUIsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUVuRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDeEMsdURBQXVEO1FBQ3ZELElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDckMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMs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Z0JBQ0ksY0FBYztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbHVtbkRlZmluaXRpb24gfSBmcm9tICd2ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2RhdGEtdGFibGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItZGF0YS1jb2x1bW5zJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtY29sdW1ucy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9kYXRhLWNvbHVtbnMuY29tcG9uZW50LmNzcycsXG59KVxuZXhwb3J0IGNsYXNzIERhdGFDb2x1bW5zQ29tcG9uZW50PFQ+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgY29sdW1ucyE6IENvbHVtbkRlZmluaXRpb248VD5bXTtcbiAgQElucHV0KCkgZW5hYmxlRHJhZ0FuZERyb3A6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBtYXhWaXNpYmxlSXRlbXM6IG51bWJlciA9IDU7XG4gIEBPdXRwdXQoKSBjb2x1bW5zVXBkYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Q29sdW1uRGVmaW5pdGlvbjxUPltdPigpO1xuXG4gIHZpc2libGVDb2x1bW5zOiBDb2x1bW5EZWZpbml0aW9uPFQ+W10gPSBbXTtcbiAgc2hvd0FsbENvbHVtbnMgPSBmYWxzZTtcbiAgZHJhZ2dlZEluZGV4OiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgc2VsZWN0QWxsOiBib29sZWFuID0gZmFsc2U7XG4gIGNvbHVtblZpc2liaWxpdHk6IE1hcDxzdHJpbmcsIGJvb2xlYW4+ID0gbmV3IE1hcCgpO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaW5pdGlhbGl6ZUNvbHVtbnMoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdGlhbGl6ZUNvbHVtbnMoKSB7XG4gICAgdGhpcy52aXNpYmxlQ29sdW1ucyA9IFsuLi50aGlzLmNvbHVtbnNdO1xuICAgIC8vIEluaXRpYWxpemUgdmlzaWJpbGl0eSBtYXAgd2l0aCBjdXJyZW50IGNvbHVtbiBzdGF0ZXNcbiAgICB0aGlzLnZpc2libGVDb2x1bW5zLmZvckVhY2goKGNvbHVtbikgPT4ge1xuICAgICAgdGhpcy5jb2x1bW5WaXNpYmlsaXR5LnNldChjb2x1bW4uaWQsIHRydWUpO1xuICAgIH0pO1xuICAgIHRoaXMudXBkYXRlU2VsZWN0QWxsU3RhdHVzKCk7XG4gIH1cblxuICBnZXQgY29sdW1uc1RvU2hvdygpIHtcbiAgICByZXR1cm4gdGhpcy5zaG93QWxsQ29sdW1uc1xuICAgICAgPyB0aGlzLnZpc2libGVDb2x1bW5zXG4gICAgICA6IHRoaXMudmlzaWJsZUNvbHVtbnMuc2xpY2UoMCwgdGhpcy5tYXhWaXNpYmxlSXRlbXMpO1xuICB9XG5cbiAgLy8gRHJhZyBhbmQgRHJvcCBmdW5jdGlvbmFsaXR5XG4gIG9uRHJhZ1N0YXJ0KGluZGV4OiBudW1iZXIsIGV2ZW50OiBEcmFnRXZlbnQpIHtcbiAgICBpZiAoIXRoaXMuZW5hYmxlRHJhZ0FuZERyb3ApIHJldHVybjtcbiAgICB0aGlzLmRyYWdnZWRJbmRleCA9IGluZGV4O1xuICAgIGV2ZW50LmRhdGFUcmFuc2Zlcj8uc2V0RGF0YSgndGV4dC9wbGFpbicsIFN0cmluZyhpbmRleCkpO1xuICB9XG5cbiAgb25EcmFnT3ZlcihldmVudDogRHJhZ0V2ZW50KSB7XG4gICAgaWYgKCF0aGlzLmVuYWJsZURyYWdBbmREcm9wKSByZXR1cm47XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIG9uRHJvcChpbmRleDogbnVtYmVyLCBldmVudDogRHJhZ0V2ZW50KSB7XG4gICAgaWYgKCF0aGlzLmVuYWJsZURyYWdBbmREcm9wKSByZXR1cm47XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBpZiAodGhpcy5kcmFnZ2VkSW5kZXggIT09IG51bGwgJiYgdGhpcy5kcmFnZ2VkSW5kZXggIT09IGluZGV4KSB7XG4gICAgICB0aGlzLnN3YXBDb2x1bW5zKHRoaXMuZHJhZ2dlZEluZGV4LCBpbmRleCk7XG4gICAgfVxuICAgIHRoaXMuZHJhZ2dlZEluZGV4ID0gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgc3dhcENvbHVtbnMoZnJvbUluZGV4OiBudW1iZXIsIHRvSW5kZXg6IG51bWJlcikge1xuICAgIGNvbnN0IHRlbXAgPSB0aGlzLnZpc2libGVDb2x1bW5zW2Zyb21JbmRleF07XG4gICAgdGhpcy52aXNpYmxlQ29sdW1uc1tmcm9tSW5kZXhdID0gdGhpcy52aXNpYmxlQ29sdW1uc1t0b0luZGV4XTtcbiAgICB0aGlzLnZpc2libGVDb2x1bW5zW3RvSW5kZXhdID0gdGVtcDtcbiAgICB0aGlzLmVtaXRVcGRhdGVkQ29sdW1ucygpO1xuICB9XG5cbiAgLy8gQ29sdW1uIFNlbGVjdGlvbiBmdW5jdGlvbmFsaXR5XG4gIHRvZ2dsZVNlbGVjdEFsbCgpIHtcbiAgICB0aGlzLnNlbGVjdEFsbCA9ICF0aGlzLnNlbGVjdEFsbDtcbiAgICBjb25zdCBuZXdWYWx1ZSA9IHRoaXMuc2VsZWN0QWxsO1xuICAgIHRoaXMudmlzaWJsZUNvbHVtbnMuZm9yRWFjaCgoY29sdW1uKSA9PiB7XG4gICAgICB0aGlzLmNvbHVtblZpc2liaWxpdHkuc2V0KGNvbHVtbi5pZCwgbmV3VmFsdWUpO1xuICAgIH0pO1xuICAgIHRoaXMuZW1pdFVwZGF0ZWRDb2x1bW5zKCk7XG4gIH1cblxuICB0b2dnbGVDb2x1bW5WaXNpYmlsaXR5KGNvbHVtbklkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBjdXJyZW50VmFsdWUgPSB0aGlzLmNvbHVtblZpc2liaWxpdHkuZ2V0KGNvbHVtbklkKTtcbiAgICB0aGlzLmNvbHVtblZpc2liaWxpdHkuc2V0KGNvbHVtbklkLCAhY3VycmVudFZhbHVlKTtcbiAgICB0aGlzLnVwZGF0ZVNlbGVjdEFsbFN0YXR1cygpO1xuICAgIHRoaXMuZW1pdFVwZGF0ZWRDb2x1bW5zKCk7XG4gIH1cblxuICBpc0NvbHVtblZpc2libGUoY29sdW1uSWQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNvbHVtblZpc2liaWxpdHkuZ2V0KGNvbHVtbklkKSA/PyBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlU2VsZWN0QWxsU3RhdHVzKCkge1xuICAgIHRoaXMuc2VsZWN0QWxsID0gQXJyYXkuZnJvbSh0aGlzLmNvbHVtblZpc2liaWxpdHkudmFsdWVzKCkpLmV2ZXJ5KFxuICAgICAgKHZhbHVlKSA9PiB2YWx1ZVxuICAgICk7XG4gIH1cblxuICBnZXRDb2x1bW5IZWFkZXIoY29sdW1uOiBDb2x1bW5EZWZpbml0aW9uPFQ+KTogc3RyaW5nIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbi5oZWFkZXIgPT09ICdmdW5jdGlvbidcbiAgICAgID8gY29sdW1uLmhlYWRlcih7fSlcbiAgICAgIDogY29sdW1uLmhlYWRlcjtcbiAgfVxuXG4gIHJlc2V0Q29sdW1ucygpIHtcbiAgICB0aGlzLmluaXRpYWxpemVDb2x1bW5zKCk7XG4gICAgdGhpcy5lbWl0VXBkYXRlZENvbHVtbnMoKTtcbiAgfVxuXG4gIGVtaXRVcGRhdGVkQ29sdW1ucygpIHtcbiAgICBjb25zdCB1cGRhdGVkQ29sdW1ucyA9IHRoaXMudmlzaWJsZUNvbHVtbnMuZmlsdGVyKChjb2x1bW4pID0+XG4gICAgICB0aGlzLmNvbHVtblZpc2liaWxpdHkuZ2V0KGNvbHVtbi5pZClcbiAgICApO1xuICAgIHRoaXMuY29sdW1uc1VwZGF0ZWQuZW1pdCh1cGRhdGVkQ29sdW1ucyk7XG4gIH1cblxuICBnZXQgYWN0aXZlQ29sdW1uQ291bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmNvbHVtblZpc2liaWxpdHkudmFsdWVzKCkpLmZpbHRlcigodmFsdWUpID0+IHZhbHVlKVxuICAgICAgLmxlbmd0aDtcbiAgfVxufVxuIiwiPHZlcmJlbi1jYXJkIHdpZHRoPVwiMjRyZW1cIiBib3JkZXJSYWRpdXM9XCIxcmVtXCIgW2JvcmRlcl09XCInMXB4IHNvbGlkICNENEEwMDcnXCIgYmdDb2xvcj1cIiNGRkZGRkZcIj5cbiAgICA8ZGl2IGNhcmQtaGVhZGVyIGNsYXNzPVwiY2FyZC1oZWFkZXJcIj5cbiAgICAgIDxoNCBjbGFzcz1cImhlYWRlci10aXRsZVwiPkNvbHVtbiA8c3VwPih7eyBhY3RpdmVDb2x1bW5Db3VudCB9fSk8L3N1cD48L2g0PlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cInJlc2V0LWJ1dHRvblwiIChjbGljayk9XCJyZXNldENvbHVtbnMoKVwiPlJlc2V0PC9idXR0b24+XG4gICAgPC9kaXY+XG4gIFxuICAgIDxkaXYgY2FyZC1ib2R5IGNsYXNzPVwiY2FyZC1ib2R5XCI+XG4gICAgICA8IS0tIENvbHVtbiBPcHRpb25zIC0tPlxuICAgICAgPHNlY3Rpb24gY2xhc3M9XCJzZWN0aW9uXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWN0aW9uLWhlYWRlclwiPlxuICAgICAgICAgIDxoMyBjbGFzcz1cInNlY3Rpb24tdGl0bGVcIj5Qcm9wZXJ0aWVzPC9oMz5cbiAgICAgICAgICA8dmVyYmVuLXN2ZyBpY29uPVwiaW5mb1wiIFt3aWR0aF09XCIxNVwiIFtoZWlnaHRdPVwiMTVcIiBmaWxsPVwiZ3JleVwiPjwvdmVyYmVuLXN2Zz5cbiAgICAgICAgPC9kaXY+XG4gIFxuICAgICAgICA8IS0tIFNlbGVjdCBBbGwgLS0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3QtYWxsLXdyYXBwZXJcIj5cbiAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJzZWxlY3QtYWxsXCI+XG4gICAgICAgICAgICA8aW5wdXQgXG4gICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiIFxuICAgICAgICAgICAgICBbY2hlY2tlZF09XCJzZWxlY3RBbGxcIlxuICAgICAgICAgICAgICAoY2hhbmdlKT1cInRvZ2dsZVNlbGVjdEFsbCgpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8c3Bhbj5TZWxlY3QgQWxsPC9zcGFuPlxuICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuICBcbiAgICAgICAgQGZvciAoY29sdW1uIG9mIGNvbHVtbnNUb1Nob3c7IHRyYWNrIGNvbHVtbi5pZCkge1xuICAgICAgICAgIDxkaXYgXG4gICAgICAgICAgICBjbGFzcz1cImNvbHVtbi1vcHRpb25cIlxuICAgICAgICAgICAgW2F0dHIuZHJhZ2dhYmxlXT1cImVuYWJsZURyYWdBbmREcm9wXCJcbiAgICAgICAgICAgIChkcmFnc3RhcnQpPVwib25EcmFnU3RhcnQoJGluZGV4LCAkZXZlbnQpXCJcbiAgICAgICAgICAgIChkcmFnb3Zlcik9XCJvbkRyYWdPdmVyKCRldmVudClcIlxuICAgICAgICAgICAgKGRyb3ApPVwib25Ecm9wKCRpbmRleCwgJGV2ZW50KVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbi1vcHRpb24tY29udGVudFwiPlxuICAgICAgICAgICAgICBAaWYgKGVuYWJsZURyYWdBbmREcm9wKSB7XG4gICAgICAgICAgICAgICAgPHZlcmJlbi1zdmdcbiAgICAgICAgICAgICAgICAgIGljb249XCJzcXVhcmUtZG90XCJcbiAgICAgICAgICAgICAgICAgIFt3aWR0aF09XCIxNVwiXG4gICAgICAgICAgICAgICAgICBbaGVpZ2h0XT1cIjE1XCJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCJibGFja1wiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImRyYWctaGFuZGxlXCJcbiAgICAgICAgICAgICAgICA+PC92ZXJiZW4tc3ZnPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDxpbnB1dCBcbiAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIiBcbiAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJpc0NvbHVtblZpc2libGUoY29sdW1uLmlkKVwiXG4gICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJ0b2dnbGVDb2x1bW5WaXNpYmlsaXR5KGNvbHVtbi5pZClcIlxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8c3Bhbj57eyBnZXRDb2x1bW5IZWFkZXIoY29sdW1uKSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gIFxuICAgICAgICBAaWYgKHZpc2libGVDb2x1bW5zLmxlbmd0aCA+IG1heFZpc2libGVJdGVtcykge1xuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAoY2xpY2spPVwic2hvd0FsbENvbHVtbnMgPSAhc2hvd0FsbENvbHVtbnNcIlxuICAgICAgICAgIGNsYXNzPVwic2hvdy1tb3JlXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxzcGFuPnt7IHNob3dBbGxDb2x1bW5zID8gXCJTaG93IExlc3NcIiA6IFwiU2hvdyBNb3JlXCIgfX08L3NwYW4+XG4gICAgICAgICAgPHZlcmJlbi1zdmdcbiAgICAgICAgICAgIGljb249XCJjaGV2cm9uXCJcbiAgICAgICAgICAgIFt3aWR0aF09XCI4XCJcbiAgICAgICAgICAgIFtoZWlnaHRdPVwiNlwiXG4gICAgICAgICAgICBmaWxsPVwiYmxhY2tcIlxuICAgICAgICAgICAgc3Ryb2tlPVwiYmxhY2tcIlxuICAgICAgICAgID48L3ZlcmJlbi1zdmc+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICB9XG4gICAgICA8L3NlY3Rpb24+XG4gICAgPC9kaXY+XG4gIFxuICAgIDxkaXYgY2FyZC1mb290ZXIgY2xhc3M9XCJjYXJkLWZvb3RlclwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cInNhdmUtYnV0dG9uXCIgKGNsaWNrKT1cImVtaXRVcGRhdGVkQ29sdW1ucygpXCI+U2F2ZTwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L3ZlcmJlbi1jYXJkPiJdfQ==
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb2x1bW5zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZlcmJlbi1uZy11aS9zcmMvbGliL2NvbXBvbmVudHMvZGF0YS1jb2x1bW5zL2RhdGEtY29sdW1ucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2RhdGEtY29sdW1ucy9kYXRhLWNvbHVtbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVUvRSxNQUFNLE9BQU8sb0JBQW9CO0lBQ3RCLE9BQU8sQ0FBeUI7SUFDaEMsaUJBQWlCLEdBQVksSUFBSSxDQUFDO0lBQ2xDLGVBQWUsR0FBVyxDQUFDLENBQUM7SUFDM0IsY0FBYyxHQUFHLElBQUksWUFBWSxFQUF5QixDQUFDO0lBRXJFLGNBQWMsR0FBMEIsRUFBRSxDQUFDO0lBQzNDLGNBQWMsR0FBRyxLQUFLLENBQUM7SUFDdkIsWUFBWSxHQUFrQixJQUFJLENBQUM7SUFDbkMsU0FBUyxHQUFZLEtBQUssQ0FBQztJQUMzQixnQkFBZ0IsR0FBeUIsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUVuRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDeEMsdURBQXVEO1FBQ3ZELElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDckMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMs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Z0JBQ0ksY0FBYztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbHVtbkRlZmluaXRpb24gfSBmcm9tICd2ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2RhdGEtdGFibGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItZGF0YS1jb2x1bW5zJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtY29sdW1ucy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9kYXRhLWNvbHVtbnMuY29tcG9uZW50LmNzcycsXG59KVxuZXhwb3J0IGNsYXNzIERhdGFDb2x1bW5zQ29tcG9uZW50PFQ+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgY29sdW1ucyE6IENvbHVtbkRlZmluaXRpb248VD5bXTtcbiAgQElucHV0KCkgZW5hYmxlRHJhZ0FuZERyb3A6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBtYXhWaXNpYmxlSXRlbXM6IG51bWJlciA9IDU7XG4gIEBPdXRwdXQoKSBjb2x1bW5zVXBkYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Q29sdW1uRGVmaW5pdGlvbjxUPltdPigpO1xuXG4gIHZpc2libGVDb2x1bW5zOiBDb2x1bW5EZWZpbml0aW9uPFQ+W10gPSBbXTtcbiAgc2hvd0FsbENvbHVtbnMgPSBmYWxzZTtcbiAgZHJhZ2dlZEluZGV4OiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgc2VsZWN0QWxsOiBib29sZWFuID0gZmFsc2U7XG4gIGNvbHVtblZpc2liaWxpdHk6IE1hcDxzdHJpbmcsIGJvb2xlYW4+ID0gbmV3IE1hcCgpO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaW5pdGlhbGl6ZUNvbHVtbnMoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdGlhbGl6ZUNvbHVtbnMoKSB7XG4gICAgdGhpcy52aXNpYmxlQ29sdW1ucyA9IFsuLi50aGlzLmNvbHVtbnNdO1xuICAgIC8vIEluaXRpYWxpemUgdmlzaWJpbGl0eSBtYXAgd2l0aCBjdXJyZW50IGNvbHVtbiBzdGF0ZXNcbiAgICB0aGlzLnZpc2libGVDb2x1bW5zLmZvckVhY2goKGNvbHVtbikgPT4ge1xuICAgICAgdGhpcy5jb2x1bW5WaXNpYmlsaXR5LnNldChjb2x1bW4uaWQsIHRydWUpO1xuICAgIH0pO1xuICAgIHRoaXMudXBkYXRlU2VsZWN0QWxsU3RhdHVzKCk7XG4gIH1cblxuICBnZXQgY29sdW1uc1RvU2hvdygpIHtcbiAgICByZXR1cm4gdGhpcy5zaG93QWxsQ29sdW1uc1xuICAgICAgPyB0aGlzLnZpc2libGVDb2x1bW5zXG4gICAgICA6IHRoaXMudmlzaWJsZUNvbHVtbnMuc2xpY2UoMCwgdGhpcy5tYXhWaXNpYmxlSXRlbXMpO1xuICB9XG5cbiAgLy8gRHJhZyBhbmQgRHJvcCBmdW5jdGlvbmFsaXR5XG4gIG9uRHJhZ1N0YXJ0KGluZGV4OiBudW1iZXIsIGV2ZW50OiBEcmFnRXZlbnQpIHtcbiAgICBpZiAoIXRoaXMuZW5hYmxlRHJhZ0FuZERyb3ApIHJldHVybjtcbiAgICB0aGlzLmRyYWdnZWRJbmRleCA9IGluZGV4O1xuICAgIGV2ZW50LmRhdGFUcmFuc2Zlcj8uc2V0RGF0YSgndGV4dC9wbGFpbicsIFN0cmluZyhpbmRleCkpO1xuICB9XG5cbiAgb25EcmFnT3ZlcihldmVudDogRHJhZ0V2ZW50KSB7XG4gICAgaWYgKCF0aGlzLmVuYWJsZURyYWdBbmREcm9wKSByZXR1cm47XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIG9uRHJvcChpbmRleDogbnVtYmVyLCBldmVudDogRHJhZ0V2ZW50KSB7XG4gICAgaWYgKCF0aGlzLmVuYWJsZURyYWdBbmREcm9wKSByZXR1cm47XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBpZiAodGhpcy5kcmFnZ2VkSW5kZXggIT09IG51bGwgJiYgdGhpcy5kcmFnZ2VkSW5kZXggIT09IGluZGV4KSB7XG4gICAgICB0aGlzLnN3YXBDb2x1bW5zKHRoaXMuZHJhZ2dlZEluZGV4LCBpbmRleCk7XG4gICAgfVxuICAgIHRoaXMuZHJhZ2dlZEluZGV4ID0gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgc3dhcENvbHVtbnMoZnJvbUluZGV4OiBudW1iZXIsIHRvSW5kZXg6IG51bWJlcikge1xuICAgIGNvbnN0IHRlbXAgPSB0aGlzLnZpc2libGVDb2x1bW5zW2Zyb21JbmRleF07XG4gICAgdGhpcy52aXNpYmxlQ29sdW1uc1tmcm9tSW5kZXhdID0gdGhpcy52aXNpYmxlQ29sdW1uc1t0b0luZGV4XTtcbiAgICB0aGlzLnZpc2libGVDb2x1bW5zW3RvSW5kZXhdID0gdGVtcDtcbiAgICB0aGlzLmVtaXRVcGRhdGVkQ29sdW1ucygpO1xuICB9XG5cbiAgLy8gQ29sdW1uIFNlbGVjdGlvbiBmdW5jdGlvbmFsaXR5XG4gIHRvZ2dsZVNlbGVjdEFsbCgpIHtcbiAgICB0aGlzLnNlbGVjdEFsbCA9ICF0aGlzLnNlbGVjdEFsbDtcbiAgICBjb25zdCBuZXdWYWx1ZSA9IHRoaXMuc2VsZWN0QWxsO1xuICAgIHRoaXMudmlzaWJsZUNvbHVtbnMuZm9yRWFjaCgoY29sdW1uKSA9PiB7XG4gICAgICB0aGlzLmNvbHVtblZpc2liaWxpdHkuc2V0KGNvbHVtbi5pZCwgbmV3VmFsdWUpO1xuICAgIH0pO1xuICAgIHRoaXMuZW1pdFVwZGF0ZWRDb2x1bW5zKCk7XG4gIH1cblxuICB0b2dnbGVDb2x1bW5WaXNpYmlsaXR5KGNvbHVtbklkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBjdXJyZW50VmFsdWUgPSB0aGlzLmNvbHVtblZpc2liaWxpdHkuZ2V0KGNvbHVtbklkKTtcbiAgICB0aGlzLmNvbHVtblZpc2liaWxpdHkuc2V0KGNvbHVtbklkLCAhY3VycmVudFZhbHVlKTtcbiAgICB0aGlzLnVwZGF0ZVNlbGVjdEFsbFN0YXR1cygpO1xuICAgIHRoaXMuZW1pdFVwZGF0ZWRDb2x1bW5zKCk7XG4gIH1cblxuICBpc0NvbHVtblZpc2libGUoY29sdW1uSWQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNvbHVtblZpc2liaWxpdHkuZ2V0KGNvbHVtbklkKSA/PyBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlU2VsZWN0QWxsU3RhdHVzKCkge1xuICAgIHRoaXMuc2VsZWN0QWxsID0gQXJyYXkuZnJvbSh0aGlzLmNvbHVtblZpc2liaWxpdHkudmFsdWVzKCkpLmV2ZXJ5KFxuICAgICAgKHZhbHVlKSA9PiB2YWx1ZVxuICAgICk7XG4gIH1cblxuICBnZXRDb2x1bW5IZWFkZXIoY29sdW1uOiBDb2x1bW5EZWZpbml0aW9uPFQ+KTogc3RyaW5nIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbi5oZWFkZXIgPT09ICdmdW5jdGlvbidcbiAgICAgID8gY29sdW1uLmhlYWRlcih7fSlcbiAgICAgIDogY29sdW1uLmhlYWRlcjtcbiAgfVxuXG4gIHJlc2V0Q29sdW1ucygpIHtcbiAgICB0aGlzLmluaXRpYWxpemVDb2x1bW5zKCk7XG4gICAgdGhpcy5lbWl0VXBkYXRlZENvbHVtbnMoKTtcbiAgfVxuXG4gIGVtaXRVcGRhdGVkQ29sdW1ucygpIHtcbiAgICBjb25zdCB1cGRhdGVkQ29sdW1ucyA9IHRoaXMudmlzaWJsZUNvbHVtbnMuZmlsdGVyKChjb2x1bW4pID0+XG4gICAgICB0aGlzLmNvbHVtblZpc2liaWxpdHkuZ2V0KGNvbHVtbi5pZClcbiAgICApO1xuICAgIHRoaXMuY29sdW1uc1VwZGF0ZWQuZW1pdCh1cGRhdGVkQ29sdW1ucyk7XG4gIH1cblxuICBnZXQgYWN0aXZlQ29sdW1uQ291bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmNvbHVtblZpc2liaWxpdHkudmFsdWVzKCkpLmZpbHRlcigodmFsdWUpID0+IHZhbHVlKVxuICAgICAgLmxlbmd0aDtcbiAgfVxufVxuIiwiPHZlcmJlbi1jYXJkIHdpZHRoPVwiMjRyZW1cIiBib3JkZXJSYWRpdXM9XCIxcmVtXCIgW2JvcmRlcl09XCInMXB4IHNvbGlkIHZhcigtLXZibi1jb2xvci1wcmltYXJ5KSdcIiBiZ0NvbG9yPVwidmFyKC0tdmJuLWNvbG9yLXN1cmZhY2UpXCI+XG4gICAgPGRpdiBjYXJkLWhlYWRlciBjbGFzcz1cImNhcmQtaGVhZGVyXCI+XG4gICAgICA8aDQgY2xhc3M9XCJoZWFkZXItdGl0bGVcIj5Db2x1bW4gPHN1cD4oe3sgYWN0aXZlQ29sdW1uQ291bnQgfX0pPC9zdXA+PC9oND5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJyZXNldC1idXR0b25cIiAoY2xpY2spPVwicmVzZXRDb2x1bW5zKClcIj5SZXNldDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICBcbiAgICA8ZGl2IGNhcmQtYm9keSBjbGFzcz1cImNhcmQtYm9keVwiPlxuICAgICAgPCEtLSBDb2x1bW4gT3B0aW9ucyAtLT5cbiAgICAgIDxzZWN0aW9uIGNsYXNzPVwic2VjdGlvblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2VjdGlvbi1oZWFkZXJcIj5cbiAgICAgICAgICA8aDMgY2xhc3M9XCJzZWN0aW9uLXRpdGxlXCI+UHJvcGVydGllczwvaDM+XG4gICAgICAgICAgPHZlcmJlbi1zdmcgaWNvbj1cImluZm9cIiBbd2lkdGhdPVwiMTVcIiBbaGVpZ2h0XT1cIjE1XCIgZmlsbD1cInZhcigtLXZibi1jb2xvci10ZXh0LW11dGVkKVwiPjwvdmVyYmVuLXN2Zz5cbiAgICAgICAgPC9kaXY+XG4gIFxuICAgICAgICA8IS0tIFNlbGVjdCBBbGwgLS0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWxlY3QtYWxsLXdyYXBwZXJcIj5cbiAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJzZWxlY3QtYWxsXCI+XG4gICAgICAgICAgICA8aW5wdXQgXG4gICAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiIFxuICAgICAgICAgICAgICBbY2hlY2tlZF09XCJzZWxlY3RBbGxcIlxuICAgICAgICAgICAgICAoY2hhbmdlKT1cInRvZ2dsZVNlbGVjdEFsbCgpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8c3Bhbj5TZWxlY3QgQWxsPC9zcGFuPlxuICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuICBcbiAgICAgICAgQGZvciAoY29sdW1uIG9mIGNvbHVtbnNUb1Nob3c7IHRyYWNrIGNvbHVtbi5pZCkge1xuICAgICAgICAgIDxkaXYgXG4gICAgICAgICAgICBjbGFzcz1cImNvbHVtbi1vcHRpb25cIlxuICAgICAgICAgICAgW2F0dHIuZHJhZ2dhYmxlXT1cImVuYWJsZURyYWdBbmREcm9wXCJcbiAgICAgICAgICAgIChkcmFnc3RhcnQpPVwib25EcmFnU3RhcnQoJGluZGV4LCAkZXZlbnQpXCJcbiAgICAgICAgICAgIChkcmFnb3Zlcik9XCJvbkRyYWdPdmVyKCRldmVudClcIlxuICAgICAgICAgICAgKGRyb3ApPVwib25Ecm9wKCRpbmRleCwgJGV2ZW50KVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbi1vcHRpb24tY29udGVudFwiPlxuICAgICAgICAgICAgICBAaWYgKGVuYWJsZURyYWdBbmREcm9wKSB7XG4gICAgICAgICAgICAgICAgPHZlcmJlbi1zdmdcbiAgICAgICAgICAgICAgICAgIGljb249XCJzcXVhcmUtZG90XCJcbiAgICAgICAgICAgICAgICAgIFt3aWR0aF09XCIxNVwiXG4gICAgICAgICAgICAgICAgICBbaGVpZ2h0XT1cIjE1XCJcbiAgICAgICAgICAgICAgICAgIGZpbGw9XCJ2YXIoLS12Ym4tY29sb3ItdGV4dClcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJkcmFnLWhhbmRsZVwiXG4gICAgICAgICAgICAgICAgPjwvdmVyYmVuLXN2Zz5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8aW5wdXQgXG4gICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCIgXG4gICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiaXNDb2x1bW5WaXNpYmxlKGNvbHVtbi5pZClcIlxuICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwidG9nZ2xlQ29sdW1uVmlzaWJpbGl0eShjb2x1bW4uaWQpXCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPHNwYW4+e3sgZ2V0Q29sdW1uSGVhZGVyKGNvbHVtbikgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICBcbiAgICAgICAgQGlmICh2aXNpYmxlQ29sdW1ucy5sZW5ndGggPiBtYXhWaXNpYmxlSXRlbXMpIHtcbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgKGNsaWNrKT1cInNob3dBbGxDb2x1bW5zID0gIXNob3dBbGxDb2x1bW5zXCJcbiAgICAgICAgICBjbGFzcz1cInNob3ctbW9yZVwiXG4gICAgICAgID5cbiAgICAgICAgICA8c3Bhbj57eyBzaG93QWxsQ29sdW1ucyA/IFwiU2hvdyBMZXNzXCIgOiBcIlNob3cgTW9yZVwiIH19PC9zcGFuPlxuICAgICAgICAgIDx2ZXJiZW4tc3ZnXG4gICAgICAgICAgICBpY29uPVwiY2hldnJvblwiXG4gICAgICAgICAgICBbd2lkdGhdPVwiOFwiXG4gICAgICAgICAgICBbaGVpZ2h0XT1cIjZcIlxuICAgICAgICAgICAgZmlsbD1cInZhcigtLXZibi1jb2xvci10ZXh0KVwiXG4gICAgICAgICAgICBzdHJva2U9XCJ2YXIoLS12Ym4tY29sb3ItdGV4dClcIlxuICAgICAgICAgID48L3ZlcmJlbi1zdmc+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICB9XG4gICAgICA8L3NlY3Rpb24+XG4gICAgPC9kaXY+XG4gIFxuICAgIDxkaXYgY2FyZC1mb290ZXIgY2xhc3M9XCJjYXJkLWZvb3RlclwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cInNhdmUtYnV0dG9uXCIgKGNsaWNrKT1cImVtaXRVcGRhdGVkQ29sdW1ucygpXCI+U2F2ZTwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L3ZlcmJlbi1jYXJkPiJdfQ==
|