@impartner/design-components 2.1.2 → 2.2.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/esm2022/lib/alert/alert.component.mjs +11 -4
- package/esm2022/lib/datetime-picker/components/datetime-picker/datetime-picker.component.mjs +10 -10
- package/esm2022/lib/datetime-picker/constants/datetime-picker-defaults.mjs +2 -2
- package/esm2022/lib/file-upload/file-upload.module.mjs +14 -6
- package/esm2022/lib/modal/modal.component.mjs +9 -3
- package/esm2022/lib/progress-bar/progress-bar.component.mjs +19 -3
- package/esm2022/lib/table/components/bulk-actions/bulk-actions.component.mjs +6 -1
- package/esm2022/lib/table/constants/table.constants.mjs +1 -2
- package/esm2022/lib/table/containers/table.component.mjs +91 -20
- package/esm2022/lib/table/directives/collapse-monitor.directive.mjs +42 -0
- package/esm2022/lib/table/directives/index.mjs +2 -1
- package/esm2022/lib/table/directives/table-inject-component.directive.mjs +1 -1
- package/esm2022/lib/table/directives/table.directive.mjs +24 -4
- package/esm2022/lib/table/index.mjs +2 -2
- package/esm2022/lib/table/interfaces/cell-renderer.interface.mjs +1 -1
- package/esm2022/lib/table/interfaces/collapsible-row-content-context.interface.mjs +2 -0
- package/esm2022/lib/table/interfaces/index.mjs +3 -1
- package/esm2022/lib/table/interfaces/sort-by-payload.interface.mjs +1 -1
- package/esm2022/lib/table/interfaces/table-column-defs.type.mjs +1 -1
- package/esm2022/lib/table/interfaces/table-event-payload.interface.mjs +1 -1
- package/esm2022/lib/table/interfaces/table-row-action-payload.interface.mjs +1 -1
- package/esm2022/lib/table/interfaces/table-row-action.interface.mjs +1 -1
- package/esm2022/lib/table/interfaces/table-row-collapse-change.interface.mjs +2 -0
- package/esm2022/lib/table/interfaces/table-row-item.interface.mjs +1 -1
- package/esm2022/lib/table/table.module.mjs +12 -7
- package/fesm2022/impartner-design-components.mjs +215 -42
- package/fesm2022/impartner-design-components.mjs.map +1 -1
- package/lib/alert/alert.component.d.ts +5 -1
- package/lib/datetime-picker/components/datetime-picker/datetime-picker.component.d.ts +3 -3
- package/lib/datetime-picker/constants/datetime-picker-defaults.d.ts +1 -1
- package/lib/file-upload/file-upload.module.d.ts +1 -1
- package/lib/modal/modal.component.d.ts +5 -1
- package/lib/progress-bar/progress-bar.component.d.ts +10 -1
- package/lib/table/components/bulk-actions/bulk-actions.component.d.ts +5 -0
- package/lib/table/constants/table.constants.d.ts +0 -1
- package/lib/table/containers/table.component.d.ts +58 -13
- package/lib/table/directives/collapse-monitor.directive.d.ts +12 -0
- package/lib/table/directives/index.d.ts +1 -0
- package/lib/table/directives/table-inject-component.directive.d.ts +2 -2
- package/lib/table/directives/table.directive.d.ts +11 -3
- package/lib/table/index.d.ts +1 -1
- package/lib/table/interfaces/cell-renderer.interface.d.ts +10 -3
- package/lib/table/interfaces/collapsible-row-content-context.interface.d.ts +39 -0
- package/lib/table/interfaces/index.d.ts +2 -0
- package/lib/table/interfaces/sort-by-payload.interface.d.ts +6 -0
- package/lib/table/interfaces/table-column-defs.type.d.ts +30 -6
- package/lib/table/interfaces/table-event-payload.interface.d.ts +8 -1
- package/lib/table/interfaces/table-row-action-payload.interface.d.ts +8 -1
- package/lib/table/interfaces/table-row-action.interface.d.ts +10 -2
- package/lib/table/interfaces/table-row-collapse-change.interface.d.ts +11 -0
- package/lib/table/interfaces/table-row-item.interface.d.ts +3 -4
- package/lib/table/table.module.d.ts +18 -17
- package/package.json +1 -1
|
@@ -65,6 +65,10 @@ export class ModalComponent {
|
|
|
65
65
|
* Shows a backdrop behind the Modal.
|
|
66
66
|
*/
|
|
67
67
|
this.backdrop = true;
|
|
68
|
+
/**
|
|
69
|
+
* When `true`, Modal will not automatically render a fallback "accept" button in the footer.
|
|
70
|
+
*/
|
|
71
|
+
this.noFallback = false;
|
|
68
72
|
/**
|
|
69
73
|
* Event emitted when the Modal content is dismissed.
|
|
70
74
|
*/
|
|
@@ -206,7 +210,7 @@ export class ModalComponent {
|
|
|
206
210
|
this._closed$.next();
|
|
207
211
|
}
|
|
208
212
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ModalComponent, deps: [{ token: i1.InteractionService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
209
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.1", type: ModalComponent, selector: "impdc-modal", inputs: { show: "show", theme: "theme", size: "size", iconName: "iconName", iconTheme: "iconTheme", titleText: "titleText", acceptText: "acceptText", dismissable: "dismissable", fade: "fade", backdrop: "backdrop" }, outputs: { dismiss: "dismiss", deny: "deny", accept: "accept" }, host: { attributes: { "tabindex": "-1" }, properties: { "class.fade": "fade", "class.in": "fade && shown", "class.show": "shown", "class.dismissable": "dismissable" }, classAttribute: "impdc modal" }, viewQueries: [{ propertyName: "_dialogElementRef", first: true, predicate: ["dialogElement"], descendants: true }, { propertyName: "dismissEl", first: true, predicate: ["dismissEl"], descendants: true }, { propertyName: "denyEl", first: true, predicate: ["denyEl"], descendants: true }, { propertyName: "acceptEl", first: true, predicate: ["acceptEl"], descendants: true }], ngImport: i0, template: "<div\n #dialogElement\n *ngIf=\"valid\"\n class=\"modal-dialog modal-dialog-centered modal-dialog-scrollable modal-theme-{{\n theme\n }}\"\n [class.modal-sm]=\"size === 'sm'\"\n [class.modal-lg]=\"size === 'lg'\"\n [class.modal-xl]=\"size === 'xl'\"\n [class.modal-fullscreen]=\"size === 'fs'\"\n [class.modal-fullscreen-lg-down]=\"size !== 'fs'\">\n <div class=\"modal-content\">\n <div *ngIf=\"showDestructiveIcon\" class=\"modal-icon\">\n <span impdc-icon [name]=\"iconName\" [theme]=\"iconTheme\"></span>\n </div>\n <div #header class=\"modal-header\" [class.hide]=\"hideHeader\">\n <h3 class=\"modal-title\">\n <span *ngIf=\"showWorkingIcon\" class=\"modal-icon\">\n <span impdc-icon [name]=\"iconName\" [theme]=\"iconTheme\"></span>\n </span>\n <span>{{ titleText }}</span>\n </h3>\n <button\n impdcButton\n *ngIf=\"dismissable\"\n theme=\"close\"\n (click)=\"handleDismiss($event); $event.stopPropagation()\"></button>\n </div>\n <div #bodyEl class=\"modal-body\">\n <ng-content></ng-content>\n </div>\n <div #footer class=\"modal-footer\">\n <span\n #dismissEl\n *ngIf=\"dismissable\"\n [class.hide]=\"!dismissEl.children.length\"\n (click)=\"handleDismiss($event); $event.stopPropagation()\">\n <ng-content select=\"[dismiss]\"></ng-content>\n </span>\n <span\n #denyEl\n [class.hide]=\"!denyEl.children.length\"\n (click)=\"handleDeny($event); $event.stopPropagation()\">\n <ng-content select=\"[deny]\"></ng-content>\n </span>\n <span\n #acceptEl\n [class.hide]=\"!acceptEl.children.length\"\n (click)=\"handleAccept($event); $event.stopPropagation()\">\n <ng-content select=\"[accept]\"></ng-content>\n </span>\n <span\n #acceptFallbackEl\n *ngIf=\"!acceptEl.children.length\"\n (click)=\"handleAccept($event); $event.stopPropagation()\">\n <button\n impdcButton\n [text]=\"acceptText\"\n [theme]=\"acceptFallbackTheme\"></button>\n </span>\n </div>\n </div>\n</div>\n", styles: [":host{-webkit-user-select:none;user-select:none}:host .modal-icon{display:inline-flex;justify-content:center;align-items:center;height:40px;width:40px;color:var(--impd-color-gray-500);background:var(--impd-color-gray-100);border-radius:50%;flex-shrink:0}:host .modal-icon .fa,:host .modal-icon .fa-brands,:host .modal-icon .fa-duotone,:host .modal-icon .fa-light,:host .modal-icon .fa-regular,:host .modal-icon .fa-solid,:host .modal-icon .fa-thin,:host .modal-icon .fab,:host .modal-icon .fad,:host .modal-icon .fal,:host .modal-icon .far,:host .modal-icon .fas,:host .modal-icon .fat{line-height:var(--impartner-hex-modal-title-line-height)}:host.fade.in{background-color:transparent}:host.show{display:block;opacity:1}:host:not(.show),:host.hide,:host .hide{display:none}:host.dismissable{cursor:pointer}:host.dismissable .modal-dialog{cursor:default}:host .modal-dialog{cursor:default;-webkit-user-select:auto;user-select:auto}:host .modal-theme-simple .modal-header,:host .modal-theme-destructive .modal-header{border:0;padding-bottom:0}:host .modal-theme-simple .modal-body,:host .modal-theme-destructive .modal-body{padding:calc(var(--impartner-hex-modal-padding) * .5) var(--impartner-hex-modal-padding) var(--impartner-hex-modal-padding)}:host .modal-theme-simple .modal-footer,:host .modal-theme-destructive .modal-footer{border:0;padding-top:0}:host .modal-theme-working .modal-footer{padding:calc(var(--impartner-hex-modal-padding) * .5 - var(--impartner-hex-modal-footer-gap) * .5) calc(var(--impartner-hex-modal-padding) - var(--impartner-hex-modal-footer-gap) * .5)}:host .modal-theme-destructive .modal-content{display:grid;grid-template-areas:\"modal-icon modal-header\" \"modal-icon modal-body\" \"modal-footer modal-footer\";grid-template-columns:auto 1fr;grid-template-rows:auto 1fr auto}:host .modal-theme-destructive .modal-content>.modal-icon{grid-area:modal-icon;margin:var(--impartner-hex-modal-header-padding);margin-right:0;margin-bottom:0}:host .modal-theme-destructive .modal-content>.modal-header{grid-area:modal-header;padding-left:16px;margin-top:8px;justify-content:unset}:host .modal-theme-destructive .modal-content>.modal-body{grid-area:modal-body;padding-left:16px}:host .modal-theme-destructive .modal-content>.modal-footer{grid-area:modal-footer}:host .modal-theme-destructive .modal-icon{color:var(--impd-color-red-600);background:var(--impd-color-red-100)}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[impdcButton]", inputs: ["type", "theme", "text", "disabled", "titleText", "ariaLabel"] }, { kind: "component", type: i4.IconComponent, selector: "impdc-icon, [impdc-icon]", inputs: ["name", "theme", "size"] }] }); }
|
|
213
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.1", type: ModalComponent, selector: "impdc-modal", inputs: { show: "show", theme: "theme", size: "size", iconName: "iconName", iconTheme: "iconTheme", titleText: "titleText", acceptText: "acceptText", dismissable: "dismissable", fade: "fade", backdrop: "backdrop", noFallback: "noFallback" }, outputs: { dismiss: "dismiss", deny: "deny", accept: "accept" }, host: { attributes: { "tabindex": "-1" }, properties: { "class.fade": "fade", "class.in": "fade && shown", "class.show": "shown", "class.dismissable": "dismissable" }, classAttribute: "impdc modal" }, viewQueries: [{ propertyName: "_dialogElementRef", first: true, predicate: ["dialogElement"], descendants: true }, { propertyName: "dismissEl", first: true, predicate: ["dismissEl"], descendants: true }, { propertyName: "denyEl", first: true, predicate: ["denyEl"], descendants: true }, { propertyName: "acceptEl", first: true, predicate: ["acceptEl"], descendants: true }], ngImport: i0, template: "<div\n #dialogElement\n *ngIf=\"valid\"\n class=\"modal-dialog modal-dialog-centered modal-dialog-scrollable modal-theme-{{\n theme\n }}\"\n [class.modal-sm]=\"size === 'sm'\"\n [class.modal-lg]=\"size === 'lg'\"\n [class.modal-xl]=\"size === 'xl'\"\n [class.modal-fullscreen]=\"size === 'fs'\"\n [class.modal-fullscreen-lg-down]=\"size !== 'fs'\">\n <div class=\"modal-content\">\n <div *ngIf=\"showDestructiveIcon\" class=\"modal-icon\">\n <span impdc-icon [name]=\"iconName\" [theme]=\"iconTheme\"></span>\n </div>\n <div #header class=\"modal-header\" [class.hide]=\"hideHeader\">\n <h3 class=\"modal-title\">\n <span *ngIf=\"showWorkingIcon\" class=\"modal-icon\">\n <span impdc-icon [name]=\"iconName\" [theme]=\"iconTheme\"></span>\n </span>\n <span>{{ titleText }}</span>\n </h3>\n <button\n impdcButton\n *ngIf=\"dismissable\"\n theme=\"close\"\n (click)=\"handleDismiss($event); $event.stopPropagation()\"></button>\n </div>\n <div #bodyEl class=\"modal-body\">\n <ng-content></ng-content>\n </div>\n <div #footer class=\"modal-footer\">\n <span\n #dismissEl\n *ngIf=\"dismissable\"\n [class.hide]=\"!dismissEl.children.length\"\n (click)=\"handleDismiss($event); $event.stopPropagation()\">\n <ng-content select=\"[dismiss]\"></ng-content>\n </span>\n <span\n #denyEl\n [class.hide]=\"!denyEl.children.length\"\n (click)=\"handleDeny($event); $event.stopPropagation()\">\n <ng-content select=\"[deny]\"></ng-content>\n </span>\n <span\n #acceptEl\n [class.hide]=\"!acceptEl.children.length\"\n (click)=\"handleAccept($event); $event.stopPropagation()\">\n <ng-content select=\"[accept]\"></ng-content>\n </span>\n <span\n #acceptFallbackEl\n *ngIf=\"!noFallback && !acceptEl.children.length\"\n (click)=\"handleAccept($event); $event.stopPropagation()\">\n <button\n impdcButton\n [text]=\"acceptText\"\n [theme]=\"acceptFallbackTheme\"></button>\n </span>\n </div>\n </div>\n</div>\n", styles: [":host{-webkit-user-select:none;user-select:none}:host .modal-icon{display:inline-flex;justify-content:center;align-items:center;height:40px;width:40px;color:var(--impd-color-gray-500);background:var(--impd-color-gray-100);border-radius:50%;flex-shrink:0}:host .modal-icon .fa,:host .modal-icon .fa-brands,:host .modal-icon .fa-duotone,:host .modal-icon .fa-light,:host .modal-icon .fa-regular,:host .modal-icon .fa-solid,:host .modal-icon .fa-thin,:host .modal-icon .fab,:host .modal-icon .fad,:host .modal-icon .fal,:host .modal-icon .far,:host .modal-icon .fas,:host .modal-icon .fat{line-height:var(--impartner-hex-modal-title-line-height)}:host.fade.in{background-color:transparent}:host.show{display:block;opacity:1}:host:not(.show),:host.hide,:host .hide{display:none}:host.dismissable{cursor:pointer}:host.dismissable .modal-dialog{cursor:default}:host .modal-dialog{cursor:default;-webkit-user-select:auto;user-select:auto}:host .modal-theme-simple .modal-header,:host .modal-theme-destructive .modal-header{border:0;padding-bottom:0}:host .modal-theme-simple .modal-body,:host .modal-theme-destructive .modal-body{padding:calc(var(--impartner-hex-modal-padding) * .5) var(--impartner-hex-modal-padding) var(--impartner-hex-modal-padding)}:host .modal-theme-simple .modal-footer,:host .modal-theme-destructive .modal-footer{border:0;padding-top:0}:host .modal-theme-working .modal-footer{padding:calc(var(--impartner-hex-modal-padding) * .5 - var(--impartner-hex-modal-footer-gap) * .5) calc(var(--impartner-hex-modal-padding) - var(--impartner-hex-modal-footer-gap) * .5)}:host .modal-theme-destructive .modal-content{display:grid;grid-template-areas:\"modal-icon modal-header\" \"modal-icon modal-body\" \"modal-footer modal-footer\";grid-template-columns:auto 1fr;grid-template-rows:auto 1fr auto}:host .modal-theme-destructive .modal-content>.modal-icon{grid-area:modal-icon;margin:var(--impartner-hex-modal-header-padding);margin-right:0;margin-bottom:0}:host .modal-theme-destructive .modal-content>.modal-header{grid-area:modal-header;padding-left:16px;margin-top:8px;justify-content:unset}:host .modal-theme-destructive .modal-content>.modal-body{grid-area:modal-body;padding-left:16px}:host .modal-theme-destructive .modal-content>.modal-footer{grid-area:modal-footer}:host .modal-theme-destructive .modal-icon{color:var(--impd-color-red-600);background:var(--impd-color-red-100)}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[impdcButton]", inputs: ["type", "theme", "text", "disabled", "titleText", "ariaLabel"] }, { kind: "component", type: i4.IconComponent, selector: "impdc-icon, [impdc-icon]", inputs: ["name", "theme", "size"] }] }); }
|
|
210
214
|
}
|
|
211
215
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ModalComponent, decorators: [{
|
|
212
216
|
type: Component,
|
|
@@ -217,7 +221,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImpor
|
|
|
217
221
|
'[class.show]': 'shown',
|
|
218
222
|
'[class.dismissable]': 'dismissable',
|
|
219
223
|
tabindex: '-1'
|
|
220
|
-
}, template: "<div\n #dialogElement\n *ngIf=\"valid\"\n class=\"modal-dialog modal-dialog-centered modal-dialog-scrollable modal-theme-{{\n theme\n }}\"\n [class.modal-sm]=\"size === 'sm'\"\n [class.modal-lg]=\"size === 'lg'\"\n [class.modal-xl]=\"size === 'xl'\"\n [class.modal-fullscreen]=\"size === 'fs'\"\n [class.modal-fullscreen-lg-down]=\"size !== 'fs'\">\n <div class=\"modal-content\">\n <div *ngIf=\"showDestructiveIcon\" class=\"modal-icon\">\n <span impdc-icon [name]=\"iconName\" [theme]=\"iconTheme\"></span>\n </div>\n <div #header class=\"modal-header\" [class.hide]=\"hideHeader\">\n <h3 class=\"modal-title\">\n <span *ngIf=\"showWorkingIcon\" class=\"modal-icon\">\n <span impdc-icon [name]=\"iconName\" [theme]=\"iconTheme\"></span>\n </span>\n <span>{{ titleText }}</span>\n </h3>\n <button\n impdcButton\n *ngIf=\"dismissable\"\n theme=\"close\"\n (click)=\"handleDismiss($event); $event.stopPropagation()\"></button>\n </div>\n <div #bodyEl class=\"modal-body\">\n <ng-content></ng-content>\n </div>\n <div #footer class=\"modal-footer\">\n <span\n #dismissEl\n *ngIf=\"dismissable\"\n [class.hide]=\"!dismissEl.children.length\"\n (click)=\"handleDismiss($event); $event.stopPropagation()\">\n <ng-content select=\"[dismiss]\"></ng-content>\n </span>\n <span\n #denyEl\n [class.hide]=\"!denyEl.children.length\"\n (click)=\"handleDeny($event); $event.stopPropagation()\">\n <ng-content select=\"[deny]\"></ng-content>\n </span>\n <span\n #acceptEl\n [class.hide]=\"!acceptEl.children.length\"\n (click)=\"handleAccept($event); $event.stopPropagation()\">\n <ng-content select=\"[accept]\"></ng-content>\n </span>\n <span\n #acceptFallbackEl\n *ngIf=\"!acceptEl.children.length\"\n (click)=\"handleAccept($event); $event.stopPropagation()\">\n <button\n impdcButton\n [text]=\"acceptText\"\n [theme]=\"acceptFallbackTheme\"></button>\n </span>\n </div>\n </div>\n</div>\n", styles: [":host{-webkit-user-select:none;user-select:none}:host .modal-icon{display:inline-flex;justify-content:center;align-items:center;height:40px;width:40px;color:var(--impd-color-gray-500);background:var(--impd-color-gray-100);border-radius:50%;flex-shrink:0}:host .modal-icon .fa,:host .modal-icon .fa-brands,:host .modal-icon .fa-duotone,:host .modal-icon .fa-light,:host .modal-icon .fa-regular,:host .modal-icon .fa-solid,:host .modal-icon .fa-thin,:host .modal-icon .fab,:host .modal-icon .fad,:host .modal-icon .fal,:host .modal-icon .far,:host .modal-icon .fas,:host .modal-icon .fat{line-height:var(--impartner-hex-modal-title-line-height)}:host.fade.in{background-color:transparent}:host.show{display:block;opacity:1}:host:not(.show),:host.hide,:host .hide{display:none}:host.dismissable{cursor:pointer}:host.dismissable .modal-dialog{cursor:default}:host .modal-dialog{cursor:default;-webkit-user-select:auto;user-select:auto}:host .modal-theme-simple .modal-header,:host .modal-theme-destructive .modal-header{border:0;padding-bottom:0}:host .modal-theme-simple .modal-body,:host .modal-theme-destructive .modal-body{padding:calc(var(--impartner-hex-modal-padding) * .5) var(--impartner-hex-modal-padding) var(--impartner-hex-modal-padding)}:host .modal-theme-simple .modal-footer,:host .modal-theme-destructive .modal-footer{border:0;padding-top:0}:host .modal-theme-working .modal-footer{padding:calc(var(--impartner-hex-modal-padding) * .5 - var(--impartner-hex-modal-footer-gap) * .5) calc(var(--impartner-hex-modal-padding) - var(--impartner-hex-modal-footer-gap) * .5)}:host .modal-theme-destructive .modal-content{display:grid;grid-template-areas:\"modal-icon modal-header\" \"modal-icon modal-body\" \"modal-footer modal-footer\";grid-template-columns:auto 1fr;grid-template-rows:auto 1fr auto}:host .modal-theme-destructive .modal-content>.modal-icon{grid-area:modal-icon;margin:var(--impartner-hex-modal-header-padding);margin-right:0;margin-bottom:0}:host .modal-theme-destructive .modal-content>.modal-header{grid-area:modal-header;padding-left:16px;margin-top:8px;justify-content:unset}:host .modal-theme-destructive .modal-content>.modal-body{grid-area:modal-body;padding-left:16px}:host .modal-theme-destructive .modal-content>.modal-footer{grid-area:modal-footer}:host .modal-theme-destructive .modal-icon{color:var(--impd-color-red-600);background:var(--impd-color-red-100)}\n"] }]
|
|
224
|
+
}, template: "<div\n #dialogElement\n *ngIf=\"valid\"\n class=\"modal-dialog modal-dialog-centered modal-dialog-scrollable modal-theme-{{\n theme\n }}\"\n [class.modal-sm]=\"size === 'sm'\"\n [class.modal-lg]=\"size === 'lg'\"\n [class.modal-xl]=\"size === 'xl'\"\n [class.modal-fullscreen]=\"size === 'fs'\"\n [class.modal-fullscreen-lg-down]=\"size !== 'fs'\">\n <div class=\"modal-content\">\n <div *ngIf=\"showDestructiveIcon\" class=\"modal-icon\">\n <span impdc-icon [name]=\"iconName\" [theme]=\"iconTheme\"></span>\n </div>\n <div #header class=\"modal-header\" [class.hide]=\"hideHeader\">\n <h3 class=\"modal-title\">\n <span *ngIf=\"showWorkingIcon\" class=\"modal-icon\">\n <span impdc-icon [name]=\"iconName\" [theme]=\"iconTheme\"></span>\n </span>\n <span>{{ titleText }}</span>\n </h3>\n <button\n impdcButton\n *ngIf=\"dismissable\"\n theme=\"close\"\n (click)=\"handleDismiss($event); $event.stopPropagation()\"></button>\n </div>\n <div #bodyEl class=\"modal-body\">\n <ng-content></ng-content>\n </div>\n <div #footer class=\"modal-footer\">\n <span\n #dismissEl\n *ngIf=\"dismissable\"\n [class.hide]=\"!dismissEl.children.length\"\n (click)=\"handleDismiss($event); $event.stopPropagation()\">\n <ng-content select=\"[dismiss]\"></ng-content>\n </span>\n <span\n #denyEl\n [class.hide]=\"!denyEl.children.length\"\n (click)=\"handleDeny($event); $event.stopPropagation()\">\n <ng-content select=\"[deny]\"></ng-content>\n </span>\n <span\n #acceptEl\n [class.hide]=\"!acceptEl.children.length\"\n (click)=\"handleAccept($event); $event.stopPropagation()\">\n <ng-content select=\"[accept]\"></ng-content>\n </span>\n <span\n #acceptFallbackEl\n *ngIf=\"!noFallback && !acceptEl.children.length\"\n (click)=\"handleAccept($event); $event.stopPropagation()\">\n <button\n impdcButton\n [text]=\"acceptText\"\n [theme]=\"acceptFallbackTheme\"></button>\n </span>\n </div>\n </div>\n</div>\n", styles: [":host{-webkit-user-select:none;user-select:none}:host .modal-icon{display:inline-flex;justify-content:center;align-items:center;height:40px;width:40px;color:var(--impd-color-gray-500);background:var(--impd-color-gray-100);border-radius:50%;flex-shrink:0}:host .modal-icon .fa,:host .modal-icon .fa-brands,:host .modal-icon .fa-duotone,:host .modal-icon .fa-light,:host .modal-icon .fa-regular,:host .modal-icon .fa-solid,:host .modal-icon .fa-thin,:host .modal-icon .fab,:host .modal-icon .fad,:host .modal-icon .fal,:host .modal-icon .far,:host .modal-icon .fas,:host .modal-icon .fat{line-height:var(--impartner-hex-modal-title-line-height)}:host.fade.in{background-color:transparent}:host.show{display:block;opacity:1}:host:not(.show),:host.hide,:host .hide{display:none}:host.dismissable{cursor:pointer}:host.dismissable .modal-dialog{cursor:default}:host .modal-dialog{cursor:default;-webkit-user-select:auto;user-select:auto}:host .modal-theme-simple .modal-header,:host .modal-theme-destructive .modal-header{border:0;padding-bottom:0}:host .modal-theme-simple .modal-body,:host .modal-theme-destructive .modal-body{padding:calc(var(--impartner-hex-modal-padding) * .5) var(--impartner-hex-modal-padding) var(--impartner-hex-modal-padding)}:host .modal-theme-simple .modal-footer,:host .modal-theme-destructive .modal-footer{border:0;padding-top:0}:host .modal-theme-working .modal-footer{padding:calc(var(--impartner-hex-modal-padding) * .5 - var(--impartner-hex-modal-footer-gap) * .5) calc(var(--impartner-hex-modal-padding) - var(--impartner-hex-modal-footer-gap) * .5)}:host .modal-theme-destructive .modal-content{display:grid;grid-template-areas:\"modal-icon modal-header\" \"modal-icon modal-body\" \"modal-footer modal-footer\";grid-template-columns:auto 1fr;grid-template-rows:auto 1fr auto}:host .modal-theme-destructive .modal-content>.modal-icon{grid-area:modal-icon;margin:var(--impartner-hex-modal-header-padding);margin-right:0;margin-bottom:0}:host .modal-theme-destructive .modal-content>.modal-header{grid-area:modal-header;padding-left:16px;margin-top:8px;justify-content:unset}:host .modal-theme-destructive .modal-content>.modal-body{grid-area:modal-body;padding-left:16px}:host .modal-theme-destructive .modal-content>.modal-footer{grid-area:modal-footer}:host .modal-theme-destructive .modal-icon{color:var(--impd-color-red-600);background:var(--impd-color-red-100)}\n"] }]
|
|
221
225
|
}], ctorParameters: () => [{ type: i1.InteractionService }, { type: i0.ElementRef }], propDecorators: { _dialogElementRef: [{
|
|
222
226
|
type: ViewChild,
|
|
223
227
|
args: ['dialogElement']
|
|
@@ -241,6 +245,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImpor
|
|
|
241
245
|
type: Input
|
|
242
246
|
}], backdrop: [{
|
|
243
247
|
type: Input
|
|
248
|
+
}], noFallback: [{
|
|
249
|
+
type: Input
|
|
244
250
|
}], dismissEl: [{
|
|
245
251
|
type: ViewChild,
|
|
246
252
|
args: ['dismissEl', { static: false }]
|
|
@@ -257,4 +263,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImpor
|
|
|
257
263
|
}], accept: [{
|
|
258
264
|
type: Output
|
|
259
265
|
}] } });
|
|
260
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWNvbXBvbmVudHMvc3JjL2xpYi9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL21vZGFsL21vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDaEMsT0FBTyxFQUNMLE9BQU8sRUFDUCxNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsRUFDVCxJQUFJLEVBQ0osU0FBUyxFQUNULEdBQUcsRUFDSixNQUFNLE1BQU0sQ0FBQztBQUdkLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFNUMsT0FBTyxFQUF1QixVQUFVLEVBQWUsTUFBTSxTQUFTLENBQUM7Ozs7OztBQUV2RTs7Ozs7R0FLRztBQWNILE1BQU0sT0FBTyxjQUFjO0lBV3pCOztPQUVHO0lBQ0gsSUFDSSxJQUFJLENBQUMsSUFBYTtRQUNwQixJQUFJLElBQUksRUFBRTtZQUNSLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNiO2FBQU07WUFDTCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDZDtJQUNILENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQTZGRCxZQUNtQixtQkFBdUMsRUFDdkMsV0FBb0M7UUFEcEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFvQjtRQUN2QyxnQkFBVyxHQUFYLFdBQVcsQ0FBeUI7UUFySHRDLG9CQUFl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QyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQzs4R0FsU1UsY0FBYztrR0FBZCxjQUFjLDQ0QkM3QzNCLDZvRUErREE7OzJGRGxCYSxjQUFjO2tCQWIxQixTQUFTOytCQUNFLGFBQWEsUUFHakI7d0JBQ0osS0FBSyxFQUFFLGFBQWE7d0JBQ3BCLGNBQWMsRUFBRSxNQUFNO3dCQUN0QixZQUFZLEVBQUUsZUFBZTt3QkFDN0IsY0FBYyxFQUFFLE9BQU87d0JBQ3ZCLHFCQUFxQixFQUFFLGFBQWE7d0JBQ3BDLFFBQVEsRUFBRSxJQUFJO3FCQUNmO2dIQVdPLGlCQUFpQjtzQkFEeEIsU0FBUzt1QkFBQyxlQUFlO2dCQU90QixJQUFJO3NCQURQLEtBQUs7Z0JBaUJOLEtBQUs7c0JBREosS0FBSztnQkFPTixJQUFJO3NCQURILEtBQUs7Z0JBT04sUUFBUTtzQkFEUCxLQUFLO2dCQVFOLFNBQVM7c0JBRFIsS0FBSztnQkFPTixTQUFTO3NCQURSLEtBQUs7Z0JBT04sVUFBVTtzQkFEVCxLQUFLO2dCQU9OLFdBQVc7c0JBRFYsS0FBSztnQkFPTixJQUFJO3NCQURILEtBQUs7Z0JBT04sUUFBUTtzQkFEUCxLQUFLO2dCQU9OLFNBQVM7c0JBRFIsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQU96QyxNQUFNO3NCQURMLFNBQVM7dUJBQUMsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFPdEMsUUFBUTtzQkFEUCxTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBT3hDLE9BQU87c0JBRE4sTUFBTTtnQkFPUCxJQUFJO3NCQURILE1BQU07Z0JBT1AsTUFBTTtzQkFETCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBuYW5vaWQgfSBmcm9tICduYW5vaWQnO1xuaW1wb3J0IHtcbiAgU3ViamVjdCxcbiAgZmlsdGVyLFxuICBmcm9tRXZlbnQsXG4gIHN3aXRjaE1hcCxcbiAgdGFrZSxcbiAgdGFrZVVudGlsLFxuICB0YXBcbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24sIEZvbnRBd2Vzb21lSWNvblRoZW1lIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IElJbnRlcmFjdGFibGVDb21wb25lbnQsIEludGVyYWN0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IENvbXBvbmVudFNpemUgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBCdXR0b25UaGVtZSB9IGZyb20gJy4uL2J1dHRvbic7XG5pbXBvcnQgeyBNb2RhbENvbXBvbmVudFNpemVzLCBNb2RhbFRoZW1lLCBNb2RhbFRoZW1lcyB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIFRoZSBgTW9kYWxDb21wb25lbnRgIChgPGltcGRjLW1vZGFsYCkgZGlzcGxheXMgb3ZlciB0aGUgY29udGVudCBvZiB0aGUgcGFnZSB3aGVuIGEgdXNlciBhY3Rpb24gaXMgcmVxdWlyZWQuXG4gKiBUbyB1c2UsIGltcG9ydCBgTW9kYWxNb2R1bGVgIG9yIGFub3RoZXIgbW9kdWxlIHRoYXQgaW1wb3J0cyBhbmQgZXhwb3J0cyB0aGF0IG1vZHVsZSBmcm9tIGBAaW1wYXJ0bmVyL2Rlc2lnbi1jb21wb25lbnRzYC5cbiAqIGBNb2RhbE1vZHVsZWAgaW1wb3J0cyBhbmQgZXhwb3J0cyBCYWNrZHJvcE1vZHVsZSwgW0J1dHRvbk1vZHVsZV0oLi8/cGF0aD0vZG9jcy9kZXNpZ24tY29tcG9uZW50cy1idXR0b24pLFxuICogYW5kIFtJY29uTW9kdWxlXSguLz9wYXRoPS9kb2NzL2Rlc2lnbi1jb21wb25lbnRzLWljb24pLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpbXBkYy1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21vZGFsLmNvbXBvbmVudC5zY3NzJ10sXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2ltcGRjIG1vZGFsJyxcbiAgICAnW2NsYXNzLmZhZGVdJzogJ2ZhZGUnLFxuICAgICdbY2xhc3MuaW5dJzogJ2ZhZGUgJiYgc2hvd24nLFxuICAgICdbY2xhc3Muc2hvd10nOiAnc2hvd24nLFxuICAgICdbY2xhc3MuZGlzbWlzc2FibGVdJzogJ2Rpc21pc3NhYmxlJyxcbiAgICB0YWJpbmRleDogJy0xJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIElJbnRlcmFjdGFibGVDb21wb25lbnRcbntcbiAgcHJpdmF0ZSByZWFkb25seSBfaW50ZXJhY3RhYmxlSWQgPSBgaW1wZGMtbW9kYWwtJHtuYW5vaWQoKX1gO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jbG9zZWQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSBfaW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfc2hvdyA9IGZhbHNlO1xuXG4gIEBWaWV3Q2hpbGQoJ2RpYWxvZ0VsZW1lbnQnKVxuICBwcml2YXRlIF9kaWFsb2dFbGVtZW50UmVmPzogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGhlIE1vZGFsIHNob3VsZCBiZSBzaG93biBpbW1lZGlhdGVseS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBzaG93KHNob3c6IGJvb2xlYW4pIHtcbiAgICBpZiAoc2hvdykge1xuICAgICAgdGhpcy5vcGVuKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICBnZXQgc2hvdygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fc2hvdztcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgdGhlbWUgb2YgdGhlIE1vZGFsLiBBZmZlY3RzIHRoZSBsYXlvdXQgb2YgdGhlIE1vZGFsIGFzIHdlbGwgYXMgc29tZSBjb2xvcnMuXG4gICAqL1xuICBASW5wdXQoKVxuICB0aGVtZTogTW9kYWxUaGVtZXMgPSBNb2RhbFRoZW1lLlNpbXBsZTtcblxuICAvKipcbiAgICogVGhlIHNpemUgb2YgdGhlIE1vZGFsLlxuICAgKi9cbiAgQElucHV0KClcbiAgc2l6ZTogTW9kYWxDb21wb25lbnRTaXplcyA9IENvbXBvbmVudFNpemUuTWVkaXVtO1xuXG4gIC8qKlxuICAgKiBUaGUgRm9udCBBd2Vzb21lIDUgaWNvbiBuYW1lLiBPbmx5IHN1cHBvcnRlZCB3aGVuIHRoZSB0aGVtZSBpcyBXb3JraW5nIG9yIERlc3RydWN0aXZlLlxuICAgKi9cbiAgQElucHV0KClcbiAgaWNvbk5hbWU/OiBGb250QXdlc29tZUljb247XG5cbiAgLyoqXG4gICAqIFRoZSBGb250IEF3ZXNvbWUgNSBpY29uIHN0eWxlLiBGZXdlciBpY29ucyBzdXBwb3J0IHRoZSBSZWd1bGFyIHRoZW1lIGFuZCB3aWxsIGZhbGxiYWNrIHRvIFNvbGlkXG4gICAqIGlmIG5vdCBzdXBwb3J0ZWQuXG4gICAqL1xuICBASW5wdXQoKVxuICBpY29uVGhlbWU6IEZvbnRBd2Vzb21lSWNvblRoZW1lID0gJ2xpZ2h0JztcblxuICAvKipcbiAgICogVGhlIHN1YmplY3QgdGV4dCBvZiB0aGUgTW9kYWwuXG4gICAqL1xuICBASW5wdXQoKVxuICB0aXRsZVRleHQgPSAnJztcblxuICAvKipcbiAgICogVGhlIGZhbGxiYWNrIGJ1dHRvbiB0ZXh0IHRvIGFjY2VwdCB0aGUgTW9kYWwuIFRoaXMgaXMgYnlwYXNzZWQgaWYgeW91IGNvbnRlbnQtcHJvamVjdCB0aGUgYWNjZXB0IGJ1dHRvbi5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGFjY2VwdFRleHQgPSAnT0snO1xuXG4gIC8qKlxuICAgKiBBbGxvd3MgdGhlIE1vZGFsIHRvIGJlIGRpc21pc3NlZC4gVGhpcyBpcyBkaWZmZXJlbnQgZnJvbSBgYWNjZXB0YCBhbmQgYGRlbnlgLiBJZiBhIE1vZGFsIGlzIG1lYW50IHRvIGJlIHJlLW9wZW5lZCBmcmVxdWVudGx5IGl0IHNob3VsZCBiZSBkaXNtaXNzYWJsZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGRpc21pc3NhYmxlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgTW9kYWwgc2hvdWxkIGZhZGUgaW4vb3V0LlxuICAgKi9cbiAgQElucHV0KClcbiAgZmFkZSA9IHRydWU7XG5cbiAgLyoqXG4gICAqIFNob3dzIGEgYmFja2Ryb3AgYmVoaW5kIHRoZSBNb2RhbC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGJhY2tkcm9wID0gdHJ1ZTtcblxuICAvKipcbiAgICogQ29udGFpbnMgdGhlIGRpc21pc3MgYnV0dG9uIGNvbnRlbnQgcHJvamVjdGlvbi5cbiAgICovXG4gIEBWaWV3Q2hpbGQoJ2Rpc21pc3NFbCcsIHsgc3RhdGljOiBmYWxzZSB9KVxuICBkaXNtaXNzRWwhOiBFbGVtZW50UmVmO1xuXG4gIC8qKlxuICAgKiBDb250YWlucyB0aGUgZGVueSBidXR0b24gY29udGVudCBwcm9qZWN0aW9uLlxuICAgKi9cbiAgQFZpZXdDaGlsZCgnZGVueUVsJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIGRlbnlFbCE6IEVsZW1lbnRSZWY7XG5cbiAgLyoqXG4gICAqIENvbnRhaW5zIHRoZSBhY2NlcHQgYnV0dG9uIGNvbnRlbnQgcHJvamVjdGlvbi5cbiAgICovXG4gIEBWaWV3Q2hpbGQoJ2FjY2VwdEVsJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIGFjY2VwdEVsITogRWxlbWVudFJlZjtcblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBNb2RhbCBjb250ZW50IGlzIGRpc21pc3NlZC5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBkaXNtaXNzID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50IHwgRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgTW9kYWwgY29udGVudCBpcyBkZW5pZWQuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgZGVueSA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudCB8IEV2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIE1vZGFsIGNvbnRlbnQgaXMgYWNjZXB0ZWQuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgYWNjZXB0ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50IHwgRXZlbnQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfaW50ZXJhY3Rpb25TZXJ2aWNlOiBJbnRlcmFjdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgKSB7fVxuXG4gIGdldCBpbnRlcmFjdGFibGVJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9pbnRlcmFjdGFibGVJZDtcbiAgfVxuXG4gIGdldCB2YWxpZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faW5pdGlhbGl6ZWQ7XG4gIH1cblxuICBnZXQgc2hvd24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsaWQgJiYgdGhpcy5fc2hvdztcbiAgfVxuXG4gIGdldCBzaG93V29ya2luZ0ljb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5pY29uTmFtZSAmJiB0aGlzLnRoZW1lID09PSBNb2RhbFRoZW1lLldvcmtpbmc7XG4gIH1cblxuICBnZXQgc2hvd0Rlc3RydWN0aXZlSWNvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmljb25OYW1lICYmIHRoaXMudGhlbWUgPT09IE1vZGFsVGhlbWUuRGVzdHJ1Y3RpdmU7XG4gIH1cblxuICBnZXQgYWNjZXB0RmFsbGJhY2tUaGVtZSgpOiBCdXR0b25UaGVtZSB7XG4gICAgcmV0dXJuIHRoaXMudGhlbWUgPT09IE1vZGFsVGhlbWUuRGVzdHJ1Y3RpdmUgPyAnZGFuZ2VyJyA6ICdwcmltYXJ5JztcbiAgfVxuXG4gIGdldCBoaWRlSGVhZGVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy50aXRsZVRleHQgJiYgIXRoaXMuZGlzbWlzc2FibGU7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9pbnRlcmFjdGlvblNlcnZpY2UuYWRkKHRoaXMpO1xuXG4gICAgaWYgKHRoaXMuZGlzbWlzc2FibGUgPT09IHVuZGVmaW5lZCAmJiB0aGlzLnRoZW1lID09PSBNb2RhbFRoZW1lLldvcmtpbmcpIHtcbiAgICAgIHRoaXMuZGlzbWlzc2FibGUgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmljb25OYW1lID09PSB1bmRlZmluZWQgJiYgdGhpcy50aGVtZSA9PT0gTW9kYWxUaGVtZS5EZXN0cnVjdGl2ZSkge1xuICAgICAgdGhpcy5pY29uTmFtZSA9ICdleGNsYW1hdGlvbi10cmlhbmdsZSc7XG4gICAgfVxuXG4gICAgdGhpcy5faW5pdGlhbGl6ZWQgPSB0cnVlO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5faW50ZXJhY3Rpb25TZXJ2aWNlLnJlbW92ZSh0aGlzLmludGVyYWN0YWJsZUlkKTtcbiAgICB0aGlzLl9kaXNhYmxlRXZlbnRIYW5kbGluZygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZURpc21pc3MoZXZlbnQ6IE1vdXNlRXZlbnQgfCBFdmVudCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgICF0aGlzLmRpc21pc3NhYmxlIHx8XG4gICAgICAhIXRoaXMuZGlzbWlzc0VsPy5uYXRpdmVFbGVtZW50Py5maXJzdENoaWxkPy5kaXNhYmxlZFxuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNsb3NlKCk7XG4gICAgdGhpcy5kaXNtaXNzLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZURlbnkoZXZlbnQ6IE1vdXNlRXZlbnQgfCBFdmVudCk6IHZvaWQge1xuICAgIGlmICghIXRoaXMuZGVueUVsPy5uYXRpdmVFbGVtZW50Py5maXJzdENoaWxkPy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNsb3NlKCk7XG4gICAgdGhpcy5kZW55LmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZUFjY2VwdChldmVudDogTW91c2VFdmVudCB8IEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCEhdGhpcy5hY2NlcHRFbD8ubmF0aXZlRWxlbWVudD8uZmlyc3RDaGlsZD8uZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jbG9zZSgpO1xuICAgIHRoaXMuYWNjZXB0LmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW5zL3Nob3dzIHRoZSBtb2RhbC4gQ2FuIGJlIHVzZWQgcHJvZ3JhbW1hdGljYWxseS5cbiAgICovXG4gIG9wZW4oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuYmFja2Ryb3ApIHtcbiAgICAgIHRoaXMuX2ludGVyYWN0aW9uU2VydmljZS5xdWV1ZUJhY2tkcm9wKHRoaXMuaW50ZXJhY3RhYmxlSWQpO1xuICAgIH1cbiAgICB0aGlzLl9zaG93ID0gdHJ1ZTtcbiAgICB0aGlzLl9zZXR1cEV2ZW50SGFuZGxpbmcoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMvaGlkZXMgdGhlIG1vZGFsLiBDYW4gYmUgdXNlZCBwcm9ncmFtbWF0aWNhbGx5LlxuICAgKi9cbiAgY2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5fc2hvdyA9IGZhbHNlO1xuICAgIHRoaXMuX2ludGVyYWN0aW9uU2VydmljZS5kZXF1ZXVlQmFja2Ryb3AodGhpcy5pbnRlcmFjdGFibGVJZCk7XG4gICAgdGhpcy5fZGlzYWJsZUV2ZW50SGFuZGxpbmcoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldHVwRXZlbnRIYW5kbGluZygpOiB2b2lkIHtcbiAgICBjb25zdCB7IG5hdGl2ZUVsZW1lbnQgfSA9IHRoaXMuX2VsZW1lbnRSZWY7XG5cbiAgICBmcm9tRXZlbnQ8S2V5Ym9hcmRFdmVudD4obmF0aXZlRWxlbWVudCwgJ2tleWRvd24nKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9jbG9zZWQkKSxcbiAgICAgICAgZmlsdGVyKGV2dCA9PiBldnQua2V5ID09PSAnRXNjYXBlJylcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoZXZ0ID0+IHtcbiAgICAgICAgaWYgKHRoaXMuZGlzbWlzc2FibGUgJiYgIWV2dC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZURpc21pc3MoZXZ0KTtcbiAgICAgICAgICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICBmcm9tRXZlbnQ8S2V5Ym9hcmRFdmVudD4obmF0aXZlRWxlbWVudCwgJ2tleWRvd24nKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9jbG9zZWQkKSxcbiAgICAgICAgZmlsdGVyKGV2dCA9PiBldnQua2V5ID09PSAnRW50ZXInKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShldnQgPT4ge1xuICAgICAgICBpZiAoIWV2dC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZUFjY2VwdChldnQpO1xuICAgICAgICAgICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIGxldCBwcmV2ZW50Q2xvc2UgPSBmYWxzZTtcbiAgICBpZiAodGhpcy5fZGlhbG9nRWxlbWVudFJlZikge1xuICAgICAgLy8gbGlzdGVuIHRvICdtb3VzZWRvd24nIGFuZCAnbW91c2V1cCcgdG8gcHJldmVudCBkaXNtaXNzYWwgd2hlbiBtb3VzZSBpcyBwcmVzc2VkIGluc2lkZVxuICAgICAgLy8gb2YgdGhlIGRpYWxvZyB3aW5kb3cgYW5kIHRoZW4gcmVsZWFzZWQgb3V0c2lkZVxuICAgICAgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHRoaXMuX2RpYWxvZ0VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ21vdXNlZG93bicpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9jbG9zZWQkKSxcbiAgICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgICAgcHJldmVudENsb3NlID0gZmFsc2U7XG4gICAgICAgICAgfSksXG4gICAgICAgICAgc3dpdGNoTWFwKCgpID0+XG4gICAgICAgICAgICBmcm9tRXZlbnQ8TW91c2VFdmVudD4obmF0aXZlRWxlbWVudCwgJ21vdXNldXAnKS5waXBlKFxuICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fY2xvc2VkJCksXG4gICAgICAgICAgICAgIHRha2UoMSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICApLFxuICAgICAgICAgIGZpbHRlcigoeyB0YXJnZXQgfSkgPT4gbmF0aXZlRWxlbWVudCA9PT0gdGFyZ2V0KVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIHByZXZlbnRDbG9zZSA9IHRydWU7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIGxpc3RlbiB0byAnY2xpY2snIGV2ZW50cyB0byBkaXNtaXNzIG9uIGNvbXBvbmVudC9jb250YWluZXIgY2xpY2ssIGV4Y2VwdCB3aGVuXG4gICAgLy8gY2xpY2tpbmcgaW5zaWRlIHRoZSBkaWFsb2cgd2luZG93IG9yIHdoZW4gcHJldmVudGVkIGJ5IHRoZSBhYm92ZSAnbW91c2Vkb3duJ1xuICAgIC8vIGFuZCAnbW91c2V1cCcgaGFuZGxlcnNcbiAgICBmcm9tRXZlbnQ8TW91c2VFdmVudD4obmF0aXZlRWxlbWVudCwgJ2NsaWNrJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9jbG9zZWQkKSlcbiAgICAgIC5zdWJzY3JpYmUoZXZ0ID0+IHtcbiAgICAgICAgaWYgKG5hdGl2ZUVsZW1lbnQgPT09IGV2dC50YXJnZXQgJiYgIXByZXZlbnRDbG9zZSkge1xuICAgICAgICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVEaXNtaXNzKGV2dCk7XG4gICAgICAgICAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBwcmV2ZW50Q2xvc2UgPSBmYWxzZTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZGlzYWJsZUV2ZW50SGFuZGxpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5fY2xvc2VkJC5uZXh0KCk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgI2RpYWxvZ0VsZW1lbnRcbiAgKm5nSWY9XCJ2YWxpZFwiXG4gIGNsYXNzPVwibW9kYWwtZGlhbG9nIG1vZGFsLWRpYWxvZy1jZW50ZXJlZCBtb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSBtb2RhbC10aGVtZS17e1xuICAgIHRoZW1lXG4gIH19XCJcbiAgW2NsYXNzLm1vZGFsLXNtXT1cInNpemUgPT09ICdzbSdcIlxuICBbY2xhc3MubW9kYWwtbGddPVwic2l6ZSA9PT0gJ2xnJ1wiXG4gIFtjbGFzcy5tb2RhbC14bF09XCJzaXplID09PSAneGwnXCJcbiAgW2NsYXNzLm1vZGFsLWZ1bGxzY3JlZW5dPVwic2l6ZSA9PT0gJ2ZzJ1wiXG4gIFtjbGFzcy5tb2RhbC1mdWxsc2NyZWVuLWxnLWRvd25dPVwic2l6ZSAhPT0gJ2ZzJ1wiPlxuICA8ZGl2IGNsYXNzPVwibW9kYWwtY29udGVudFwiPlxuICAgIDxkaXYgKm5nSWY9XCJzaG93RGVzdHJ1Y3RpdmVJY29uXCIgY2xhc3M9XCJtb2RhbC1pY29uXCI+XG4gICAgICA8c3BhbiBpbXBkYy1pY29uIFtuYW1lXT1cImljb25OYW1lXCIgW3RoZW1lXT1cImljb25UaGVtZVwiPjwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICNoZWFkZXIgY2xhc3M9XCJtb2RhbC1oZWFkZXJcIiBbY2xhc3MuaGlkZV09XCJoaWRlSGVhZGVyXCI+XG4gICAgICA8aDMgY2xhc3M9XCJtb2RhbC10aXRsZVwiPlxuICAgICAgICA8c3BhbiAqbmdJZj1cInNob3dXb3JraW5nSWNvblwiIGNsYXNzPVwibW9kYWwtaWNvblwiPlxuICAgICAgICAgIDxzcGFuIGltcGRjLWljb24gW25hbWVdPVwiaWNvbk5hbWVcIiBbdGhlbWVdPVwiaWNvblRoZW1lXCI+PC9zcGFuPlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxzcGFuPnt7IHRpdGxlVGV4dCB9fTwvc3Bhbj5cbiAgICAgIDwvaDM+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGltcGRjQnV0dG9uXG4gICAgICAgICpuZ0lmPVwiZGlzbWlzc2FibGVcIlxuICAgICAgICB0aGVtZT1cImNsb3NlXCJcbiAgICAgICAgKGNsaWNrKT1cImhhbmRsZURpc21pc3MoJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+PC9idXR0b24+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAjYm9keUVsIGNsYXNzPVwibW9kYWwtYm9keVwiPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgI2Zvb3RlciBjbGFzcz1cIm1vZGFsLWZvb3RlclwiPlxuICAgICAgPHNwYW5cbiAgICAgICAgI2Rpc21pc3NFbFxuICAgICAgICAqbmdJZj1cImRpc21pc3NhYmxlXCJcbiAgICAgICAgW2NsYXNzLmhpZGVdPVwiIWRpc21pc3NFbC5jaGlsZHJlbi5sZW5ndGhcIlxuICAgICAgICAoY2xpY2spPVwiaGFuZGxlRGlzbWlzcygkZXZlbnQpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2Rpc21pc3NdXCI+PC9uZy1jb250ZW50PlxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW5cbiAgICAgICAgI2RlbnlFbFxuICAgICAgICBbY2xhc3MuaGlkZV09XCIhZGVueUVsLmNoaWxkcmVuLmxlbmd0aFwiXG4gICAgICAgIChjbGljayk9XCJoYW5kbGVEZW55KCRldmVudCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZGVueV1cIj48L25nLWNvbnRlbnQ+XG4gICAgICA8L3NwYW4+XG4gICAgICA8c3BhblxuICAgICAgICAjYWNjZXB0RWxcbiAgICAgICAgW2NsYXNzLmhpZGVdPVwiIWFjY2VwdEVsLmNoaWxkcmVuLmxlbmd0aFwiXG4gICAgICAgIChjbGljayk9XCJoYW5kbGVBY2NlcHQoJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlthY2NlcHRdXCI+PC9uZy1jb250ZW50PlxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW5cbiAgICAgICAgI2FjY2VwdEZhbGxiYWNrRWxcbiAgICAgICAgKm5nSWY9XCIhYWNjZXB0RWwuY2hpbGRyZW4ubGVuZ3RoXCJcbiAgICAgICAgKGNsaWNrKT1cImhhbmRsZUFjY2VwdCgkZXZlbnQpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGltcGRjQnV0dG9uXG4gICAgICAgICAgW3RleHRdPVwiYWNjZXB0VGV4dFwiXG4gICAgICAgICAgW3RoZW1lXT1cImFjY2VwdEZhbGxiYWNrVGhlbWVcIj48L2J1dHRvbj5cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
266
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWNvbXBvbmVudHMvc3JjL2xpYi9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL21vZGFsL21vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDaEMsT0FBTyxFQUNMLE9BQU8sRUFDUCxNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsRUFDVCxJQUFJLEVBQ0osU0FBUyxFQUNULEdBQUcsRUFDSixNQUFNLE1BQU0sQ0FBQztBQUdkLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFNUMsT0FBTyxFQUF1QixVQUFVLEVBQWUsTUFBTSxTQUFTLENBQUM7Ozs7OztBQUV2RTs7Ozs7R0FLRztBQWNILE1BQU0sT0FBTyxjQUFjO0lBV3pCOztPQUVHO0lBQ0gsSUFDSSxJQUFJLENBQUMsSUFBYTtRQUNwQixJQUFJLElBQUksRUFBRTtZQUNSLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNiO2FBQU07WUFDTCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDZDtJQUNILENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQW1HRCxZQUNtQixtQkFBdUMsRUFDdkMsV0FBb0M7UUFEcEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFvQjtRQUN2QyxnQkFBVyxHQUFYLFdBQVcsQ0FBeUI7UUEzSHRDLG9CQUFl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RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG5hbm9pZCB9IGZyb20gJ25hbm9pZCc7XG5pbXBvcnQge1xuICBTdWJqZWN0LFxuICBmaWx0ZXIsXG4gIGZyb21FdmVudCxcbiAgc3dpdGNoTWFwLFxuICB0YWtlLFxuICB0YWtlVW50aWwsXG4gIHRhcFxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZvbnRBd2Vzb21lSWNvbiwgRm9udEF3ZXNvbWVJY29uVGhlbWUgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgSUludGVyYWN0YWJsZUNvbXBvbmVudCwgSW50ZXJhY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgQ29tcG9uZW50U2l6ZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEJ1dHRvblRoZW1lIH0gZnJvbSAnLi4vYnV0dG9uJztcbmltcG9ydCB7IE1vZGFsQ29tcG9uZW50U2l6ZXMsIE1vZGFsVGhlbWUsIE1vZGFsVGhlbWVzIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogVGhlIGBNb2RhbENvbXBvbmVudGAgKGA8aW1wZGMtbW9kYWxgKSBkaXNwbGF5cyBvdmVyIHRoZSBjb250ZW50IG9mIHRoZSBwYWdlIHdoZW4gYSB1c2VyIGFjdGlvbiBpcyByZXF1aXJlZC5cbiAqIFRvIHVzZSwgaW1wb3J0IGBNb2RhbE1vZHVsZWAgb3IgYW5vdGhlciBtb2R1bGUgdGhhdCBpbXBvcnRzIGFuZCBleHBvcnRzIHRoYXQgbW9kdWxlIGZyb20gYEBpbXBhcnRuZXIvZGVzaWduLWNvbXBvbmVudHNgLlxuICogYE1vZGFsTW9kdWxlYCBpbXBvcnRzIGFuZCBleHBvcnRzIEJhY2tkcm9wTW9kdWxlLCBbQnV0dG9uTW9kdWxlXSguLz9wYXRoPS9kb2NzL2Rlc2lnbi1jb21wb25lbnRzLWJ1dHRvbiksXG4gKiBhbmQgW0ljb25Nb2R1bGVdKC4vP3BhdGg9L2RvY3MvZGVzaWduLWNvbXBvbmVudHMtaWNvbikuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ltcGRjLW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbW9kYWwuY29tcG9uZW50LnNjc3MnXSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnaW1wZGMgbW9kYWwnLFxuICAgICdbY2xhc3MuZmFkZV0nOiAnZmFkZScsXG4gICAgJ1tjbGFzcy5pbl0nOiAnZmFkZSAmJiBzaG93bicsXG4gICAgJ1tjbGFzcy5zaG93XSc6ICdzaG93bicsXG4gICAgJ1tjbGFzcy5kaXNtaXNzYWJsZV0nOiAnZGlzbWlzc2FibGUnLFxuICAgIHRhYmluZGV4OiAnLTEnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxDb21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgSUludGVyYWN0YWJsZUNvbXBvbmVudFxue1xuICBwcml2YXRlIHJlYWRvbmx5IF9pbnRlcmFjdGFibGVJZCA9IGBpbXBkYy1tb2RhbC0ke25hbm9pZCgpfWA7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Nsb3NlZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIF9pbml0aWFsaXplZCA9IGZhbHNlO1xuICBwcml2YXRlIF9zaG93ID0gZmFsc2U7XG5cbiAgQFZpZXdDaGlsZCgnZGlhbG9nRWxlbWVudCcpXG4gIHByaXZhdGUgX2RpYWxvZ0VsZW1lbnRSZWY/OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgTW9kYWwgc2hvdWxkIGJlIHNob3duIGltbWVkaWF0ZWx5LlxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IHNob3coc2hvdzogYm9vbGVhbikge1xuICAgIGlmIChzaG93KSB7XG4gICAgICB0aGlzLm9wZW4oKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH1cbiAgfVxuXG4gIGdldCBzaG93KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zaG93O1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSB0aGVtZSBvZiB0aGUgTW9kYWwuIEFmZmVjdHMgdGhlIGxheW91dCBvZiB0aGUgTW9kYWwgYXMgd2VsbCBhcyBzb21lIGNvbG9ycy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHRoZW1lOiBNb2RhbFRoZW1lcyA9IE1vZGFsVGhlbWUuU2ltcGxlO1xuXG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBvZiB0aGUgTW9kYWwuXG4gICAqL1xuICBASW5wdXQoKVxuICBzaXplOiBNb2RhbENvbXBvbmVudFNpemVzID0gQ29tcG9uZW50U2l6ZS5NZWRpdW07XG5cbiAgLyoqXG4gICAqIFRoZSBGb250IEF3ZXNvbWUgNSBpY29uIG5hbWUuIE9ubHkgc3VwcG9ydGVkIHdoZW4gdGhlIHRoZW1lIGlzIFdvcmtpbmcgb3IgRGVzdHJ1Y3RpdmUuXG4gICAqL1xuICBASW5wdXQoKVxuICBpY29uTmFtZT86IEZvbnRBd2Vzb21lSWNvbjtcblxuICAvKipcbiAgICogVGhlIEZvbnQgQXdlc29tZSA1IGljb24gc3R5bGUuIEZld2VyIGljb25zIHN1cHBvcnQgdGhlIFJlZ3VsYXIgdGhlbWUgYW5kIHdpbGwgZmFsbGJhY2sgdG8gU29saWRcbiAgICogaWYgbm90IHN1cHBvcnRlZC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGljb25UaGVtZTogRm9udEF3ZXNvbWVJY29uVGhlbWUgPSAnbGlnaHQnO1xuXG4gIC8qKlxuICAgKiBUaGUgc3ViamVjdCB0ZXh0IG9mIHRoZSBNb2RhbC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHRpdGxlVGV4dCA9ICcnO1xuXG4gIC8qKlxuICAgKiBUaGUgZmFsbGJhY2sgYnV0dG9uIHRleHQgdG8gYWNjZXB0IHRoZSBNb2RhbC4gVGhpcyBpcyBieXBhc3NlZCBpZiB5b3UgY29udGVudC1wcm9qZWN0IHRoZSBhY2NlcHQgYnV0dG9uLlxuICAgKi9cbiAgQElucHV0KClcbiAgYWNjZXB0VGV4dCA9ICdPSyc7XG5cbiAgLyoqXG4gICAqIEFsbG93cyB0aGUgTW9kYWwgdG8gYmUgZGlzbWlzc2VkLiBUaGlzIGlzIGRpZmZlcmVudCBmcm9tIGBhY2NlcHRgIGFuZCBgZGVueWAuIElmIGEgTW9kYWwgaXMgbWVhbnQgdG8gYmUgcmUtb3BlbmVkIGZyZXF1ZW50bHkgaXQgc2hvdWxkIGJlIGRpc21pc3NhYmxlLlxuICAgKi9cbiAgQElucHV0KClcbiAgZGlzbWlzc2FibGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIHRoZSBNb2RhbCBzaG91bGQgZmFkZSBpbi9vdXQuXG4gICAqL1xuICBASW5wdXQoKVxuICBmYWRlID0gdHJ1ZTtcblxuICAvKipcbiAgICogU2hvd3MgYSBiYWNrZHJvcCBiZWhpbmQgdGhlIE1vZGFsLlxuICAgKi9cbiAgQElucHV0KClcbiAgYmFja2Ryb3AgPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBXaGVuIGB0cnVlYCwgTW9kYWwgd2lsbCBub3QgYXV0b21hdGljYWxseSByZW5kZXIgYSBmYWxsYmFjayBcImFjY2VwdFwiIGJ1dHRvbiBpbiB0aGUgZm9vdGVyLlxuICAgKi9cbiAgQElucHV0KClcbiAgbm9GYWxsYmFjayA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBDb250YWlucyB0aGUgZGlzbWlzcyBidXR0b24gY29udGVudCBwcm9qZWN0aW9uLlxuICAgKi9cbiAgQFZpZXdDaGlsZCgnZGlzbWlzc0VsJywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIGRpc21pc3NFbCE6IEVsZW1lbnRSZWY7XG5cbiAgLyoqXG4gICAqIENvbnRhaW5zIHRoZSBkZW55IGJ1dHRvbiBjb250ZW50IHByb2plY3Rpb24uXG4gICAqL1xuICBAVmlld0NoaWxkKCdkZW55RWwnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgZGVueUVsITogRWxlbWVudFJlZjtcblxuICAvKipcbiAgICogQ29udGFpbnMgdGhlIGFjY2VwdCBidXR0b24gY29udGVudCBwcm9qZWN0aW9uLlxuICAgKi9cbiAgQFZpZXdDaGlsZCgnYWNjZXB0RWwnLCB7IHN0YXRpYzogZmFsc2UgfSlcbiAgYWNjZXB0RWwhOiBFbGVtZW50UmVmO1xuXG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIE1vZGFsIGNvbnRlbnQgaXMgZGlzbWlzc2VkLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIGRpc21pc3MgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQgfCBFdmVudD4oKTtcblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBNb2RhbCBjb250ZW50IGlzIGRlbmllZC5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBkZW55ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50IHwgRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgTW9kYWwgY29udGVudCBpcyBhY2NlcHRlZC5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBhY2NlcHQgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQgfCBFdmVudD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9pbnRlcmFjdGlvblNlcnZpY2U6IEludGVyYWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PlxuICApIHt9XG5cbiAgZ2V0IGludGVyYWN0YWJsZUlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2ludGVyYWN0YWJsZUlkO1xuICB9XG5cbiAgZ2V0IHZhbGlkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9pbml0aWFsaXplZDtcbiAgfVxuXG4gIGdldCBzaG93bigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52YWxpZCAmJiB0aGlzLl9zaG93O1xuICB9XG5cbiAgZ2V0IHNob3dXb3JraW5nSWNvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmljb25OYW1lICYmIHRoaXMudGhlbWUgPT09IE1vZGFsVGhlbWUuV29ya2luZztcbiAgfVxuXG4gIGdldCBzaG93RGVzdHJ1Y3RpdmVJY29uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuaWNvbk5hbWUgJiYgdGhpcy50aGVtZSA9PT0gTW9kYWxUaGVtZS5EZXN0cnVjdGl2ZTtcbiAgfVxuXG4gIGdldCBhY2NlcHRGYWxsYmFja1RoZW1lKCk6IEJ1dHRvblRoZW1lIHtcbiAgICByZXR1cm4gdGhpcy50aGVtZSA9PT0gTW9kYWxUaGVtZS5EZXN0cnVjdGl2ZSA/ICdkYW5nZXInIDogJ3ByaW1hcnknO1xuICB9XG5cbiAgZ2V0IGhpZGVIZWFkZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLnRpdGxlVGV4dCAmJiAhdGhpcy5kaXNtaXNzYWJsZTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX2ludGVyYWN0aW9uU2VydmljZS5hZGQodGhpcyk7XG5cbiAgICBpZiAodGhpcy5kaXNtaXNzYWJsZSA9PT0gdW5kZWZpbmVkICYmIHRoaXMudGhlbWUgPT09IE1vZGFsVGhlbWUuV29ya2luZykge1xuICAgICAgdGhpcy5kaXNtaXNzYWJsZSA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaWNvbk5hbWUgPT09IHVuZGVmaW5lZCAmJiB0aGlzLnRoZW1lID09PSBNb2RhbFRoZW1lLkRlc3RydWN0aXZlKSB7XG4gICAgICB0aGlzLmljb25OYW1lID0gJ2V4Y2xhbWF0aW9uLXRyaWFuZ2xlJztcbiAgICB9XG5cbiAgICB0aGlzLl9pbml0aWFsaXplZCA9IHRydWU7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9pbnRlcmFjdGlvblNlcnZpY2UucmVtb3ZlKHRoaXMuaW50ZXJhY3RhYmxlSWQpO1xuICAgIHRoaXMuX2Rpc2FibGVFdmVudEhhbmRsaW5nKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlRGlzbWlzcyhldmVudDogTW91c2VFdmVudCB8IEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKFxuICAgICAgIXRoaXMuZGlzbWlzc2FibGUgfHxcbiAgICAgICEhdGhpcy5kaXNtaXNzRWw/Lm5hdGl2ZUVsZW1lbnQ/LmZpcnN0Q2hpbGQ/LmRpc2FibGVkXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuY2xvc2UoKTtcbiAgICB0aGlzLmRpc21pc3MuZW1pdChldmVudCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlRGVueShldmVudDogTW91c2VFdmVudCB8IEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCEhdGhpcy5kZW55RWw/Lm5hdGl2ZUVsZW1lbnQ/LmZpcnN0Q2hpbGQ/LmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuY2xvc2UoKTtcbiAgICB0aGlzLmRlbnkuZW1pdChldmVudCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlQWNjZXB0KGV2ZW50OiBNb3VzZUV2ZW50IHwgRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoISF0aGlzLmFjY2VwdEVsPy5uYXRpdmVFbGVtZW50Py5maXJzdENoaWxkPy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNsb3NlKCk7XG4gICAgdGhpcy5hY2NlcHQuZW1pdChldmVudCk7XG4gIH1cblxuICAvKipcbiAgICogT3BlbnMvc2hvd3MgdGhlIG1vZGFsLiBDYW4gYmUgdXNlZCBwcm9ncmFtbWF0aWNhbGx5LlxuICAgKi9cbiAgb3BlbigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5iYWNrZHJvcCkge1xuICAgICAgdGhpcy5faW50ZXJhY3Rpb25TZXJ2aWNlLnF1ZXVlQmFja2Ryb3AodGhpcy5pbnRlcmFjdGFibGVJZCk7XG4gICAgfVxuICAgIHRoaXMuX3Nob3cgPSB0cnVlO1xuICAgIHRoaXMuX3NldHVwRXZlbnRIYW5kbGluZygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3Nlcy9oaWRlcyB0aGUgbW9kYWwuIENhbiBiZSB1c2VkIHByb2dyYW1tYXRpY2FsbHkuXG4gICAqL1xuICBjbG9zZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9zaG93ID0gZmFsc2U7XG4gICAgdGhpcy5faW50ZXJhY3Rpb25TZXJ2aWNlLmRlcXVldWVCYWNrZHJvcCh0aGlzLmludGVyYWN0YWJsZUlkKTtcbiAgICB0aGlzLl9kaXNhYmxlRXZlbnRIYW5kbGluZygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0dXBFdmVudEhhbmRsaW5nKCk6IHZvaWQge1xuICAgIGNvbnN0IHsgbmF0aXZlRWxlbWVudCB9ID0gdGhpcy5fZWxlbWVudFJlZjtcblxuICAgIGZyb21FdmVudDxLZXlib2FyZEV2ZW50PihuYXRpdmVFbGVtZW50LCAna2V5ZG93bicpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Nsb3NlZCQpLFxuICAgICAgICBmaWx0ZXIoZXZ0ID0+IGV2dC5rZXkgPT09ICdFc2NhcGUnKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShldnQgPT4ge1xuICAgICAgICBpZiAodGhpcy5kaXNtaXNzYWJsZSAmJiAhZXZ0LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlRGlzbWlzcyhldnQpO1xuICAgICAgICAgICAgZXZ0LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIGZyb21FdmVudDxLZXlib2FyZEV2ZW50PihuYXRpdmVFbGVtZW50LCAna2V5ZG93bicpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Nsb3NlZCQpLFxuICAgICAgICBmaWx0ZXIoZXZ0ID0+IGV2dC5rZXkgPT09ICdFbnRlcicpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKGV2dCA9PiB7XG4gICAgICAgIGlmICghZXZ0LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlQWNjZXB0KGV2dCk7XG4gICAgICAgICAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgbGV0IHByZXZlbnRDbG9zZSA9IGZhbHNlO1xuICAgIGlmICh0aGlzLl9kaWFsb2dFbGVtZW50UmVmKSB7XG4gICAgICAvLyBsaXN0ZW4gdG8gJ21vdXNlZG93bicgYW5kICdtb3VzZXVwJyB0byBwcmV2ZW50IGRpc21pc3NhbCB3aGVuIG1vdXNlIGlzIHByZXNzZWQgaW5zaWRlXG4gICAgICAvLyBvZiB0aGUgZGlhbG9nIHdpbmRvdyBhbmQgdGhlbiByZWxlYXNlZCBvdXRzaWRlXG4gICAgICBmcm9tRXZlbnQ8TW91c2VFdmVudD4odGhpcy5fZGlhbG9nRWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnbW91c2Vkb3duJylcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Nsb3NlZCQpLFxuICAgICAgICAgIHRhcCgoKSA9PiB7XG4gICAgICAgICAgICBwcmV2ZW50Q2xvc2UgPSBmYWxzZTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBzd2l0Y2hNYXAoKCkgPT5cbiAgICAgICAgICAgIGZyb21FdmVudDxNb3VzZUV2ZW50PihuYXRpdmVFbGVtZW50LCAnbW91c2V1cCcpLnBpcGUoXG4gICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9jbG9zZWQkKSxcbiAgICAgICAgICAgICAgdGFrZSgxKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICksXG4gICAgICAgICAgZmlsdGVyKCh7IHRhcmdldCB9KSA9PiBuYXRpdmVFbGVtZW50ID09PSB0YXJnZXQpXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgcHJldmVudENsb3NlID0gdHJ1ZTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gbGlzdGVuIHRvICdjbGljaycgZXZlbnRzIHRvIGRpc21pc3Mgb24gY29tcG9uZW50L2NvbnRhaW5lciBjbGljaywgZXhjZXB0IHdoZW5cbiAgICAvLyBjbGlja2luZyBpbnNpZGUgdGhlIGRpYWxvZyB3aW5kb3cgb3Igd2hlbiBwcmV2ZW50ZWQgYnkgdGhlIGFib3ZlICdtb3VzZWRvd24nXG4gICAgLy8gYW5kICdtb3VzZXVwJyBoYW5kbGVyc1xuICAgIGZyb21FdmVudDxNb3VzZUV2ZW50PihuYXRpdmVFbGVtZW50LCAnY2xpY2snKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX2Nsb3NlZCQpKVxuICAgICAgLnN1YnNjcmliZShldnQgPT4ge1xuICAgICAgICBpZiAobmF0aXZlRWxlbWVudCA9PT0gZXZ0LnRhcmdldCAmJiAhcHJldmVudENsb3NlKSB7XG4gICAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZURpc21pc3MoZXZ0KTtcbiAgICAgICAgICAgIGV2dC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHByZXZlbnRDbG9zZSA9IGZhbHNlO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9kaXNhYmxlRXZlbnRIYW5kbGluZygpOiB2b2lkIHtcbiAgICB0aGlzLl9jbG9zZWQkLm5leHQoKTtcbiAgfVxufVxuIiwiPGRpdlxuICAjZGlhbG9nRWxlbWVudFxuICAqbmdJZj1cInZhbGlkXCJcbiAgY2xhc3M9XCJtb2RhbC1kaWFsb2cgbW9kYWwtZGlhbG9nLWNlbnRlcmVkIG1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIG1vZGFsLXRoZW1lLXt7XG4gICAgdGhlbWVcbiAgfX1cIlxuICBbY2xhc3MubW9kYWwtc21dPVwic2l6ZSA9PT0gJ3NtJ1wiXG4gIFtjbGFzcy5tb2RhbC1sZ109XCJzaXplID09PSAnbGcnXCJcbiAgW2NsYXNzLm1vZGFsLXhsXT1cInNpemUgPT09ICd4bCdcIlxuICBbY2xhc3MubW9kYWwtZnVsbHNjcmVlbl09XCJzaXplID09PSAnZnMnXCJcbiAgW2NsYXNzLm1vZGFsLWZ1bGxzY3JlZW4tbGctZG93bl09XCJzaXplICE9PSAnZnMnXCI+XG4gIDxkaXYgY2xhc3M9XCJtb2RhbC1jb250ZW50XCI+XG4gICAgPGRpdiAqbmdJZj1cInNob3dEZXN0cnVjdGl2ZUljb25cIiBjbGFzcz1cIm1vZGFsLWljb25cIj5cbiAgICAgIDxzcGFuIGltcGRjLWljb24gW25hbWVdPVwiaWNvbk5hbWVcIiBbdGhlbWVdPVwiaWNvblRoZW1lXCI+PC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgI2hlYWRlciBjbGFzcz1cIm1vZGFsLWhlYWRlclwiIFtjbGFzcy5oaWRlXT1cImhpZGVIZWFkZXJcIj5cbiAgICAgIDxoMyBjbGFzcz1cIm1vZGFsLXRpdGxlXCI+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwic2hvd1dvcmtpbmdJY29uXCIgY2xhc3M9XCJtb2RhbC1pY29uXCI+XG4gICAgICAgICAgPHNwYW4gaW1wZGMtaWNvbiBbbmFtZV09XCJpY29uTmFtZVwiIFt0aGVtZV09XCJpY29uVGhlbWVcIj48L3NwYW4+XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPHNwYW4+e3sgdGl0bGVUZXh0IH19PC9zcGFuPlxuICAgICAgPC9oMz5cbiAgICAgIDxidXR0b25cbiAgICAgICAgaW1wZGNCdXR0b25cbiAgICAgICAgKm5nSWY9XCJkaXNtaXNzYWJsZVwiXG4gICAgICAgIHRoZW1lPVwiY2xvc2VcIlxuICAgICAgICAoY2xpY2spPVwiaGFuZGxlRGlzbWlzcygkZXZlbnQpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj48L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICNib2R5RWwgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAjZm9vdGVyIGNsYXNzPVwibW9kYWwtZm9vdGVyXCI+XG4gICAgICA8c3BhblxuICAgICAgICAjZGlzbWlzc0VsXG4gICAgICAgICpuZ0lmPVwiZGlzbWlzc2FibGVcIlxuICAgICAgICBbY2xhc3MuaGlkZV09XCIhZGlzbWlzc0VsLmNoaWxkcmVuLmxlbmd0aFwiXG4gICAgICAgIChjbGljayk9XCJoYW5kbGVEaXNtaXNzKCRldmVudCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZGlzbWlzc11cIj48L25nLWNvbnRlbnQ+XG4gICAgICA8L3NwYW4+XG4gICAgICA8c3BhblxuICAgICAgICAjZGVueUVsXG4gICAgICAgIFtjbGFzcy5oaWRlXT1cIiFkZW55RWwuY2hpbGRyZW4ubGVuZ3RoXCJcbiAgICAgICAgKGNsaWNrKT1cImhhbmRsZURlbnkoJGV2ZW50KTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCI+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltkZW55XVwiPjwvbmctY29udGVudD5cbiAgICAgIDwvc3Bhbj5cbiAgICAgIDxzcGFuXG4gICAgICAgICNhY2NlcHRFbFxuICAgICAgICBbY2xhc3MuaGlkZV09XCIhYWNjZXB0RWwuY2hpbGRyZW4ubGVuZ3RoXCJcbiAgICAgICAgKGNsaWNrKT1cImhhbmRsZUFjY2VwdCgkZXZlbnQpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2FjY2VwdF1cIj48L25nLWNvbnRlbnQ+XG4gICAgICA8L3NwYW4+XG4gICAgICA8c3BhblxuICAgICAgICAjYWNjZXB0RmFsbGJhY2tFbFxuICAgICAgICAqbmdJZj1cIiFub0ZhbGxiYWNrICYmICFhY2NlcHRFbC5jaGlsZHJlbi5sZW5ndGhcIlxuICAgICAgICAoY2xpY2spPVwiaGFuZGxlQWNjZXB0KCRldmVudCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgaW1wZGNCdXR0b25cbiAgICAgICAgICBbdGV4dF09XCJhY2NlcHRUZXh0XCJcbiAgICAgICAgICBbdGhlbWVdPVwiYWNjZXB0RmFsbGJhY2tUaGVtZVwiPjwvYnV0dG9uPlxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import { Component, Input } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
3
4
|
/**
|
|
4
5
|
* The `ProgressBarComponent` (`<impdc-progress-bar`) is a display-only slider to show progress.
|
|
5
6
|
* To use, import `ProgressBarModule` or another module that imports and exports that module from `@impartner/design-components`.
|
|
6
7
|
*/
|
|
7
8
|
export class ProgressBarComponent {
|
|
9
|
+
get textClass() {
|
|
10
|
+
return this.darkText ? 'dark-progress-text' : 'light-progress-text';
|
|
11
|
+
}
|
|
8
12
|
constructor() {
|
|
9
13
|
/**
|
|
10
14
|
* The left/subject text of the Progress Bar.
|
|
@@ -14,22 +18,34 @@ export class ProgressBarComponent {
|
|
|
14
18
|
* The right/status text of the Progress Bar.
|
|
15
19
|
*/
|
|
16
20
|
this.statusText = '';
|
|
21
|
+
/**
|
|
22
|
+
* The color of the progress bar
|
|
23
|
+
*/
|
|
24
|
+
this.barColor = '';
|
|
25
|
+
/**
|
|
26
|
+
* The color of the label and status
|
|
27
|
+
*/
|
|
28
|
+
this.darkText = true;
|
|
17
29
|
/**
|
|
18
30
|
* The current value of the Progress Bar represented as a number between 0 and 100.
|
|
19
31
|
*/
|
|
20
32
|
this.progressPercentage = 0;
|
|
21
33
|
}
|
|
22
34
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.1", type: ProgressBarComponent, selector: "impdc-progress-bar", inputs: { labelText: "labelText", statusText: "statusText", progressPercentage: "progressPercentage" }, ngImport: i0, template: "<div class=\"progress-container\">\n <div class=\"progress-text\">\n <div class=\"text-left\">\n {{ labelText }}\n </div>\n <div class=\"text-right\">\n {{ statusText }}\n </div>\n </div>\n <div class=\"bar-bg\">\n <div\n class=\"bar\"\n role=\"progressbar\"\n [style.width.%]=\"progressPercentage\"\n [attr.aria-valuenow]=\"progressPercentage\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"></div>\n </div>\n</div>\n", styles: [".progress-container{
|
|
35
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.1", type: ProgressBarComponent, selector: "impdc-progress-bar", inputs: { labelText: "labelText", statusText: "statusText", barColor: "barColor", darkText: "darkText", progressPercentage: "progressPercentage" }, ngImport: i0, template: "<div class=\"progress-container\">\n <div class=\"progress-text\" [ngClass]=\"textClass\">\n <div class=\"text-left\">\n {{ labelText }}\n </div>\n <div class=\"text-right\">\n {{ statusText }}\n </div>\n </div>\n <div class=\"bar-bg\">\n <div\n [ngStyle]=\"{ 'background-color': barColor }\"\n class=\"bar\"\n role=\"progressbar\"\n [style.width.%]=\"progressPercentage\"\n [attr.aria-valuenow]=\"progressPercentage\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"></div>\n </div>\n</div>\n", styles: [".progress-container{width:100%;display:flex;flex-direction:column}.progress-container .progress-text{color:#000;display:flex;flex-direction:row;font-size:1.4rem;padding:0 .2rem .5rem}.progress-container .dark-progress-text{color:var(--impartner-hex-gray-900)}.progress-container .light-progress-text{color:var(--impartner-hex-gray-600)}.progress-container .text-left{flex-grow:1}.progress-container .bar-bg{height:1rem;overflow:hidden;border-bottom-right-radius:.6rem;background-color:#e5e7eb;border-radius:6rem}.progress-container .bar{height:1rem;overflow:hidden;background-color:#1d4ed8;border-radius:6rem}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
24
36
|
}
|
|
25
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: ProgressBarComponent, decorators: [{
|
|
26
38
|
type: Component,
|
|
27
|
-
args: [{ selector: 'impdc-progress-bar', template: "<div class=\"progress-container\">\n <div class=\"progress-text\">\n <div class=\"text-left\">\n {{ labelText }}\n </div>\n <div class=\"text-right\">\n {{ statusText }}\n </div>\n </div>\n <div class=\"bar-bg\">\n <div\n class=\"bar\"\n role=\"progressbar\"\n [style.width.%]=\"progressPercentage\"\n [attr.aria-valuenow]=\"progressPercentage\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"></div>\n </div>\n</div>\n", styles: [".progress-container{
|
|
39
|
+
args: [{ selector: 'impdc-progress-bar', template: "<div class=\"progress-container\">\n <div class=\"progress-text\" [ngClass]=\"textClass\">\n <div class=\"text-left\">\n {{ labelText }}\n </div>\n <div class=\"text-right\">\n {{ statusText }}\n </div>\n </div>\n <div class=\"bar-bg\">\n <div\n [ngStyle]=\"{ 'background-color': barColor }\"\n class=\"bar\"\n role=\"progressbar\"\n [style.width.%]=\"progressPercentage\"\n [attr.aria-valuenow]=\"progressPercentage\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"></div>\n </div>\n</div>\n", styles: [".progress-container{width:100%;display:flex;flex-direction:column}.progress-container .progress-text{color:#000;display:flex;flex-direction:row;font-size:1.4rem;padding:0 .2rem .5rem}.progress-container .dark-progress-text{color:var(--impartner-hex-gray-900)}.progress-container .light-progress-text{color:var(--impartner-hex-gray-600)}.progress-container .text-left{flex-grow:1}.progress-container .bar-bg{height:1rem;overflow:hidden;border-bottom-right-radius:.6rem;background-color:#e5e7eb;border-radius:6rem}.progress-container .bar{height:1rem;overflow:hidden;background-color:#1d4ed8;border-radius:6rem}\n"] }]
|
|
28
40
|
}], ctorParameters: () => [], propDecorators: { labelText: [{
|
|
29
41
|
type: Input
|
|
30
42
|
}], statusText: [{
|
|
31
43
|
type: Input
|
|
44
|
+
}], barColor: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], darkText: [{
|
|
47
|
+
type: Input
|
|
32
48
|
}], progressPercentage: [{
|
|
33
49
|
type: Input
|
|
34
50
|
}] } });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvcHJvZ3Jlc3MtYmFyL3Byb2dyZXNzLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tY29tcG9uZW50cy9zcmMvbGliL3Byb2dyZXNzLWJhci9wcm9ncmVzcy1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUVqRDs7O0dBR0c7QUFNSCxNQUFNLE9BQU8sb0JBQW9CO0lBK0IvQixJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQztJQUN0RSxDQUFDO0lBRUQ7UUFsQ0E7O1dBRUc7UUFFSSxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBRXRCOztXQUVHO1FBRUksZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUV2Qjs7V0FFRztRQUVJLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFFckI7O1dBRUc7UUFFSSxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBRXZCOztXQUVHO1FBRUksdUJBQWtCLEdBQUcsQ0FBQyxDQUFDO0lBTWYsQ0FBQzs4R0FuQ0wsb0JBQW9CO2tHQUFwQixvQkFBb0IsOE1DWGpDLDRpQkFvQkE7OzJGRFRhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxvQkFBb0I7d0RBU3ZCLFNBQVM7c0JBRGYsS0FBSztnQkFPQyxVQUFVO3NCQURoQixLQUFLO2dCQU9DLFFBQVE7c0JBRGQsS0FBSztnQkFPQyxRQUFRO3NCQURkLEtBQUs7Z0JBT0Msa0JBQWtCO3NCQUR4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIFRoZSBgUHJvZ3Jlc3NCYXJDb21wb25lbnRgIChgPGltcGRjLXByb2dyZXNzLWJhcmApIGlzIGEgZGlzcGxheS1vbmx5IHNsaWRlciB0byBzaG93IHByb2dyZXNzLlxuICogVG8gdXNlLCBpbXBvcnQgYFByb2dyZXNzQmFyTW9kdWxlYCBvciBhbm90aGVyIG1vZHVsZSB0aGF0IGltcG9ydHMgYW5kIGV4cG9ydHMgdGhhdCBtb2R1bGUgZnJvbSBgQGltcGFydG5lci9kZXNpZ24tY29tcG9uZW50c2AuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ltcGRjLXByb2dyZXNzLWJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9ncmVzcy1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wcm9ncmVzcy1iYXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBQcm9ncmVzc0JhckNvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBUaGUgbGVmdC9zdWJqZWN0IHRleHQgb2YgdGhlIFByb2dyZXNzIEJhci5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBsYWJlbFRleHQgPSAnJztcblxuICAvKipcbiAgICogVGhlIHJpZ2h0L3N0YXR1cyB0ZXh0IG9mIHRoZSBQcm9ncmVzcyBCYXIuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc3RhdHVzVGV4dCA9ICcnO1xuXG4gIC8qKlxuICAgKiBUaGUgY29sb3Igb2YgdGhlIHByb2dyZXNzIGJhclxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGJhckNvbG9yID0gJyc7XG5cbiAgLyoqXG4gICAqIFRoZSBjb2xvciBvZiB0aGUgbGFiZWwgYW5kIHN0YXR1c1xuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGRhcmtUZXh0ID0gdHJ1ZTtcblxuICAvKipcbiAgICogVGhlIGN1cnJlbnQgdmFsdWUgb2YgdGhlIFByb2dyZXNzIEJhciByZXByZXNlbnRlZCBhcyBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEwMC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwcm9ncmVzc1BlcmNlbnRhZ2UgPSAwO1xuXG4gIGdldCB0ZXh0Q2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5kYXJrVGV4dCA/ICdkYXJrLXByb2dyZXNzLXRleHQnIDogJ2xpZ2h0LXByb2dyZXNzLXRleHQnO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7fVxufVxuIiwiPGRpdiBjbGFzcz1cInByb2dyZXNzLWNvbnRhaW5lclwiPlxuICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3MtdGV4dFwiIFtuZ0NsYXNzXT1cInRleHRDbGFzc1wiPlxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWxlZnRcIj5cbiAgICAgIHt7IGxhYmVsVGV4dCB9fVxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXJpZ2h0XCI+XG4gICAgICB7eyBzdGF0dXNUZXh0IH19XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiYmFyLWJnXCI+XG4gICAgPGRpdlxuICAgICAgW25nU3R5bGVdPVwieyAnYmFja2dyb3VuZC1jb2xvcic6IGJhckNvbG9yIH1cIlxuICAgICAgY2xhc3M9XCJiYXJcIlxuICAgICAgcm9sZT1cInByb2dyZXNzYmFyXCJcbiAgICAgIFtzdHlsZS53aWR0aC4lXT1cInByb2dyZXNzUGVyY2VudGFnZVwiXG4gICAgICBbYXR0ci5hcmlhLXZhbHVlbm93XT1cInByb2dyZXNzUGVyY2VudGFnZVwiXG4gICAgICBhcmlhLXZhbHVlbWluPVwiMFwiXG4gICAgICBhcmlhLXZhbHVlbWF4PVwiMTAwXCI+PC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { Component } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* A container component for projecting displays and controls for performing bulk actions upon one
|
|
5
|
+
* or more selected table rows. Elements to be projected should be decorated with `[selectedTotal]`
|
|
6
|
+
* and `[bulkAction]` attributes.
|
|
7
|
+
*/
|
|
3
8
|
export class TableBulkActionsComponent {
|
|
4
9
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.1", ngImport: i0, type: TableBulkActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5
10
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.1", type: TableBulkActionsComponent, selector: "impdc-table-bulk-actions", ngImport: i0, template: "<div class=\"table-bulk-actions\">\n <div class=\"selected-total\">\n <ng-content select=\"[selectedTotal]\"></ng-content>\n </div>\n <div class=\"bulk-actions\">\n <ng-content select=\"[bulkAction]\"></ng-content>\n </div>\n</div>\n", styles: [".table-bulk-actions{display:flex;flex-direction:row;align-items:center;font-weight:400}.table-bulk-actions .selected-total{border-right:1px solid var(--impd-color-gray-200, \"#e5e7eb\");padding-right:1.6rem}.table-bulk-actions .bulk-actions{padding-left:1.6rem;display:flex;flex-direction:row;gap:1.6rem}\n"] }); }
|
|
@@ -8,4 +13,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImpor
|
|
|
8
13
|
type: Component,
|
|
9
14
|
args: [{ selector: 'impdc-table-bulk-actions', template: "<div class=\"table-bulk-actions\">\n <div class=\"selected-total\">\n <ng-content select=\"[selectedTotal]\"></ng-content>\n </div>\n <div class=\"bulk-actions\">\n <ng-content select=\"[bulkAction]\"></ng-content>\n </div>\n</div>\n", styles: [".table-bulk-actions{display:flex;flex-direction:row;align-items:center;font-weight:400}.table-bulk-actions .selected-total{border-right:1px solid var(--impd-color-gray-200, \"#e5e7eb\");padding-right:1.6rem}.table-bulk-actions .bulk-actions{padding-left:1.6rem;display:flex;flex-direction:row;gap:1.6rem}\n"] }]
|
|
10
15
|
}] });
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVsay1hY3Rpb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvdGFibGUvY29tcG9uZW50cy9idWxrLWFjdGlvbnMvYnVsay1hY3Rpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1jb21wb25lbnRzL3NyYy9saWIvdGFibGUvY29tcG9uZW50cy9idWxrLWFjdGlvbnMvYnVsay1hY3Rpb25zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTFDOzs7O0dBSUc7QUFNSCxNQUFNLE9BQU8seUJBQXlCOzhHQUF6Qix5QkFBeUI7a0dBQXpCLHlCQUF5QixnRUNadEMscVBBUUE7OzJGRElhLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRSwwQkFBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBBIGNvbnRhaW5lciBjb21wb25lbnQgZm9yIHByb2plY3RpbmcgZGlzcGxheXMgYW5kIGNvbnRyb2xzIGZvciBwZXJmb3JtaW5nIGJ1bGsgYWN0aW9ucyB1cG9uIG9uZVxuICogb3IgbW9yZSBzZWxlY3RlZCB0YWJsZSByb3dzLiBFbGVtZW50cyB0byBiZSBwcm9qZWN0ZWQgc2hvdWxkIGJlIGRlY29yYXRlZCB3aXRoIGBbc2VsZWN0ZWRUb3RhbF1gXG4gKiBhbmQgYFtidWxrQWN0aW9uXWAgYXR0cmlidXRlcy5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW1wZGMtdGFibGUtYnVsay1hY3Rpb25zJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2J1bGstYWN0aW9ucy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2J1bGstYWN0aW9ucy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlQnVsa0FjdGlvbnNDb21wb25lbnQge31cbiIsIjxkaXYgY2xhc3M9XCJ0YWJsZS1idWxrLWFjdGlvbnNcIj5cbiAgPGRpdiBjbGFzcz1cInNlbGVjdGVkLXRvdGFsXCI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3NlbGVjdGVkVG90YWxdXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImJ1bGstYWN0aW9uc1wiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltidWxrQWN0aW9uXVwiPjwvbmctY29udGVudD5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -19,6 +19,5 @@ export const ROWS_PER_PAGE_GROUP = [
|
|
|
19
19
|
label: '100'
|
|
20
20
|
}
|
|
21
21
|
];
|
|
22
|
-
export const SORT_COLUMN_INDEX = 0;
|
|
23
22
|
export const DEBOUNCE_TIME = 500;
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWNvbXBvbmVudHMvc3JjL2xpYi90YWJsZS9jb25zdGFudHMvdGFibGUuY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDLENBQUM7QUFDOUIsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLEVBQUUsQ0FBQztBQUNoQyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO0FBQ2xFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUF1QjtJQUNyRDtRQUNFLEtBQUssRUFBRSxJQUFJO1FBQ1gsS0FBSyxFQUFFLElBQUk7S0FDWjtJQUNEO1FBQ0UsS0FBSyxFQUFFLElBQUk7UUFDWCxLQUFLLEVBQUUsSUFBSTtLQUNaO0lBQ0Q7UUFDRSxLQUFLLEVBQUUsSUFBSTtRQUNYLEtBQUssRUFBRSxJQUFJO0tBQ1o7SUFDRDtRQUNFLEtBQUssRUFBRSxLQUFLO1FBQ1osS0FBSyxFQUFFLEtBQUs7S0FDYjtDQUNGLENBQUM7QUFDRixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsR0FBRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVRhYmxlQ2VsbE9wdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9QQUdFID0gMTtcbmV4cG9ydCBjb25zdCBST1dTX1BFUl9QQUdFID0gMTA7XG5leHBvcnQgY29uc3QgU0VMRUNURURfUk9XU19QRVJfUEFHRSA9IHsgdmFsdWU6ICcyNScsIHRleHQ6ICcyNScgfTtcbmV4cG9ydCBjb25zdCBST1dTX1BFUl9QQUdFX0dST1VQOiBJVGFibGVDZWxsT3B0aW9uW10gPSBbXG4gIHtcbiAgICB2YWx1ZTogJzEwJyxcbiAgICBsYWJlbDogJzEwJ1xuICB9LFxuICB7XG4gICAgdmFsdWU6ICcyNScsXG4gICAgbGFiZWw6ICcyNSdcbiAgfSxcbiAge1xuICAgIHZhbHVlOiAnNTAnLFxuICAgIGxhYmVsOiAnNTAnXG4gIH0sXG4gIHtcbiAgICB2YWx1ZTogJzEwMCcsXG4gICAgbGFiZWw6ICcxMDAnXG4gIH1cbl07XG5leHBvcnQgY29uc3QgREVCT1VOQ0VfVElNRSA9IDUwMDtcbiJdfQ==
|