@indice/ng-components 0.2.166 → 0.2.167-beta.11
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 +30 -1
- package/{esm2015/indice-ng-components.js → esm2020/indice-ng-components.mjs} +0 -0
- package/esm2020/lib/controls/advanced-search/advanced-search.component.mjs +112 -0
- package/esm2020/lib/controls/advanced-search/models.mjs +90 -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/breadcrumb/breadcrumb-item.mjs +14 -0
- package/esm2020/lib/controls/breadcrumb/breadcrumb.component.mjs +26 -0
- package/esm2020/lib/controls/collapsible-panel/collapsible-panel.component.mjs +20 -0
- package/esm2020/lib/controls/combobox/combobox.component.mjs +111 -0
- package/esm2020/lib/controls/date-picker/date-picker.component.mjs +292 -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 +39 -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 +206 -0
- package/esm2020/lib/controls/nav-links-list/nav-links-list.component.mjs +46 -0
- package/esm2020/lib/controls/notifications-indicator/notifications-indicator.component.mjs +79 -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/{esm2015/lib/controls/stepper/lib-step-info.directive.js → esm2020/lib/controls/stepper/lib-step-info.directive.mjs} +4 -4
- package/{esm2015/lib/controls/stepper/lib-step-label.directive.js → esm2020/lib/controls/stepper/lib-step-label.directive.mjs} +5 -5
- package/esm2020/lib/controls/stepper/lib-step.component.mjs +81 -0
- package/esm2020/lib/controls/stepper/lib-stepper.component.mjs +108 -0
- package/{esm2015/lib/controls/stepper/types/step-selected-event.js → esm2020/lib/controls/stepper/types/step-selected-event.mjs} +0 -0
- package/{esm2015/lib/controls/stepper/types/stepper-type.js → esm2020/lib/controls/stepper/types/stepper-type.mjs} +0 -0
- package/esm2020/lib/controls/tabs/lib-tab-group.component.mjs +66 -0
- package/esm2020/lib/controls/tabs/lib-tab-label.directive.mjs +16 -0
- package/esm2020/lib/controls/tabs/lib-tab.component.mjs +64 -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 +226 -0
- package/{esm2015/lib/icons.js → esm2020/lib/icons.mjs} +0 -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 +130 -0
- package/esm2020/lib/layouts/shell/shell-layout/shell-layout.component.mjs +101 -0
- package/esm2020/lib/layouts/shell/shell-sidebar/shell-sidebar.component.mjs +47 -0
- package/esm2020/lib/layouts/shell/shell-sidebar-header/shell-sidebar-header.component.mjs +45 -0
- package/esm2020/lib/layouts/shell/shell-sidebar-layout/shell-sidebar-layout.component.mjs +26 -0
- package/esm2020/lib/layouts/shell/shell-stacked-layout/shell-stacked-layout.component.mjs +20 -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 +277 -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/esm2020/lib/services/breadcrumb.service.mjs +174 -0
- 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/esm2020/lib/services/toaster.service.mjs +26 -0
- package/esm2020/lib/services/utilities.service.mjs +47 -0
- package/{esm2015/lib/tokens.js → esm2020/lib/tokens.mjs} +0 -0
- package/esm2020/lib/types.mjs +130 -0
- package/esm2020/public-api.mjs +67 -0
- package/fesm2015/indice-ng-components.mjs +4559 -0
- package/fesm2015/indice-ng-components.mjs.map +1 -0
- package/fesm2020/indice-ng-components.mjs +4473 -0
- package/fesm2020/indice-ng-components.mjs.map +1 -0
- package/{indice-ng-components.d.ts → index.d.ts} +0 -0
- package/lib/controls/advanced-search/advanced-search.component.d.ts +1 -1
- package/lib/controls/avatar-initials/avatar-initials.component.d.ts +1 -1
- package/lib/controls/breadcrumb/breadcrumb-item.d.ts +7 -0
- package/lib/controls/breadcrumb/breadcrumb.component.d.ts +12 -0
- package/lib/controls/collapsible-panel/collapsible-panel.component.d.ts +1 -1
- package/lib/controls/combobox/combobox.component.d.ts +7 -4
- 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/stepper/lib-step-info.directive.d.ts +1 -1
- package/lib/controls/stepper/lib-step-label.directive.d.ts +1 -1
- package/lib/controls/stepper/lib-step.component.d.ts +1 -1
- package/lib/controls/stepper/lib-stepper.component.d.ts +1 -1
- package/lib/controls/tabs/lib-tab-group.component.d.ts +4 -4
- package/lib/controls/tabs/lib-tab-label.directive.d.ts +8 -0
- package/lib/controls/tabs/lib-tab.component.d.ts +8 -6
- 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/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/shell/shell-sidebar-header/shell-sidebar-header.component.d.ts +1 -1
- package/lib/layouts/shell/shell-sidebar-layout/shell-sidebar-layout.component.d.ts +1 -1
- package/lib/layouts/shell/shell-stacked-layout/shell-stacked-layout.component.d.ts +2 -2
- 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 +55 -53
- 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/breadcrumb.service.d.ts +29 -0
- 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/services/toaster.service.d.ts +2 -2
- package/lib/services/utilities.service.d.ts +11 -0
- package/lib/types.d.ts +12 -10
- package/package.json +21 -8
- package/public-api.d.ts +4 -0
- package/bundles/indice-ng-components.umd.js +0 -5003
- package/bundles/indice-ng-components.umd.js.map +0 -1
- package/esm2015/lib/controls/advanced-search/advanced-search.component.js +0 -116
- package/esm2015/lib/controls/advanced-search/models.js +0 -91
- package/esm2015/lib/controls/collapsible-panel/collapsible-panel.component.js +0 -23
- package/esm2015/lib/controls/combobox/combobox.component.js +0 -100
- package/esm2015/lib/controls/date-picker/date-picker.component.js +0 -301
- 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 -42
- 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 -209
- package/esm2015/lib/controls/nav-links-list/nav-links-list.component.js +0 -51
- package/esm2015/lib/controls/notifications-indicator/notifications-indicator.component.js +0 -82
- 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/stepper/lib-step.component.js +0 -82
- package/esm2015/lib/controls/stepper/lib-stepper.component.js +0 -115
- package/esm2015/lib/controls/tabs/lib-tab-group.component.js +0 -67
- package/esm2015/lib/controls/tabs/lib-tab.component.js +0 -58
- 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 -227
- 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 -135
- package/esm2015/lib/layouts/shell/shell-layout/shell-layout.component.js +0 -106
- package/esm2015/lib/layouts/shell/shell-sidebar/shell-sidebar.component.js +0 -50
- package/esm2015/lib/layouts/shell/shell-sidebar-header/shell-sidebar-header.component.js +0 -48
- package/esm2015/lib/layouts/shell/shell-sidebar-layout/shell-sidebar-layout.component.js +0 -28
- package/esm2015/lib/layouts/shell/shell-stacked-layout/shell-stacked-layout.component.js +0 -24
- 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 -285
- 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/services/toaster.service.js +0 -24
- package/esm2015/lib/types.js +0 -129
- package/esm2015/public-api.js +0 -63
- package/fesm2015/indice-ng-components.js +0 -4355
- package/fesm2015/indice-ng-components.js.map +0 -1
|
@@ -16,9 +16,9 @@ export class AuthRenewComponent {
|
|
|
16
16
|
});
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
|
-
AuthRenewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
20
|
-
AuthRenewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
19
|
+
AuthRenewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AuthRenewComponent, deps: [{ token: AuthService }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
+
AuthRenewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: AuthRenewComponent, selector: "lib-auth-renew", ngImport: i0, template: '', isInline: true });
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AuthRenewComponent, decorators: [{
|
|
22
22
|
type: Component,
|
|
23
23
|
args: [{
|
|
24
24
|
selector: 'lib-auth-renew',
|
|
@@ -28,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
28
28
|
type: Inject,
|
|
29
29
|
args: [AuthService]
|
|
30
30
|
}] }, { type: i1.Router }]; } });
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1yZW5ldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvcGFnZXMvYXV0aC9hdXRoLXJlbmV3L2F1dGgtcmVuZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRzFELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQU05QyxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLFlBQXlDLFdBQXdCLEVBQVUsTUFBYztRQUFoRCxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7SUFBSSxDQUFDO0lBRXZGLFFBQVE7UUFDYixJQUFJLENBQUMsV0FBVyxDQUFDLG9CQUFvQixFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3ZELElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ1QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO2FBQ3pDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzsrR0FUVSxrQkFBa0Isa0JBQ1QsV0FBVzttR0FEcEIsa0JBQWtCLHNEQUZuQixFQUFFOzJGQUVELGtCQUFrQjtrQkFKOUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixRQUFRLEVBQUUsRUFBRTtpQkFDYjs7MEJBRWMsTUFBTTsyQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICdAaW5kaWNlL25nLWF1dGgnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItYXV0aC1yZW5ldycsXHJcbiAgdGVtcGxhdGU6ICcnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdXRoUmVuZXdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoQXV0aFNlcnZpY2UpIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLCBwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7IH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5hdXRoU2VydmljZS5zaWduaW5TaWxlbnRDYWxsYmFjaygpLnN1YnNjcmliZSh1c2VyID0+IHtcclxuICAgICAgaWYgKCF1c2VyKSB7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvdW5hdXRob3JpemVkJ10pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { AuthService } from '@indice/ng-auth';
|
|
2
|
+
import { Component, Inject } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../../../layouts/views/view-layout/view-layout.component";
|
|
5
|
+
import * as i2 from "@indice/ng-auth";
|
|
6
|
+
export class LoggedOutComponent {
|
|
7
|
+
constructor(authService) {
|
|
8
|
+
this.authService = authService;
|
|
9
|
+
this.status = 'working on it, please give me a sec...';
|
|
10
|
+
this.finished = false;
|
|
11
|
+
}
|
|
12
|
+
ngOnInit() {
|
|
13
|
+
this.authService.removeUser().subscribe(() => {
|
|
14
|
+
this.status = 'Thank you!';
|
|
15
|
+
this.finished = true;
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
LoggedOutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: LoggedOutComponent, deps: [{ token: AuthService }], target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
+
LoggedOutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: LoggedOutComponent, selector: "lib-logged-out", ngImport: i0, template: "<lib-view-layout title=\"\u0388\u03C7\u03B5\u03C4\u03B5 \u03B1\u03C0\u03BF\u03C3\u03C5\u03BD\u03B4\u03B5\u03B8\u03B5\u03AF \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1!\"></lib-view-layout>", dependencies: [{ kind: "component", type: i1.ViewLayoutComponent, selector: "lib-view-layout", inputs: ["show-header", "fluid", "title", "icon", "actions", "busy", "search-placeholder", "view", "meta-items"], outputs: ["onAction", "onSearch"] }] });
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: LoggedOutComponent, decorators: [{
|
|
22
|
+
type: Component,
|
|
23
|
+
args: [{ selector: 'lib-logged-out', template: "<lib-view-layout title=\"\u0388\u03C7\u03B5\u03C4\u03B5 \u03B1\u03C0\u03BF\u03C3\u03C5\u03BD\u03B4\u03B5\u03B8\u03B5\u03AF \u03BC\u03B5 \u03B5\u03C0\u03B9\u03C4\u03C5\u03C7\u03AF\u03B1!\"></lib-view-layout>" }]
|
|
24
|
+
}], ctorParameters: function () { return [{ type: i2.AuthService, decorators: [{
|
|
25
|
+
type: Inject,
|
|
26
|
+
args: [AuthService]
|
|
27
|
+
}] }]; } });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VkLW91dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvcGFnZXMvYXV0aC9sb2dnZWQtb3V0L2xvZ2dlZC1vdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL3BhZ2VzL2F1dGgvbG9nZ2VkLW91dC9sb2dnZWQtb3V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQzs7OztBQVExRCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCLFlBQXlDLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBRTFELFdBQU0sR0FBRyx3Q0FBd0MsQ0FBQztRQUNsRCxhQUFRLEdBQUcsS0FBSyxDQUFDO0lBSDZDLENBQUM7SUFLL0QsUUFBUTtRQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUMzQyxJQUFJLENBQUMsTUFBTSxHQUFHLFlBQVksQ0FBQztZQUMzQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OytHQVhVLGtCQUFrQixrQkFDVCxXQUFXO21HQURwQixrQkFBa0Isc0RDVC9CLGdOQUEwRTsyRkRTN0Qsa0JBQWtCO2tCQUw5QixTQUFTOytCQUVFLGdCQUFnQjs7MEJBSWIsTUFBTTsyQkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICdAaW5kaWNlL25nLWF1dGgnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmNvbXBvbmVudC1zZWxlY3RvclxyXG4gIHNlbGVjdG9yOiAnbGliLWxvZ2dlZC1vdXQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9sb2dnZWQtb3V0LmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9nZ2VkT3V0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEF1dGhTZXJ2aWNlKSBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSkgeyB9XHJcblxyXG4gIHB1YmxpYyBzdGF0dXMgPSAnd29ya2luZyBvbiBpdCwgcGxlYXNlIGdpdmUgbWUgYSBzZWMuLi4nO1xyXG4gIHB1YmxpYyBmaW5pc2hlZCA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLnJlbW92ZVVzZXIoKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLnN0YXR1cyA9ICdUaGFuayB5b3UhJztcclxuICAgICAgdGhpcy5maW5pc2hlZCA9IHRydWU7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGxpYi12aWV3LWxheW91dCB0aXRsZT1cIs6Iz4fOtc+EzrUgzrHPgM6/z4PPhc69zrTOtc64zrXOryDOvM61IM61z4DOuc+Ez4XPh86vzrEhXCI+PC9saWItdmlldy1sYXlvdXQ+Il19
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../../../layouts/views/view-layout/view-layout.component";
|
|
4
|
+
export class ErrorComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.error = 'Error!';
|
|
7
|
+
}
|
|
8
|
+
ngOnInit() {
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
ErrorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
ErrorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: ErrorComponent, selector: "lib-error", ngImport: i0, template: "<lib-view-layout [show-header]=\"false\" title=\"500 - \u03C0\u03B1\u03C1\u03BF\u03C5\u03C3\u03B9\u03AC\u03C3\u03C4\u03B7\u03BA\u03B5 \u03C3\u03C6\u03AC\u03BB\u03BC\u03B1!\">\r\n <div class=\"bg-gray-600 view-container\">\r\n <div class=\"max-w-2xl mx-auto text-center py-16 px-4 sm:py-20 sm:px-6 lg:px-8\">\r\n <h2 class=\"text-3xl font-extrabold text-white sm:text-4xl\">\r\n <span class=\"block\">500</span>\r\n </h2>\r\n <p class=\"mt-4 text-lg leading-6 text-gray-200\">\u03C3\u03C6\u03AC\u03BB\u03BC\u03B1, \u03BA\u03B1\u03C4\u03B9 \u03B4\u03B5\u03BD \u03C0\u03AE\u03B3\u03B5 \u03BA\u03B1\u03BB\u03AC...!</p>\r\n <a href=\"/\" class=\"mt-8 inline-flex items-center justify-center px-5 py-3 border border-transparent text-base font-sm rounded-sm text-gray-600 bg-white hover:bg-gray-50 sm:w-auto\">\r\n \u03C0\u03B1\u03C4\u03AE\u03C3\u03C4\u03B5 \u03B5\u03B4\u03CE \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B5\u03C0\u03B9\u03C3\u03C4\u03C1\u03AD\u03C8\u03B5\u03C4\u03B5\r\n </a>\r\n </div>\r\n </div>\r\n</lib-view-layout>\r\n", dependencies: [{ kind: "component", type: i1.ViewLayoutComponent, selector: "lib-view-layout", inputs: ["show-header", "fluid", "title", "icon", "actions", "busy", "search-placeholder", "view", "meta-items"], outputs: ["onAction", "onSearch"] }] });
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: ErrorComponent, decorators: [{
|
|
14
|
+
type: Component,
|
|
15
|
+
args: [{ selector: 'lib-error', template: "<lib-view-layout [show-header]=\"false\" title=\"500 - \u03C0\u03B1\u03C1\u03BF\u03C5\u03C3\u03B9\u03AC\u03C3\u03C4\u03B7\u03BA\u03B5 \u03C3\u03C6\u03AC\u03BB\u03BC\u03B1!\">\r\n <div class=\"bg-gray-600 view-container\">\r\n <div class=\"max-w-2xl mx-auto text-center py-16 px-4 sm:py-20 sm:px-6 lg:px-8\">\r\n <h2 class=\"text-3xl font-extrabold text-white sm:text-4xl\">\r\n <span class=\"block\">500</span>\r\n </h2>\r\n <p class=\"mt-4 text-lg leading-6 text-gray-200\">\u03C3\u03C6\u03AC\u03BB\u03BC\u03B1, \u03BA\u03B1\u03C4\u03B9 \u03B4\u03B5\u03BD \u03C0\u03AE\u03B3\u03B5 \u03BA\u03B1\u03BB\u03AC...!</p>\r\n <a href=\"/\" class=\"mt-8 inline-flex items-center justify-center px-5 py-3 border border-transparent text-base font-sm rounded-sm text-gray-600 bg-white hover:bg-gray-50 sm:w-auto\">\r\n \u03C0\u03B1\u03C4\u03AE\u03C3\u03C4\u03B5 \u03B5\u03B4\u03CE \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B5\u03C0\u03B9\u03C3\u03C4\u03C1\u03AD\u03C8\u03B5\u03C4\u03B5\r\n </a>\r\n </div>\r\n </div>\r\n</lib-view-layout>\r\n" }]
|
|
16
|
+
}] });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL3BhZ2VzL2h0dHAtc3RhdHVzL2Vycm9yL2Vycm9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9wYWdlcy9odHRwLXN0YXR1cy9lcnJvci9lcnJvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7QUFNbEQsTUFBTSxPQUFPLGNBQWM7SUFKM0I7UUFLUyxVQUFLLEdBQUcsUUFBUSxDQUFDO0tBS3pCO0lBSEMsUUFBUTtJQUNSLENBQUM7OzJHQUpVLGNBQWM7K0ZBQWQsY0FBYyxpRENOM0Isa2pDQWFBOzJGRFBhLGNBQWM7a0JBSjFCLFNBQVM7K0JBQ0UsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1lcnJvcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Vycm9yLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRXJyb3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHB1YmxpYyBlcnJvciA9ICdFcnJvciEnO1xyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG59XHJcbiIsIjxsaWItdmlldy1sYXlvdXQgW3Nob3ctaGVhZGVyXT1cImZhbHNlXCIgdGl0bGU9XCI1MDAgLSDPgM6xz4HOv8+Fz4POuc6sz4PPhM63zrrOtSDPg8+GzqzOu868zrEhXCI+XHJcbiAgPGRpdiBjbGFzcz1cImJnLWdyYXktNjAwIHZpZXctY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibWF4LXctMnhsIG14LWF1dG8gdGV4dC1jZW50ZXIgcHktMTYgcHgtNCBzbTpweS0yMCBzbTpweC02IGxnOnB4LThcIj5cclxuICAgICAgPGgyIGNsYXNzPVwidGV4dC0zeGwgZm9udC1leHRyYWJvbGQgdGV4dC13aGl0ZSBzbTp0ZXh0LTR4bFwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiYmxvY2tcIj41MDA8L3NwYW4+XHJcbiAgICAgIDwvaDI+XHJcbiAgICAgIDxwIGNsYXNzPVwibXQtNCB0ZXh0LWxnIGxlYWRpbmctNiB0ZXh0LWdyYXktMjAwXCI+z4PPhs6szrvOvM6xLCDOus6xz4TOuSDOtM61zr0gz4DOrs6zzrUgzrrOsc67zqwuLi4hPC9wPlxyXG4gICAgICA8YSBocmVmPVwiL1wiIGNsYXNzPVwibXQtOCBpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcHgtNSBweS0zIGJvcmRlciBib3JkZXItdHJhbnNwYXJlbnQgdGV4dC1iYXNlIGZvbnQtc20gcm91bmRlZC1zbSB0ZXh0LWdyYXktNjAwIGJnLXdoaXRlIGhvdmVyOmJnLWdyYXktNTAgc206dy1hdXRvXCI+XHJcbiAgICAgICAgz4DOsc+Ezq7Pg8+EzrUgzrXOtM+OIM6zzrnOsSDOvc6xIM61z4DOuc+Dz4TPgc6tz4jOtc+EzrVcclxuICAgICAgPC9hPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvbGliLXZpZXctbGF5b3V0PlxyXG4iXX0=
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../../../layouts/views/view-layout/view-layout.component";
|
|
4
|
+
export class PageNotFoundComponent {
|
|
5
|
+
constructor() { }
|
|
6
|
+
ngOnInit() {
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
PageNotFoundComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: PageNotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10
|
+
PageNotFoundComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: PageNotFoundComponent, selector: "lib-page-not-found", ngImport: i0, template: "<lib-view-layout [show-header]=\"false\" title=\"404 - \u03B4\u03B5\u03BD \u03B2\u03C1\u03AD\u03B8\u03B7\u03BA\u03B5!\">\r\n <div class=\"text-gray-900\">\r\n <div class=\"max-w-4xl mx-auto text-center py-16 px-4 sm:py-20 sm:px-6 lg:px-8\">\r\n <h2 class=\"text-3xl font-extrabold sm:text-4xl\">\r\n <span class=\"block\">404</span>\r\n </h2>\r\n <p class=\"mt-4 text-lg leading-6 text-gray-800\">\u03B4\u03B5\u03BD \u03B2\u03C1\u03AD\u03B8\u03B7\u03BA\u03B5 \u03B7 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1 \u03C0\u03BF\u03C5 \u03B6\u03B7\u03C4\u03AE\u03C3\u03B1\u03C4\u03B5!</p>\r\n <a href=\"/\"\r\n class=\"mt-8 inline-flex items-center justify-center px-5 py-3 border border-transparent text-base font-sm rounded-sm text-gray-600 bg-white hover:bg-gray-50 sm:w-auto\">\r\n \u03C0\u03B1\u03C4\u03AE\u03C3\u03C4\u03B5 \u03B5\u03B4\u03CE \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B5\u03C0\u03B9\u03C3\u03C4\u03C1\u03AD\u03C8\u03B5\u03C4\u03B5\r\n </a>\r\n </div>\r\n </div>\r\n</lib-view-layout>\r\n", dependencies: [{ kind: "component", type: i1.ViewLayoutComponent, selector: "lib-view-layout", inputs: ["show-header", "fluid", "title", "icon", "actions", "busy", "search-placeholder", "view", "meta-items"], outputs: ["onAction", "onSearch"] }] });
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: PageNotFoundComponent, decorators: [{
|
|
12
|
+
type: Component,
|
|
13
|
+
args: [{ selector: 'lib-page-not-found', template: "<lib-view-layout [show-header]=\"false\" title=\"404 - \u03B4\u03B5\u03BD \u03B2\u03C1\u03AD\u03B8\u03B7\u03BA\u03B5!\">\r\n <div class=\"text-gray-900\">\r\n <div class=\"max-w-4xl mx-auto text-center py-16 px-4 sm:py-20 sm:px-6 lg:px-8\">\r\n <h2 class=\"text-3xl font-extrabold sm:text-4xl\">\r\n <span class=\"block\">404</span>\r\n </h2>\r\n <p class=\"mt-4 text-lg leading-6 text-gray-800\">\u03B4\u03B5\u03BD \u03B2\u03C1\u03AD\u03B8\u03B7\u03BA\u03B5 \u03B7 \u03C3\u03B5\u03BB\u03AF\u03B4\u03B1 \u03C0\u03BF\u03C5 \u03B6\u03B7\u03C4\u03AE\u03C3\u03B1\u03C4\u03B5!</p>\r\n <a href=\"/\"\r\n class=\"mt-8 inline-flex items-center justify-center px-5 py-3 border border-transparent text-base font-sm rounded-sm text-gray-600 bg-white hover:bg-gray-50 sm:w-auto\">\r\n \u03C0\u03B1\u03C4\u03AE\u03C3\u03C4\u03B5 \u03B5\u03B4\u03CE \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B5\u03C0\u03B9\u03C3\u03C4\u03C1\u03AD\u03C8\u03B5\u03C4\u03B5\r\n </a>\r\n </div>\r\n </div>\r\n</lib-view-layout>\r\n" }]
|
|
14
|
+
}], ctorParameters: function () { return []; } });
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1ub3QtZm91bmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL3BhZ2VzL2h0dHAtc3RhdHVzL3BhZ2Utbm90LWZvdW5kL3BhZ2Utbm90LWZvdW5kLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9wYWdlcy9odHRwLXN0YXR1cy9wYWdlLW5vdC1mb3VuZC9wYWdlLW5vdC1mb3VuZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7QUFNbEQsTUFBTSxPQUFPLHFCQUFxQjtJQUVoQyxnQkFBZ0IsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQzs7a0hBTFUscUJBQXFCO3NHQUFyQixxQkFBcUIsMERDTmxDLHVoQ0FjQTsyRkRSYSxxQkFBcUI7a0JBSmpDLFNBQVM7K0JBQ0Usb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXBhZ2Utbm90LWZvdW5kJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcGFnZS1ub3QtZm91bmQuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYWdlTm90Rm91bmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG59XHJcbiIsIjxsaWItdmlldy1sYXlvdXQgW3Nob3ctaGVhZGVyXT1cImZhbHNlXCIgdGl0bGU9XCI0MDQgLSDOtM61zr0gzrLPgc6tzrjOt866zrUhXCI+XHJcbiAgPGRpdiBjbGFzcz1cInRleHQtZ3JheS05MDBcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtYXgtdy00eGwgbXgtYXV0byB0ZXh0LWNlbnRlciBweS0xNiBweC00IHNtOnB5LTIwIHNtOnB4LTYgbGc6cHgtOFwiPlxyXG4gICAgICA8aDIgY2xhc3M9XCJ0ZXh0LTN4bCBmb250LWV4dHJhYm9sZCBzbTp0ZXh0LTR4bFwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiYmxvY2tcIj40MDQ8L3NwYW4+XHJcbiAgICAgIDwvaDI+XHJcbiAgICAgIDxwIGNsYXNzPVwibXQtNCB0ZXh0LWxnIGxlYWRpbmctNiB0ZXh0LWdyYXktODAwXCI+zrTOtc69IM6yz4HOrc64zrfOus61IM63IM+DzrXOu86vzrTOsSDPgM6/z4UgzrbOt8+Ezq7Pg86xz4TOtSE8L3A+XHJcbiAgICAgIDxhIGhyZWY9XCIvXCJcclxuICAgICAgICAgY2xhc3M9XCJtdC04IGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBweC01IHB5LTMgYm9yZGVyIGJvcmRlci10cmFuc3BhcmVudCB0ZXh0LWJhc2UgZm9udC1zbSByb3VuZGVkLXNtIHRleHQtZ3JheS02MDAgYmctd2hpdGUgaG92ZXI6YmctZ3JheS01MCBzbTp3LWF1dG9cIj5cclxuICAgICAgICDPgM6xz4TOrs+Dz4TOtSDOtc60z44gzrPOuc6xIM69zrEgzrXPgM65z4PPhM+Bzq3PiM61z4TOtVxyXG4gICAgICA8L2E+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9saWItdmlldy1sYXlvdXQ+XHJcbiJdfQ==
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../../../layouts/views/view-layout/view-layout.component";
|
|
4
|
+
export class UnauthorizedComponent {
|
|
5
|
+
constructor() { }
|
|
6
|
+
ngOnInit() { }
|
|
7
|
+
}
|
|
8
|
+
UnauthorizedComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: UnauthorizedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9
|
+
UnauthorizedComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.0", type: UnauthorizedComponent, selector: "lib-unauthorized", ngImport: i0, template: "<lib-view-layout [show-header]=\"false\" title=\"401 - \u03B4\u03B5\u03BD \u03B5\u03C0\u03B9\u03C4\u03C1\u03AD\u03C0\u03B5\u03C4\u03B1\u03B9 \u03B7 \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7!\">\r\n <div class=\"bg-gray-600 view-container\">\r\n <div class=\"max-w-2xl mx-auto text-center py-16 px-4 sm:py-20 sm:px-6 lg:px-8\">\r\n <h2 class=\"text-3xl font-extrabold text-white sm:text-4xl\">\r\n <span class=\"block\">401</span>\r\n </h2>\r\n <p class=\"mt-4 text-lg leading-6 text-gray-200\">\u03B4\u03B5\u03BD \u03AD\u03C7\u03B5\u03C4\u03B5 \u03C4\u03B1 \u03BA\u03B1\u03C4\u03AC\u03BB\u03BB\u03B7\u03BB\u03B1 \u03B4\u03B9\u03BA\u03B1\u03B9\u03CE\u03BC\u03B1\u03C4\u03B1 \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2!</p>\r\n <a href=\"/\" class=\"mt-8 inline-flex items-center justify-center px-5 py-3 border border-transparent text-base font-sm rounded-sm text-gray-600 bg-white hover:bg-gray-50 sm:w-auto\">\r\n \u03C0\u03B1\u03C4\u03AE\u03C3\u03C4\u03B5 \u03B5\u03B4\u03CE \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B5\u03C0\u03B9\u03C3\u03C4\u03C1\u03AD\u03C8\u03B5\u03C4\u03B5\r\n </a>\r\n </div>\r\n </div>\r\n </lib-view-layout>\r\n\r\n\r\n", dependencies: [{ kind: "component", type: i1.ViewLayoutComponent, selector: "lib-view-layout", inputs: ["show-header", "fluid", "title", "icon", "actions", "busy", "search-placeholder", "view", "meta-items"], outputs: ["onAction", "onSearch"] }] });
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: UnauthorizedComponent, decorators: [{
|
|
11
|
+
type: Component,
|
|
12
|
+
args: [{ selector: 'lib-unauthorized', template: "<lib-view-layout [show-header]=\"false\" title=\"401 - \u03B4\u03B5\u03BD \u03B5\u03C0\u03B9\u03C4\u03C1\u03AD\u03C0\u03B5\u03C4\u03B1\u03B9 \u03B7 \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7!\">\r\n <div class=\"bg-gray-600 view-container\">\r\n <div class=\"max-w-2xl mx-auto text-center py-16 px-4 sm:py-20 sm:px-6 lg:px-8\">\r\n <h2 class=\"text-3xl font-extrabold text-white sm:text-4xl\">\r\n <span class=\"block\">401</span>\r\n </h2>\r\n <p class=\"mt-4 text-lg leading-6 text-gray-200\">\u03B4\u03B5\u03BD \u03AD\u03C7\u03B5\u03C4\u03B5 \u03C4\u03B1 \u03BA\u03B1\u03C4\u03AC\u03BB\u03BB\u03B7\u03BB\u03B1 \u03B4\u03B9\u03BA\u03B1\u03B9\u03CE\u03BC\u03B1\u03C4\u03B1 \u03C0\u03C1\u03CC\u03C3\u03B2\u03B1\u03C3\u03B7\u03C2!</p>\r\n <a href=\"/\" class=\"mt-8 inline-flex items-center justify-center px-5 py-3 border border-transparent text-base font-sm rounded-sm text-gray-600 bg-white hover:bg-gray-50 sm:w-auto\">\r\n \u03C0\u03B1\u03C4\u03AE\u03C3\u03C4\u03B5 \u03B5\u03B4\u03CE \u03B3\u03B9\u03B1 \u03BD\u03B1 \u03B5\u03C0\u03B9\u03C3\u03C4\u03C1\u03AD\u03C8\u03B5\u03C4\u03B5\r\n </a>\r\n </div>\r\n </div>\r\n </lib-view-layout>\r\n\r\n\r\n" }]
|
|
13
|
+
}], ctorParameters: function () { return []; } });
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5hdXRob3JpemVkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9wYWdlcy9odHRwLXN0YXR1cy91bmF1dGhvcml6ZWQvdW5hdXRob3JpemVkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9wYWdlcy9odHRwLXN0YXR1cy91bmF1dGhvcml6ZWQvdW5hdXRob3JpemVkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWtCLE1BQU0sZUFBZSxDQUFDOzs7QUFNMUQsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxnQkFBZ0IsQ0FBQztJQUVWLFFBQVEsS0FBVyxDQUFDOztrSEFIaEIscUJBQXFCO3NHQUFyQixxQkFBcUIsd0RDTmxDLHlyQ0FlQTsyRkRUYSxxQkFBcUI7a0JBSmpDLFNBQVM7K0JBQ0Usa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItdW5hdXRob3JpemVkJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdW5hdXRob3JpemVkLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVW5hdXRob3JpemVkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7IH1cclxufVxyXG4iLCI8bGliLXZpZXctbGF5b3V0IFtzaG93LWhlYWRlcl09XCJmYWxzZVwiIHRpdGxlPVwiNDAxIC0gzrTOtc69IM61z4DOuc+Ez4HOrc+AzrXPhM6xzrkgzrcgz4DPgc+Mz4POss6xz4POtyFcIj5cclxuICA8ZGl2IGNsYXNzPVwiYmctZ3JheS02MDAgdmlldy1jb250YWluZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtYXgtdy0yeGwgbXgtYXV0byB0ZXh0LWNlbnRlciBweS0xNiBweC00IHNtOnB5LTIwIHNtOnB4LTYgbGc6cHgtOFwiPlxyXG4gICAgICA8aDIgY2xhc3M9XCJ0ZXh0LTN4bCBmb250LWV4dHJhYm9sZCB0ZXh0LXdoaXRlIHNtOnRleHQtNHhsXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJibG9ja1wiPjQwMTwvc3Bhbj5cclxuICAgICAgPC9oMj5cclxuICAgICAgPHAgY2xhc3M9XCJtdC00IHRleHQtbGcgbGVhZGluZy02IHRleHQtZ3JheS0yMDBcIj7OtM61zr0gzq3Ph861z4TOtSDPhM6xIM66zrHPhM6szrvOu863zrvOsSDOtM65zrrOsc65z47OvM6xz4TOsSDPgM+Bz4zPg86yzrHPg863z4IhPC9wPlxyXG4gICAgICA8YSBocmVmPVwiL1wiIGNsYXNzPVwibXQtOCBpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcHgtNSBweS0zIGJvcmRlciBib3JkZXItdHJhbnNwYXJlbnQgdGV4dC1iYXNlIGZvbnQtc20gcm91bmRlZC1zbSB0ZXh0LWdyYXktNjAwIGJnLXdoaXRlIGhvdmVyOmJnLWdyYXktNTAgc206dy1hdXRvXCI+XHJcbiAgICAgICAgz4DOsc+Ezq7Pg8+EzrUgzrXOtM+OIM6zzrnOsSDOvc6xIM61z4DOuc+Dz4TPgc6tz4jOtc+EzrVcclxuICAgICAgPC9hPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbiAgPC9saWItdmlldy1sYXlvdXQ+XHJcblxyXG5cclxuIl19
|
|
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzcy5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL3BpcGVzL2FkZHJlc3MucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFPcEQsTUFBTSxPQUFPLFdBQVc7SUFFcEIsU0FBUyxDQUFDLEtBQTJCO1FBQ2pDLElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxJQUFJLElBQUksRUFBRSxFQUFFO1lBQ25DLE9BQU8sRUFBRSxDQUFDO1NBQ2I7UUFDRCxpREFBaUQ7UUFDakQsT0FBTyxHQUFHLEtBQUssQ0FBQyxNQUFNLElBQUksRUFBRSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyxVQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxVQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQ3BMLENBQUM7O3dHQVJRLFdBQVc7c0dBQVgsV0FBVzsyRkFBWCxXQUFXO2tCQUp2QixJQUFJO21CQUFDO29CQUNGLElBQUksRUFBRSxTQUFTO29CQUNmLElBQUksRUFBRSxLQUFLO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJQWRkcmVzcyB9IGZyb20gJy4uL3R5cGVzJztcclxuXHJcbkBQaXBlKHtcclxuICAgIG5hbWU6ICdhZGRyZXNzJyxcclxuICAgIHB1cmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBZGRyZXNzUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuICAgIHRyYW5zZm9ybSh2YWx1ZTogSUFkZHJlc3MgfCB1bmRlZmluZWQpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IG51bGwgfHwgJycpIHtcclxuICAgICAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tbm9uLW51bGwtYXNzZXJ0aW9uXHJcbiAgICAgICAgcmV0dXJuIGAke3ZhbHVlLnN0cmVldCB8fCAnJ30ke3ZhbHVlLnN0cmVldE51bWJlciA/ICcgJyArIHZhbHVlLnN0cmVldE51bWJlciA6ICcnfSR7dmFsdWUuY2l0eSA/ICcsICcgKyB2YWx1ZS5jaXR5IDogJyd9JHsrdmFsdWUucG9zdGFsQ29kZSEgPyAnLCAnICsgK3ZhbHVlLnBvc3RhbENvZGUhIDogJyd9YDtcclxuICAgIH1cclxufVxyXG4iXX0=
|
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHVyYXRpb24tZm9ybWF0LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvcGlwZXMvZHVyYXRpb24tZm9ybWF0LnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBTXBELE1BQU0sT0FBTyxrQkFBa0I7SUFFN0IsU0FBUyxDQUFDLEtBQVUsRUFBRSxJQUFTLEVBQUUsSUFBUztRQUV4QyxJQUFJLElBQVMsQ0FBQztRQUNkLElBQUksT0FBWSxDQUFDO1FBQ2pCLElBQUksT0FBWSxDQUFDO1FBQ2pCLElBQUksS0FBVSxDQUFDO1FBRWYsSUFBSSxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksS0FBSyxRQUFRLEVBQUU7WUFDdEMsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDMUMsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDbkQsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMvQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1NBRXpEO2FBQU0sSUFBSSxJQUFJLEtBQUssR0FBRyxJQUFJLElBQUksS0FBSyxRQUFRLEVBQUU7WUFDNUMsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNuQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDMUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3hDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FFekQ7YUFBTSxJQUFJLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssVUFBVSxJQUFJLElBQUksS0FBSyxjQUFjLENBQUMsRUFBRTtZQUM1RSxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDNUMsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNqRCxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNwRCxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNuRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1NBRXpEO2FBQU0sSUFBSSxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsSUFBSSxJQUFJLEtBQUssY0FBYyxDQUFDLEVBQUU7WUFDM0UsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQ2pDLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMxQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQzdDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzlDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FFekQ7YUFDSTtZQUNILE9BQU8sS0FBSyxDQUFDO1NBQ2Q7SUFDSCxDQUFDO0lBRU8sTUFBTSxDQUFDLElBQVksRUFBRSxPQUFZLEVBQUUsT0FBWSxFQUFFLEtBQVUsRUFBRSxJQUFTO1FBQzVFLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ3ZDLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQzNDLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsR0FBRyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO1FBQ25ELENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsR0FBRyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO1FBRW5ELFFBQVEsSUFBSSxFQUFFO1lBQ1osS0FBSyxRQUFRO2dCQUNYLE9BQU8sR0FBRyxLQUFLLElBQUksT0FBTyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBRTFDLEtBQUssVUFBVTtnQkFDYixPQUFPLEdBQUcsSUFBSSxNQUFNLEtBQUssTUFBTSxPQUFPLE1BQU0sT0FBTyxHQUFHLENBQUM7WUFFekQsS0FBSyxjQUFjO2dCQUNqQixPQUFPLEdBQUcsSUFBSSxVQUFVLEtBQUssV0FBVyxPQUFPLGFBQWEsT0FBTyxVQUFVLENBQUM7U0FDakY7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDOzsrR0ExRFUsa0JBQWtCOzZHQUFsQixrQkFBa0I7MkZBQWxCLGtCQUFrQjtrQkFKOUIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsZ0JBQWdCO29CQUN0QixJQUFJLEVBQUUsS0FBSztpQkFDWiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnZHVyYXRpb25Gb3JtYXQnLFxyXG4gIHB1cmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEdXJhdGlvbkZvcm1hdFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuXHJcbiAgdHJhbnNmb3JtKHZhbHVlOiBhbnksIGFyZzE6IGFueSwgYXJnMjogYW55KTogc3RyaW5nIHtcclxuXHJcbiAgICBsZXQgZGF5czogYW55O1xyXG4gICAgbGV0IHNlY29uZHM6IGFueTtcclxuICAgIGxldCBtaW51dGVzOiBhbnk7XHJcbiAgICBsZXQgaG91cnM6IGFueTtcclxuXHJcbiAgICBpZiAoYXJnMSA9PT0gJ21zJyAmJiBhcmcyID09PSAnaGhtbXNzJykge1xyXG4gICAgICBzZWNvbmRzID0gTWF0aC5mbG9vcigodmFsdWUgLyAxMDAwKSAlIDYwKTtcclxuICAgICAgbWludXRlcyA9IE1hdGguZmxvb3IoKCh2YWx1ZSAvICgxMDAwICogNjApKSAlIDYwKSk7XHJcbiAgICAgIGhvdXJzID0gTWF0aC5mbG9vcigodmFsdWUgLyAoMTAwMCAqIDYwICogNjApKSk7XHJcbiAgICAgIHJldHVybiB0aGlzLmZvcm1hdChhcmcyLCBzZWNvbmRzLCBtaW51dGVzLCBob3VycywgZGF5cyk7XHJcblxyXG4gICAgfSBlbHNlIGlmIChhcmcxID09PSAncycgJiYgYXJnMiA9PT0gJ2hobW1zcycpIHtcclxuICAgICAgc2Vjb25kcyA9IE1hdGguZmxvb3IoKHZhbHVlICUgNjApKTtcclxuICAgICAgbWludXRlcyA9IE1hdGguZmxvb3IoKCh2YWx1ZSAvIDYwKSAlIDYwKSk7XHJcbiAgICAgIGhvdXJzID0gTWF0aC5mbG9vcigoKHZhbHVlIC8gNjApIC8gNjApKTtcclxuICAgICAgcmV0dXJuIHRoaXMuZm9ybWF0KGFyZzIsIHNlY29uZHMsIG1pbnV0ZXMsIGhvdXJzLCBkYXlzKTtcclxuXHJcbiAgICB9IGVsc2UgaWYgKGFyZzEgPT09ICdtcycgJiYgKGFyZzIgPT09ICdkZGhobW1zcycgfHwgYXJnMiA9PT0gJ2RkaGhtbXNzTG9uZycpKSB7XHJcbiAgICAgIHNlY29uZHMgPSBNYXRoLmZsb29yKCgodmFsdWUgLyAxMDAwKSAlIDYwKSk7XHJcbiAgICAgIG1pbnV0ZXMgPSBNYXRoLmZsb29yKCh2YWx1ZSAvICgxMDAwICogNjApICUgNjApKTtcclxuICAgICAgaG91cnMgPSBNYXRoLmZsb29yKCh2YWx1ZSAvICgxMDAwICogNjAgKiA2MCkgJSAyNCkpO1xyXG4gICAgICBkYXlzID0gTWF0aC5mbG9vcigodmFsdWUgLyAoMTAwMCAqIDYwICogNjAgKiAyNCkpKTtcclxuICAgICAgcmV0dXJuIHRoaXMuZm9ybWF0KGFyZzIsIHNlY29uZHMsIG1pbnV0ZXMsIGhvdXJzLCBkYXlzKTtcclxuXHJcbiAgICB9IGVsc2UgaWYgKGFyZzEgPT09ICdzJyAmJiAoYXJnMiA9PT0gJ2RkaGhtbXNzJyB8fCBhcmcyID09PSAnZGRoaG1tc3NMb25nJykpIHtcclxuICAgICAgc2Vjb25kcyA9IE1hdGguZmxvb3IodmFsdWUgJSA2MCk7XHJcbiAgICAgIG1pbnV0ZXMgPSBNYXRoLmZsb29yKCgodmFsdWUgLyA2MCkgJSA2MCkpO1xyXG4gICAgICBob3VycyA9IE1hdGguZmxvb3IoKCh2YWx1ZSAvIDYwKSAvIDYwKSAlIDI0KTtcclxuICAgICAgZGF5cyA9IE1hdGguZmxvb3IoKCgodmFsdWUgLyA2MCkgLyA2MCkgLyAyNCkpO1xyXG4gICAgICByZXR1cm4gdGhpcy5mb3JtYXQoYXJnMiwgc2Vjb25kcywgbWludXRlcywgaG91cnMsIGRheXMpO1xyXG5cclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZvcm1hdChhcmcyOiBzdHJpbmcsIHNlY29uZHM6IGFueSwgbWludXRlczogYW55LCBob3VyczogYW55LCBkYXlzOiBhbnkpOiBhbnkge1xyXG4gICAgKGRheXMgPCAxMCkgPyBkYXlzID0gJzAnICsgZGF5cyA6IGRheXM7XHJcbiAgICAoaG91cnMgPCAxMCkgPyBob3VycyA9ICcwJyArIGhvdXJzIDogaG91cnM7XHJcbiAgICAobWludXRlcyA8IDEwKSA/IG1pbnV0ZXMgPSAnMCcgKyBtaW51dGVzIDogbWludXRlcztcclxuICAgIChzZWNvbmRzIDwgMTApID8gc2Vjb25kcyA9ICcwJyArIHNlY29uZHMgOiBzZWNvbmRzO1xyXG5cclxuICAgIHN3aXRjaCAoYXJnMikge1xyXG4gICAgICBjYXNlICdoaG1tc3MnOlxyXG4gICAgICAgIHJldHVybiBgJHtob3Vyc306JHttaW51dGVzfToke3NlY29uZHN9YDtcclxuXHJcbiAgICAgIGNhc2UgJ2RkaGhtbXNzJzpcclxuICAgICAgICByZXR1cm4gYCR7ZGF5c31kLCAke2hvdXJzfWgsICR7bWludXRlc31tLCAke3NlY29uZHN9c2A7XHJcblxyXG4gICAgICBjYXNlICdkZGhobW1zc0xvbmcnOlxyXG4gICAgICAgIHJldHVybiBgJHtkYXlzfSBkYXlzLCAke2hvdXJzfSBob3VycywgJHttaW51dGVzfSBtaW51dGVzLCAke3NlY29uZHN9IHNlY29uZHNgO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { Inject, Injectable, Optional } from '@angular/core';
|
|
2
|
+
import { NavigationEnd } from '@angular/router';
|
|
3
|
+
import { Subject } from 'rxjs';
|
|
4
|
+
import { distinctUntilChanged, filter } from 'rxjs/operators';
|
|
5
|
+
import { BreadcrumbItem } from '../controls/breadcrumb/breadcrumb-item';
|
|
6
|
+
import { SHELL_CONFIG } from '../tokens';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@angular/router";
|
|
9
|
+
import * as i2 from "./utilities.service";
|
|
10
|
+
export class BreadcrumbService {
|
|
11
|
+
constructor(_router, _utilities, _shellConfig) {
|
|
12
|
+
this._router = _router;
|
|
13
|
+
this._utilities = _utilities;
|
|
14
|
+
this._shellConfig = _shellConfig;
|
|
15
|
+
this._breadcrumb$ = new Subject();
|
|
16
|
+
this.breadcrumb = this._breadcrumb$.asObservable();
|
|
17
|
+
if (_shellConfig?.breadcrumb) {
|
|
18
|
+
this._defaultHome = this._getDefaultHomeItem();
|
|
19
|
+
this._router
|
|
20
|
+
.events
|
|
21
|
+
.pipe(filter(event => event instanceof NavigationEnd), distinctUntilChanged())
|
|
22
|
+
.subscribe(_ => {
|
|
23
|
+
const breadcrumb = [...this._buildBreadcrumb()];
|
|
24
|
+
this._breadcrumb$.next(breadcrumb);
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
_getDefaultHomeItem() {
|
|
29
|
+
const routerConfig = this._router.config;
|
|
30
|
+
const declaredHomeRoutes = routerConfig.filter((route) => route.data?.breadcrumb?.isHome === true);
|
|
31
|
+
if (declaredHomeRoutes.length > 1) {
|
|
32
|
+
throw new Error('You can declare only one route as home.');
|
|
33
|
+
}
|
|
34
|
+
let homeRoute;
|
|
35
|
+
if (declaredHomeRoutes.length === 1) {
|
|
36
|
+
homeRoute = declaredHomeRoutes[0];
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
homeRoute = routerConfig.find((route) => route.path === '');
|
|
40
|
+
if (!homeRoute) {
|
|
41
|
+
return undefined;
|
|
42
|
+
}
|
|
43
|
+
const redirectionUrl = homeRoute.redirectTo;
|
|
44
|
+
if (!homeRoute?.data?.breadcrumb?.title && redirectionUrl) {
|
|
45
|
+
homeRoute = routerConfig.find((route) => route.path === redirectionUrl);
|
|
46
|
+
if (!homeRoute) {
|
|
47
|
+
return undefined;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return new BreadcrumbItem(this._getRouteTitle(homeRoute), homeRoute.path || '');
|
|
52
|
+
}
|
|
53
|
+
_getRouteTitle(route) {
|
|
54
|
+
return route?.data?.breadcrumb?.title || route.component?.name.replace('Component', '');
|
|
55
|
+
}
|
|
56
|
+
_buildBreadcrumb() {
|
|
57
|
+
const breadcrumb = [];
|
|
58
|
+
if (this._defaultHome) {
|
|
59
|
+
breadcrumb.push(this._defaultHome);
|
|
60
|
+
}
|
|
61
|
+
const url = this._router.url;
|
|
62
|
+
const path = this._utilities.getPathFromUrl(url) || '';
|
|
63
|
+
const activeRoute = this._findRouteFromUrl(path);
|
|
64
|
+
const parentRoutes = this._findParentRoutes(activeRoute);
|
|
65
|
+
breadcrumb.push(...parentRoutes);
|
|
66
|
+
if (activeRoute && activeRoute?.path !== this._defaultHome?.url) {
|
|
67
|
+
const routeData = this._getBreadcrumbRouteData(activeRoute);
|
|
68
|
+
breadcrumb.push(new BreadcrumbItem(this._getRouteTitle(activeRoute), (routeData._fullPath || activeRoute.path || '')));
|
|
69
|
+
}
|
|
70
|
+
return breadcrumb.map((route) => {
|
|
71
|
+
const routeSegments = route.url?.split('/') || [];
|
|
72
|
+
routeSegments.forEach((segment, index) => {
|
|
73
|
+
if (segment.startsWith(':')) {
|
|
74
|
+
route.url = route.url?.replace(segment, url.split('/')[index + 1]);
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
return route;
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
_findRouteFromUrl(url) {
|
|
81
|
+
const urlSegments = url.split('/').filter((segment) => segment !== '');
|
|
82
|
+
const routerConfig = this._router.config;
|
|
83
|
+
const flattenedRouterConfig = this._flattenRoutes(routerConfig);
|
|
84
|
+
const filteredRouterConfig = flattenedRouterConfig.filter((route) => {
|
|
85
|
+
const routeData = this._getBreadcrumbRouteData(route);
|
|
86
|
+
return (routeData._fullPath || route.path)?.split('/').length === urlSegments.length;
|
|
87
|
+
});
|
|
88
|
+
const route = filteredRouterConfig.find((route) => {
|
|
89
|
+
const routeData = this._getBreadcrumbRouteData(route);
|
|
90
|
+
const routeSegments = (routeData._fullPath || route.path)?.split('/') || [];
|
|
91
|
+
let segmentsMatched = false;
|
|
92
|
+
for (let i = 0; i < routeSegments.length; i++) {
|
|
93
|
+
const currentSegment = routeSegments[i];
|
|
94
|
+
const isDynamicSegment = currentSegment.startsWith(':');
|
|
95
|
+
if (!isDynamicSegment) {
|
|
96
|
+
segmentsMatched = currentSegment === urlSegments[i];
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
return segmentsMatched ? route : undefined;
|
|
100
|
+
});
|
|
101
|
+
return route;
|
|
102
|
+
}
|
|
103
|
+
_findParentRoutes(activeRoute, items = []) {
|
|
104
|
+
if (!activeRoute) {
|
|
105
|
+
return [];
|
|
106
|
+
}
|
|
107
|
+
const routeData = this._getBreadcrumbRouteData(activeRoute);
|
|
108
|
+
let urlSegments = (routeData._fullPath || activeRoute.path)?.split('/').filter((segment) => segment !== '') || [];
|
|
109
|
+
if (urlSegments?.length <= 1) {
|
|
110
|
+
return [...items];
|
|
111
|
+
}
|
|
112
|
+
const previousUrl = urlSegments.slice(0, -1).join('/');
|
|
113
|
+
const route = this._findRouteFromUrl(previousUrl);
|
|
114
|
+
if (route) {
|
|
115
|
+
const routeData = this._getBreadcrumbRouteData(route);
|
|
116
|
+
if (routeData._level > 0 || (!route.children || route.children.length === 0)) {
|
|
117
|
+
items.push(new BreadcrumbItem(this._getRouteTitle(route), routeData._fullPath || route.path));
|
|
118
|
+
this._findParentRoutes(route, [...items]);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return [...items];
|
|
122
|
+
}
|
|
123
|
+
_flattenRoutes(routes, level) {
|
|
124
|
+
let children = [];
|
|
125
|
+
level = level || 0;
|
|
126
|
+
return routes.map((route) => {
|
|
127
|
+
const routeData = this._getBreadcrumbRouteData(route);
|
|
128
|
+
routeData._level = level;
|
|
129
|
+
if (route.children && route.children.length) {
|
|
130
|
+
route.children.forEach((child) => {
|
|
131
|
+
const childRouteData = this._getBreadcrumbRouteData(child);
|
|
132
|
+
const routePath = routeData._fullPath || route.path || '';
|
|
133
|
+
const childPath = child.path?.endsWith('/') ? child.path.slice(0, -1) : child.path;
|
|
134
|
+
childRouteData._fullPath = childPath?.indexOf(routePath) === -1 ? `${routePath}/${childPath}` : childPath;
|
|
135
|
+
});
|
|
136
|
+
children = [...children, ...route.children];
|
|
137
|
+
}
|
|
138
|
+
return route;
|
|
139
|
+
}).concat(children.length ? this._flattenRoutes(children, level + 1) : children);
|
|
140
|
+
}
|
|
141
|
+
_getBreadcrumbRouteData(route) {
|
|
142
|
+
if (!route) {
|
|
143
|
+
throw new Error('No route was found');
|
|
144
|
+
}
|
|
145
|
+
if (!route.data?.breadcrumb) {
|
|
146
|
+
if (!route.data) {
|
|
147
|
+
route.data = {};
|
|
148
|
+
}
|
|
149
|
+
route.data.breadcrumb = new BreadcrumbRouteData(0, false, undefined);
|
|
150
|
+
}
|
|
151
|
+
return route.data.breadcrumb;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
BreadcrumbService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BreadcrumbService, deps: [{ token: i1.Router }, { token: i2.UtilitiesService }, { token: SHELL_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
155
|
+
BreadcrumbService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BreadcrumbService, providedIn: 'root' });
|
|
156
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: BreadcrumbService, decorators: [{
|
|
157
|
+
type: Injectable,
|
|
158
|
+
args: [{
|
|
159
|
+
providedIn: 'root'
|
|
160
|
+
}]
|
|
161
|
+
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.UtilitiesService }, { type: undefined, decorators: [{
|
|
162
|
+
type: Optional
|
|
163
|
+
}, {
|
|
164
|
+
type: Inject,
|
|
165
|
+
args: [SHELL_CONFIG]
|
|
166
|
+
}] }]; } });
|
|
167
|
+
export class BreadcrumbRouteData {
|
|
168
|
+
constructor(_level, isHome, _fullPath) {
|
|
169
|
+
this._level = _level;
|
|
170
|
+
this.isHome = isHome;
|
|
171
|
+
this._fullPath = _fullPath;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL3NlcnZpY2VzL2JyZWFkY3J1bWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFRLGFBQWEsRUFBaUIsTUFBTSxpQkFBaUIsQ0FBQztBQUVyRSxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFdBQVcsQ0FBQzs7OztBQU16QyxNQUFNLE9BQU8saUJBQWlCO0lBSTFCLFlBQ1ksT0FBZSxFQUNmLFVBQTRCLEVBQ0ssWUFBa0I7UUFGbkQsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLGVBQVUsR0FBVixVQUFVLENBQWtCO1FBQ0ssaUJBQVksR0FBWixZQUFZLENBQU07UUFMdkQsaUJBQVksR0FBOEIsSUFBSSxPQUFPLEVBQW9CLENBQUM7UUFzQjNFLGVBQVUsR0FBaUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQWYvRSxJQUFJLFlBQVksRUFBRSxVQUFVLEVBQUU7WUFDMUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztZQUMvQyxJQUFJLENBQUMsT0FBTztpQkFDUCxNQUFNO2lCQUNOLElBQUksQ0FDRCxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLFlBQVksYUFBYSxDQUFDLEVBQy9DLG9CQUFvQixFQUFFLENBQ3pCO2lC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SW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGF0YSwgTmF2aWdhdGlvbkVuZCwgUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEJyZWFkY3J1bWJJdGVtIH0gZnJvbSAnLi4vY29udHJvbHMvYnJlYWRjcnVtYi9icmVhZGNydW1iLWl0ZW0nO1xyXG5pbXBvcnQgeyBTSEVMTF9DT05GSUcgfSBmcm9tICcuLi90b2tlbnMnO1xyXG5pbXBvcnQgeyBVdGlsaXRpZXNTZXJ2aWNlIH0gZnJvbSAnLi91dGlsaXRpZXMuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEJyZWFkY3J1bWJTZXJ2aWNlIHtcclxuICAgIHByaXZhdGUgX2RlZmF1bHRIb21lOiBCcmVhZGNydW1iSXRlbSB8IHVuZGVmaW5lZDtcclxuICAgIHByaXZhdGUgX2JyZWFkY3J1bWIkOiBTdWJqZWN0PEJyZWFkY3J1bWJJdGVtW10+ID0gbmV3IFN1YmplY3Q8QnJlYWRjcnVtYkl0ZW1bXT4oKTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcclxuICAgICAgICBwcml2YXRlIF91dGlsaXRpZXM6IFV0aWxpdGllc1NlcnZpY2UsXHJcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChTSEVMTF9DT05GSUcpIHB1YmxpYyBfc2hlbGxDb25maWc/OiBhbnlcclxuICAgICkge1xyXG4gICAgICAgIGlmIChfc2hlbGxDb25maWc/LmJyZWFkY3J1bWIpIHtcclxuICAgICAgICAgICAgdGhpcy5fZGVmYXVsdEhvbWUgPSB0aGlzLl9nZXREZWZhdWx0SG9tZUl0ZW0oKTtcclxuICAgICAgICAgICAgdGhpcy5fcm91dGVyXHJcbiAgICAgICAgICAgICAgICAuZXZlbnRzXHJcbiAgICAgICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgICAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcclxuICAgICAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXHJcbiAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKF8gPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGJyZWFkY3J1bWIgPSBbLi4udGhpcy5fYnVpbGRCcmVhZGNydW1iKCldO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2JyZWFkY3J1bWIkLm5leHQoYnJlYWRjcnVtYik7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGJyZWFkY3J1bWI6IE9ic2VydmFibGU8QnJlYWRjcnVtYkl0ZW1bXT4gPSB0aGlzLl9icmVhZGNydW1iJC5hc09ic2VydmFibGUoKTtcclxuXHJcbiAgICBwcml2YXRlIF9nZXREZWZhdWx0SG9tZUl0ZW0oKTogQnJlYWRjcnVtYkl0ZW0gfCB1bmRlZmluZWQge1xyXG4gICAgICAgIGNvbnN0IHJvdXRlckNvbmZpZyA9IHRoaXMuX3JvdXRlci5jb25maWc7XHJcbiAgICAgICAgY29uc3QgZGVjbGFyZWRIb21lUm91dGVzID0gcm91dGVyQ29uZmlnLmZpbHRlcigocm91dGU6IFJvdXRlKSA9PiByb3V0ZS5kYXRhPy5icmVhZGNydW1iPy5pc0hvbWUgPT09IHRydWUpO1xyXG4gICAgICAgIGlmIChkZWNsYXJlZEhvbWVSb3V0ZXMubGVuZ3RoID4gMSkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1lvdSBjYW4gZGVjbGFyZSBvbmx5IG9uZSByb3V0ZSBhcyBob21lLicpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgaG9tZVJvdXRlOiBSb3V0ZSB8IHVuZGVmaW5lZDtcclxuICAgICAgICBpZiAoZGVjbGFyZWRIb21lUm91dGVzLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICAgICAgICBob21lUm91dGUgPSBkZWNsYXJlZEhvbWVSb3V0ZXNbMF07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaG9tZVJvdXRlID0gcm91dGVyQ29uZmlnLmZpbmQoKHJvdXRlOiBSb3V0ZSkgPT4gcm91dGUucGF0aCA9PT0gJycpO1xyXG4gICAgICAgICAgICBpZiAoIWhvbWVSb3V0ZSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjb25zdCByZWRpcmVjdGlvblVybCA9IGhvbWVSb3V0ZS5yZWRpcmVjdFRvO1xyXG4gICAgICAgICAgICBpZiAoIWhvbWVSb3V0ZT8uZGF0YT8uYnJlYWRjcnVtYj8udGl0bGUgJiYgcmVkaXJlY3Rpb25VcmwpIHtcclxuICAgICAgICAgICAgICAgIGhvbWVSb3V0ZSA9IHJvdXRlckNvbmZpZy5maW5kKChyb3V0ZTogUm91dGUpID0+IHJvdXRlLnBhdGggPT09IHJlZGlyZWN0aW9uVXJsKTtcclxuICAgICAgICAgICAgICAgIGlmICghaG9tZVJvdXRlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbmV3IEJyZWFkY3J1bWJJdGVtKHRoaXMuX2dldFJvdXRlVGl0bGUoaG9tZVJvdXRlKSwgaG9tZVJvdXRlLnBhdGggfHwgJycpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2dldFJvdXRlVGl0bGUocm91dGU6IFJvdXRlKSB7XHJcbiAgICAgICAgcmV0dXJuIHJvdXRlPy5kYXRhPy5icmVhZGNydW1iPy50aXRsZSB8fCByb3V0ZS5jb21wb25lbnQ/Lm5hbWUucmVwbGFjZSgnQ29tcG9uZW50JywgJycpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2J1aWxkQnJlYWRjcnVtYigpOiBCcmVhZGNydW1iSXRlbVtdIHtcclxuICAgICAgICBjb25zdCBicmVhZGNydW1iOiBCcmVhZGNydW1iSXRlbVtdID0gW107XHJcbiAgICAgICAgaWYgKHRoaXMuX2RlZmF1bHRIb21lKSB7XHJcbiAgICAgICAgICAgIGJyZWFkY3J1bWIucHVzaCh0aGlzLl9kZWZhdWx0SG9tZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHVybCA9IHRoaXMuX3JvdXRlci51cmw7XHJcbiAgICAgICAgY29uc3QgcGF0aCA9IHRoaXMuX3V0aWxpdGllcy5nZXRQYXRoRnJvbVVybCh1cmwpIHx8ICcnO1xyXG4gICAgICAgIGNvbnN0IGFjdGl2ZVJvdXRlID0gdGhpcy5fZmluZFJvdXRlRnJvbVVybChwYXRoKTtcclxuICAgICAgICBjb25zdCBwYXJlbnRSb3V0ZXMgPSB0aGlzLl9maW5kUGFyZW50Um91dGVzKGFjdGl2ZVJvdXRlKTtcclxuICAgICAgICBicmVhZGNydW1iLnB1c2goLi4ucGFyZW50Um91dGVzKTtcclxuICAgICAgICBpZiAoYWN0aXZlUm91dGUgJiYgYWN0aXZlUm91dGU/LnBhdGggIT09IHRoaXMuX2RlZmF1bHRIb21lPy51cmwpIHtcclxuICAgICAgICAgICAgY29uc3Qgcm91dGVEYXRhID0gdGhpcy5fZ2V0QnJlYWRjcnVtYlJvdXRlRGF0YShhY3RpdmVSb3V0ZSk7XHJcbiAgICAgICAgICAgIGJyZWFkY3J1bWIucHVzaChuZXcgQnJlYWRjcnVtYkl0ZW0odGhpcy5fZ2V0Um91dGVUaXRsZShhY3RpdmVSb3V0ZSksIChyb3V0ZURhdGEuX2Z1bGxQYXRoIHx8IGFjdGl2ZVJvdXRlLnBhdGggfHwgJycpKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBicmVhZGNydW1iLm1hcCgocm91dGU6IEJyZWFkY3J1bWJJdGVtKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHJvdXRlU2VnbWVudHMgPSByb3V0ZS51cmw/LnNwbGl0KCcvJykgfHwgW107XHJcbiAgICAgICAgICAgIHJvdXRlU2VnbWVudHMuZm9yRWFjaCgoc2VnbWVudDogc3RyaW5nLCBpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoc2VnbWVudC5zdGFydHNXaXRoKCc6JykpIHtcclxuICAgICAgICAgICAgICAgICAgICByb3V0ZS51cmwgPSByb3V0ZS51cmw/LnJlcGxhY2Uoc2VnbWVudCwgdXJsLnNwbGl0KCcvJylbaW5kZXggKyAxXSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICByZXR1cm4gcm91dGU7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfZmluZFJvdXRlRnJvbVVybCh1cmw6IHN0cmluZyk6IFJvdXRlIHwgdW5kZWZpbmVkIHtcclxuICAgICAgICBjb25zdCB1cmxTZWdtZW50cyA9IHVybC5zcGxpdCgnLycpLmZpbHRlcigoc2VnbWVudDogc3RyaW5nKSA9PiBzZWdtZW50ICE9PSAnJyk7XHJcbiAgICAgICAgY29uc3Qgcm91dGVyQ29uZmlnID0gdGhpcy5fcm91dGVyLmNvbmZpZztcclxuICAgICAgICBjb25zdCBmbGF0dGVuZWRSb3V0ZXJDb25maWcgPSB0aGlzLl9mbGF0dGVuUm91dGVzKHJvdXRlckNvbmZpZyk7XHJcbiAgICAgICAgY29uc3QgZmlsdGVyZWRSb3V0ZXJDb25maWcgPSBmbGF0dGVuZWRSb3V0ZXJDb25maWcuZmlsdGVyKChyb3V0ZTogUm91dGUpID0+IHtcclxuICAgICAgICAgICAgY29uc3Qgcm91dGVEYXRhID0gdGhpcy5fZ2V0QnJlYWRjcnVtYlJvdXRlRGF0YShyb3V0ZSk7XHJcbiAgICAgICAgICAgIHJldHVybiAocm91dGVEYXRhLl9mdWxsUGF0aCB8fCByb3V0ZS5wYXRoKT8uc3BsaXQoJy8nKS5sZW5ndGggPT09IHVybFNlZ21lbnRzLmxlbmd0aDtcclxuICAgICAgICB9KTtcclxuICAgICAgICBjb25zdCByb3V0ZSA9IGZpbHRlcmVkUm91dGVyQ29uZmlnLmZpbmQoKHJvdXRlOiBSb3V0ZSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCByb3V0ZURhdGEgPSB0aGlzLl9nZXRCcmVhZGNydW1iUm91dGVEYXRhKHJvdXRlKTtcclxuICAgICAgICAgICAgY29uc3Qgcm91dGVTZWdtZW50cyA9IChyb3V0ZURhdGEuX2Z1bGxQYXRoIHx8IHJvdXRlLnBhdGgpPy5zcGxpdCgnLycpIHx8IFtdO1xyXG4gICAgICAgICAgICBsZXQgc2VnbWVudHNNYXRjaGVkID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcm91dGVTZWdtZW50cy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgY3VycmVudFNlZ21lbnQgPSByb3V0ZVNlZ21lbnRzW2ldO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgaXNEeW5hbWljU2VnbWVudCA9IGN1cnJlbnRTZWdtZW50LnN0YXJ0c1dpdGgoJzonKTtcclxuICAgICAgICAgICAgICAgIGlmICghaXNEeW5hbWljU2VnbWVudCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHNlZ21lbnRzTWF0Y2hlZCA9IGN1cnJlbnRTZWdtZW50ID09PSB1cmxTZWdtZW50c1tpXTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gc2VnbWVudHNNYXRjaGVkID8gcm91dGUgOiB1bmRlZmluZWQ7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIHJvdXRlO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2ZpbmRQYXJlbnRSb3V0ZXMoYWN0aXZlUm91dGU6IFJvdXRlIHwgdW5kZWZpbmVkLCBpdGVtczogQnJlYWRjcnVtYkl0ZW1bXSA9IFtdKTogQnJlYWRjcnVtYkl0ZW1bXSB7XHJcbiAgICAgICAgaWYgKCFhY3RpdmVSb3V0ZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gW107XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHJvdXRlRGF0YSA9IHRoaXMuX2dldEJyZWFkY3J1bWJSb3V0ZURhdGEoYWN0aXZlUm91dGUpO1xyXG4gICAgICAgIGxldCB1cmxTZWdtZW50cyA9IChyb3V0ZURhdGEuX2Z1bGxQYXRoIHx8IGFjdGl2ZVJvdXRlLnBhdGgpPy5zcGxpdCgnLycpLmZpbHRlcigoc2VnbWVudDogc3RyaW5nKSA9PiBzZWdtZW50ICE9PSAnJykgfHwgW107XHJcbiAgICAgICAgaWYgKHVybFNlZ21lbnRzPy5sZW5ndGggPD0gMSkge1xyXG4gICAgICAgICAgICByZXR1cm4gWy4uLml0ZW1zXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgcHJldmlvdXNVcmwgPSB1cmxTZWdtZW50cy5zbGljZSgwLCAtMSkuam9pbignLycpO1xyXG4gICAgICAgIGNvbnN0IHJvdXRlID0gdGhpcy5fZmluZFJvdXRlRnJvbVVybChwcmV2aW91c1VybCk7XHJcbiAgICAgICAgaWYgKHJvdXRlKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHJvdXRlRGF0YSA9IHRoaXMuX2dldEJyZWFkY3J1bWJSb3V0ZURhdGEocm91dGUpO1xyXG4gICAgICAgICAgICBpZiAocm91dGVEYXRhLl9sZXZlbCA+IDAgfHwgKCFyb3V0ZS5jaGlsZHJlbiB8fCByb3V0ZS5jaGlsZHJlbi5sZW5ndGggPT09IDApKSB7XHJcbiAgICAgICAgICAgICAgICBpdGVtcy5wdXNoKG5ldyBCcmVhZGNydW1iSXRlbSh0aGlzLl9nZXRSb3V0ZVRpdGxlKHJvdXRlKSwgcm91dGVEYXRhLl9mdWxsUGF0aCB8fCByb3V0ZS5wYXRoKSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9maW5kUGFyZW50Um91dGVzKHJvdXRlLCBbLi4uaXRlbXNdKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gWy4uLml0ZW1zXTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9mbGF0dGVuUm91dGVzKHJvdXRlczogUm91dGVbXSwgbGV2ZWw/OiBudW1iZXIpOiBSb3V0ZVtdIHtcclxuICAgICAgICBsZXQgY2hpbGRyZW46IFJvdXRlW10gPSBbXTtcclxuICAgICAgICBsZXZlbCA9IGxldmVsIHx8IDA7XHJcbiAgICAgICAgcmV0dXJuIHJvdXRlcy5tYXAoKHJvdXRlOiBSb3V0ZSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCByb3V0ZURhdGEgPSB0aGlzLl9nZXRCcmVhZGNydW1iUm91dGVEYXRhKHJvdXRlKTtcclxuICAgICAgICAgICAgcm91dGVEYXRhLl9sZXZlbCA9IGxldmVsITtcclxuICAgICAgICAgICAgaWYgKHJvdXRlLmNoaWxkcmVuICYmIHJvdXRlLmNoaWxkcmVuLmxlbmd0aCkge1xyXG4gICAgICAgICAgICAgICAgcm91dGUuY2hpbGRyZW4uZm9yRWFjaCgoY2hpbGQ6IFJvdXRlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hpbGRSb3V0ZURhdGEgPSB0aGlzLl9nZXRCcmVhZGNydW1iUm91dGVEYXRhKGNoaWxkKTtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCByb3V0ZVBhdGggPSByb3V0ZURhdGEuX2Z1bGxQYXRoIHx8IHJvdXRlLnBhdGggfHwgJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hpbGRQYXRoID0gY2hpbGQucGF0aD8uZW5kc1dpdGgoJy8nKSA/IGNoaWxkLnBhdGguc2xpY2UoMCwgLTEpIDogY2hpbGQucGF0aDtcclxuICAgICAgICAgICAgICAgICAgICBjaGlsZFJvdXRlRGF0YS5fZnVsbFBhdGggPSBjaGlsZFBhdGg/LmluZGV4T2Yocm91dGVQYXRoKSA9PT0gLTEgPyBgJHtyb3V0ZVBhdGh9LyR7Y2hpbGRQYXRofWAgOiBjaGlsZFBhdGg7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIGNoaWxkcmVuID0gWy4uLmNoaWxkcmVuLCAuLi5yb3V0ZS5jaGlsZHJlbl07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIHJvdXRlO1xyXG4gICAgICAgIH0pLmNvbmNhdChjaGlsZHJlbi5sZW5ndGggPyB0aGlzLl9mbGF0dGVuUm91dGVzKGNoaWxkcmVuLCBsZXZlbCArIDEpIDogY2hpbGRyZW4pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2dldEJyZWFkY3J1bWJSb3V0ZURhdGEocm91dGU6IFJvdXRlIHwgdW5kZWZpbmVkKTogQnJlYWRjcnVtYlJvdXRlRGF0YSB7XHJcbiAgICAgICAgaWYgKCFyb3V0ZSkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHJvdXRlIHdhcyBmb3VuZCcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoIXJvdXRlLmRhdGE/LmJyZWFkY3J1bWIpIHtcclxuICAgICAgICAgICAgaWYgKCFyb3V0ZS5kYXRhKSB7XHJcbiAgICAgICAgICAgICAgICByb3V0ZS5kYXRhID0ge307XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcm91dGUuZGF0YS5icmVhZGNydW1iID0gbmV3IEJyZWFkY3J1bWJSb3V0ZURhdGEoMCwgZmFsc2UsIHVuZGVmaW5lZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiByb3V0ZS5kYXRhLmJyZWFkY3J1bWI7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBCcmVhZGNydW1iUm91dGVEYXRhIHtcclxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBfbGV2ZWw6IG51bWJlciwgcHVibGljIGlzSG9tZTogYm9vbGVhbiwgcHVibGljIF9mdWxsUGF0aD86IHN0cmluZyB8IHVuZGVmaW5lZCkgeyB9XHJcbn1cclxuIl19
|