@indice/ng-components 0.2.146 → 0.2.147
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/_styles.css +1 -1
- package/{esm2015/indice-ng-components.js → esm2020/indice-ng-components.mjs} +0 -0
- package/{esm2015/lib/controls/avatar-initials/avatar-initials.component.js → esm2020/lib/controls/avatar-initials/avatar-initials.component.mjs} +5 -8
- package/esm2020/lib/controls/collapsible-panel/collapsible-panel.component.mjs +20 -0
- package/esm2020/lib/controls/combobox/combobox.component.mjs +96 -0
- package/esm2020/lib/controls/date-picker/date-picker.component.mjs +260 -0
- package/esm2020/lib/controls/drop-down-menu/drop-down-menu.component.mjs +68 -0
- package/esm2020/lib/controls/kpi-tile/kpi-tile.component.mjs +36 -0
- package/esm2020/lib/controls/language-selection/language-selection.component.mjs +31 -0
- package/{esm2015/lib/controls/list-view/list-column.component.js → esm2020/lib/controls/list-view/list-column.component.mjs} +4 -4
- package/{esm2015/lib/controls/list-view/list-details-section.component.js → esm2020/lib/controls/list-view/list-details-section.component.mjs} +4 -4
- package/{esm2015/lib/controls/list-view/list-tile.component.js → esm2020/lib/controls/list-view/list-tile.component.mjs} +4 -4
- package/esm2020/lib/controls/list-view/list-view-empty-state.component.mjs +29 -0
- package/esm2020/lib/controls/list-view/list-view.component.mjs +183 -0
- package/esm2020/lib/controls/nav-links-list/nav-links-list.component.mjs +42 -0
- package/esm2020/lib/controls/notifications-indicator/notifications-indicator.component.mjs +73 -0
- package/esm2020/lib/controls/pager/pager.component.mjs +130 -0
- package/esm2020/lib/controls/side-pane/side-pane.component.mjs +72 -0
- package/esm2020/lib/controls/skeleton-loader/skeleton-loader.component.mjs +25 -0
- package/esm2020/lib/controls/tabs/lib-tab-group.component.mjs +59 -0
- package/esm2020/lib/controls/tabs/lib-tab.component.mjs +57 -0
- package/esm2020/lib/controls/toaster/toaster-container.component.mjs +28 -0
- package/esm2020/lib/controls/toaster/toaster.component.mjs +31 -0
- package/esm2020/lib/controls/toggle/toggle.component.mjs +64 -0
- package/esm2020/lib/controls/user-profile-menu/user-profile-menu.component.mjs +71 -0
- package/{esm2015/lib/directives/click-outside.directive.js → esm2020/lib/directives/click-outside.directive.mjs} +4 -4
- package/{esm2015/lib/directives/dynamic-component-host.directive.js → esm2020/lib/directives/dynamic-component-host.directive.mjs} +4 -4
- package/esm2020/lib/helpers/base-list.component.mjs +181 -0
- package/esm2020/lib/icons.mjs +34 -0
- package/esm2020/lib/layouts/shell/shell-footer/shell-footer.component.mjs +19 -0
- package/esm2020/lib/layouts/shell/shell-header/shell-header.component.mjs +131 -0
- package/esm2020/lib/layouts/shell/shell-layout/shell-layout.component.mjs +103 -0
- package/esm2020/lib/layouts/shell/shell-sidebar/shell-sidebar.component.mjs +47 -0
- package/esm2020/lib/layouts/views/form-layout/form-layout.component.mjs +80 -0
- package/esm2020/lib/layouts/views/model-view-layout/model-view-layout.component.mjs +49 -0
- package/esm2020/lib/layouts/views/side-view-layout/side-view-layout.component.mjs +98 -0
- package/esm2020/lib/layouts/views/view-layout/view-layout.component.mjs +104 -0
- package/esm2020/lib/ng-components.module.mjs +245 -0
- package/esm2020/lib/pages/auth/auth-callback/auth-callback.component.mjs +30 -0
- package/{esm2015/lib/pages/auth/auth-renew/auth-renew.component.js → esm2020/lib/pages/auth/auth-renew/auth-renew.component.mjs} +4 -4
- package/esm2020/lib/pages/auth/logged-out/logged-out.component.mjs +28 -0
- package/esm2020/lib/pages/http-status/error/error.component.mjs +17 -0
- package/esm2020/lib/pages/http-status/page-not-found/page-not-found.component.mjs +15 -0
- package/esm2020/lib/pages/http-status/unauthorized/unauthorized.component.mjs +14 -0
- package/{esm2015/lib/pipes/address.pipe.js → esm2020/lib/pipes/address.pipe.mjs} +4 -4
- package/{esm2015/lib/pipes/duration-format.pipe.js → esm2020/lib/pipes/duration-format.pipe.mjs} +4 -4
- package/{esm2015/lib/services/component-loader/component-loader-options.class.js → esm2020/lib/services/component-loader/component-loader-options.class.mjs} +0 -0
- package/esm2020/lib/services/component-loader/component-loader.class.mjs +188 -0
- package/{esm2015/lib/services/component-loader/component-loader.factory.js → esm2020/lib/services/component-loader/component-loader.factory.mjs} +4 -4
- package/{esm2015/lib/services/component-loader/content-ref.class.js → esm2020/lib/services/component-loader/content-ref.class.mjs} +0 -0
- package/esm2020/lib/services/modal-service/modal-backdrop-component.mjs +44 -0
- package/esm2020/lib/services/modal-service/modal-container-component.mjs +126 -0
- package/{esm2015/lib/services/modal-service/modal-options.class.js → esm2020/lib/services/modal-service/modal-options.class.mjs} +4 -4
- package/esm2020/lib/services/modal-service/modal-service.mjs +219 -0
- package/{esm2015/lib/services/modal-service/modal-styles.class.js → esm2020/lib/services/modal-service/modal-styles.class.mjs} +0 -0
- package/{esm2015/lib/services/modal-service/modal.class.js → esm2020/lib/services/modal-service/modal.class.mjs} +4 -4
- package/{esm2015/lib/services/toaster.service.js → esm2020/lib/services/toaster.service.mjs} +4 -4
- package/esm2020/lib/tokens.mjs +7 -0
- package/{esm2015/lib/types.js → esm2020/lib/types.mjs} +1 -1
- package/esm2020/public-api.mjs +56 -0
- package/fesm2015/indice-ng-components.mjs +3629 -0
- package/fesm2015/indice-ng-components.mjs.map +1 -0
- package/fesm2020/indice-ng-components.mjs +3572 -0
- package/fesm2020/indice-ng-components.mjs.map +1 -0
- package/{indice-ng-components.d.ts → index.d.ts} +0 -0
- package/lib/controls/avatar-initials/avatar-initials.component.d.ts +1 -1
- package/lib/controls/collapsible-panel/collapsible-panel.component.d.ts +1 -1
- package/lib/controls/combobox/combobox.component.d.ts +29 -0
- package/lib/controls/date-picker/date-picker.component.d.ts +1 -1
- package/lib/controls/drop-down-menu/drop-down-menu.component.d.ts +1 -1
- package/lib/controls/kpi-tile/kpi-tile.component.d.ts +1 -1
- package/lib/controls/language-selection/language-selection.component.d.ts +1 -1
- package/lib/controls/list-view/list-column.component.d.ts +1 -1
- package/lib/controls/list-view/list-details-section.component.d.ts +1 -1
- package/lib/controls/list-view/list-tile.component.d.ts +1 -1
- package/lib/controls/list-view/list-view-empty-state.component.d.ts +1 -1
- package/lib/controls/list-view/list-view.component.d.ts +1 -1
- package/lib/controls/nav-links-list/nav-links-list.component.d.ts +1 -1
- package/lib/controls/notifications-indicator/notifications-indicator.component.d.ts +1 -1
- package/lib/controls/pager/pager.component.d.ts +1 -1
- package/lib/controls/side-pane/side-pane.component.d.ts +1 -1
- package/lib/controls/skeleton-loader/skeleton-loader.component.d.ts +1 -1
- package/lib/controls/tabs/lib-tab-group.component.d.ts +1 -1
- package/lib/controls/tabs/lib-tab.component.d.ts +4 -5
- package/lib/controls/toaster/toaster-container.component.d.ts +1 -1
- package/lib/controls/toaster/toaster.component.d.ts +1 -1
- package/lib/controls/toggle/toggle.component.d.ts +1 -1
- package/lib/controls/user-profile-menu/user-profile-menu.component.d.ts +1 -1
- package/lib/directives/click-outside.directive.d.ts +1 -1
- package/lib/directives/dynamic-component-host.directive.d.ts +1 -1
- package/lib/helpers/base-list.component.d.ts +1 -1
- package/lib/icons.d.ts +2 -0
- package/lib/layouts/shell/shell-footer/shell-footer.component.d.ts +1 -1
- package/lib/layouts/shell/shell-header/shell-header.component.d.ts +1 -1
- package/lib/layouts/shell/shell-layout/shell-layout.component.d.ts +1 -1
- package/lib/layouts/shell/shell-sidebar/shell-sidebar.component.d.ts +1 -1
- package/lib/layouts/views/form-layout/form-layout.component.d.ts +1 -1
- package/lib/layouts/views/model-view-layout/model-view-layout.component.d.ts +1 -1
- package/lib/layouts/views/side-view-layout/side-view-layout.component.d.ts +1 -1
- package/lib/layouts/views/view-layout/view-layout.component.d.ts +1 -1
- package/lib/ng-components.module.d.ts +28 -27
- package/lib/pages/auth/auth-callback/auth-callback.component.d.ts +1 -1
- package/lib/pages/auth/auth-renew/auth-renew.component.d.ts +1 -1
- package/lib/pages/auth/logged-out/logged-out.component.d.ts +1 -1
- package/lib/pages/http-status/error/error.component.d.ts +1 -1
- package/lib/pages/http-status/page-not-found/page-not-found.component.d.ts +1 -1
- package/lib/pages/http-status/unauthorized/unauthorized.component.d.ts +1 -1
- package/lib/pipes/address.pipe.d.ts +1 -1
- package/lib/pipes/duration-format.pipe.d.ts +1 -1
- package/lib/services/modal-service/modal-backdrop-component.d.ts +1 -1
- package/lib/services/modal-service/modal-container-component.d.ts +1 -1
- package/lib/tokens.d.ts +2 -0
- package/lib/types.d.ts +2 -0
- package/package.json +25 -12
- package/public-api.d.ts +2 -1
- package/bundles/indice-ng-components.umd.js +0 -4181
- package/bundles/indice-ng-components.umd.js.map +0 -1
- package/esm2015/lib/controls/collapsible-panel/collapsible-panel.component.js +0 -23
- package/esm2015/lib/controls/date-picker/date-picker.component.js +0 -269
- package/esm2015/lib/controls/drop-down-menu/drop-down-menu.component.js +0 -72
- package/esm2015/lib/controls/kpi-tile/kpi-tile.component.js +0 -39
- package/esm2015/lib/controls/language-selection/language-selection.component.js +0 -35
- package/esm2015/lib/controls/list-view/list-view-empty-state.component.js +0 -32
- package/esm2015/lib/controls/list-view/list-view.component.js +0 -186
- package/esm2015/lib/controls/nav-links-list/nav-links-list.component.js +0 -45
- package/esm2015/lib/controls/notifications-indicator/notifications-indicator.component.js +0 -76
- package/esm2015/lib/controls/pager/pager.component.js +0 -133
- package/esm2015/lib/controls/side-pane/side-pane.component.js +0 -76
- package/esm2015/lib/controls/skeleton-loader/skeleton-loader.component.js +0 -29
- package/esm2015/lib/controls/tabs/lib-tab-group.component.js +0 -60
- package/esm2015/lib/controls/tabs/lib-tab.component.js +0 -57
- package/esm2015/lib/controls/toaster/toaster-container.component.js +0 -31
- package/esm2015/lib/controls/toaster/toaster.component.js +0 -34
- package/esm2015/lib/controls/toggle/toggle.component.js +0 -68
- package/esm2015/lib/controls/user-profile-menu/user-profile-menu.component.js +0 -75
- package/esm2015/lib/helpers/base-list.component.js +0 -182
- package/esm2015/lib/icons.js +0 -32
- package/esm2015/lib/layouts/shell/shell-footer/shell-footer.component.js +0 -22
- package/esm2015/lib/layouts/shell/shell-header/shell-header.component.js +0 -136
- package/esm2015/lib/layouts/shell/shell-layout/shell-layout.component.js +0 -108
- package/esm2015/lib/layouts/shell/shell-sidebar/shell-sidebar.component.js +0 -50
- package/esm2015/lib/layouts/views/form-layout/form-layout.component.js +0 -85
- package/esm2015/lib/layouts/views/model-view-layout/model-view-layout.component.js +0 -53
- package/esm2015/lib/layouts/views/side-view-layout/side-view-layout.component.js +0 -101
- package/esm2015/lib/layouts/views/view-layout/view-layout.component.js +0 -110
- package/esm2015/lib/ng-components.module.js +0 -242
- package/esm2015/lib/pages/auth/auth-callback/auth-callback.component.js +0 -34
- package/esm2015/lib/pages/auth/logged-out/logged-out.component.js +0 -32
- package/esm2015/lib/pages/http-status/error/error.component.js +0 -20
- package/esm2015/lib/pages/http-status/page-not-found/page-not-found.component.js +0 -18
- package/esm2015/lib/pages/http-status/unauthorized/unauthorized.component.js +0 -17
- package/esm2015/lib/services/component-loader/component-loader.class.js +0 -192
- package/esm2015/lib/services/modal-service/modal-backdrop-component.js +0 -44
- package/esm2015/lib/services/modal-service/modal-container-component.js +0 -128
- package/esm2015/lib/services/modal-service/modal-service.js +0 -220
- package/esm2015/lib/tokens.js +0 -6
- package/esm2015/public-api.js +0 -55
- package/fesm2015/indice-ng-components.js +0 -3600
- package/fesm2015/indice-ng-components.js.map +0 -1
|
@@ -9,13 +9,13 @@ export class AddressPipe {
|
|
|
9
9
|
return `${value.street || ''}${value.streetNumber ? ' ' + value.streetNumber : ''}${value.city ? ', ' + value.city : ''}${+value.postalCode ? ', ' + +value.postalCode : ''}`;
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
|
-
AddressPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
13
|
-
AddressPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
12
|
+
AddressPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AddressPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
13
|
+
AddressPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: AddressPipe, name: "address", pure: false });
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AddressPipe, decorators: [{
|
|
15
15
|
type: Pipe,
|
|
16
16
|
args: [{
|
|
17
17
|
name: 'address',
|
|
18
18
|
pure: false
|
|
19
19
|
}]
|
|
20
20
|
}] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzcy5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL3BpcGVzL2FkZHJlc3MucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFPcEQsTUFBTSxPQUFPLFdBQVc7SUFFcEIsU0FBUyxDQUFDLEtBQTJCO1FBQ2pDLElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxJQUFJLElBQUksRUFBRSxFQUFFO1lBQ25DLE9BQU8sRUFBRSxDQUFDO1NBQ2I7UUFDRCxpREFBaUQ7UUFDakQsT0FBTyxHQUFHLEtBQUssQ0FBQyxNQUFNLElBQUksRUFBRSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyxVQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxVQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQ3BMLENBQUM7O3dHQVJRLFdBQVc7c0dBQVgsV0FBVzsyRkFBWCxXQUFXO2tCQUp2QixJQUFJO21CQUFDO29CQUNGLElBQUksRUFBRSxTQUFTO29CQUNmLElBQUksRUFBRSxLQUFLO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUFkZHJlc3MgfSBmcm9tICcuLi90eXBlcyc7XG5cbkBQaXBlKHtcbiAgICBuYW1lOiAnYWRkcmVzcycsXG4gICAgcHVyZTogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgQWRkcmVzc1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICAgIHRyYW5zZm9ybSh2YWx1ZTogSUFkZHJlc3MgfCB1bmRlZmluZWQpOiBzdHJpbmcge1xuICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCBudWxsIHx8ICcnKSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cbiAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLW5vbi1udWxsLWFzc2VydGlvblxuICAgICAgICByZXR1cm4gYCR7dmFsdWUuc3RyZWV0IHx8ICcnfSR7dmFsdWUuc3RyZWV0TnVtYmVyID8gJyAnICsgdmFsdWUuc3RyZWV0TnVtYmVyIDogJyd9JHt2YWx1ZS5jaXR5ID8gJywgJyArIHZhbHVlLmNpdHkgOiAnJ30keyt2YWx1ZS5wb3N0YWxDb2RlISA/ICcsICcgKyArdmFsdWUucG9zdGFsQ29kZSEgOiAnJ31gO1xuICAgIH1cbn1cbiJdfQ==
|
package/{esm2015/lib/pipes/duration-format.pipe.js → esm2020/lib/pipes/duration-format.pipe.mjs}
RENAMED
|
@@ -52,13 +52,13 @@ export class DurationFormatPipe {
|
|
|
52
52
|
return undefined;
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
|
-
DurationFormatPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
56
|
-
DurationFormatPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
55
|
+
DurationFormatPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DurationFormatPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
56
|
+
DurationFormatPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: DurationFormatPipe, name: "durationFormat", pure: false });
|
|
57
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: DurationFormatPipe, decorators: [{
|
|
58
58
|
type: Pipe,
|
|
59
59
|
args: [{
|
|
60
60
|
name: 'durationFormat',
|
|
61
61
|
pure: false
|
|
62
62
|
}]
|
|
63
63
|
}] });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVyYXRpb24tZm9ybWF0LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvcGlwZXMvZHVyYXRpb24tZm9ybWF0LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBTXBELE1BQU0sT0FBTyxrQkFBa0I7SUFFN0IsU0FBUyxDQUFDLEtBQVUsRUFBRSxJQUFTLEVBQUUsSUFBUztRQUV4QyxJQUFJLElBQVMsQ0FBQztRQUNkLElBQUksT0FBWSxDQUFDO1FBQ2pCLElBQUksT0FBWSxDQUFDO1FBQ2pCLElBQUksS0FBVSxDQUFDO1FBRWYsSUFBSSxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxRQUFRLEVBQUU7WUFDdEMsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDMUMsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDbkQsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMvQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1NBRXpEO2FBQU0sSUFBSSxJQUFJLEtBQUssR0FBRyxJQUFJLElBQUksS0FBSyxRQUFRLEVBQUU7WUFDNUMsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEdBQUcs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QUFDO1FBQ25ELENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsR0FBRyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO1FBRW5ELFFBQVEsSUFBSSxFQUFFO1lBQ1osS0FBSyxRQUFRO2dCQUNYLE9BQU8sR0FBRyxLQUFLLElBQUksT0FBTyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBRTFDLEtBQUssVUFBVTtnQkFDYixPQUFPLEdBQUcsSUFBSSxNQUFNLEtBQUssTUFBTSxPQUFPLE1BQU0sT0FBTyxHQUFHLENBQUM7WUFFekQsS0FBSyxjQUFjO2dCQUNqQixPQUFPLEdBQUcsSUFBSSxVQUFVLEtBQUssV0FBVyxPQUFPLGFBQWEsT0FBTyxVQUFVLENBQUM7U0FDakY7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDOzsrR0ExRFUsa0JBQWtCOzZHQUFsQixrQkFBa0I7MkZBQWxCLGtCQUFrQjtrQkFKOUIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsZ0JBQWdCO29CQUN0QixJQUFJLEVBQUUsS0FBSztpQkFDWiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICBuYW1lOiAnZHVyYXRpb25Gb3JtYXQnLFxuICBwdXJlOiBmYWxzZVxufSlcbmV4cG9ydCBjbGFzcyBEdXJhdGlvbkZvcm1hdFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICB0cmFuc2Zvcm0odmFsdWU6IGFueSwgYXJnMTogYW55LCBhcmcyOiBhbnkpOiBzdHJpbmcge1xuXG4gICAgbGV0IGRheXM6IGFueTtcbiAgICBsZXQgc2Vjb25kczogYW55O1xuICAgIGxldCBtaW51dGVzOiBhbnk7XG4gICAgbGV0IGhvdXJzOiBhbnk7XG5cbiAgICBpZiAoYXJnMSA9PT0gJ21zJyAmJiBhcmcyID09PSAnaGhtbXNzJykge1xuICAgICAgc2Vjb25kcyA9IE1hdGguZmxvb3IoKHZhbHVlIC8gMTAwMCkgJSA2MCk7XG4gICAgICBtaW51dGVzID0gTWF0aC5mbG9vcigoKHZhbHVlIC8gKDEwMDAgKiA2MCkpICUgNjApKTtcbiAgICAgIGhvdXJzID0gTWF0aC5mbG9vcigodmFsdWUgLyAoMTAwMCAqIDYwICogNjApKSk7XG4gICAgICByZXR1cm4gdGhpcy5mb3JtYXQoYXJnMiwgc2Vjb25kcywgbWludXRlcywgaG91cnMsIGRheXMpO1xuXG4gICAgfSBlbHNlIGlmIChhcmcxID09PSAncycgJiYgYXJnMiA9PT0gJ2hobW1zcycpIHtcbiAgICAgIHNlY29uZHMgPSBNYXRoLmZsb29yKCh2YWx1ZSAlIDYwKSk7XG4gICAgICBtaW51dGVzID0gTWF0aC5mbG9vcigoKHZhbHVlIC8gNjApICUgNjApKTtcbiAgICAgIGhvdXJzID0gTWF0aC5mbG9vcigoKHZhbHVlIC8gNjApIC8gNjApKTtcbiAgICAgIHJldHVybiB0aGlzLmZvcm1hdChhcmcyLCBzZWNvbmRzLCBtaW51dGVzLCBob3VycywgZGF5cyk7XG5cbiAgICB9IGVsc2UgaWYgKGFyZzEgPT09ICdtcycgJiYgKGFyZzIgPT09ICdkZGhobW1zcycgfHwgYXJnMiA9PT0gJ2RkaGhtbXNzTG9uZycpKSB7XG4gICAgICBzZWNvbmRzID0gTWF0aC5mbG9vcigoKHZhbHVlIC8gMTAwMCkgJSA2MCkpO1xuICAgICAgbWludXRlcyA9IE1hdGguZmxvb3IoKHZhbHVlIC8gKDEwMDAgKiA2MCkgJSA2MCkpO1xuICAgICAgaG91cnMgPSBNYXRoLmZsb29yKCh2YWx1ZSAvICgxMDAwICogNjAgKiA2MCkgJSAyNCkpO1xuICAgICAgZGF5cyA9IE1hdGguZmxvb3IoKHZhbHVlIC8gKDEwMDAgKiA2MCAqIDYwICogMjQpKSk7XG4gICAgICByZXR1cm4gdGhpcy5mb3JtYXQoYXJnMiwgc2Vjb25kcywgbWludXRlcywgaG91cnMsIGRheXMpO1xuXG4gICAgfSBlbHNlIGlmIChhcmcxID09PSAncycgJiYgKGFyZzIgPT09ICdkZGhobW1zcycgfHwgYXJnMiA9PT0gJ2RkaGhtbXNzTG9uZycpKSB7XG4gICAgICBzZWNvbmRzID0gTWF0aC5mbG9vcih2YWx1ZSAlIDYwKTtcbiAgICAgIG1pbnV0ZXMgPSBNYXRoLmZsb29yKCgodmFsdWUgLyA2MCkgJSA2MCkpO1xuICAgICAgaG91cnMgPSBNYXRoLmZsb29yKCgodmFsdWUgLyA2MCkgLyA2MCkgJSAyNCk7XG4gICAgICBkYXlzID0gTWF0aC5mbG9vcigoKCh2YWx1ZSAvIDYwKSAvIDYwKSAvIDI0KSk7XG4gICAgICByZXR1cm4gdGhpcy5mb3JtYXQoYXJnMiwgc2Vjb25kcywgbWludXRlcywgaG91cnMsIGRheXMpO1xuXG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0KGFyZzI6IHN0cmluZywgc2Vjb25kczogYW55LCBtaW51dGVzOiBhbnksIGhvdXJzOiBhbnksIGRheXM6IGFueSk6IGFueSB7XG4gICAgKGRheXMgPCAxMCkgPyBkYXlzID0gJzAnICsgZGF5cyA6IGRheXM7XG4gICAgKGhvdXJzIDwgMTApID8gaG91cnMgPSAnMCcgKyBob3VycyA6IGhvdXJzO1xuICAgIChtaW51dGVzIDwgMTApID8gbWludXRlcyA9ICcwJyArIG1pbnV0ZXMgOiBtaW51dGVzO1xuICAgIChzZWNvbmRzIDwgMTApID8gc2Vjb25kcyA9ICcwJyArIHNlY29uZHMgOiBzZWNvbmRzO1xuXG4gICAgc3dpdGNoIChhcmcyKSB7XG4gICAgICBjYXNlICdoaG1tc3MnOlxuICAgICAgICByZXR1cm4gYCR7aG91cnN9OiR7bWludXRlc306JHtzZWNvbmRzfWA7XG5cbiAgICAgIGNhc2UgJ2RkaGhtbXNzJzpcbiAgICAgICAgcmV0dXJuIGAke2RheXN9ZCwgJHtob3Vyc31oLCAke21pbnV0ZXN9bSwgJHtzZWNvbmRzfXNgO1xuXG4gICAgICBjYXNlICdkZGhobW1zc0xvbmcnOlxuICAgICAgICByZXR1cm4gYCR7ZGF5c30gZGF5cywgJHtob3Vyc30gaG91cnMsICR7bWludXRlc30gbWludXRlcywgJHtzZWNvbmRzfSBzZWNvbmRzYDtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG59XG4iXX0=
|
|
File without changes
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import { ElementRef, TemplateRef, Injector, } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import { ContentRef } from './content-ref.class';
|
|
4
|
+
/**
|
|
5
|
+
* Provides ways of loading and handling dynamic content.
|
|
6
|
+
*
|
|
7
|
+
* @remarks
|
|
8
|
+
* Do NOT use this directly, create an instance through {@link ComponentLoaderFactory}
|
|
9
|
+
* You can use this loader in two ways:
|
|
10
|
+
* - Attaches a component to `ViewContainerRef`.
|
|
11
|
+
* - Attaches a component to `ViewContainerRef`. The attached component has a `<ng-content>` tag inside its view. The {@link ComponentLoaderOptions.content} will be drawn inside this tag.
|
|
12
|
+
*
|
|
13
|
+
* @internal
|
|
14
|
+
*/
|
|
15
|
+
export class ComponentLoader {
|
|
16
|
+
constructor(vcr, cfr, applicationRef, injector) {
|
|
17
|
+
this.vcr = vcr;
|
|
18
|
+
this.cfr = cfr;
|
|
19
|
+
this.applicationRef = applicationRef;
|
|
20
|
+
this.injector = injector;
|
|
21
|
+
/**
|
|
22
|
+
* Before content is shown event.
|
|
23
|
+
*/
|
|
24
|
+
this.onBeforeShow = new Subject();
|
|
25
|
+
/**
|
|
26
|
+
* After show content event.
|
|
27
|
+
* @returns The id of newly created component ref.
|
|
28
|
+
*/
|
|
29
|
+
this.onShown = new Subject();
|
|
30
|
+
/**
|
|
31
|
+
* Before content is hidden event.
|
|
32
|
+
* @returns The instance of attached component;
|
|
33
|
+
*/
|
|
34
|
+
this.onBeforeHide = new Subject();
|
|
35
|
+
/**
|
|
36
|
+
* After content is hidden event.
|
|
37
|
+
* @returns The id of destroyed component ref.
|
|
38
|
+
*/
|
|
39
|
+
this.onHidden = new Subject();
|
|
40
|
+
this.providers = [];
|
|
41
|
+
this.containerDefaultSelector = 'body';
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Attaches component.
|
|
45
|
+
* @param componentType - The type component to attach.
|
|
46
|
+
* @returns Current instance of {@link ComponentLoader}
|
|
47
|
+
*/
|
|
48
|
+
attach(componentType) {
|
|
49
|
+
this.componentFactory = this.cfr.resolveComponentFactory(componentType);
|
|
50
|
+
return this;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Body will be used in nothing is provided.
|
|
54
|
+
* @param container - The element in which dynamic content will be drawn inside to. For string case a query to the dom will be executed to find the element.
|
|
55
|
+
* @returns Current instance of {@link ComponentLoader}
|
|
56
|
+
*/
|
|
57
|
+
to(container) {
|
|
58
|
+
this.container = container || this.container;
|
|
59
|
+
return this;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Adds provider to the providers array. These providers will be injected to the attached component.
|
|
63
|
+
*
|
|
64
|
+
* @see {@link https://angular.io/guide/glossary#di-token | Injection Token}
|
|
65
|
+
*
|
|
66
|
+
* @param provider - Provider to inject.
|
|
67
|
+
* @returns Current instance of {@link ComponentLoader}
|
|
68
|
+
*/
|
|
69
|
+
provide(provider) {
|
|
70
|
+
this.providers.push(provider);
|
|
71
|
+
return this;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Attaches attached component to dom and any dynamic content if provided.
|
|
75
|
+
* @remarks
|
|
76
|
+
* Also triggers the {@link ComponentLoader.onBeforeShow} and {@link ComponentLoader.onShown} events.
|
|
77
|
+
*
|
|
78
|
+
* @param options - {@link ComponentLoaderOptions}.
|
|
79
|
+
* @returns A reference to the created content.
|
|
80
|
+
*/
|
|
81
|
+
show(options = {}) {
|
|
82
|
+
if (this.componentRef) {
|
|
83
|
+
throw Error('Component is already shown');
|
|
84
|
+
}
|
|
85
|
+
if (!this.componentFactory) {
|
|
86
|
+
throw Error('You must attach a component');
|
|
87
|
+
}
|
|
88
|
+
this.onBeforeShow.next();
|
|
89
|
+
if (options.content) {
|
|
90
|
+
this.contentRef = this.getContentRef(options.content, options.context, options.initialState);
|
|
91
|
+
}
|
|
92
|
+
this.createComponentAndAttachToView(options);
|
|
93
|
+
this.appendContentToContainer();
|
|
94
|
+
this.markComponentsForCheck();
|
|
95
|
+
this.onShown.next(options.id);
|
|
96
|
+
return this.componentRef;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Removes attached component from dom.
|
|
100
|
+
* @remarks
|
|
101
|
+
* Also triggers the {@link ComponentLoader.onBeforeHide} and {@link ComponentLoader.onHidden} events.
|
|
102
|
+
*
|
|
103
|
+
* @param id - If provided it is returned through the {@link ComponentLoader.onHidden}.
|
|
104
|
+
* @returns Current instance of {@link ComponentLoader}
|
|
105
|
+
*/
|
|
106
|
+
hide(id, result) {
|
|
107
|
+
if (!this.componentRef) {
|
|
108
|
+
throw Error('No attached component found to hide');
|
|
109
|
+
}
|
|
110
|
+
this.onBeforeHide.next(this.componentRef.instance);
|
|
111
|
+
const componentEl = this.componentRef.location.nativeElement;
|
|
112
|
+
componentEl.parentNode.removeChild(componentEl);
|
|
113
|
+
if (this.contentRef?.componentRef) {
|
|
114
|
+
this.contentRef.componentRef.destroy();
|
|
115
|
+
}
|
|
116
|
+
if (this.vcr && this.contentRef?.viewRef) {
|
|
117
|
+
this.vcr.remove(this.vcr.indexOf(this.contentRef.viewRef));
|
|
118
|
+
}
|
|
119
|
+
if (this.contentRef?.viewRef) {
|
|
120
|
+
this.contentRef.viewRef.destroy();
|
|
121
|
+
}
|
|
122
|
+
this.contentRef = void 0;
|
|
123
|
+
this.componentRef = void 0;
|
|
124
|
+
this.onHidden.next(id ? { id, result } : null);
|
|
125
|
+
return this;
|
|
126
|
+
}
|
|
127
|
+
getInnerComponent() {
|
|
128
|
+
return this.innerComponent;
|
|
129
|
+
}
|
|
130
|
+
markComponentsForCheck() {
|
|
131
|
+
if (this.contentRef?.componentRef) {
|
|
132
|
+
this.innerComponent = this.contentRef.componentRef.instance;
|
|
133
|
+
this.contentRef.componentRef.changeDetectorRef.markForCheck();
|
|
134
|
+
this.contentRef.componentRef.changeDetectorRef.detectChanges();
|
|
135
|
+
}
|
|
136
|
+
this.componentRef.changeDetectorRef.markForCheck();
|
|
137
|
+
this.componentRef.changeDetectorRef.detectChanges();
|
|
138
|
+
}
|
|
139
|
+
createComponentAndAttachToView(options) {
|
|
140
|
+
const injector = Injector.create({
|
|
141
|
+
providers: this.providers,
|
|
142
|
+
parent: this.injector,
|
|
143
|
+
});
|
|
144
|
+
this.componentRef = this.componentFactory.create(injector, this.contentRef?.nodes);
|
|
145
|
+
this.applicationRef.attachView(this.componentRef.hostView);
|
|
146
|
+
this.instance = this.componentRef.instance;
|
|
147
|
+
Object.assign(this.componentRef.instance, options);
|
|
148
|
+
}
|
|
149
|
+
appendContentToContainer() {
|
|
150
|
+
if (this.container instanceof ElementRef) {
|
|
151
|
+
this.container.nativeElement.appendChild(this.componentRef?.location.nativeElement);
|
|
152
|
+
}
|
|
153
|
+
if (typeof this.container === 'string' && typeof document !== 'undefined') {
|
|
154
|
+
const selectedElement = document.querySelector(this.container) || document.querySelector(this.containerDefaultSelector);
|
|
155
|
+
if (!selectedElement) {
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
158
|
+
selectedElement.appendChild(this.componentRef?.location.nativeElement);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
getContentRef(content, context, initialState) {
|
|
162
|
+
//TemplateRef case
|
|
163
|
+
if (content instanceof TemplateRef) {
|
|
164
|
+
if (this.vcr) {
|
|
165
|
+
const viewRef = this.vcr.createEmbeddedView(content, context);
|
|
166
|
+
viewRef.markForCheck();
|
|
167
|
+
return new ContentRef([viewRef.rootNodes], viewRef);
|
|
168
|
+
}
|
|
169
|
+
const viewRef = content.createEmbeddedView({});
|
|
170
|
+
this.applicationRef.attachView(viewRef);
|
|
171
|
+
return new ContentRef([viewRef.rootNodes], viewRef);
|
|
172
|
+
}
|
|
173
|
+
//Component case
|
|
174
|
+
if (typeof content === 'function') {
|
|
175
|
+
const contentCf = this.cfr.resolveComponentFactory(content);
|
|
176
|
+
const injector = Injector.create({
|
|
177
|
+
providers: this.providers,
|
|
178
|
+
parent: this.injector,
|
|
179
|
+
});
|
|
180
|
+
const componentRef = contentCf.create(injector);
|
|
181
|
+
Object.assign(componentRef.instance, initialState);
|
|
182
|
+
this.applicationRef.attachView(componentRef.hostView);
|
|
183
|
+
return new ContentRef([[componentRef.location.nativeElement]], componentRef.hostView, componentRef);
|
|
184
|
+
}
|
|
185
|
+
throw Error('Unsupported content type');
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LWxvYWRlci5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9zZXJ2aWNlcy9jb21wb25lbnQtbG9hZGVyL2NvbXBvbmVudC1sb2FkZXIuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUtMLFVBQVUsRUFFVixXQUFXLEVBR1gsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0IsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWpEOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFNLE9BQU8sZUFBZTtJQTZCMUIsWUFDVSxHQUFpQyxFQUNqQyxHQUE2QixFQUM3QixjQUE4QixFQUM5QixRQUFrQjtRQUhsQixRQUFHLEdBQUgsR0FBRyxDQUE4QjtRQUNqQyxRQUFHLEdBQUgsR0FBRyxDQUEwQjtRQUM3QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQWhDNUI7O1dBRUc7UUFDSCxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFDN0I7OztXQUdHO1FBQ0gsWUFBTyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFDeEI7OztXQUdHO1FBQ0gsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQzdCOzs7V0FHRztRQUNILGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBTWpCLGNBQVMsR0FBcUIsRUFBRSxDQUFDO1FBRWpDLDZCQUF3QixHQUFHLE1BQU0sQ0FBQztJQU92QyxDQUFDO0lBRUo7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxhQUFzQjtRQUNsQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FB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QUFDO1NBQ3JEO1FBRUQsZ0JBQWdCO1FBQ2hCLElBQUksT0FBTyxPQUFPLEtBQUssVUFBVSxFQUFFO1lBQ2pDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDNUQsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztnQkFDL0IsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO2dCQUN6QixNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVE7YUFDdEIsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxZQUFZLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNoRCxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDbkQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3RELE9BQU8sSUFBSSxVQUFVLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO1NBQ3JHO1FBRUQsTUFBTSxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQztJQUMxQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gIFZpZXdDb250YWluZXJSZWYsXG4gIENvbXBvbmVudEZhY3RvcnksXG4gIFR5cGUsXG4gIEVsZW1lbnRSZWYsXG4gIFN0YXRpY1Byb3ZpZGVyLFxuICBUZW1wbGF0ZVJlZixcbiAgQ29tcG9uZW50UmVmLFxuICBBcHBsaWNhdGlvblJlZixcbiAgSW5qZWN0b3IsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29tcG9uZW50TG9hZGVyT3B0aW9ucyB9IGZyb20gJy4vY29tcG9uZW50LWxvYWRlci1vcHRpb25zLmNsYXNzJztcbmltcG9ydCB7IENvbnRlbnRSZWYgfSBmcm9tICcuL2NvbnRlbnQtcmVmLmNsYXNzJztcblxuLyoqXG4gKiBQcm92aWRlcyB3YXlzIG9mIGxvYWRpbmcgYW5kIGhhbmRsaW5nIGR5bmFtaWMgY29udGVudC5cbiAqXG4gKiBAcmVtYXJrc1xuICogRG8gTk9UIHVzZSB0aGlzIGRpcmVjdGx5LCBjcmVhdGUgYW4gaW5zdGFuY2UgdGhyb3VnaCB7QGxpbmsgQ29tcG9uZW50TG9hZGVyRmFjdG9yeX1cbiAqIFlvdSBjYW4gdXNlIHRoaXMgbG9hZGVyIGluIHR3byB3YXlzOlxuICogLSBBdHRhY2hlcyBhIGNvbXBvbmVudCB0byBgVmlld0NvbnRhaW5lclJlZmAuXG4gKiAtIEF0dGFjaGVzIGEgY29tcG9uZW50IHRvIGBWaWV3Q29udGFpbmVyUmVmYC4gVGhlIGF0dGFjaGVkIGNvbXBvbmVudCBoYXMgYSBgPG5nLWNvbnRlbnQ+YCB0YWcgaW5zaWRlIGl0cyB2aWV3LiBUaGUge0BsaW5rIENvbXBvbmVudExvYWRlck9wdGlvbnMuY29udGVudH0gd2lsbCBiZSBkcmF3biBpbnNpZGUgdGhpcyB0YWcuXG4gKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDb21wb25lbnRMb2FkZXI8VD4ge1xuICAvKipcbiAgICogQmVmb3JlIGNvbnRlbnQgaXMgc2hvd24gZXZlbnQuXG4gICAqL1xuICBvbkJlZm9yZVNob3cgPSBuZXcgU3ViamVjdCgpO1xuICAvKipcbiAgICogQWZ0ZXIgc2hvdyBjb250ZW50IGV2ZW50LlxuICAgKiBAcmV0dXJucyBUaGUgaWQgb2YgbmV3bHkgY3JlYXRlZCBjb21wb25lbnQgcmVmLlxuICAgKi9cbiAgb25TaG93biA9IG5ldyBTdWJqZWN0KCk7XG4gIC8qKlxuICAgKiBCZWZvcmUgY29udGVudCBpcyBoaWRkZW4gZXZlbnQuXG4gICAqIEByZXR1cm5zIFRoZSBpbnN0YW5jZSBvZiBhdHRhY2hlZCBjb21wb25lbnQ7XG4gICAqL1xuICBvbkJlZm9yZUhpZGUgPSBuZXcgU3ViamVjdCgpO1xuICAvKipcbiAgICogQWZ0ZXIgY29udGVudCBpcyBoaWRkZW4gZXZlbnQuXG4gICAqIEByZXR1cm5zIFRoZSBpZCBvZiBkZXN0cm95ZWQgY29tcG9uZW50IHJlZi5cbiAgICovXG4gIG9uSGlkZGVuID0gbmV3IFN1YmplY3QoKTtcblxuICBwdWJsaWMgaW5zdGFuY2U/OiBUO1xuICBwdWJsaWMgY29tcG9uZW50UmVmPzogQ29tcG9uZW50UmVmPFQ+O1xuICBwcml2YXRlIGNvbXBvbmVudEZhY3Rvcnk/OiBDb21wb25lbnRGYWN0b3J5PFQ+O1xuICBwcml2YXRlIGNvbnRhaW5lcjogc3RyaW5nIHwgRWxlbWVudFJlZiB8IGFueTtcbiAgcHJpdmF0ZSBwcm92aWRlcnM6IFN0YXRpY1Byb3ZpZGVyW10gPSBbXTtcbiAgcHJpdmF0ZSBjb250ZW50UmVmPzogQ29udGVudFJlZjtcbiAgcHJpdmF0ZSBjb250YWluZXJEZWZhdWx0U2VsZWN0b3IgPSAnYm9keSc7XG4gIHByaXZhdGUgaW5uZXJDb21wb25lbnQ/OiBDb21wb25lbnRSZWY8VD47XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdmNyOiBWaWV3Q29udGFpbmVyUmVmIHwgdW5kZWZpbmVkLFxuICAgIHByaXZhdGUgY2ZyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgcHJpdmF0ZSBhcHBsaWNhdGlvblJlZjogQXBwbGljYXRpb25SZWYsXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3JcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBBdHRhY2hlcyBjb21wb25lbnQuXG4gICAqIEBwYXJhbSBjb21wb25lbnRUeXBlIC0gVGhlIHR5cGUgY29tcG9uZW50IHRvIGF0dGFjaC5cbiAgICogQHJldHVybnMgQ3VycmVudCBpbnN0YW5jZSBvZiB7QGxpbmsgQ29tcG9uZW50TG9hZGVyfVxuICAgKi9cbiAgcHVibGljIGF0dGFjaChjb21wb25lbnRUeXBlOiBUeXBlPFQ+KTogQ29tcG9uZW50TG9hZGVyPFQ+IHtcbiAgICB0aGlzLmNvbXBvbmVudEZhY3RvcnkgPSB0aGlzLmNmci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeTxUPihjb21wb25lbnRUeXBlKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBCb2R5IHdpbGwgYmUgdXNlZCBpbiBub3RoaW5nIGlzIHByb3ZpZGVkLlxuICAgKiBAcGFyYW0gY29udGFpbmVyIC0gVGhlIGVsZW1lbnQgaW4gd2hpY2ggZHluYW1pYyBjb250ZW50IHdpbGwgYmUgZHJhd24gaW5zaWRlIHRvLiBGb3Igc3RyaW5nIGNhc2UgYSBxdWVyeSB0byB0aGUgZG9tIHdpbGwgYmUgZXhlY3V0ZWQgdG8gZmluZCB0aGUgZWxlbWVudC5cbiAgICogQHJldHVybnMgQ3VycmVudCBpbnN0YW5jZSBvZiB7QGxpbmsgQ29tcG9uZW50TG9hZGVyfVxuICAgKi9cbiAgcHVibGljIHRvKGNvbnRhaW5lcj86IHN0cmluZyB8IEVsZW1lbnRSZWYpOiBDb21wb25lbnRMb2FkZXI8VD4ge1xuICAgIHRoaXMuY29udGFpbmVyID0gY29udGFpbmVyIHx8IHRoaXMuY29udGFpbmVyO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgcHJvdmlkZXIgdG8gdGhlIHByb3ZpZGVycyBhcnJheS4gVGhlc2UgcHJvdmlkZXJzIHdpbGwgYmUgaW5qZWN0ZWQgdG8gdGhlIGF0dGFjaGVkIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHNlZSB7QGxpbmsgaHR0cHM6Ly9hbmd1bGFyLmlvL2d1aWRlL2dsb3NzYXJ5I2RpLXRva2VuIHwgSW5qZWN0aW9uIFRva2VufVxuICAgKlxuICAgKiBAcGFyYW0gcHJvdmlkZXIgLSBQcm92aWRlciB0byBpbmplY3QuXG4gICAqIEByZXR1cm5zIEN1cnJlbnQgaW5zdGFuY2Ugb2Yge0BsaW5rIENvbXBvbmVudExvYWRlcn1cbiAgICovXG4gIHB1YmxpYyBwcm92aWRlKHByb3ZpZGVyOiBTdGF0aWNQcm92aWRlcik6IENvbXBvbmVudExvYWRlcjxUPiB7XG4gICAgdGhpcy5wcm92aWRlcnMucHVzaChwcm92aWRlcik7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQXR0YWNoZXMgYXR0YWNoZWQgY29tcG9uZW50IHRvIGRvbSBhbmQgYW55IGR5bmFtaWMgY29udGVudCBpZiBwcm92aWRlZC5cbiAgICogQHJlbWFya3NcbiAgICogQWxzbyB0cmlnZ2VycyB0aGUge0BsaW5rIENvbXBvbmVudExvYWRlci5vbkJlZm9yZVNob3d9IGFuZCB7QGxpbmsgQ29tcG9uZW50TG9hZGVyLm9uU2hvd259IGV2ZW50cy5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSB7QGxpbmsgQ29tcG9uZW50TG9hZGVyT3B0aW9uc30uXG4gICAqIEByZXR1cm5zIEEgcmVmZXJlbmNlIHRvIHRoZSBjcmVhdGVkIGNvbnRlbnQuXG4gICAqL1xuICBwdWJsaWMgc2hvdyhvcHRpb25zOiBDb21wb25lbnRMb2FkZXJPcHRpb25zID0ge30pOiBDb21wb25lbnRSZWY8VD4gfCB1bmRlZmluZWQge1xuICAgIGlmICh0aGlzLmNvbXBvbmVudFJlZikge1xuICAgICAgdGhyb3cgRXJyb3IoJ0NvbXBvbmVudCBpcyBhbHJlYWR5IHNob3duJyk7XG4gICAgfVxuICAgIGlmICghdGhpcy5jb21wb25lbnRGYWN0b3J5KSB7XG4gICAgICB0aHJvdyBFcnJvcignWW91IG11c3QgYXR0YWNoIGEgY29tcG9uZW50Jyk7XG4gICAgfVxuICAgIHRoaXMub25CZWZvcmVTaG93Lm5leHQoKTtcblxuICAgIGlmIChvcHRpb25zLmNvbnRlbnQpIHtcbiAgICAgIHRoaXMuY29udGVudFJlZiA9IHRoaXMuZ2V0Q29udGVudFJlZihvcHRpb25zLmNvbnRlbnQsIG9wdGlvbnMuY29udGV4dCwgb3B0aW9ucy5pbml0aWFsU3RhdGUpO1xuICAgIH1cbiAgICB0aGlzLmNyZWF0ZUNvbXBvbmVudEFuZEF0dGFjaFRvVmlldyhvcHRpb25zKTtcbiAgICB0aGlzLmFwcGVuZENvbnRlbnRUb0NvbnRhaW5lcigpO1xuICAgIHRoaXMubWFya0NvbXBvbmVudHNGb3JDaGVjaygpO1xuXG4gICAgdGhpcy5vblNob3duLm5leHQob3B0aW9ucy5pZCk7XG5cbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnRSZWY7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBhdHRhY2hlZCBjb21wb25lbnQgZnJvbSBkb20uXG4gICAqIEByZW1hcmtzXG4gICAqIEFsc28gdHJpZ2dlcnMgdGhlIHtAbGluayBDb21wb25lbnRMb2FkZXIub25CZWZvcmVIaWRlfSBhbmQge0BsaW5rIENvbXBvbmVudExvYWRlci5vbkhpZGRlbn0gZXZlbnRzLlxuICAgKlxuICAgKiBAcGFyYW0gaWQgLSBJZiBwcm92aWRlZCBpdCBpcyByZXR1cm5lZCB0aHJvdWdoIHRoZSB7QGxpbmsgQ29tcG9uZW50TG9hZGVyLm9uSGlkZGVufS5cbiAgICogQHJldHVybnMgQ3VycmVudCBpbnN0YW5jZSBvZiB7QGxpbmsgQ29tcG9uZW50TG9hZGVyfVxuICAgKi9cbiAgcHVibGljIGhpZGUoaWQ/OiBudW1iZXIgfCBzdHJpbmcsIHJlc3VsdD86IGFueSk6IENvbXBvbmVudExvYWRlcjxUPiB7XG4gICAgaWYgKCF0aGlzLmNvbXBvbmVudFJlZikge1xuICAgICAgdGhyb3cgRXJyb3IoJ05vIGF0dGFjaGVkIGNvbXBvbmVudCBmb3VuZCB0byBoaWRlJyk7XG4gICAgfVxuXG4gICAgdGhpcy5vbkJlZm9yZUhpZGUubmV4dCh0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZSk7XG5cbiAgICBjb25zdCBjb21wb25lbnRFbCA9IHRoaXMuY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29tcG9uZW50RWwucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChjb21wb25lbnRFbCk7XG4gICAgaWYgKHRoaXMuY29udGVudFJlZj8uY29tcG9uZW50UmVmKSB7XG4gICAgICB0aGlzLmNvbnRlbnRSZWYuY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudmNyICYmIHRoaXMuY29udGVudFJlZj8udmlld1JlZikge1xuICAgICAgdGhpcy52Y3IucmVtb3ZlKHRoaXMudmNyLmluZGV4T2YodGhpcy5jb250ZW50UmVmLnZpZXdSZWYpKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuY29udGVudFJlZj8udmlld1JlZikge1xuICAgICAgdGhpcy5jb250ZW50UmVmLnZpZXdSZWYuZGVzdHJveSgpO1xuICAgIH1cbiAgICB0aGlzLmNvbnRlbnRSZWYgPSB2b2lkIDA7XG4gICAgdGhpcy5jb21wb25lbnRSZWYgPSB2b2lkIDA7XG5cbiAgICB0aGlzLm9uSGlkZGVuLm5leHQoaWQgPyB7IGlkLCByZXN1bHQgfSA6IG51bGwpO1xuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBnZXRJbm5lckNvbXBvbmVudCgpOiBDb21wb25lbnRSZWY8VD4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmlubmVyQ29tcG9uZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBtYXJrQ29tcG9uZW50c0ZvckNoZWNrKCkge1xuICAgIGlmICh0aGlzLmNvbnRlbnRSZWY/LmNvbXBvbmVudFJlZikge1xuICAgICAgdGhpcy5pbm5lckNvbXBvbmVudCA9IHRoaXMuY29udGVudFJlZi5jb21wb25lbnRSZWYuaW5zdGFuY2U7XG4gICAgICB0aGlzLmNvbnRlbnRSZWYuY29tcG9uZW50UmVmLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgdGhpcy5jb250ZW50UmVmLmNvbXBvbmVudFJlZi5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICAgIHRoaXMuY29tcG9uZW50UmVmIS5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB0aGlzLmNvbXBvbmVudFJlZiEuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVDb21wb25lbnRBbmRBdHRhY2hUb1ZpZXcob3B0aW9uczogQ29tcG9uZW50TG9hZGVyT3B0aW9ucykge1xuICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHByb3ZpZGVyczogdGhpcy5wcm92aWRlcnMsXG4gICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXG4gICAgfSk7XG4gICAgdGhpcy5jb21wb25lbnRSZWYgPSB0aGlzLmNvbXBvbmVudEZhY3RvcnkhLmNyZWF0ZShpbmplY3RvciwgdGhpcy5jb250ZW50UmVmPy5ub2Rlcyk7XG4gICAgdGhpcy5hcHBsaWNhdGlvblJlZi5hdHRhY2hWaWV3KHRoaXMuY29tcG9uZW50UmVmLmhvc3RWaWV3KTtcbiAgICB0aGlzLmluc3RhbmNlID0gdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2U7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZSwgb3B0aW9ucyk7XG4gIH1cblxuICBwcml2YXRlIGFwcGVuZENvbnRlbnRUb0NvbnRhaW5lcigpIHtcbiAgICBpZiAodGhpcy5jb250YWluZXIgaW5zdGFuY2VvZiBFbGVtZW50UmVmKSB7XG4gICAgICB0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuY29tcG9uZW50UmVmPy5sb2NhdGlvbi5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiB0aGlzLmNvbnRhaW5lciA9PT0gJ3N0cmluZycgJiYgdHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgY29uc3Qgc2VsZWN0ZWRFbGVtZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0aGlzLmNvbnRhaW5lcikgfHwgZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0aGlzLmNvbnRhaW5lckRlZmF1bHRTZWxlY3Rvcik7XG4gICAgICBpZiAoIXNlbGVjdGVkRWxlbWVudCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBzZWxlY3RlZEVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5jb21wb25lbnRSZWY/LmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29udGVudFJlZihjb250ZW50Pzogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PiwgY29udGV4dD86IGFueSwgaW5pdGlhbFN0YXRlPzogYW55KTogQ29udGVudFJlZiB7XG4gICAgLy9UZW1wbGF0ZVJlZiBjYXNlXG4gICAgaWYgKGNvbnRlbnQgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZikge1xuICAgICAgaWYgKHRoaXMudmNyKSB7XG4gICAgICAgIGNvbnN0IHZpZXdSZWYgPSB0aGlzLnZjci5jcmVhdGVFbWJlZGRlZFZpZXc8VGVtcGxhdGVSZWY8VD4+KGNvbnRlbnQsIGNvbnRleHQpO1xuICAgICAgICB2aWV3UmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICByZXR1cm4gbmV3IENvbnRlbnRSZWYoW3ZpZXdSZWYucm9vdE5vZGVzXSwgdmlld1JlZik7XG4gICAgICB9XG4gICAgICBjb25zdCB2aWV3UmVmID0gY29udGVudC5jcmVhdGVFbWJlZGRlZFZpZXcoe30pO1xuICAgICAgdGhpcy5hcHBsaWNhdGlvblJlZi5hdHRhY2hWaWV3KHZpZXdSZWYpO1xuICAgICAgcmV0dXJuIG5ldyBDb250ZW50UmVmKFt2aWV3UmVmLnJvb3ROb2Rlc10sIHZpZXdSZWYpO1xuICAgIH1cblxuICAgIC8vQ29tcG9uZW50IGNhc2VcbiAgICBpZiAodHlwZW9mIGNvbnRlbnQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNvbnN0IGNvbnRlbnRDZiA9IHRoaXMuY2ZyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGNvbnRlbnQpO1xuICAgICAgY29uc3QgaW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgICBwcm92aWRlcnM6IHRoaXMucHJvdmlkZXJzLFxuICAgICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXG4gICAgICB9KTtcbiAgICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IGNvbnRlbnRDZi5jcmVhdGUoaW5qZWN0b3IpO1xuICAgICAgT2JqZWN0LmFzc2lnbihjb21wb25lbnRSZWYuaW5zdGFuY2UsIGluaXRpYWxTdGF0ZSk7XG4gICAgICB0aGlzLmFwcGxpY2F0aW9uUmVmLmF0dGFjaFZpZXcoY29tcG9uZW50UmVmLmhvc3RWaWV3KTtcbiAgICAgIHJldHVybiBuZXcgQ29udGVudFJlZihbW2NvbXBvbmVudFJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50XV0sIGNvbXBvbmVudFJlZi5ob3N0VmlldywgY29tcG9uZW50UmVmKTtcbiAgICB9XG5cbiAgICB0aHJvdyBFcnJvcignVW5zdXBwb3J0ZWQgY29udGVudCB0eXBlJyk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -23,10 +23,10 @@ export class ComponentLoaderFactory {
|
|
|
23
23
|
return new ComponentLoader(viewContainerRef, this.componentFactoryResolver, this.applicationRef, this.injector);
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
|
-
ComponentLoaderFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
27
|
-
ComponentLoaderFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
26
|
+
ComponentLoaderFactory.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ComponentLoaderFactory, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.Injector }, { token: i0.ApplicationRef }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
27
|
+
ComponentLoaderFactory.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ComponentLoaderFactory, providedIn: 'root' });
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ComponentLoaderFactory, decorators: [{
|
|
29
29
|
type: Injectable,
|
|
30
30
|
args: [{ providedIn: 'root' }]
|
|
31
31
|
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.Injector }, { type: i0.ApplicationRef }]; } });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LWxvYWRlci5mYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL2NvbXBvbmVudC1sb2FkZXIvY29tcG9uZW50LWxvYWRlci5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBNEMsVUFBVSxFQUE4QixNQUFNLGVBQWUsQ0FBQztBQUNqSCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBRTNEOzs7O0dBSUc7QUFFSCxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLFlBQ1Usd0JBQWtELEVBQ2xELFFBQWtCLEVBQ2xCLGNBQThCO1FBRjlCLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7SUFDckMsQ0FBQztJQUVKOzs7Ozs7T0FNRztJQUNILFlBQVksQ0FBSSxnQkFBbUM7UUFDakQsT0FBTyxJQUFJLGVBQWUsQ0FBSSxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsd0JBQXdCLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDckgsQ0FBQzs7bUhBaEJVLHNCQUFzQjt1SEFBdEIsc0JBQXNCLGNBRFQsTUFBTTsyRkFDbkIsc0JBQXNCO2tCQURsQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFwcGxpY2F0aW9uUmVmLCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIEluamVjdGFibGUsIEluamVjdG9yLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnRMb2FkZXIgfSBmcm9tICcuL2NvbXBvbmVudC1sb2FkZXIuY2xhc3MnO1xuXG4vKipcbiAqIFVzZSB0byBjcmVhdGUgaW5zdGFuY2VzIG9mIHtAbGluayBDb21wb25lbnRMb2FkZXJ9LlxuICpcbiAqIEBwdWJsaWNcbiAqL1xuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBDb21wb25lbnRMb2FkZXJGYWN0b3J5IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIGFwcGxpY2F0aW9uUmVmOiBBcHBsaWNhdGlvblJlZlxuICApIHt9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYSBuZXcgaW5zdGFuY2Ugb2Yge0BsaW5rIENvbXBvbmVudExvYWRlcn1cbiAgICogQHBhcmFtIHZpZXdDb250YWluZXJSZWYgLSBUaGUgdmlldyBjb250YWluZXIgdGhlIGR5bmFtaWMgY29udGVudCB3aWxsIGJlIGF0dGFjaGVkIHRvLlxuICAgKiBAcmV0dXJucyBBIG5ldyBpbnN0YW5jZSBvZiB7QGxpbmsgQ29tcG9uZW50TG9hZGVyfS5cbiAgICpcbiAgICogQHB1YmxpY1xuICAgKi9cbiAgY3JlYXRlTG9hZGVyPFQ+KHZpZXdDb250YWluZXJSZWY/OiBWaWV3Q29udGFpbmVyUmVmKTogQ29tcG9uZW50TG9hZGVyPFQ+IHtcbiAgICByZXR1cm4gbmV3IENvbXBvbmVudExvYWRlcjxUPih2aWV3Q29udGFpbmVyUmVmLCB0aGlzLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgdGhpcy5hcHBsaWNhdGlvblJlZiwgdGhpcy5pbmplY3Rvcik7XG4gIH1cbn1cbiJdfQ==
|
|
File without changes
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Component, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { animationTime, cssClassNames } from './modal-styles.class';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Background layer for modals.
|
|
6
|
+
* Override class name to theme it.
|
|
7
|
+
* @see {@link cssClassNames}
|
|
8
|
+
* @internal
|
|
9
|
+
*/
|
|
10
|
+
export class ModalBackdropComponent {
|
|
11
|
+
constructor(element, renderer) {
|
|
12
|
+
this.element = element;
|
|
13
|
+
this.renderer = renderer;
|
|
14
|
+
this.animationsEnabled = false;
|
|
15
|
+
}
|
|
16
|
+
ngOnInit() {
|
|
17
|
+
if (this.animationsEnabled) {
|
|
18
|
+
this.renderer.addClass(this.element.nativeElement, cssClassNames.fade);
|
|
19
|
+
this.reflow(this.element.nativeElement);
|
|
20
|
+
}
|
|
21
|
+
this.renderer.addClass(this.element.nativeElement, cssClassNames.show);
|
|
22
|
+
}
|
|
23
|
+
hide() {
|
|
24
|
+
this.renderer.removeClass(this.element.nativeElement, cssClassNames.show);
|
|
25
|
+
setTimeout(() => this.backdropLoader?.hide(), this.animationsEnabled ? animationTime.backdrop : 0);
|
|
26
|
+
}
|
|
27
|
+
reflow(element) {
|
|
28
|
+
((bs) => bs)(element.offsetHeight);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
ModalBackdropComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ModalBackdropComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
32
|
+
ModalBackdropComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: ModalBackdropComponent, selector: "lib-modal-backdrop", host: { classAttribute: "modal-backdrop" }, ngImport: i0, template: '', isInline: true, encapsulation: i0.ViewEncapsulation.None });
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ModalBackdropComponent, decorators: [{
|
|
34
|
+
type: Component,
|
|
35
|
+
args: [{
|
|
36
|
+
selector: 'lib-modal-backdrop',
|
|
37
|
+
encapsulation: ViewEncapsulation.None,
|
|
38
|
+
template: '',
|
|
39
|
+
host: {
|
|
40
|
+
class: cssClassNames.backdrop,
|
|
41
|
+
},
|
|
42
|
+
}]
|
|
43
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; } });
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtYmFja2Ryb3AtY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL21vZGFsLXNlcnZpY2UvbW9kYWwtYmFja2Ryb3AtY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWlDLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVGLE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBRXBFOzs7OztHQUtHO0FBU0gsTUFBTSxPQUFPLHNCQUFzQjtJQUdqQyxZQUFvQixPQUFtQixFQUFVLFFBQW1CO1FBQWhELFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBRjVELHNCQUFpQixHQUFHLEtBQUssQ0FBQztJQUVxQyxDQUFDO0lBRXhFLFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdkUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQ3pDO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFTSxJQUFJO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksRUFBRSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckcsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFZO1FBQ2pCLENBQUMsQ0FBQyxFQUFPLEVBQVEsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNoRCxDQUFDOzttSEFwQlUsc0JBQXNCO3VHQUF0QixzQkFBc0Isc0dBTHZCLEVBQUU7MkZBS0Qsc0JBQXNCO2tCQVJsQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxRQUFRLEVBQUUsRUFBRTtvQkFDWixJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLGFBQWEsQ0FBQyxRQUFRO3FCQUM5QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgT25Jbml0LCBSZW5kZXJlcjIsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnRMb2FkZXIgfSBmcm9tICcuLi9jb21wb25lbnQtbG9hZGVyL2NvbXBvbmVudC1sb2FkZXIuY2xhc3MnO1xuaW1wb3J0IHsgYW5pbWF0aW9uVGltZSwgY3NzQ2xhc3NOYW1lcyB9IGZyb20gJy4vbW9kYWwtc3R5bGVzLmNsYXNzJztcblxuLyoqXG4gKiBCYWNrZ3JvdW5kIGxheWVyIGZvciBtb2RhbHMuXG4gKiBPdmVycmlkZSBjbGFzcyBuYW1lIHRvIHRoZW1lIGl0LlxuICogQHNlZSB7QGxpbmsgY3NzQ2xhc3NOYW1lc31cbiAqIEBpbnRlcm5hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItbW9kYWwtYmFja2Ryb3AnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICB0ZW1wbGF0ZTogJycsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogY3NzQ2xhc3NOYW1lcy5iYWNrZHJvcCxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxCYWNrZHJvcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgYW5pbWF0aW9uc0VuYWJsZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBiYWNrZHJvcExvYWRlcjogQ29tcG9uZW50TG9hZGVyPE1vZGFsQmFja2Ryb3BDb21wb25lbnQ+IHwgdW5kZWZpbmVkO1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWYsIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5hbmltYXRpb25zRW5hYmxlZCkge1xuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgY3NzQ2xhc3NOYW1lcy5mYWRlKTtcbiAgICAgIHRoaXMucmVmbG93KHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCwgY3NzQ2xhc3NOYW1lcy5zaG93KTtcbiAgfVxuXG4gIHB1YmxpYyBoaWRlKCkge1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIGNzc0NsYXNzTmFtZXMuc2hvdyk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmJhY2tkcm9wTG9hZGVyPy5oaWRlKCksIHRoaXMuYW5pbWF0aW9uc0VuYWJsZWQgPyBhbmltYXRpb25UaW1lLmJhY2tkcm9wIDogMCk7XG4gIH1cblxuICByZWZsb3coZWxlbWVudDogYW55KTogdm9pZCB7XG4gICAgKChiczogYW55KTogdm9pZCA9PiBicykoZWxlbWVudC5vZmZzZXRIZWlnaHQpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { Component, HostListener } from '@angular/core';
|
|
2
|
+
import { animationTime, cssClassNames } from './modal-styles.class';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./modal-options.class";
|
|
5
|
+
/**
|
|
6
|
+
* Modal container component.
|
|
7
|
+
* @remarks
|
|
8
|
+
* All dynamic content `TemplateRef` or `Component` case will be drawn inside this.
|
|
9
|
+
* You can override css classes to theme it {@link cssClassNames}
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
export class ModalContainerComponent {
|
|
13
|
+
constructor(options, _element, renderer) {
|
|
14
|
+
this._element = _element;
|
|
15
|
+
this.renderer = renderer;
|
|
16
|
+
this.isShown = false;
|
|
17
|
+
this.animationsEnabled = false;
|
|
18
|
+
this.isModalHiding = false;
|
|
19
|
+
this.clickStartedInContent = false;
|
|
20
|
+
this.config = Object.assign({}, options);
|
|
21
|
+
}
|
|
22
|
+
ngOnInit() {
|
|
23
|
+
if (this.animationsEnabled) {
|
|
24
|
+
this.renderer.addClass(this._element.nativeElement, cssClassNames.fade);
|
|
25
|
+
}
|
|
26
|
+
this.renderer.setStyle(this._element.nativeElement, 'display', 'block');
|
|
27
|
+
setTimeout(() => {
|
|
28
|
+
this.isShown = true;
|
|
29
|
+
this.renderer.addClass(this._element.nativeElement, cssClassNames.show);
|
|
30
|
+
}, this.animationsEnabled ? animationTime.backdrop : 0);
|
|
31
|
+
if (this._element.nativeElement) {
|
|
32
|
+
this._element.nativeElement.focus();
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
onClickStarted(event) {
|
|
36
|
+
this.clickStartedInContent = event.target !== this._element.nativeElement;
|
|
37
|
+
}
|
|
38
|
+
onClickStop(event) {
|
|
39
|
+
const clickedInBackdrop = event.target === this._element.nativeElement && !this.clickStartedInContent;
|
|
40
|
+
if (this.config.ignoreBackdropClick || this.config.backdrop === 'static' || !clickedInBackdrop) {
|
|
41
|
+
this.clickStartedInContent = false;
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
this.hide();
|
|
45
|
+
}
|
|
46
|
+
onPopState() {
|
|
47
|
+
this.hide();
|
|
48
|
+
}
|
|
49
|
+
onEsc(event) {
|
|
50
|
+
if (!this.isShown) {
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
if (event.keyCode === 27 || event.key === 'Escape' || event.key === 'Esc') {
|
|
54
|
+
event.preventDefault();
|
|
55
|
+
}
|
|
56
|
+
if (this.config.keyboard && this.config.id === this.modalService?.getActiveModal().config.id) {
|
|
57
|
+
this.hide();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
ngOnDestroy() {
|
|
61
|
+
if (this.isShown) {
|
|
62
|
+
this._hide();
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
hide(result) {
|
|
66
|
+
if (this.isModalHiding || !this.isShown) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
if (this.config.closeInterceptor) {
|
|
70
|
+
this.config.closeInterceptor().then(() => this._hide(), () => undefined);
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
this._hide(result);
|
|
74
|
+
}
|
|
75
|
+
_hide(result) {
|
|
76
|
+
this.isModalHiding = true;
|
|
77
|
+
this.renderer.removeClass(this._element.nativeElement, cssClassNames.show);
|
|
78
|
+
setTimeout(() => {
|
|
79
|
+
this.isShown = false;
|
|
80
|
+
this.modalService?.hide(this.config.id, result);
|
|
81
|
+
this.isModalHiding = false;
|
|
82
|
+
}, this.animationsEnabled ? animationTime.modal : 0);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
ModalContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ModalContainerComponent, deps: [{ token: i1.ModalOptions }, { token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
|
86
|
+
ModalContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: ModalContainerComponent, selector: "lib-modal-container", host: { attributes: { "role": "dialog", "tabindex": "-1" }, listeners: { "mousedown": "onClickStarted($event)", "click": "onClickStop($event)", "window:popstate": "onPopState()", "window:keydown.esc": "onEsc($event)" }, properties: { "attr.aria-modal": "true", "attr.aria-labelledby": "config.ariaLabelledBy", "attr.aria-describedby": "config.ariaDescribedby" }, classAttribute: "modal" }, ngImport: i0, template: `
|
|
87
|
+
<div [class]="'modal-dialog' + (config.class ? ' ' + config.class : '')" role="document" focusTrap>
|
|
88
|
+
<div class="modal-content">
|
|
89
|
+
<ng-content></ng-content>
|
|
90
|
+
</div>
|
|
91
|
+
</div>
|
|
92
|
+
`, isInline: true });
|
|
93
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ModalContainerComponent, decorators: [{
|
|
94
|
+
type: Component,
|
|
95
|
+
args: [{
|
|
96
|
+
selector: 'lib-modal-container',
|
|
97
|
+
template: `
|
|
98
|
+
<div [class]="'modal-dialog' + (config.class ? ' ' + config.class : '')" role="document" focusTrap>
|
|
99
|
+
<div class="modal-content">
|
|
100
|
+
<ng-content></ng-content>
|
|
101
|
+
</div>
|
|
102
|
+
</div>
|
|
103
|
+
`,
|
|
104
|
+
host: {
|
|
105
|
+
class: 'modal',
|
|
106
|
+
role: 'dialog',
|
|
107
|
+
tabindex: '-1',
|
|
108
|
+
'[attr.aria-modal]': 'true',
|
|
109
|
+
'[attr.aria-labelledby]': 'config.ariaLabelledBy',
|
|
110
|
+
'[attr.aria-describedby]': 'config.ariaDescribedby',
|
|
111
|
+
},
|
|
112
|
+
}]
|
|
113
|
+
}], ctorParameters: function () { return [{ type: i1.ModalOptions }, { type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { onClickStarted: [{
|
|
114
|
+
type: HostListener,
|
|
115
|
+
args: ['mousedown', ['$event']]
|
|
116
|
+
}], onClickStop: [{
|
|
117
|
+
type: HostListener,
|
|
118
|
+
args: ['click', ['$event']]
|
|
119
|
+
}], onPopState: [{
|
|
120
|
+
type: HostListener,
|
|
121
|
+
args: ['window:popstate']
|
|
122
|
+
}], onEsc: [{
|
|
123
|
+
type: HostListener,
|
|
124
|
+
args: ['window:keydown.esc', ['$event']]
|
|
125
|
+
}] } });
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtY29udGFpbmVyLWNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9zZXJ2aWNlcy9tb2RhbC1zZXJ2aWNlL21vZGFsLWNvbnRhaW5lci1jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQWdDLE1BQU0sZUFBZSxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUlwRTs7Ozs7O0dBTUc7QUFtQkgsTUFBTSxPQUFPLHVCQUF1QjtJQVFsQyxZQUFZLE9BQXFCLEVBQVksUUFBb0IsRUFBVSxRQUFtQjtRQUFqRCxhQUFRLEdBQVIsUUFBUSxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUp0RixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUMxQixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQUN0QiwwQkFBcUIsR0FBRyxLQUFLLENBQUM7UUFFcEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQzFCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN6RTtRQUNELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN4RSxVQUFVLENBQ1IsR0FBRyxFQUFFO1lBQ0gsSUFBSSxDQUFD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QUFDLFlBQVksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDaEQsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7UUFDN0IsQ0FBQyxFQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUNqRCxDQUFDO0lBQ0osQ0FBQzs7b0hBN0ZVLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLGljQWhCeEI7Ozs7OztHQU1UOzJGQVVVLHVCQUF1QjtrQkFsQm5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFOzs7Ozs7R0FNVDtvQkFDRCxJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLE9BQU87d0JBQ2QsSUFBSSxFQUFFLFFBQVE7d0JBQ2QsUUFBUSxFQUFFLElBQUk7d0JBQ2QsbUJBQW1CLEVBQUUsTUFBTTt3QkFDM0Isd0JBQXdCLEVBQUUsdUJBQXVCO3dCQUNqRCx5QkFBeUIsRUFBRSx3QkFBd0I7cUJBQ3BEO2lCQUNGO29KQStCQyxjQUFjO3NCQURiLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQU1yQyxXQUFXO3NCQURWLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVdqQyxVQUFVO3NCQURULFlBQVk7dUJBQUMsaUJBQWlCO2dCQU0vQixLQUFLO3NCQURKLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgT25EZXN0cm95LCBPbkluaXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgYW5pbWF0aW9uVGltZSwgY3NzQ2xhc3NOYW1lcyB9IGZyb20gJy4vbW9kYWwtc3R5bGVzLmNsYXNzJztcbmltcG9ydCB7IE1vZGFsT3B0aW9ucyB9IGZyb20gJy4vbW9kYWwtb3B0aW9ucy5jbGFzcyc7XG5pbXBvcnQgeyBNb2RhbFNlcnZpY2UgfSBmcm9tICcuL21vZGFsLXNlcnZpY2UnO1xuXG4vKipcbiAqIE1vZGFsIGNvbnRhaW5lciBjb21wb25lbnQuXG4gKiBAcmVtYXJrc1xuICogQWxsIGR5bmFtaWMgY29udGVudCBgVGVtcGxhdGVSZWZgIG9yIGBDb21wb25lbnRgIGNhc2Ugd2lsbCBiZSBkcmF3biBpbnNpZGUgdGhpcy5cbiAqIFlvdSBjYW4gb3ZlcnJpZGUgY3NzIGNsYXNzZXMgdG8gdGhlbWUgaXQge0BsaW5rIGNzc0NsYXNzTmFtZXN9XG4gKiBAaW50ZXJuYWxcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLW1vZGFsLWNvbnRhaW5lcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBbY2xhc3NdPVwiJ21vZGFsLWRpYWxvZycgKyAoY29uZmlnLmNsYXNzID8gJyAnICsgY29uZmlnLmNsYXNzIDogJycpXCIgcm9sZT1cImRvY3VtZW50XCIgZm9jdXNUcmFwPlxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIGAsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ21vZGFsJyxcbiAgICByb2xlOiAnZGlhbG9nJyxcbiAgICB0YWJpbmRleDogJy0xJyxcbiAgICAnW2F0dHIuYXJpYS1tb2RhbF0nOiAndHJ1ZScsXG4gICAgJ1thdHRyLmFyaWEtbGFiZWxsZWRieV0nOiAnY29uZmlnLmFyaWFMYWJlbGxlZEJ5JyxcbiAgICAnW2F0dHIuYXJpYS1kZXNjcmliZWRieV0nOiAnY29uZmlnLmFyaWFEZXNjcmliZWRieScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsQ29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwdWJsaWMgbGV2ZWw/OiBudW1iZXI7XG4gIHB1YmxpYyBjb25maWc6IE1vZGFsT3B0aW9ucztcbiAgcHVibGljIG1vZGFsU2VydmljZT86IE1vZGFsU2VydmljZTtcbiAgcHJpdmF0ZSBpc1Nob3duID0gZmFsc2U7XG4gIHByaXZhdGUgYW5pbWF0aW9uc0VuYWJsZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBpc01vZGFsSGlkaW5nID0gZmFsc2U7XG4gIHByaXZhdGUgY2xpY2tTdGFydGVkSW5Db250ZW50ID0gZmFsc2U7XG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IE1vZGFsT3B0aW9ucywgcHJvdGVjdGVkIF9lbGVtZW50OiBFbGVtZW50UmVmLCBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHtcbiAgICB0aGlzLmNvbmZpZyA9IE9iamVjdC5hc3NpZ24oe30sIG9wdGlvbnMpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuYW5pbWF0aW9uc0VuYWJsZWQpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5fZWxlbWVudC5uYXRpdmVFbGVtZW50LCBjc3NDbGFzc05hbWVzLmZhZGUpO1xuICAgIH1cbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuX2VsZW1lbnQubmF0aXZlRWxlbWVudCwgJ2Rpc3BsYXknLCAnYmxvY2snKTtcbiAgICBzZXRUaW1lb3V0KFxuICAgICAgKCkgPT4ge1xuICAgICAgICB0aGlzLmlzU2hvd24gPSB0cnVlO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuX2VsZW1lbnQubmF0aXZlRWxlbWVudCwgY3NzQ2xhc3NOYW1lcy5zaG93KTtcbiAgICAgIH0sXG4gICAgICB0aGlzLmFuaW1hdGlvbnNFbmFibGVkID8gYW5pbWF0aW9uVGltZS5iYWNrZHJvcCA6IDBcbiAgICApO1xuICAgIGlmICh0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIHRoaXMuX2VsZW1lbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlZG93bicsIFsnJGV2ZW50J10pXG4gIG9uQ2xpY2tTdGFydGVkKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5jbGlja1N0YXJ0ZWRJbkNvbnRlbnQgPSBldmVudC50YXJnZXQgIT09IHRoaXMuX2VsZW1lbnQubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgb25DbGlja1N0b3AoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBjbGlja2VkSW5CYWNrZHJvcCA9IGV2ZW50LnRhcmdldCA9PT0gdGhpcy5fZWxlbWVudC5uYXRpdmVFbGVtZW50ICYmICF0aGlzLmNsaWNrU3RhcnRlZEluQ29udGVudDtcbiAgICBpZiAodGhpcy5jb25maWcuaWdub3JlQmFja2Ryb3BDbGljayB8fCB0aGlzLmNvbmZpZy5iYWNrZHJvcCA9PT0gJ3N0YXRpYycgfHwgIWNsaWNrZWRJbkJhY2tkcm9wKSB7XG4gICAgICB0aGlzLmNsaWNrU3RhcnRlZEluQ29udGVudCA9IGZhbHNlO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmhpZGUoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpwb3BzdGF0ZScpXG4gIG9uUG9wU3RhdGUoKTogdm9pZCB7XG4gICAgdGhpcy5oaWRlKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6a2V5ZG93bi5lc2MnLCBbJyRldmVudCddKVxuICBvbkVzYyhldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc1Nob3duKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChldmVudC5rZXlDb2RlID09PSAyNyB8fCBldmVudC5rZXkgPT09ICdFc2NhcGUnIHx8IGV2ZW50LmtleSA9PT0gJ0VzYycpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmNvbmZpZy5rZXlib2FyZCAmJiB0aGlzLmNvbmZpZy5pZCA9PT0gdGhpcy5tb2RhbFNlcnZpY2U/LmdldEFjdGl2ZU1vZGFsKCkuY29uZmlnLmlkKSB7XG4gICAgICB0aGlzLmhpZGUoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc1Nob3duKSB7XG4gICAgICB0aGlzLl9oaWRlKCk7XG4gICAgfVxuICB9XG5cbiAgaGlkZShyZXN1bHQ/OiBhbnkpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc01vZGFsSGlkaW5nIHx8ICF0aGlzLmlzU2hvd24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHRoaXMuY29uZmlnLmNsb3NlSW50ZXJjZXB0b3IpIHtcbiAgICAgIHRoaXMuY29uZmlnLmNsb3NlSW50ZXJjZXB0b3IoKS50aGVuKFxuICAgICAgICAoKSA9PiB0aGlzLl9oaWRlKCksXG4gICAgICAgICgpID0+IHVuZGVmaW5lZFxuICAgICAgKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5faGlkZShyZXN1bHQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGlkZShyZXN1bHQ/OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmlzTW9kYWxIaWRpbmcgPSB0cnVlO1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5fZWxlbWVudC5uYXRpdmVFbGVtZW50LCBjc3NDbGFzc05hbWVzLnNob3cpO1xuICAgIHNldFRpbWVvdXQoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHRoaXMuaXNTaG93biA9IGZhbHNlO1xuICAgICAgICB0aGlzLm1vZGFsU2VydmljZT8uaGlkZSh0aGlzLmNvbmZpZy5pZCwgcmVzdWx0KTtcbiAgICAgICAgdGhpcy5pc01vZGFsSGlkaW5nID0gZmFsc2U7XG4gICAgICB9LFxuICAgICAgdGhpcy5hbmltYXRpb25zRW5hYmxlZCA/IGFuaW1hdGlvblRpbWUubW9kYWwgOiAwXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -10,9 +10,9 @@ import * as i0 from "@angular/core";
|
|
|
10
10
|
*/
|
|
11
11
|
export class ModalOptions {
|
|
12
12
|
}
|
|
13
|
-
ModalOptions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
14
|
-
ModalOptions.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
13
|
+
ModalOptions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ModalOptions, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
14
|
+
ModalOptions.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ModalOptions });
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ModalOptions, decorators: [{
|
|
16
16
|
type: Injectable
|
|
17
17
|
}] });
|
|
18
18
|
/**
|
|
@@ -32,4 +32,4 @@ export const modalConfigDefaults = {
|
|
|
32
32
|
* Use this injection token to set global options.
|
|
33
33
|
*/
|
|
34
34
|
export const MODAL_CONFIG_DEFAULT_OVERRIDE = new InjectionToken('override-default-config');
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtb3B0aW9ucy5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9zZXJ2aWNlcy9tb2RhbC1zZXJ2aWNlL21vZGFsLW9wdGlvbnMuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQWtCLE1BQU0sZUFBZSxDQUFDOztBQUUzRTs7Ozs7OztHQU9HO0FBRUgsTUFBTSxPQUFPLFlBQVk7O3lHQUFaLFlBQVk7NkdBQVosWUFBWTsyRkFBWixZQUFZO2tCQUR4QixVQUFVOztBQTJEWDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFpQjtJQUMvQyxRQUFRLEVBQUUsSUFBSTtJQUNkLFFBQVEsRUFBRSxJQUFJO0lBQ2QsSUFBSSxFQUFFLEtBQUs7SUFDWCxtQkFBbUIsRUFBRSxLQUFLO0lBQzFCLEtBQUssRUFBRSxFQUFFO0lBQ1QsUUFBUSxFQUFFLElBQUk7SUFDZCxZQUFZLEVBQUUsRUFBRTtJQUNoQixnQkFBZ0IsRUFBRSxLQUFLLENBQUM7Q0FDekIsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQWlDLElBQUksY0FBYyxDQUFlLHlCQUF5QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgU3RhdGljUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBNb2RhbHMgb3B0aW9uIGNhbiBiZSBwYXNzZWQgdG8gYSBzcGVjaWZpYyBtb2RhbCBmcm9tIHtAbGluayBNb2RhbFNlcnZpY2Uuc2hvd30gb3JcbiAqIHNldCBnbG9iYmFseSB1c2luZyB0aGUgaW5qZWN0aW9uIHRva2VuIHtAbGluayBNT0RBTF9DT05GSUdfREVGQVVMVF9PVkVSUklERX0uXG4gKiBAcmVtYXJrc1xuICogTW9kYWwgc3BlY2lmaWMgb3B0aW9ucyBhcmUgbWVyZ2VkIHdpdGggZ2xvYmFsIG9wdGlvbnMuXG4gKiBAc2VlIHtAbGluayBtb2RhbENvbmZpZ0RlZmF1bHRzfSBmb3IgZGVmYXVsdHMuXG4gKiBAcHVibGljXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNb2RhbE9wdGlvbnM8VCA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+PiB7XG4gIC8qKlxuICAgKiAgSWQgZm9yIG9wZW5lZCBtb2RhbC4gSWYgbm90IHNldCBhIHJhbmRvbSBvbmUgaXMgZ2VuZXJhdGVkLlxuICAgKi9cbiAgaWQ/OiBudW1iZXIgfCBzdHJpbmc7XG4gIC8qKlxuICAgKiBJZiBzdGF0aWMgaXMgc2V0IHRoZSBtb2RhbCB3aWxsIG5vdCBjbG9zZSB3aGVuIGNsaWNraW5nIG91dHNpZGUgb2YgbW9kYWwuXG4gICAqIEByZW1hcmtzXG4gICAqIEtleWJvYXJkIGV2ZW50IChlc2NhcGUga2V5KSBzdGlsbHMgYXBwbGllcy4gSWYgeW91IG11c3QgZ2V0IGEgcmVzdWx0IHRoZW4gYWxzbyBzZXQga2V5Ym9hcmQgdG8gZmFsc2UuXG4gICAqL1xuICBiYWNrZHJvcD86IGJvb2xlYW4gfCAnc3RhdGljJztcbiAgLyoqXG4gICAqIENsb3NlcyB0aGUgbW9kYWwgd2hlbiBlc2NhcGUga2V5IGlzIHByZXNzZWQuXG4gICAqL1xuICBrZXlib2FyZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTaG93cyB0aGUgbW9kYWwgd2hlbiBpbml0aWFsaXplZC5cbiAgICovXG4gIHNob3c/OiBib29sZWFuO1xuICAvKipcbiAgICogSWdub3JlIHRoZSBiYWNrZHJvcCBjbGljay4gUHJldHR5IG11Y2ggdGhlIHNhbWUgYXMgYmFja2Ryb3Agc3RhdGljLlxuICAgKi9cbiAgaWdub3JlQmFja2Ryb3BDbGljaz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDc3MgY2xhc3MgZm9yIG9wZW5lZCBtb2RhbC5cbiAgICovXG4gIGNsYXNzPzogc3RyaW5nO1xuICAvKipcbiAgICogVG9nZ2xlIGFuaW1hdGlvbi5cbiAgICovXG4gIGFuaW1hdGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE1vZGFsIGluaXRpYWwgZGF0YS5cbiAgICogQHJlbWFya3NcbiAgICogVGhpcyBkYXRhIG11c3QgYmUga25vd24gcHJvcGVydGllcyBvZiBjb250ZW50IGNvbXBvbmVudC5cbiAgICovXG4gIGluaXRpYWxTdGF0ZT86IFBhcnRpYWw8VD47XG4gIC8qKlxuICAgKiBGdW5jdGlvbiB0byBpbnRlcmNlcHQgdGhlIGNsb3N1cmUuXG4gICAqIEByZW1hcmtzXG4gICAqIFlvdSBjYW4gdXNlIHRvIGNhdGNoIHRoZSBjbG9zZSBldmVudCBhbmQgZXZlbiBwcmV2ZW50IGl0IGZyb20gY2xvc2luZy5cbiAgICovXG4gIGNsb3NlSW50ZXJjZXB0b3I/OiBDbG9zZUludGVyY2VwdG9yRm47XG4gIC8qKlxuICAgKiBNb2RhbCBzdGF0aWMgcHJvdmlkZXJzLlxuICAgKiBAc2VlIHtAbGluayBodHRwczovL2FuZ3VsYXIuaW8vZ3VpZGUvZ2xvc3NhcnkjZGktdG9rZW4gfCBJbmplY3Rpb24gVG9rZW59XG4gICAqL1xuICBwcm92aWRlcnM/OiBTdGF0aWNQcm92aWRlcltdO1xuICAvKipcbiAgICogYXJpYS1sYWJlbGxlZGJ5IGF0dHJpYnV0ZSB2YWx1ZSB0byBzZXQgb24gdGhlIG1vZGFsIHdpbmRvdy5cbiAgICovXG4gIGFyaWFMYWJlbGxlZEJ5Pzogc3RyaW5nO1xuICAvKipcbiAgICogYXJpYS1kZXNjcmliZWRieSBhdHRyaWJ1dGUgdmFsdWUgdG8gc2V0IG9uIHRoZSBtb2RhbCB3aW5kb3cuXG4gICAqL1xuICBhcmlhRGVzY3JpYmVkYnk/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogRGVmYXVsdCBvcHRpb24gdmFsdWVzLlxuICovXG5leHBvcnQgY29uc3QgbW9kYWxDb25maWdEZWZhdWx0czogTW9kYWxPcHRpb25zID0ge1xuICBiYWNrZHJvcDogdHJ1ZSxcbiAga2V5Ym9hcmQ6IHRydWUsXG4gIHNob3c6IGZhbHNlLFxuICBpZ25vcmVCYWNrZHJvcENsaWNrOiBmYWxzZSxcbiAgY2xhc3M6ICcnLFxuICBhbmltYXRlZDogdHJ1ZSxcbiAgaW5pdGlhbFN0YXRlOiB7fSxcbiAgY2xvc2VJbnRlcmNlcHRvcjogdm9pZCAwLFxufTtcblxuLyoqXG4gKiBVc2UgdGhpcyBpbmplY3Rpb24gdG9rZW4gdG8gc2V0IGdsb2JhbCBvcHRpb25zLlxuICovXG5leHBvcnQgY29uc3QgTU9EQUxfQ09ORklHX0RFRkFVTFRfT1ZFUlJJREU6IEluamVjdGlvblRva2VuPE1vZGFsT3B0aW9ucz4gPSBuZXcgSW5qZWN0aW9uVG9rZW48TW9kYWxPcHRpb25zPignb3ZlcnJpZGUtZGVmYXVsdC1jb25maWcnKTtcblxuLyoqXG4gKiBDbG9zZSBpbnRlcmNlcHRvciBwcm9taXNlLlxuICovXG5leHBvcnQgdHlwZSBDbG9zZUludGVyY2VwdG9yRm4gPSAoKSA9PiBQcm9taXNlPHZvaWQ+O1xuIl19
|