From f90f389fe56f0338d83c609dcc7f2ee8bca8c2fb Mon Sep 17 00:00:00 2001 From: mehmet-erim Date: Wed, 11 Sep 2019 15:45:36 +0300 Subject: [PATCH 01/21] feature(theme-shared): add lazy import chart.js add widget utils fix code quality of chart.component --- .../packages/theme-shared/ng-package.json | 3 +- .../packages/theme-shared/package.json | 1 + .../lib/components/chart/chart.component.ts | 39 +++++++++++++------ .../src/lib/theme-shared.module.ts | 15 ++++--- .../theme-shared/src/lib/utils/index.ts | 1 + .../src/lib/utils/widget-utils.ts | 16 ++++++++ .../packages/theme-shared/src/public-api.ts | 1 + 7 files changed, 57 insertions(+), 19 deletions(-) create mode 100644 npm/ng-packs/packages/theme-shared/src/lib/utils/index.ts create mode 100644 npm/ng-packs/packages/theme-shared/src/lib/utils/widget-utils.ts diff --git a/npm/ng-packs/packages/theme-shared/ng-package.json b/npm/ng-packs/packages/theme-shared/ng-package.json index bcd238cd36..984eb7c61a 100644 --- a/npm/ng-packs/packages/theme-shared/ng-package.json +++ b/npm/ng-packs/packages/theme-shared/ng-package.json @@ -13,6 +13,7 @@ "font-awesome", "ngx-perfect-scrollbar", "primeicons", - "primeng" + "primeng", + "chart.js" ] } diff --git a/npm/ng-packs/packages/theme-shared/package.json b/npm/ng-packs/packages/theme-shared/package.json index a71bc08def..867930bf1f 100644 --- a/npm/ng-packs/packages/theme-shared/package.json +++ b/npm/ng-packs/packages/theme-shared/package.json @@ -7,6 +7,7 @@ "@ng-bootstrap/ng-bootstrap": "^5.1.0", "@ngx-validate/core": "^0.0.4", "bootstrap": "^4.3.1", + "chart.js": "^2.8.0", "font-awesome": "^4.7.0", "ngx-perfect-scrollbar": "^8.0.0", "primeicons": "^1.0.0", diff --git a/npm/ng-packs/packages/theme-shared/src/lib/components/chart/chart.component.ts b/npm/ng-packs/packages/theme-shared/src/lib/components/chart/chart.component.ts index 2c8b7d0fb4..a3ff6bbdaa 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/components/chart/chart.component.ts +++ b/npm/ng-packs/packages/theme-shared/src/lib/components/chart/chart.component.ts @@ -1,5 +1,15 @@ -import { AfterViewInit, Component, ElementRef, EventEmitter, Input, OnDestroy, Output } from '@angular/core'; +import { + AfterViewInit, + Component, + ElementRef, + EventEmitter, + Input, + OnDestroy, + Output, + ChangeDetectorRef, +} from '@angular/core'; import { BehaviorSubject } from 'rxjs'; +import { chartJsLoaded$ } from '../../utils/widget-utils'; declare const Chart: any; @Component({ @@ -29,7 +39,7 @@ export class ChartComponent implements AfterViewInit, OnDestroy { chart: any; - constructor(public el: ElementRef) {} + constructor(public el: ElementRef, private cdRef: ChangeDetectorRef) {} @Input() get data(): any { return this._data; @@ -49,17 +59,19 @@ export class ChartComponent implements AfterViewInit, OnDestroy { } ngAfterViewInit() { - try { - Chart; - } catch (error) { - console.error(`Chart is not found. Import the Chart from app.module like shown below: - import('chart.js'); - `); - return; - } + chartJsLoaded$.subscribe(() => { + try { + Chart; + } catch (error) { + console.error(`Chart is not found. Import the Chart from app.module like shown below: + import('chart.js'); + `); + return; + } - this.initChart(); - this._initialized = true; + this.initChart(); + this._initialized = true; + }); } onCanvasClick = event => { @@ -87,6 +99,8 @@ export class ChartComponent implements AfterViewInit, OnDestroy { options: this.options, plugins: this.plugins, }); + + this.cdRef.detectChanges(); }; generateLegend = () => { @@ -98,6 +112,7 @@ export class ChartComponent implements AfterViewInit, OnDestroy { refresh = () => { if (this.chart) { this.chart.update(); + this.cdRef.detectChanges(); } }; diff --git a/npm/ng-packs/packages/theme-shared/src/lib/theme-shared.module.ts b/npm/ng-packs/packages/theme-shared/src/lib/theme-shared.module.ts index 0933a607d2..606bb0dafd 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/theme-shared.module.ts +++ b/npm/ng-packs/packages/theme-shared/src/lib/theme-shared.module.ts @@ -5,19 +5,22 @@ import { MessageService } from 'primeng/components/common/messageservice'; import { ToastModule } from 'primeng/toast'; import { forkJoin } from 'rxjs'; import { take } from 'rxjs/operators'; +import { BreadcrumbComponent } from './components/breadcrumb/breadcrumb.component'; +import { ButtonComponent } from './components/button/button.component'; +import { ChangePasswordComponent } from './components/change-password/change-password.component'; +import { ChartComponent } from './components/chart/chart.component'; import { ConfirmationComponent } from './components/confirmation/confirmation.component'; import { ErrorComponent } from './components/errors/error.component'; +import { ValidationErrorComponent } from './components/errors/validation-error.component'; import { LoaderBarComponent } from './components/loader-bar/loader-bar.component'; import { ModalComponent } from './components/modal/modal.component'; +import { ProfileComponent } from './components/profile/profile.component'; import { ToastComponent } from './components/toast/toast.component'; import styles from './contants/styles'; import { ErrorHandler } from './handlers/error.handler'; -import { ButtonComponent } from './components/button/button.component'; -import { ValidationErrorComponent } from './components/errors/validation-error.component'; -import { ChangePasswordComponent } from './components/change-password/change-password.component'; -import { ProfileComponent } from './components/profile/profile.component'; -import { BreadcrumbComponent } from './components/breadcrumb/breadcrumb.component'; -import { ChartComponent } from './components/chart/chart.component'; +import { chartJsLoaded$ } from './utils/widget-utils'; + +import('chart.js').then(() => chartJsLoaded$.next(true)); export function appendScript(injector: Injector) { const fn = function() { diff --git a/npm/ng-packs/packages/theme-shared/src/lib/utils/index.ts b/npm/ng-packs/packages/theme-shared/src/lib/utils/index.ts new file mode 100644 index 0000000000..1976b866a0 --- /dev/null +++ b/npm/ng-packs/packages/theme-shared/src/lib/utils/index.ts @@ -0,0 +1 @@ +export * from './widget-utils'; diff --git a/npm/ng-packs/packages/theme-shared/src/lib/utils/widget-utils.ts b/npm/ng-packs/packages/theme-shared/src/lib/utils/widget-utils.ts new file mode 100644 index 0000000000..dfe81c973c --- /dev/null +++ b/npm/ng-packs/packages/theme-shared/src/lib/utils/widget-utils.ts @@ -0,0 +1,16 @@ +import { ReplaySubject } from 'rxjs'; + +export function getRandomBackgroundColor(count) { + const colors = []; + + for (let i = 0; i < count; i++) { + const r = ((i + 5) * (i + 5) * 474) % 255; + const g = ((i + 5) * (i + 5) * 1600) % 255; + const b = ((i + 5) * (i + 5) * 84065) % 255; + colors.push('rgba(' + r + ', ' + g + ', ' + b + ', 0.7)'); + } + + return colors; +} + +export const chartJsLoaded$ = new ReplaySubject(1); diff --git a/npm/ng-packs/packages/theme-shared/src/public-api.ts b/npm/ng-packs/packages/theme-shared/src/public-api.ts index 6a9eae0f64..aaa54db7c2 100644 --- a/npm/ng-packs/packages/theme-shared/src/public-api.ts +++ b/npm/ng-packs/packages/theme-shared/src/public-api.ts @@ -7,3 +7,4 @@ export * from './lib/animations'; export * from './lib/components'; export * from './lib/models'; export * from './lib/services'; +export * from './lib/utils'; From 1b30f90f79b4ac0187baebee1ced73aa1d8dd601 Mon Sep 17 00:00:00 2001 From: mehmet-erim Date: Wed, 11 Sep 2019 16:03:31 +0300 Subject: [PATCH 02/21] fix(theme-shared): move chart.js importing in the appendScript function --- .../packages/theme-shared/src/lib/theme-shared.module.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/npm/ng-packs/packages/theme-shared/src/lib/theme-shared.module.ts b/npm/ng-packs/packages/theme-shared/src/lib/theme-shared.module.ts index 606bb0dafd..9323565f7f 100644 --- a/npm/ng-packs/packages/theme-shared/src/lib/theme-shared.module.ts +++ b/npm/ng-packs/packages/theme-shared/src/lib/theme-shared.module.ts @@ -20,10 +20,10 @@ import styles from './contants/styles'; import { ErrorHandler } from './handlers/error.handler'; import { chartJsLoaded$ } from './utils/widget-utils'; -import('chart.js').then(() => chartJsLoaded$.next(true)); - export function appendScript(injector: Injector) { const fn = function() { + import('chart.js').then(() => chartJsLoaded$.next(true)); + const lazyLoadService: LazyLoadService = injector.get(LazyLoadService); return forkJoin( From 3025df9b0cc45dedd86d4d246bb61ab0b3b19994 Mon Sep 17 00:00:00 2001 From: mehmet-erim Date: Thu, 12 Sep 2019 11:56:18 +0300 Subject: [PATCH 03/21] Build ng packages --- npm/ng-packs/dist/account/abp-ng.account.d.ts | 14 +- .../dist/account/abp-ng.account.metadata.json | 2 +- .../account/bundles/abp-ng.account.umd.js | 102 +- .../account/bundles/abp-ng.account.umd.js.map | 2 +- .../account/bundles/abp-ng.account.umd.min.js | 2 +- .../bundles/abp-ng.account.umd.min.js.map | 2 +- .../dist/account/esm2015/abp-ng.account.js | 16 +- .../account/esm2015/lib/account.module.js | 17 +- .../esm2015/lib/root-account.module.js | 29 - .../dist/account/esm2015/public-api.js | 5 +- .../dist/account/esm5/abp-ng.account.js | 16 +- .../dist/account/esm5/lib/account.module.js | 18 +- .../account/esm5/lib/root-account.module.js | 38 - npm/ng-packs/dist/account/esm5/public-api.js | 5 +- .../dist/account/fesm2015/abp-ng.account.js | 73 +- .../account/fesm2015/abp-ng.account.js.map | 2 +- .../dist/account/fesm5/abp-ng.account.js | 84 +- .../dist/account/fesm5/abp-ng.account.js.map | 2 +- .../dist/account/lib/account.module.d.ts | 3 + .../dist/account/lib/root-account.module.d.ts | 5 - npm/ng-packs/dist/account/public-api.d.ts | 1 - npm/ng-packs/dist/core/abp-ng.core.d.ts | 6 +- .../dist/core/abp-ng.core.metadata.json | 2 +- .../dist/core/bundles/abp-ng.core.umd.js | 865 ++++-- .../dist/core/bundles/abp-ng.core.umd.js.map | 2 +- .../dist/core/bundles/abp-ng.core.umd.min.js | 2 +- .../core/bundles/abp-ng.core.umd.min.js.map | 2 +- npm/ng-packs/dist/core/esm2015/abp-ng.core.js | 10 +- .../components/dynamic-layout.component.js | 46 +- .../dist/core/esm2015/lib/core.module.js | 5 +- .../esm2015/lib/directives/for.directive.js | 274 ++ .../dist/core/esm2015/lib/directives/index.js | 3 +- .../dist/core/esm2015/lib/enums/common.js | 3 +- .../dist/core/esm2015/lib/models/common.js | 2 +- .../dist/core/esm2015/lib/models/config.js | 9 +- .../lib/plugins/config/config.plugin.js | 37 +- .../core/esm2015/lib/states/config.state.js | 86 +- npm/ng-packs/dist/core/esm2015/public-api.js | 4 +- npm/ng-packs/dist/core/esm5/abp-ng.core.js | 10 +- .../components/dynamic-layout.component.js | 43 +- .../dist/core/esm5/lib/core.module.js | 5 +- .../core/esm5/lib/directives/for.directive.js | 298 ++ .../dist/core/esm5/lib/directives/index.js | 3 +- .../dist/core/esm5/lib/enums/common.js | 3 +- .../dist/core/esm5/lib/models/common.js | 2 +- .../dist/core/esm5/lib/models/config.js | 9 +- .../esm5/lib/plugins/config/config.plugin.js | 37 +- .../dist/core/esm5/lib/states/config.state.js | 89 +- npm/ng-packs/dist/core/esm5/public-api.js | 4 +- .../dist/core/fesm2015/abp-ng.core.js | 757 +++-- .../dist/core/fesm2015/abp-ng.core.js.map | 2 +- npm/ng-packs/dist/core/fesm5/abp-ng.core.js | 866 ++++-- .../dist/core/fesm5/abp-ng.core.js.map | 2 +- .../components/dynamic-layout.component.d.ts | 7 +- .../core/lib/directives/for.directive.d.ts | 33 + .../dist/core/lib/directives/index.d.ts | 1 + npm/ng-packs/dist/core/lib/enums/common.d.ts | 3 +- npm/ng-packs/dist/core/lib/models/common.d.ts | 2 +- npm/ng-packs/dist/core/lib/models/config.d.ts | 14 +- .../core/lib/services/config.service.d.ts | 2 +- .../dist/core/lib/states/config.state.d.ts | 10 +- .../dist/core/lib/tokens/common.token.d.ts | 3 + npm/ng-packs/dist/core/package.json | 1 + .../abp-ng.feature-management.metadata.json | 2 +- .../bundles/abp-ng.feature-management.umd.js | 34 +- .../abp-ng.feature-management.umd.js.map | 2 +- .../abp-ng.feature-management.umd.min.js | 2 +- .../abp-ng.feature-management.umd.min.js.map | 2 +- .../esm2015/abp-ng.feature-management.js | 4 +- .../lib/root-feature-management.module.js | 20 - .../feature-management/esm2015/public-api.js | 3 +- .../esm5/abp-ng.feature-management.js | 4 +- .../lib/root-feature-management.module.js | 27 - .../feature-management/esm5/public-api.js | 3 +- .../fesm2015/abp-ng.feature-management.js | 23 +- .../fesm2015/abp-ng.feature-management.js.map | 2 +- .../fesm5/abp-ng.feature-management.js | 29 +- .../fesm5/abp-ng.feature-management.js.map | 2 +- .../lib/root-feature-management.module.d.ts | 4 - .../dist/feature-management/public-api.d.ts | 1 - .../identity/abp-ng.identity.metadata.json | 2 +- .../identity/bundles/abp-ng.identity.umd.js | 44 +- .../bundles/abp-ng.identity.umd.js.map | 2 +- .../bundles/abp-ng.identity.umd.min.js | 2 +- .../bundles/abp-ng.identity.umd.min.js.map | 2 +- .../dist/identity/esm2015/abp-ng.identity.js | 4 +- .../lib/components/users/users.component.js | 4 +- .../identity/esm2015/lib/identity.module.js | 10 +- .../esm2015/lib/root-identity.module.js | 20 - .../dist/identity/esm2015/public-api.js | 5 +- .../dist/identity/esm5/abp-ng.identity.js | 4 +- .../lib/components/users/users.component.js | 4 +- .../dist/identity/esm5/lib/identity.module.js | 10 +- .../identity/esm5/lib/root-identity.module.js | 27 - npm/ng-packs/dist/identity/esm5/public-api.js | 5 +- .../dist/identity/fesm2015/abp-ng.identity.js | 33 +- .../identity/fesm2015/abp-ng.identity.js.map | 2 +- .../dist/identity/fesm5/abp-ng.identity.js | 39 +- .../identity/fesm5/abp-ng.identity.js.map | 2 +- .../dist/identity/lib/identity.module.d.ts | 2 + .../identity/lib/root-identity.module.d.ts | 4 - npm/ng-packs/dist/identity/public-api.d.ts | 1 - ...abp-ng.permission-management.metadata.json | 2 +- .../abp-ng.permission-management.umd.js | 38 +- .../abp-ng.permission-management.umd.js.map | 2 +- .../abp-ng.permission-management.umd.min.js | 2 +- ...bp-ng.permission-management.umd.min.js.map | 2 +- .../esm2015/abp-ng.permission-management.js | 4 +- .../permission-management.component.js | 4 +- .../lib/permission-management.module.js | 5 +- .../lib/root-permission-management.module.js | 20 - .../esm2015/public-api.js | 3 +- .../esm5/abp-ng.permission-management.js | 4 +- .../permission-management.component.js | 4 +- .../esm5/lib/permission-management.module.js | 5 +- .../lib/root-permission-management.module.js | 27 - .../permission-management/esm5/public-api.js | 3 +- .../fesm2015/abp-ng.permission-management.js | 28 +- .../abp-ng.permission-management.js.map | 2 +- .../fesm5/abp-ng.permission-management.js | 34 +- .../fesm5/abp-ng.permission-management.js.map | 2 +- .../root-permission-management.module.d.ts | 4 - .../permission-management/public-api.d.ts | 1 - .../abp-ng.setting-management.d.ts | 6 +- .../abp-ng.setting-management.metadata.json | 2 +- .../bundles/abp-ng.setting-management.umd.js | 496 ++-- .../abp-ng.setting-management.umd.js.map | 2 +- .../abp-ng.setting-management.umd.min.js | 2 +- .../abp-ng.setting-management.umd.min.js.map | 2 +- .../esm2015/abp-ng.setting-management.js | 10 +- .../esm2015/lib/components/index.js | 6 - .../components/services/initial.service.js | 58 - .../components/setting-layout.component.js | 73 + .../components/setting/setting.component.js | 44 - .../esm2015/lib/constants/routes.js | 3 +- .../lib/root-setting-management.module.js | 20 - .../services/setting-management.service.js | 131 + .../lib/setting-management-routing.module.js | 12 +- .../esm2015/lib/setting-management.module.js | 23 +- .../setting-management/esm2015/public-api.js | 7 +- .../esm5/abp-ng.setting-management.js | 10 +- .../esm5/lib/components/index.js | 6 - .../components/services/initial.service.js | 58 - .../components/setting-layout.component.js | 78 + .../components/setting/setting.component.js | 46 - .../esm5/lib/constants/routes.js | 3 +- .../lib/root-setting-management.module.js | 27 - .../services/setting-management.service.js | 145 + .../lib/setting-management-routing.module.js | 12 +- .../esm5/lib/setting-management.module.js | 21 +- .../setting-management/esm5/public-api.js | 7 +- .../fesm2015/abp-ng.setting-management.js | 270 +- .../fesm2015/abp-ng.setting-management.js.map | 2 +- .../fesm5/abp-ng.setting-management.js | 291 +- .../fesm5/abp-ng.setting-management.js.map | 2 +- .../lib/components/index.d.ts | 1 - .../components/services/initial.service.d.ts | 7 - .../components/setting-layout.component.d.ts | 14 + .../components/setting/setting.component.d.ts | 10 - .../lib/constants/routes.d.ts | 1 - .../lib/root-setting-management.module.d.ts | 4 - .../services/setting-management.service.d.ts | 15 + .../lib/setting-management.module.d.ts | 4 +- .../dist/setting-management/public-api.d.ts | 3 +- .../abp-ng.tenant-management.metadata.json | 2 +- .../bundles/abp-ng.tenant-management.umd.js | 41 +- .../abp-ng.tenant-management.umd.js.map | 2 +- .../abp-ng.tenant-management.umd.min.js | 2 +- .../abp-ng.tenant-management.umd.min.js.map | 2 +- .../esm2015/abp-ng.tenant-management.js | 4 +- .../lib/root-tenant-management.module.js | 20 - .../esm2015/lib/tenant-management.module.js | 8 +- .../tenant-management/esm2015/public-api.js | 5 +- .../esm5/abp-ng.tenant-management.js | 4 +- .../esm5/lib/root-tenant-management.module.js | 27 - .../esm5/lib/tenant-management.module.js | 8 +- .../dist/tenant-management/esm5/public-api.js | 5 +- .../fesm2015/abp-ng.tenant-management.js | 29 +- .../fesm2015/abp-ng.tenant-management.js.map | 2 +- .../fesm5/abp-ng.tenant-management.js | 35 +- .../fesm5/abp-ng.tenant-management.js.map | 2 +- .../lib/root-tenant-management.module.d.ts | 4 - .../lib/tenant-management.module.d.ts | 2 + .../dist/tenant-management/public-api.d.ts | 1 - npm/ng-packs/dist/theme-basic/README.md | 1 - .../dist/theme-basic/abp-ng.theme.basic.d.ts | 12 - .../abp-ng.theme.basic.metadata.json | 1 - .../bundles/abp-ng.theme.basic.umd.js | 850 ------ .../bundles/abp-ng.theme.basic.umd.js.map | 1 - .../bundles/abp-ng.theme.basic.umd.min.js | 2 - .../bundles/abp-ng.theme.basic.umd.min.js.map | 1 - .../theme-basic/esm2015/abp-ng.theme.basic.js | 16 - .../theme-basic/esm2015/lib/actions/index.js | 6 - .../esm2015/lib/actions/layout.actions.js | 35 - .../account-layout.component.js | 20 - .../application-layout.component.js | 281 -- .../empty-layout/empty-layout.component.js | 22 - .../esm2015/lib/components/index.js | 8 - .../lib/components/layout/layout.component.js | 44 - .../theme-basic/esm2015/lib/models/index.js | 6 - .../theme-basic/esm2015/lib/models/layout.js | 30 - .../esm2015/lib/states/layout.state.js | 105 - .../esm2015/lib/theme-basic.module.js | 37 - .../dist/theme-basic/esm2015/public-api.js | 13 - .../theme-basic/esm5/abp-ng.theme.basic.js | 16 - .../theme-basic/esm5/lib/actions/index.js | 6 - .../esm5/lib/actions/layout.actions.js | 33 - .../account-layout.component.js | 24 - .../application-layout.component.js | 322 -- .../empty-layout/empty-layout.component.js | 23 - .../theme-basic/esm5/lib/components/index.js | 8 - .../lib/components/layout/layout.component.js | 47 - .../theme-basic/esm5/lib/models/layout.js | 30 - .../dist/theme-basic/esm5/lib/states/index.js | 6 - .../esm5/lib/states/layout.state.js | 131 - .../esm5/lib/theme-basic.module.js | 42 - .../dist/theme-basic/esm5/public-api.js | 13 - .../fesm2015/abp-ng.theme.basic.js | 585 ---- .../fesm2015/abp-ng.theme.basic.js.map | 1 - .../theme-basic/fesm5/abp-ng.theme.basic.js | 655 ----- .../fesm5/abp-ng.theme.basic.js.map | 1 - .../dist/theme-basic/lib/actions/index.d.ts | 1 - .../lib/actions/layout.actions.d.ts | 11 - .../account-layout.component.d.ts | 4 - .../application-layout.component.d.ts | 35 - .../empty-layout/empty-layout.component.d.ts | 4 - .../theme-basic/lib/components/index.d.ts | 3 - .../components/layout/layout.component.d.ts | 8 - .../dist/theme-basic/lib/models/index.d.ts | 1 - .../dist/theme-basic/lib/models/layout.d.ts | 11 - .../dist/theme-basic/lib/states/index.d.ts | 1 - .../theme-basic/lib/states/layout.state.d.ts | 8 - .../theme-basic/lib/theme-basic.module.d.ts | 5 - npm/ng-packs/dist/theme-basic/package.json | 21 - npm/ng-packs/dist/theme-basic/public-api.d.ts | 5 - .../theme-shared/abp-ng.theme.shared.d.ts | 27 +- .../abp-ng.theme.shared.metadata.json | 2 +- .../bundles/abp-ng.theme.shared.umd.js | 2205 ++++++++------ .../bundles/abp-ng.theme.shared.umd.js.map | 2 +- .../bundles/abp-ng.theme.shared.umd.min.js | 2 +- .../abp-ng.theme.shared.umd.min.js.map | 2 +- .../esm2015/abp-ng.theme.shared.js | 31 +- .../lib/components/chart/chart.component.js | 206 ++ .../confirmation/confirmation.component.js | 19 +- .../esm2015/lib/components/index.js | 5 +- .../lib/components/modal/modal.component.js | 17 +- .../lib/components/toast/toast.component.js | 4 +- .../esm2015/lib/contants/styles.js | 107 +- .../theme-shared/esm2015/lib/models/index.js | 5 +- .../esm2015/lib/models/setting-management.js | 6 +- .../esm2015/lib/models/statistics.js | 33 + .../esm2015/lib/theme-shared.module.js | 38 +- .../esm2015/lib/utils}/index.js | 4 +- .../esm2015/lib/utils/widget-utils.js | 26 + .../dist/theme-shared/esm2015/public-api.js | 5 +- .../theme-shared/esm5/abp-ng.theme.shared.js | 31 +- .../lib/components/chart/chart.component.js | 222 ++ .../confirmation/confirmation.component.js | 4 +- .../theme-shared/esm5/lib/components/index.js | 5 +- .../lib/components/modal/modal.component.js | 17 +- .../lib/components/toast/toast.component.js | 4 +- .../theme-shared/esm5/lib/contants/styles.js | 4 +- .../theme-shared/esm5/lib/models/index.js | 5 +- .../esm5/lib/models/setting-management.js | 6 +- .../esm5/lib/models/statistics.js | 33 + .../esm5/lib/theme-shared.module.js | 38 +- .../esm5/lib/utils}/index.js | 4 +- .../esm5/lib/utils/widget-utils.js | 26 + .../dist/theme-shared/esm5/public-api.js | 5 +- .../fesm2015/abp-ng.theme.shared.js | 2587 ++++++++++------- .../fesm2015/abp-ng.theme.shared.js.map | 2 +- .../theme-shared/fesm5/abp-ng.theme.shared.js | 2212 ++++++++------ .../fesm5/abp-ng.theme.shared.js.map | 2 +- .../lib/components/chart/chart.component.d.ts | 28 + .../theme-shared/lib/components/index.d.ts | 3 +- .../theme-shared/lib/contants/styles.d.ts | 2 +- .../dist/theme-shared/lib/models/index.d.ts | 3 +- .../lib/models/setting-management.d.ts | 3 +- .../theme-shared/lib/models/statistics.d.ts | 12 + .../dist/theme-shared/lib/utils/index.d.ts | 1 + .../theme-shared/lib/utils/widget-utils.d.ts | 3 + npm/ng-packs/dist/theme-shared/package.json | 1 + .../dist/theme-shared/public-api.d.ts | 1 + npm/ng-packs/package.json | 4 +- 284 files changed, 8822 insertions(+), 9473 deletions(-) delete mode 100644 npm/ng-packs/dist/account/esm2015/lib/root-account.module.js delete mode 100644 npm/ng-packs/dist/account/esm5/lib/root-account.module.js delete mode 100644 npm/ng-packs/dist/account/lib/root-account.module.d.ts create mode 100644 npm/ng-packs/dist/core/esm2015/lib/directives/for.directive.js create mode 100644 npm/ng-packs/dist/core/esm5/lib/directives/for.directive.js create mode 100644 npm/ng-packs/dist/core/lib/directives/for.directive.d.ts delete mode 100644 npm/ng-packs/dist/feature-management/esm2015/lib/root-feature-management.module.js delete mode 100644 npm/ng-packs/dist/feature-management/esm5/lib/root-feature-management.module.js delete mode 100644 npm/ng-packs/dist/feature-management/lib/root-feature-management.module.d.ts delete mode 100644 npm/ng-packs/dist/identity/esm2015/lib/root-identity.module.js delete mode 100644 npm/ng-packs/dist/identity/esm5/lib/root-identity.module.js delete mode 100644 npm/ng-packs/dist/identity/lib/root-identity.module.d.ts delete mode 100644 npm/ng-packs/dist/permission-management/esm2015/lib/root-permission-management.module.js delete mode 100644 npm/ng-packs/dist/permission-management/esm5/lib/root-permission-management.module.js delete mode 100644 npm/ng-packs/dist/permission-management/lib/root-permission-management.module.d.ts delete mode 100644 npm/ng-packs/dist/setting-management/esm2015/lib/components/index.js delete mode 100644 npm/ng-packs/dist/setting-management/esm2015/lib/components/services/initial.service.js create mode 100644 npm/ng-packs/dist/setting-management/esm2015/lib/components/setting-layout.component.js delete mode 100644 npm/ng-packs/dist/setting-management/esm2015/lib/components/setting/setting.component.js delete mode 100644 npm/ng-packs/dist/setting-management/esm2015/lib/root-setting-management.module.js create mode 100644 npm/ng-packs/dist/setting-management/esm2015/lib/services/setting-management.service.js delete mode 100644 npm/ng-packs/dist/setting-management/esm5/lib/components/index.js delete mode 100644 npm/ng-packs/dist/setting-management/esm5/lib/components/services/initial.service.js create mode 100644 npm/ng-packs/dist/setting-management/esm5/lib/components/setting-layout.component.js delete mode 100644 npm/ng-packs/dist/setting-management/esm5/lib/components/setting/setting.component.js delete mode 100644 npm/ng-packs/dist/setting-management/esm5/lib/root-setting-management.module.js create mode 100644 npm/ng-packs/dist/setting-management/esm5/lib/services/setting-management.service.js delete mode 100644 npm/ng-packs/dist/setting-management/lib/components/index.d.ts delete mode 100644 npm/ng-packs/dist/setting-management/lib/components/services/initial.service.d.ts create mode 100644 npm/ng-packs/dist/setting-management/lib/components/setting-layout.component.d.ts delete mode 100644 npm/ng-packs/dist/setting-management/lib/components/setting/setting.component.d.ts delete mode 100644 npm/ng-packs/dist/setting-management/lib/root-setting-management.module.d.ts create mode 100644 npm/ng-packs/dist/setting-management/lib/services/setting-management.service.d.ts delete mode 100644 npm/ng-packs/dist/tenant-management/esm2015/lib/root-tenant-management.module.js delete mode 100644 npm/ng-packs/dist/tenant-management/esm5/lib/root-tenant-management.module.js delete mode 100644 npm/ng-packs/dist/tenant-management/lib/root-tenant-management.module.d.ts delete mode 100644 npm/ng-packs/dist/theme-basic/README.md delete mode 100644 npm/ng-packs/dist/theme-basic/abp-ng.theme.basic.d.ts delete mode 100644 npm/ng-packs/dist/theme-basic/abp-ng.theme.basic.metadata.json delete mode 100644 npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js delete mode 100644 npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js.map delete mode 100644 npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js delete mode 100644 npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js.map delete mode 100644 npm/ng-packs/dist/theme-basic/esm2015/abp-ng.theme.basic.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm2015/lib/actions/index.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm2015/lib/actions/layout.actions.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm2015/lib/components/account-layout/account-layout.component.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm2015/lib/components/application-layout/application-layout.component.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm2015/lib/components/empty-layout/empty-layout.component.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm2015/lib/components/index.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout/layout.component.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm2015/lib/models/index.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm2015/lib/models/layout.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm2015/lib/states/layout.state.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm2015/lib/theme-basic.module.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm2015/public-api.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm5/abp-ng.theme.basic.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm5/lib/actions/index.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm5/lib/actions/layout.actions.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm5/lib/components/account-layout/account-layout.component.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm5/lib/components/application-layout/application-layout.component.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm5/lib/components/empty-layout/empty-layout.component.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm5/lib/components/index.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm5/lib/components/layout/layout.component.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm5/lib/models/layout.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm5/lib/states/index.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm5/lib/states/layout.state.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm5/lib/theme-basic.module.js delete mode 100644 npm/ng-packs/dist/theme-basic/esm5/public-api.js delete mode 100644 npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js delete mode 100644 npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js.map delete mode 100644 npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js delete mode 100644 npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js.map delete mode 100644 npm/ng-packs/dist/theme-basic/lib/actions/index.d.ts delete mode 100644 npm/ng-packs/dist/theme-basic/lib/actions/layout.actions.d.ts delete mode 100644 npm/ng-packs/dist/theme-basic/lib/components/account-layout/account-layout.component.d.ts delete mode 100644 npm/ng-packs/dist/theme-basic/lib/components/application-layout/application-layout.component.d.ts delete mode 100644 npm/ng-packs/dist/theme-basic/lib/components/empty-layout/empty-layout.component.d.ts delete mode 100644 npm/ng-packs/dist/theme-basic/lib/components/index.d.ts delete mode 100644 npm/ng-packs/dist/theme-basic/lib/components/layout/layout.component.d.ts delete mode 100644 npm/ng-packs/dist/theme-basic/lib/models/index.d.ts delete mode 100644 npm/ng-packs/dist/theme-basic/lib/models/layout.d.ts delete mode 100644 npm/ng-packs/dist/theme-basic/lib/states/index.d.ts delete mode 100644 npm/ng-packs/dist/theme-basic/lib/states/layout.state.d.ts delete mode 100644 npm/ng-packs/dist/theme-basic/lib/theme-basic.module.d.ts delete mode 100644 npm/ng-packs/dist/theme-basic/package.json delete mode 100644 npm/ng-packs/dist/theme-basic/public-api.d.ts create mode 100644 npm/ng-packs/dist/theme-shared/esm2015/lib/components/chart/chart.component.js create mode 100644 npm/ng-packs/dist/theme-shared/esm2015/lib/models/statistics.js rename npm/ng-packs/dist/{theme-basic/esm2015/lib/states => theme-shared/esm2015/lib/utils}/index.js (50%) create mode 100644 npm/ng-packs/dist/theme-shared/esm2015/lib/utils/widget-utils.js create mode 100644 npm/ng-packs/dist/theme-shared/esm5/lib/components/chart/chart.component.js create mode 100644 npm/ng-packs/dist/theme-shared/esm5/lib/models/statistics.js rename npm/ng-packs/dist/{theme-basic/esm5/lib/models => theme-shared/esm5/lib/utils}/index.js (50%) create mode 100644 npm/ng-packs/dist/theme-shared/esm5/lib/utils/widget-utils.js create mode 100644 npm/ng-packs/dist/theme-shared/lib/components/chart/chart.component.d.ts create mode 100644 npm/ng-packs/dist/theme-shared/lib/models/statistics.d.ts create mode 100644 npm/ng-packs/dist/theme-shared/lib/utils/index.d.ts create mode 100644 npm/ng-packs/dist/theme-shared/lib/utils/widget-utils.d.ts diff --git a/npm/ng-packs/dist/account/abp-ng.account.d.ts b/npm/ng-packs/dist/account/abp-ng.account.d.ts index aaae6c9d74..97bc6d1b63 100644 --- a/npm/ng-packs/dist/account/abp-ng.account.d.ts +++ b/npm/ng-packs/dist/account/abp-ng.account.d.ts @@ -2,10 +2,10 @@ * Generated bundle index. Do not edit. */ export * from './public-api'; -export { AccountRoutingModule as ɵh } from './lib/account-routing.module'; -export { LoginComponent as ɵc } from './lib/components/login/login.component'; -export { RegisterComponent as ɵe } from './lib/components/register/register.component'; -export { TenantBoxComponent as ɵg } from './lib/components/tenant-box/tenant-box.component'; -export { Options as ɵd } from './lib/models/options'; -export { AccountService as ɵf } from './lib/services/account.service'; -export { ACCOUNT_OPTIONS as ɵb, optionsFactory as ɵa } from './lib/tokens/options.token'; +export { AccountRoutingModule as ɵf } from './lib/account-routing.module'; +export { LoginComponent as ɵa } from './lib/components/login/login.component'; +export { RegisterComponent as ɵc } from './lib/components/register/register.component'; +export { TenantBoxComponent as ɵe } from './lib/components/tenant-box/tenant-box.component'; +export { Options as ɵb } from './lib/models/options'; +export { AccountService as ɵd } from './lib/services/account.service'; +export { ACCOUNT_OPTIONS as ɵh, optionsFactory as ɵg } from './lib/tokens/options.token'; diff --git a/npm/ng-packs/dist/account/abp-ng.account.metadata.json b/npm/ng-packs/dist/account/abp-ng.account.metadata.json index d3a0fa6dec..7a8d9dbab7 100644 --- a/npm/ng-packs/dist/account/abp-ng.account.metadata.json +++ b/npm/ng-packs/dist/account/abp-ng.account.metadata.json @@ -1 +1 @@ -{"__symbolic":"module","version":4,"exports":[{"from":"./lib/options"},{"from":"./lib/user"},{"from":"./lib/tenant"}],"metadata":{"RootAccountModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":4,"character":1},"arguments":[{}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":["options"],"defaults":[{}],"value":{"ngModule":{"__symbolic":"reference","name":"RootAccountModule"},"providers":[{"provide":{"__symbolic":"reference","name":"ɵb"},"useValue":{"__symbolic":"reference","name":"options"}},{"provide":"ACCOUNT_OPTIONS","useFactory":{"__symbolic":"reference","name":"ɵa"},"deps":[{"__symbolic":"reference","name":"ɵb"}]}]}}}},"AccountModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":11,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵe"},{"__symbolic":"reference","name":"ɵg"}],"imports":[{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":13,"character":12},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ThemeSharedModule","line":13,"character":46},{"__symbolic":"reference","module":"primeng/table","name":"TableModule","line":13,"character":65},{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbDropdownModule","line":13,"character":78},{"__symbolic":"reference","module":"@ngx-validate/core","name":"NgxValidateCoreModule","line":13,"character":97}],"exports":[]}]}],"members":{}},"ACCOUNT_ROUTES":{"routes":[{"name":"Account","path":"account","invisible":true,"layout":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":8,"character":14},"member":"application"},"children":[{"path":"login","name":"Login","order":1},{"path":"register","name":"Register","order":2}]}],"settings":[]},"ɵa":{"__symbolic":"function","parameters":["options"],"value":{"redirectUrl":"/"}},"ɵb":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":10,"character":35},"arguments":["ACCOUNT_OPTIONS"]},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":14,"character":1},"arguments":[{"selector":"abp-login","template":"
\n
\n \n\n \n
\n
\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":28,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":28,"character":17},"arguments":["ACCOUNT_OPTIONS"]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":24,"character":16},{"__symbolic":"reference","module":"angular-oauth2-oidc","name":"OAuthService","line":25,"character":26},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":26,"character":19},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ToasterService","line":27,"character":28},{"__symbolic":"reference","name":"ɵd"}]}],"onSubmit":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"interface"},"ɵe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":14,"character":1},"arguments":[{"selector":"abp-register","template":"
\n
\n \n\n \n
\n
\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":24,"character":16},{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","module":"angular-oauth2-oidc","name":"OAuthService","line":26,"character":26},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":27,"character":19},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ToasterService","line":28,"character":28}]}],"onSubmit":[{"__symbolic":"method"}]}},"ɵf":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.core","name":"RestService","line":9,"character":28}]}],"findTenant":[{"__symbolic":"method"}],"register":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵg":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"abp-tenant-box","template":"\n {{ 'AbpUiMultiTenancy::Tenant' | abpLocalization }}: \n \n {{ tenantName || ('AbpUiMultiTenancy::NotSelected' | abpLocalization) }}\n \n ({{\n 'AbpUiMultiTenancy::Switch' | abpLocalization\n }})\n\n\n\n \n
Switch Tenant
\n
\n \n
\n
\n
\n \n \n
\n

{{ 'AbpUiMultiTenancy::SwitchTenantHint' | abpLocalization }}

\n
\n
\n
\n \n \n \n \n
\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":14,"character":29},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ToasterService","line":14,"character":60},{"__symbolic":"reference","name":"ɵf"}]}],"ngOnInit":[{"__symbolic":"method"}],"onSwitch":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}]}},"ɵh":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":15,"character":1},"arguments":[{"imports":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":16,"character":12},"member":"forChild"},"arguments":[[{"path":"","pathMatch":"full","redirectTo":"login"},{"path":"","component":{"__symbolic":"reference","module":"@abp/ng.core","name":"DynamicLayoutComponent","line":10,"character":15},"children":[{"path":"login","component":{"__symbolic":"reference","name":"ɵc"}},{"path":"register","component":{"__symbolic":"reference","name":"ɵe"}}]}]]}],"exports":[{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":17,"character":12}]}]}],"members":{}}},"origins":{"RootAccountModule":"./lib/root-account.module","AccountModule":"./lib/account.module","ACCOUNT_ROUTES":"./lib/constants/routes","ɵa":"./lib/tokens/options.token","ɵb":"./lib/tokens/options.token","ɵc":"./lib/components/login/login.component","ɵd":"./lib/models/options","ɵe":"./lib/components/register/register.component","ɵf":"./lib/services/account.service","ɵg":"./lib/components/tenant-box/tenant-box.component","ɵh":"./lib/account-routing.module"},"importAs":"@abp/ng.account"} \ No newline at end of file +{"__symbolic":"module","version":4,"exports":[{"from":"./lib/options"},{"from":"./lib/user"},{"from":"./lib/tenant"}],"metadata":{"AccountModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":13,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵe"}],"imports":[{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":15,"character":12},{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ThemeSharedModule","line":15,"character":46},{"__symbolic":"reference","module":"primeng/table","name":"TableModule","line":15,"character":65},{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbDropdownModule","line":15,"character":78},{"__symbolic":"reference","module":"@ngx-validate/core","name":"NgxValidateCoreModule","line":15,"character":97}],"exports":[]}]}],"members":{}},"AccountProviders":{"__symbolic":"function","parameters":["options"],"defaults":[{}],"value":[{"provide":{"__symbolic":"reference","name":"ɵh"},"useValue":{"__symbolic":"reference","name":"options"}},{"provide":"ACCOUNT_OPTIONS","useFactory":{"__symbolic":"reference","name":"ɵg"},"deps":[{"__symbolic":"reference","name":"ɵh"}]}]},"ACCOUNT_ROUTES":{"routes":[{"name":"Account","path":"account","invisible":true,"layout":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":8,"character":14},"member":"application"},"children":[{"path":"login","name":"Login","order":1},{"path":"register","name":"Register","order":2}]}],"settings":[]},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":14,"character":1},"arguments":[{"selector":"abp-login","template":"
\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":28,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":28,"character":17},"arguments":["ACCOUNT_OPTIONS"]}]],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":24,"character":16},{"__symbolic":"reference","module":"angular-oauth2-oidc","name":"OAuthService","line":25,"character":26},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":26,"character":19},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ToasterService","line":27,"character":28},{"__symbolic":"reference","name":"ɵb"}]}],"onSubmit":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"interface"},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":14,"character":1},"arguments":[{"selector":"abp-register","template":"
\n
\n \n\n \n
\n
\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":24,"character":16},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","module":"angular-oauth2-oidc","name":"OAuthService","line":26,"character":26},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":27,"character":19},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ToasterService","line":28,"character":28}]}],"onSubmit":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.core","name":"RestService","line":9,"character":28}]}],"findTenant":[{"__symbolic":"method"}],"register":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"abp-tenant-box","template":"\n {{ 'AbpUiMultiTenancy::Tenant' | abpLocalization }}: \n \n {{ tenantName || ('AbpUiMultiTenancy::NotSelected' | abpLocalization) }}\n \n ({{\n 'AbpUiMultiTenancy::Switch' | abpLocalization\n }})\n\n\n\n \n
Switch Tenant
\n
\n \n
\n
\n
\n \n \n
\n

{{ 'AbpUiMultiTenancy::SwitchTenantHint' | abpLocalization }}

\n
\n
\n
\n \n \n \n \n
\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":14,"character":29},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ToasterService","line":14,"character":60},{"__symbolic":"reference","name":"ɵd"}]}],"ngOnInit":[{"__symbolic":"method"}],"onSwitch":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}]}},"ɵf":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":15,"character":1},"arguments":[{"imports":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":16,"character":12},"member":"forChild"},"arguments":[[{"path":"","pathMatch":"full","redirectTo":"login"},{"path":"","component":{"__symbolic":"reference","module":"@abp/ng.core","name":"DynamicLayoutComponent","line":10,"character":15},"children":[{"path":"login","component":{"__symbolic":"reference","name":"ɵa"}},{"path":"register","component":{"__symbolic":"reference","name":"ɵc"}}]}]]}],"exports":[{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":17,"character":12}]}]}],"members":{}},"ɵg":{"__symbolic":"function","parameters":["options"],"value":{"redirectUrl":"/"}},"ɵh":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":10,"character":35},"arguments":["ACCOUNT_OPTIONS"]}},"origins":{"AccountModule":"./lib/account.module","AccountProviders":"./lib/account.module","ACCOUNT_ROUTES":"./lib/constants/routes","ɵa":"./lib/components/login/login.component","ɵb":"./lib/models/options","ɵc":"./lib/components/register/register.component","ɵd":"./lib/services/account.service","ɵe":"./lib/components/tenant-box/tenant-box.component","ɵf":"./lib/account-routing.module","ɵg":"./lib/tokens/options.token","ɵh":"./lib/tokens/options.token"},"importAs":"@abp/ng.account"} \ No newline at end of file diff --git a/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.js b/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.js index 328d8e5820..0b6e429973 100644 --- a/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.js +++ b/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.js @@ -1,8 +1,8 @@ (function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@abp/ng.core'), require('@abp/ng.theme.shared'), require('@ng-bootstrap/ng-bootstrap'), require('@ngx-validate/core'), require('primeng/table'), require('@angular/router'), require('@angular/forms'), require('@ngxs/router-plugin'), require('@ngxs/store'), require('angular-oauth2-oidc'), require('rxjs'), require('rxjs/operators'), require('snq')) : - typeof define === 'function' && define.amd ? define('@abp/ng.account', ['exports', '@angular/core', '@abp/ng.core', '@abp/ng.theme.shared', '@ng-bootstrap/ng-bootstrap', '@ngx-validate/core', 'primeng/table', '@angular/router', '@angular/forms', '@ngxs/router-plugin', '@ngxs/store', 'angular-oauth2-oidc', 'rxjs', 'rxjs/operators', 'snq'], factory) : - (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng.account = {}), global.ng.core, global.ng_core, global.ng_theme_shared, global.ngBootstrap, global.core$1, global.table, global.ng.router, global.ng.forms, global.routerPlugin, global.store, global.angularOauth2Oidc, global.rxjs, global.rxjs.operators, global.snq)); -}(this, function (exports, core, ng_core, ng_theme_shared, ngBootstrap, core$1, table, router, forms, routerPlugin, store, angularOauth2Oidc, rxjs, operators, snq) { 'use strict'; + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@abp/ng.core'), require('@abp/ng.theme.shared'), require('@angular/core'), require('@ng-bootstrap/ng-bootstrap'), require('@ngx-validate/core'), require('primeng/table'), require('@angular/router'), require('@angular/forms'), require('@ngxs/router-plugin'), require('@ngxs/store'), require('angular-oauth2-oidc'), require('rxjs'), require('rxjs/operators'), require('snq')) : + typeof define === 'function' && define.amd ? define('@abp/ng.account', ['exports', '@abp/ng.core', '@abp/ng.theme.shared', '@angular/core', '@ng-bootstrap/ng-bootstrap', '@ngx-validate/core', 'primeng/table', '@angular/router', '@angular/forms', '@ngxs/router-plugin', '@ngxs/store', 'angular-oauth2-oidc', 'rxjs', 'rxjs/operators', 'snq'], factory) : + (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng.account = {}), global.ng_core, global.ng_theme_shared, global.ng.core, global.ngBootstrap, global.core$1, global.table, global.ng.router, global.ng.forms, global.routerPlugin, global.store, global.angularOauth2Oidc, global.rxjs, global.rxjs.operators, global.snq)); +}(this, function (exports, ng_core, ng_theme_shared, core, ngBootstrap, core$1, table, router, forms, routerPlugin, store, angularOauth2Oidc, rxjs, operators, snq) { 'use strict'; snq = snq && snq.hasOwnProperty('default') ? snq['default'] : snq; @@ -203,55 +203,6 @@ return (mod && mod.__esModule) ? mod : { default: mod }; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** - * @param {?} options - * @return {?} - */ - function optionsFactory(options) { - return __assign({ redirectUrl: '/' }, options); - } - /** @type {?} */ - var ACCOUNT_OPTIONS = new core.InjectionToken('ACCOUNT_OPTIONS'); - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var RootAccountModule = /** @class */ (function () { - function RootAccountModule() { - } - /** - * @param {?=} options - * @return {?} - */ - RootAccountModule.forRoot = /** - * @param {?=} options - * @return {?} - */ - function (options) { - if (options === void 0) { options = (/** @type {?} */ ({})); } - return { - ngModule: RootAccountModule, - providers: [ - { provide: ACCOUNT_OPTIONS, useValue: options }, - { - provide: 'ACCOUNT_OPTIONS', - useFactory: optionsFactory, - deps: [ACCOUNT_OPTIONS], - }, - ], - }; - }; - RootAccountModule.decorators = [ - { type: core.NgModule, args: [{},] } - ]; - return RootAccountModule; - }()); - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -688,6 +639,20 @@ TenantBoxComponent.prototype.accountService; } + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** + * @param {?} options + * @return {?} + */ + function optionsFactory(options) { + return __assign({ redirectUrl: '/' }, options); + } + /** @type {?} */ + var ACCOUNT_OPTIONS = new core.InjectionToken('ACCOUNT_OPTIONS'); + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -704,6 +669,21 @@ ]; return AccountModule; }()); + /** + * @param {?=} options + * @return {?} + */ + function AccountProviders(options) { + if (options === void 0) { options = (/** @type {?} */ ({})); } + return [ + { provide: ACCOUNT_OPTIONS, useValue: options }, + { + provide: 'ACCOUNT_OPTIONS', + useFactory: optionsFactory, + deps: [ACCOUNT_OPTIONS], + }, + ]; + } /** * @fileoverview added by tsickle @@ -829,17 +809,17 @@ exports.ACCOUNT_OPTIONS = ACCOUNT_OPTIONS; exports.ACCOUNT_ROUTES = ACCOUNT_ROUTES; exports.AccountModule = AccountModule; + exports.AccountProviders = AccountProviders; exports.LoginComponent = LoginComponent; exports.RegisterComponent = RegisterComponent; - exports.RootAccountModule = RootAccountModule; exports.optionsFactory = optionsFactory; - exports.ɵa = optionsFactory; - exports.ɵb = ACCOUNT_OPTIONS; - exports.ɵc = LoginComponent; - exports.ɵe = RegisterComponent; - exports.ɵf = AccountService; - exports.ɵg = TenantBoxComponent; - exports.ɵh = AccountRoutingModule; + exports.ɵa = LoginComponent; + exports.ɵc = RegisterComponent; + exports.ɵd = AccountService; + exports.ɵe = TenantBoxComponent; + exports.ɵf = AccountRoutingModule; + exports.ɵg = optionsFactory; + exports.ɵh = ACCOUNT_OPTIONS; Object.defineProperty(exports, '__esModule', { value: true }); diff --git a/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.js.map b/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.js.map index 181962bf2f..61e1c6c4d5 100644 --- a/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.js.map +++ b/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.account.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.account/lib/tokens/options.token.ts","ng://@abp/ng.account/lib/root-account.module.ts","ng://@abp/ng.account/lib/components/login/login.component.ts","ng://@abp/ng.account/lib/services/account.service.ts","ng://@abp/ng.account/lib/components/register/register.component.ts","ng://@abp/ng.account/lib/account-routing.module.ts","ng://@abp/ng.account/lib/components/tenant-box/tenant-box.component.ts","ng://@abp/ng.account/lib/account.module.ts","ng://@abp/ng.account/lib/constants/routes.ts","ng://@abp/ng.account/lib/models/options.ts","ng://@abp/ng.account/lib/models/user.ts","ng://@abp/ng.account/lib/models/tenant.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { InjectionToken } from '@angular/core';\nimport { Options } from '../models/options';\n\nexport function optionsFactory(options: Options) {\n return {\n redirectUrl: '/',\n ...options,\n };\n}\n\nexport const ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS');\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { Options } from './models/options';\nimport { ACCOUNT_OPTIONS, optionsFactory } from './tokens/options.token';\n\n@NgModule({})\nexport class RootAccountModule {\n static forRoot(options = {} as Options): ModuleWithProviders {\n return {\n ngModule: RootAccountModule,\n providers: [\n { provide: ACCOUNT_OPTIONS, useValue: options },\n {\n provide: 'ACCOUNT_OPTIONS',\n useFactory: optionsFactory,\n deps: [ACCOUNT_OPTIONS],\n },\n ],\n };\n }\n}\n","import { GetAppConfiguration, ConfigState } from '@abp/ng.core';\nimport { Component, Inject, Optional } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { Options } from '../../models/options';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { catchError, finalize, switchMap, tap } from 'rxjs/operators';\nimport snq from 'snq';\n\nconst { maxLength, minLength, required } = Validators;\n\n@Component({\n selector: 'abp-login',\n templateUrl: './login.component.html',\n})\nexport class LoginComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n @Optional() @Inject('ACCOUNT_OPTIONS') private options: Options,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n remember: [false],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n // this.oauthService.setStorage(this.form.value.remember ? localStorage : sessionStorage);\n\n this.inProgress = true;\n from(\n this.oauthService.fetchTokenUsingPasswordFlow(this.form.get('username').value, this.form.get('password').value),\n )\n .pipe(\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => {\n const redirectUrl = snq(() => window.history.state).redirectUrl || (this.options || {}).redirectUrl || '/';\n this.store.dispatch(new Navigate([redirectUrl]));\n }),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { RegisterResponse, RegisterRequest, TenantIdResponse } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AccountService {\n constructor(private rest: RestService) {}\n\n findTenant(tenantName: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/abp/multi-tenancy/find-tenant/${tenantName}`,\n };\n\n return this.rest.request(request);\n }\n\n register(body: RegisterRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/account/register`,\n body,\n };\n\n return this.rest.request(request, { skipHandleError: true });\n }\n}\n","import { ConfigState, GetAppConfiguration } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { catchError, finalize, switchMap, take, tap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { RegisterRequest } from '../../models';\nimport { AccountService } from '../../services/account.service';\nconst { maxLength, minLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-register',\n templateUrl: './register.component.html',\n})\nexport class RegisterComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private accountService: AccountService,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n email: ['', [required, email]],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.inProgress = true;\n\n const newUser = {\n userName: this.form.get('username').value,\n password: this.form.get('password').value,\n emailAddress: this.form.get('email').value,\n appName: 'Angular',\n } as RegisterRequest;\n\n this.accountService\n .register(newUser)\n .pipe(\n switchMap(() => from(this.oauthService.fetchTokenUsingPasswordFlow(newUser.userName, newUser.password))),\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => this.store.dispatch(new Navigate(['/']))),\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { DynamicLayoutComponent } from '@abp/ng.core';\n\nconst routes: Routes = [\n { path: '', pathMatch: 'full', redirectTo: 'login' },\n {\n path: '',\n component: DynamicLayoutComponent,\n children: [{ path: 'login', component: LoginComponent }, { path: 'register', component: RegisterComponent }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class AccountRoutingModule {}\n","import { ABP, SetTenant, SessionState } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component, OnInit } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AccountService } from '../../services/account.service';\n\n@Component({\n selector: 'abp-tenant-box',\n templateUrl: './tenant-box.component.html',\n})\nexport class TenantBoxComponent implements OnInit {\n constructor(private store: Store, private toasterService: ToasterService, private accountService: AccountService) {}\n\n tenant = {} as ABP.BasicItem;\n\n tenantName: string;\n\n isModalVisible: boolean;\n\n ngOnInit() {\n this.tenant = this.store.selectSnapshot(SessionState.getTenant) || ({} as ABP.BasicItem);\n this.tenantName = this.tenant.name || '';\n }\n\n onSwitch() {\n this.isModalVisible = true;\n }\n\n save() {\n if (this.tenant.name) {\n this.accountService\n .findTenant(this.tenant.name)\n .pipe(\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description, 'AbpUi::DefaultErrorMessage'),\n 'AbpUi::Error',\n );\n return throwError(err);\n }),\n )\n .subscribe(({ success, tenantId }) => {\n if (success) {\n this.tenant = {\n id: tenantId,\n name: this.tenant.name,\n };\n this.tenantName = this.tenant.name;\n this.isModalVisible = false;\n } else {\n this.toasterService.error(`AbpUiMultiTenancy::GivenTenantIsNotAvailable`, 'AbpUi::Error', {\n messageLocalizationParams: [this.tenant.name],\n });\n this.tenant = {} as ABP.BasicItem;\n }\n this.store.dispatch(new SetTenant(success ? this.tenant : null));\n });\n } else {\n this.store.dispatch(new SetTenant(null));\n this.tenantName = null;\n this.isModalVisible = false;\n }\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { TableModule } from 'primeng/table';\nimport { AccountRoutingModule } from './account-routing.module';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { TenantBoxComponent } from './components/tenant-box/tenant-box.component';\n\n@NgModule({\n declarations: [LoginComponent, RegisterComponent, TenantBoxComponent],\n imports: [CoreModule, AccountRoutingModule, ThemeSharedModule, TableModule, NgbDropdownModule, NgxValidateCoreModule],\n exports: [],\n})\nexport class AccountModule {}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const ACCOUNT_ROUTES = {\n routes: [\n {\n name: 'Account',\n path: 'account',\n invisible: true,\n layout: eLayoutType.application,\n children: [{ path: 'login', name: 'Login', order: 1 }, { path: 'register', name: 'Register', order: 2 }],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","export interface Options {\n redirectUrl?: string;\n}\n","export interface RegisterRequest {\n userName: string;\n emailAddress: string;\n password: string;\n appName?: string;\n}\n\nexport interface RegisterResponse {\n tenantId: string;\n userName: string;\n name: string;\n surname: string;\n email: string;\n emailConfirmed: boolean;\n phoneNumber: string;\n phoneNumberConfirmed: boolean;\n twoFactorEnabled: boolean;\n lockoutEnabled: boolean;\n lockoutEnd: string;\n concurrencyStamp: string;\n isDeleted: boolean;\n deleterId: string;\n deletionTime: string;\n lastModificationTime: string;\n lastModifierId: string;\n creationTime: string;\n creatorId: string;\n id: string;\n}\n","export interface TenantIdResponse {\n success: boolean;\n tenantId: string;\n}\n"],"names":["InjectionToken","NgModule","ConfigState","from","switchMap","GetAppConfiguration","tap","Navigate","catchError","throwError","finalize","Component","FormBuilder","OAuthService","Store","ToasterService","Optional","Inject","Injectable","RestService","maxLength","minLength","required","take","DynamicLayoutComponent","RouterModule","SessionState","SetTenant","CoreModule","ThemeSharedModule","TableModule","NgbDropdownModule","NgxValidateCoreModule"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.account.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.account/lib/components/login/login.component.ts","ng://@abp/ng.account/lib/services/account.service.ts","ng://@abp/ng.account/lib/components/register/register.component.ts","ng://@abp/ng.account/lib/account-routing.module.ts","ng://@abp/ng.account/lib/components/tenant-box/tenant-box.component.ts","ng://@abp/ng.account/lib/tokens/options.token.ts","ng://@abp/ng.account/lib/account.module.ts","ng://@abp/ng.account/lib/constants/routes.ts","ng://@abp/ng.account/lib/models/options.ts","ng://@abp/ng.account/lib/models/user.ts","ng://@abp/ng.account/lib/models/tenant.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { GetAppConfiguration, ConfigState } from '@abp/ng.core';\nimport { Component, Inject, Optional } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { Options } from '../../models/options';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { catchError, finalize, switchMap, tap } from 'rxjs/operators';\nimport snq from 'snq';\n\nconst { maxLength, minLength, required } = Validators;\n\n@Component({\n selector: 'abp-login',\n templateUrl: './login.component.html',\n})\nexport class LoginComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n @Optional() @Inject('ACCOUNT_OPTIONS') private options: Options,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n remember: [false],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n // this.oauthService.setStorage(this.form.value.remember ? localStorage : sessionStorage);\n\n this.inProgress = true;\n from(\n this.oauthService.fetchTokenUsingPasswordFlow(this.form.get('username').value, this.form.get('password').value),\n )\n .pipe(\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => {\n const redirectUrl = snq(() => window.history.state).redirectUrl || (this.options || {}).redirectUrl || '/';\n this.store.dispatch(new Navigate([redirectUrl]));\n }),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { RegisterResponse, RegisterRequest, TenantIdResponse } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AccountService {\n constructor(private rest: RestService) {}\n\n findTenant(tenantName: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/abp/multi-tenancy/find-tenant/${tenantName}`,\n };\n\n return this.rest.request(request);\n }\n\n register(body: RegisterRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/account/register`,\n body,\n };\n\n return this.rest.request(request, { skipHandleError: true });\n }\n}\n","import { ConfigState, GetAppConfiguration } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { catchError, finalize, switchMap, take, tap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { RegisterRequest } from '../../models';\nimport { AccountService } from '../../services/account.service';\nconst { maxLength, minLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-register',\n templateUrl: './register.component.html',\n})\nexport class RegisterComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private accountService: AccountService,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n email: ['', [required, email]],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.inProgress = true;\n\n const newUser = {\n userName: this.form.get('username').value,\n password: this.form.get('password').value,\n emailAddress: this.form.get('email').value,\n appName: 'Angular',\n } as RegisterRequest;\n\n this.accountService\n .register(newUser)\n .pipe(\n switchMap(() => from(this.oauthService.fetchTokenUsingPasswordFlow(newUser.userName, newUser.password))),\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => this.store.dispatch(new Navigate(['/']))),\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { DynamicLayoutComponent } from '@abp/ng.core';\n\nconst routes: Routes = [\n { path: '', pathMatch: 'full', redirectTo: 'login' },\n {\n path: '',\n component: DynamicLayoutComponent,\n children: [{ path: 'login', component: LoginComponent }, { path: 'register', component: RegisterComponent }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class AccountRoutingModule {}\n","import { ABP, SetTenant, SessionState } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component, OnInit } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AccountService } from '../../services/account.service';\n\n@Component({\n selector: 'abp-tenant-box',\n templateUrl: './tenant-box.component.html',\n})\nexport class TenantBoxComponent implements OnInit {\n constructor(private store: Store, private toasterService: ToasterService, private accountService: AccountService) {}\n\n tenant = {} as ABP.BasicItem;\n\n tenantName: string;\n\n isModalVisible: boolean;\n\n ngOnInit() {\n this.tenant = this.store.selectSnapshot(SessionState.getTenant) || ({} as ABP.BasicItem);\n this.tenantName = this.tenant.name || '';\n }\n\n onSwitch() {\n this.isModalVisible = true;\n }\n\n save() {\n if (this.tenant.name) {\n this.accountService\n .findTenant(this.tenant.name)\n .pipe(\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description, 'AbpUi::DefaultErrorMessage'),\n 'AbpUi::Error',\n );\n return throwError(err);\n }),\n )\n .subscribe(({ success, tenantId }) => {\n if (success) {\n this.tenant = {\n id: tenantId,\n name: this.tenant.name,\n };\n this.tenantName = this.tenant.name;\n this.isModalVisible = false;\n } else {\n this.toasterService.error(`AbpUiMultiTenancy::GivenTenantIsNotAvailable`, 'AbpUi::Error', {\n messageLocalizationParams: [this.tenant.name],\n });\n this.tenant = {} as ABP.BasicItem;\n }\n this.store.dispatch(new SetTenant(success ? this.tenant : null));\n });\n } else {\n this.store.dispatch(new SetTenant(null));\n this.tenantName = null;\n this.isModalVisible = false;\n }\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { Options } from '../models/options';\n\nexport function optionsFactory(options: Options) {\n return {\n redirectUrl: '/',\n ...options,\n };\n}\n\nexport const ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS');\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule, Provider } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { TableModule } from 'primeng/table';\nimport { AccountRoutingModule } from './account-routing.module';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { TenantBoxComponent } from './components/tenant-box/tenant-box.component';\nimport { Options } from './models/options';\nimport { ACCOUNT_OPTIONS, optionsFactory } from './tokens/options.token';\n\n@NgModule({\n declarations: [LoginComponent, RegisterComponent, TenantBoxComponent],\n imports: [CoreModule, AccountRoutingModule, ThemeSharedModule, TableModule, NgbDropdownModule, NgxValidateCoreModule],\n exports: [],\n})\nexport class AccountModule {}\n\nexport function AccountProviders(options = {} as Options): Provider[] {\n return [\n { provide: ACCOUNT_OPTIONS, useValue: options },\n {\n provide: 'ACCOUNT_OPTIONS',\n useFactory: optionsFactory,\n deps: [ACCOUNT_OPTIONS],\n },\n ];\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const ACCOUNT_ROUTES = {\n routes: [\n {\n name: 'Account',\n path: 'account',\n invisible: true,\n layout: eLayoutType.application,\n children: [{ path: 'login', name: 'Login', order: 1 }, { path: 'register', name: 'Register', order: 2 }],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","export interface Options {\n redirectUrl?: string;\n}\n","export interface RegisterRequest {\n userName: string;\n emailAddress: string;\n password: string;\n appName?: string;\n}\n\nexport interface RegisterResponse {\n tenantId: string;\n userName: string;\n name: string;\n surname: string;\n email: string;\n emailConfirmed: boolean;\n phoneNumber: string;\n phoneNumberConfirmed: boolean;\n twoFactorEnabled: boolean;\n lockoutEnabled: boolean;\n lockoutEnd: string;\n concurrencyStamp: string;\n isDeleted: boolean;\n deleterId: string;\n deletionTime: string;\n lastModificationTime: string;\n lastModifierId: string;\n creationTime: string;\n creatorId: string;\n id: string;\n}\n","export interface TenantIdResponse {\n success: boolean;\n tenantId: string;\n}\n"],"names":["ConfigState","from","switchMap","GetAppConfiguration","tap","Navigate","catchError","throwError","finalize","Component","FormBuilder","OAuthService","Store","ToasterService","Optional","Inject","Injectable","RestService","maxLength","minLength","required","take","DynamicLayoutComponent","NgModule","RouterModule","SessionState","SetTenant","InjectionToken","CoreModule","ThemeSharedModule","TableModule","NgbDropdownModule","NgxValidateCoreModule"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.min.js b/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.min.js index 680ff5ea4f..a0d6325733 100644 --- a/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.min.js +++ b/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.min.js @@ -1,2 +1,2 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@abp/ng.core"),require("@abp/ng.theme.shared"),require("@ng-bootstrap/ng-bootstrap"),require("@ngx-validate/core"),require("primeng/table"),require("@angular/router"),require("@angular/forms"),require("@ngxs/router-plugin"),require("@ngxs/store"),require("angular-oauth2-oidc"),require("rxjs"),require("rxjs/operators"),require("snq")):"function"==typeof define&&define.amd?define("@abp/ng.account",["exports","@angular/core","@abp/ng.core","@abp/ng.theme.shared","@ng-bootstrap/ng-bootstrap","@ngx-validate/core","primeng/table","@angular/router","@angular/forms","@ngxs/router-plugin","@ngxs/store","angular-oauth2-oidc","rxjs","rxjs/operators","snq"],t):t(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng.account={}),e.ng.core,e.ng_core,e.ng_theme_shared,e.ngBootstrap,e.core$1,e.table,e.ng.router,e.ng.forms,e.routerPlugin,e.store,e.angularOauth2Oidc,e.rxjs,e.rxjs.operators,e.snq)}(this,function(e,t,n,r,o,a,i,s,c,u,p,l,d,m,b){"use strict";b=b&&b.hasOwnProperty("default")?b.default:b;var f=function(){return(f=Object.assign||function(e){for(var t,n=1,r=arguments.length;n\n
\n\n'}]}],e.ctorParameters=function(){return[{type:c.FormBuilder},{type:l.OAuthService},{type:p.Store},{type:r.ToasterService},{type:void 0,decorators:[{type:t.Optional},{type:t.Inject,args:["ACCOUNT_OPTIONS"]}]}]},e}();var w=function(){function e(e){this.rest=e}return e.prototype.findTenant=function(e){var t={method:"GET",url:"/api/abp/multi-tenancy/find-tenant/"+e};return this.rest.request(t)},e.prototype.register=function(e){var t={method:"POST",url:"/api/account/register",body:e};return this.rest.request(t,{skipHandleError:!0})},e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:n.RestService}]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e(t.ɵɵinject(n.RestService))},token:e,providedIn:"root"}),e}();var T=c.Validators.maxLength,x=(c.Validators.minLength,c.Validators.required),M=c.Validators.email,N=function(){function e(e,t,r,o,a){this.fb=e,this.accountService=t,this.oauthService=r,this.store=o,this.toasterService=a,this.oauthService.configure(this.store.selectSnapshot(n.ConfigState.getOne("environment")).oAuthConfig),this.oauthService.loadDiscoveryDocument(),this.form=this.fb.group({username:["",[x,T(255)]],password:["",[x,T(32)]],email:["",[x,M]]})}return e.prototype.onSubmit=function(){var e=this;if(!this.form.invalid){this.inProgress=!0;var t={userName:this.form.get("username").value,password:this.form.get("password").value,emailAddress:this.form.get("email").value,appName:"Angular"};this.accountService.register(t).pipe(m.switchMap(function(){return d.from(e.oauthService.fetchTokenUsingPasswordFlow(t.userName,t.password))}),m.switchMap(function(){return e.store.dispatch(new n.GetAppConfiguration)}),m.tap(function(){return e.store.dispatch(new u.Navigate(["/"]))}),m.take(1),m.catchError(function(t){return e.toasterService.error(b(function(){return t.error.error_description})||b(function(){return t.error.error.message},"AbpAccount::DefaultErrorMessage"),"Error",{life:7e3}),d.throwError(t)}),m.finalize(function(){return e.inProgress=!1})).subscribe()}},e.decorators=[{type:t.Component,args:[{selector:"abp-register",template:'
\n
\n \n\n \n
\n
\n'}]}],e.ctorParameters=function(){return[{type:c.FormBuilder},{type:w},{type:l.OAuthService},{type:p.Store},{type:r.ToasterService}]},e}();var C=[{path:"",pathMatch:"full",redirectTo:"login"},{path:"",component:n.DynamicLayoutComponent,children:[{path:"login",component:A},{path:"register",component:N}]}],L=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[s.RouterModule.forChild(C)],exports:[s.RouterModule]}]}],e}(),O=function(){function e(e,t,n){this.store=e,this.toasterService=t,this.accountService=n,this.tenant={}}return e.prototype.ngOnInit=function(){this.tenant=this.store.selectSnapshot(n.SessionState.getTenant)||{},this.tenantName=this.tenant.name||""},e.prototype.onSwitch=function(){this.isModalVisible=!0},e.prototype.save=function(){var e=this;this.tenant.name?this.accountService.findTenant(this.tenant.name).pipe(m.take(1),m.catchError(function(t){return e.toasterService.error(b(function(){return t.error.error_description},"AbpUi::DefaultErrorMessage"),"AbpUi::Error"),d.throwError(t)})).subscribe(function(t){var r=t.success,o=t.tenantId;r?(e.tenant={id:o,name:e.tenant.name},e.tenantName=e.tenant.name,e.isModalVisible=!1):(e.toasterService.error("AbpUiMultiTenancy::GivenTenantIsNotAvailable","AbpUi::Error",{messageLocalizationParams:[e.tenant.name]}),e.tenant={}),e.store.dispatch(new n.SetTenant(r?e.tenant:null))}):(this.store.dispatch(new n.SetTenant(null)),this.tenantName=null,this.isModalVisible=!1)},e.decorators=[{type:t.Component,args:[{selector:"abp-tenant-box",template:'\n {{ \'AbpUiMultiTenancy::Tenant\' | abpLocalization }}: \n \n {{ tenantName || (\'AbpUiMultiTenancy::NotSelected\' | abpLocalization) }}\n \n ({{\n \'AbpUiMultiTenancy::Switch\' | abpLocalization\n }})\n\n\n\n \n
Switch Tenant
\n
\n \n
\n
\n
\n \n \n
\n

{{ \'AbpUiMultiTenancy::SwitchTenantHint\' | abpLocalization }}

\n
\n
\n
\n \n \n \n \n
\n'}]}],e.ctorParameters=function(){return[{type:p.Store},{type:r.ToasterService},{type:w}]},e}();var P=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{declarations:[A,N,O],imports:[n.CoreModule,L,r.ThemeSharedModule,i.TableModule,o.NgbDropdownModule,a.NgxValidateCoreModule],exports:[]}]}],e}();e.ACCOUNT_OPTIONS=h,e.ACCOUNT_ROUTES={routes:[{name:"Account",path:"account",invisible:!0,layout:"application",children:[{path:"login",name:"Login",order:1},{path:"register",name:"Register",order:2}]}],settings:[]},e.AccountModule=P,e.LoginComponent=A,e.RegisterComponent=N,e.RootAccountModule=v,e.optionsFactory=g,e.ɵa=g,e.ɵb=h,e.ɵc=A,e.ɵe=N,e.ɵf=w,e.ɵg=O,e.ɵh=L,Object.defineProperty(e,"__esModule",{value:!0})}); +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@abp/ng.core"),require("@abp/ng.theme.shared"),require("@angular/core"),require("@ng-bootstrap/ng-bootstrap"),require("@ngx-validate/core"),require("primeng/table"),require("@angular/router"),require("@angular/forms"),require("@ngxs/router-plugin"),require("@ngxs/store"),require("angular-oauth2-oidc"),require("rxjs"),require("rxjs/operators"),require("snq")):"function"==typeof define&&define.amd?define("@abp/ng.account",["exports","@abp/ng.core","@abp/ng.theme.shared","@angular/core","@ng-bootstrap/ng-bootstrap","@ngx-validate/core","primeng/table","@angular/router","@angular/forms","@ngxs/router-plugin","@ngxs/store","angular-oauth2-oidc","rxjs","rxjs/operators","snq"],t):t(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng.account={}),e.ng_core,e.ng_theme_shared,e.ng.core,e.ngBootstrap,e.core$1,e.table,e.ng.router,e.ng.forms,e.routerPlugin,e.store,e.angularOauth2Oidc,e.rxjs,e.rxjs.operators,e.snq)}(this,function(e,t,n,r,o,a,i,s,c,u,p,l,d,m,b){"use strict";b=b&&b.hasOwnProperty("default")?b.default:b;var f=function(){return(f=Object.assign||function(e){for(var t,n=1,r=arguments.length;n\n
\n\n'}]}],e.ctorParameters=function(){return[{type:c.FormBuilder},{type:l.OAuthService},{type:p.Store},{type:n.ToasterService},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:["ACCOUNT_OPTIONS"]}]}]},e}();var y=function(){function e(e){this.rest=e}return e.prototype.findTenant=function(e){var t={method:"GET",url:"/api/abp/multi-tenancy/find-tenant/"+e};return this.rest.request(t)},e.prototype.register=function(e){var t={method:"POST",url:"/api/account/register",body:e};return this.rest.request(t,{skipHandleError:!0})},e.decorators=[{type:r.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:t.RestService}]},e.ngInjectableDef=r.ɵɵdefineInjectable({factory:function(){return new e(r.ɵɵinject(t.RestService))},token:e,providedIn:"root"}),e}();var S=c.Validators.maxLength,A=(c.Validators.minLength,c.Validators.required),w=c.Validators.email,T=function(){function e(e,n,r,o,a){this.fb=e,this.accountService=n,this.oauthService=r,this.store=o,this.toasterService=a,this.oauthService.configure(this.store.selectSnapshot(t.ConfigState.getOne("environment")).oAuthConfig),this.oauthService.loadDiscoveryDocument(),this.form=this.fb.group({username:["",[A,S(255)]],password:["",[A,S(32)]],email:["",[A,w]]})}return e.prototype.onSubmit=function(){var e=this;if(!this.form.invalid){this.inProgress=!0;var n={userName:this.form.get("username").value,password:this.form.get("password").value,emailAddress:this.form.get("email").value,appName:"Angular"};this.accountService.register(n).pipe(m.switchMap(function(){return d.from(e.oauthService.fetchTokenUsingPasswordFlow(n.userName,n.password))}),m.switchMap(function(){return e.store.dispatch(new t.GetAppConfiguration)}),m.tap(function(){return e.store.dispatch(new u.Navigate(["/"]))}),m.take(1),m.catchError(function(t){return e.toasterService.error(b(function(){return t.error.error_description})||b(function(){return t.error.error.message},"AbpAccount::DefaultErrorMessage"),"Error",{life:7e3}),d.throwError(t)}),m.finalize(function(){return e.inProgress=!1})).subscribe()}},e.decorators=[{type:r.Component,args:[{selector:"abp-register",template:'
\n
\n \n\n \n
\n
\n'}]}],e.ctorParameters=function(){return[{type:c.FormBuilder},{type:y},{type:l.OAuthService},{type:p.Store},{type:n.ToasterService}]},e}();var x=[{path:"",pathMatch:"full",redirectTo:"login"},{path:"",component:t.DynamicLayoutComponent,children:[{path:"login",component:v},{path:"register",component:T}]}],C=function(){function e(){}return e.decorators=[{type:r.NgModule,args:[{imports:[s.RouterModule.forChild(x)],exports:[s.RouterModule]}]}],e}(),N=function(){function e(e,t,n){this.store=e,this.toasterService=t,this.accountService=n,this.tenant={}}return e.prototype.ngOnInit=function(){this.tenant=this.store.selectSnapshot(t.SessionState.getTenant)||{},this.tenantName=this.tenant.name||""},e.prototype.onSwitch=function(){this.isModalVisible=!0},e.prototype.save=function(){var e=this;this.tenant.name?this.accountService.findTenant(this.tenant.name).pipe(m.take(1),m.catchError(function(t){return e.toasterService.error(b(function(){return t.error.error_description},"AbpUi::DefaultErrorMessage"),"AbpUi::Error"),d.throwError(t)})).subscribe(function(n){var r=n.success,o=n.tenantId;r?(e.tenant={id:o,name:e.tenant.name},e.tenantName=e.tenant.name,e.isModalVisible=!1):(e.toasterService.error("AbpUiMultiTenancy::GivenTenantIsNotAvailable","AbpUi::Error",{messageLocalizationParams:[e.tenant.name]}),e.tenant={}),e.store.dispatch(new t.SetTenant(r?e.tenant:null))}):(this.store.dispatch(new t.SetTenant(null)),this.tenantName=null,this.isModalVisible=!1)},e.decorators=[{type:r.Component,args:[{selector:"abp-tenant-box",template:'\n {{ \'AbpUiMultiTenancy::Tenant\' | abpLocalization }}: \n \n {{ tenantName || (\'AbpUiMultiTenancy::NotSelected\' | abpLocalization) }}\n \n ({{\n \'AbpUiMultiTenancy::Switch\' | abpLocalization\n }})\n\n\n\n \n
Switch Tenant
\n
\n \n
\n
\n
\n \n \n
\n

{{ \'AbpUiMultiTenancy::SwitchTenantHint\' | abpLocalization }}

\n
\n
\n
\n \n \n \n \n
\n'}]}],e.ctorParameters=function(){return[{type:p.Store},{type:n.ToasterService},{type:y}]},e}();function L(e){return f({redirectUrl:"/"},e)}var M=new r.InjectionToken("ACCOUNT_OPTIONS"),O=function(){function e(){}return e.decorators=[{type:r.NgModule,args:[{declarations:[v,T,N],imports:[t.CoreModule,C,n.ThemeSharedModule,i.TableModule,o.NgbDropdownModule,a.NgxValidateCoreModule],exports:[]}]}],e}();e.ACCOUNT_OPTIONS=M,e.ACCOUNT_ROUTES={routes:[{name:"Account",path:"account",invisible:!0,layout:"application",children:[{path:"login",name:"Login",order:1},{path:"register",name:"Register",order:2}]}],settings:[]},e.AccountModule=O,e.AccountProviders=function(e){return void 0===e&&(e={}),[{provide:M,useValue:e},{provide:"ACCOUNT_OPTIONS",useFactory:L,deps:[M]}]},e.LoginComponent=v,e.RegisterComponent=T,e.optionsFactory=L,e.ɵa=v,e.ɵc=T,e.ɵd=y,e.ɵe=N,e.ɵf=C,e.ɵg=L,e.ɵh=M,Object.defineProperty(e,"__esModule",{value:!0})}); //# sourceMappingURL=abp-ng.account.umd.min.js.map \ No newline at end of file diff --git a/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.min.js.map b/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.min.js.map index 79daa70555..26cafd31d7 100644 --- a/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.min.js.map +++ b/npm/ng-packs/dist/account/bundles/abp-ng.account.umd.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.account/lib/tokens/options.token.ts","ng://@abp/ng.account/lib/root-account.module.ts","ng://@abp/ng.account/lib/components/login/login.component.ts","ng://@abp/ng.account/lib/services/account.service.ts","ng://@abp/ng.account/lib/components/register/register.component.ts","ng://@abp/ng.account/lib/account-routing.module.ts","ng://@abp/ng.account/lib/components/tenant-box/tenant-box.component.ts","ng://@abp/ng.account/lib/account.module.ts","ng://@abp/ng.account/lib/constants/routes.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","optionsFactory","options","redirectUrl","ACCOUNT_OPTIONS","InjectionToken","RootAccountModule","forRoot","ngModule","providers","provide","useValue","useFactory","deps","NgModule","args","maxLength","forms","Validators","required","minLength","LoginComponent","fb","oauthService","store","toasterService","configure","selectSnapshot","ConfigState","getOne","oAuthConfig","loadDiscoveryDocument","form","group","username","password","remember","onSubmit","_this","invalid","inProgress","from","fetchTokenUsingPasswordFlow","get","value","pipe","switchMap","dispatch","GetAppConfiguration","tap","snq","window","history","state","Navigate","catchError","err","error","error_description","message","life","throwError","finalize","subscribe","Component","selector","template","FormBuilder","OAuthService","Store","ToasterService","Optional","type","Inject","AccountService","rest","findTenant","tenantName","request","method","url","register","body","skipHandleError","Injectable","providedIn","RestService","email","RegisterComponent","accountService","newUser","userName","emailAddress","appName","take","routes","path","pathMatch","redirectTo","component","DynamicLayoutComponent","children","AccountRoutingModule","imports","RouterModule","forChild","exports","TenantBoxComponent","tenant","ngOnInit","SessionState","getTenant","name","onSwitch","isModalVisible","save","_a","success","tenantId","id","messageLocalizationParams","SetTenant","AccountModule","declarations","CoreModule","ThemeSharedModule","TableModule","NgbDropdownModule","NgxValidateCoreModule","invisible","layout","order","settings"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { InjectionToken } from '@angular/core';\nimport { Options } from '../models/options';\n\nexport function optionsFactory(options: Options) {\n return {\n redirectUrl: '/',\n ...options,\n };\n}\n\nexport const ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS');\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { Options } from './models/options';\nimport { ACCOUNT_OPTIONS, optionsFactory } from './tokens/options.token';\n\n@NgModule({})\nexport class RootAccountModule {\n static forRoot(options = {} as Options): ModuleWithProviders {\n return {\n ngModule: RootAccountModule,\n providers: [\n { provide: ACCOUNT_OPTIONS, useValue: options },\n {\n provide: 'ACCOUNT_OPTIONS',\n useFactory: optionsFactory,\n deps: [ACCOUNT_OPTIONS],\n },\n ],\n };\n }\n}\n","import { GetAppConfiguration, ConfigState } from '@abp/ng.core';\nimport { Component, Inject, Optional } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { Options } from '../../models/options';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { catchError, finalize, switchMap, tap } from 'rxjs/operators';\nimport snq from 'snq';\n\nconst { maxLength, minLength, required } = Validators;\n\n@Component({\n selector: 'abp-login',\n templateUrl: './login.component.html',\n})\nexport class LoginComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n @Optional() @Inject('ACCOUNT_OPTIONS') private options: Options,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n remember: [false],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n // this.oauthService.setStorage(this.form.value.remember ? localStorage : sessionStorage);\n\n this.inProgress = true;\n from(\n this.oauthService.fetchTokenUsingPasswordFlow(this.form.get('username').value, this.form.get('password').value),\n )\n .pipe(\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => {\n const redirectUrl = snq(() => window.history.state).redirectUrl || (this.options || {}).redirectUrl || '/';\n this.store.dispatch(new Navigate([redirectUrl]));\n }),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { RegisterResponse, RegisterRequest, TenantIdResponse } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AccountService {\n constructor(private rest: RestService) {}\n\n findTenant(tenantName: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/abp/multi-tenancy/find-tenant/${tenantName}`,\n };\n\n return this.rest.request(request);\n }\n\n register(body: RegisterRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/account/register`,\n body,\n };\n\n return this.rest.request(request, { skipHandleError: true });\n }\n}\n","import { ConfigState, GetAppConfiguration } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { catchError, finalize, switchMap, take, tap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { RegisterRequest } from '../../models';\nimport { AccountService } from '../../services/account.service';\nconst { maxLength, minLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-register',\n templateUrl: './register.component.html',\n})\nexport class RegisterComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private accountService: AccountService,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n email: ['', [required, email]],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.inProgress = true;\n\n const newUser = {\n userName: this.form.get('username').value,\n password: this.form.get('password').value,\n emailAddress: this.form.get('email').value,\n appName: 'Angular',\n } as RegisterRequest;\n\n this.accountService\n .register(newUser)\n .pipe(\n switchMap(() => from(this.oauthService.fetchTokenUsingPasswordFlow(newUser.userName, newUser.password))),\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => this.store.dispatch(new Navigate(['/']))),\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { DynamicLayoutComponent } from '@abp/ng.core';\n\nconst routes: Routes = [\n { path: '', pathMatch: 'full', redirectTo: 'login' },\n {\n path: '',\n component: DynamicLayoutComponent,\n children: [{ path: 'login', component: LoginComponent }, { path: 'register', component: RegisterComponent }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class AccountRoutingModule {}\n","import { ABP, SetTenant, SessionState } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component, OnInit } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AccountService } from '../../services/account.service';\n\n@Component({\n selector: 'abp-tenant-box',\n templateUrl: './tenant-box.component.html',\n})\nexport class TenantBoxComponent implements OnInit {\n constructor(private store: Store, private toasterService: ToasterService, private accountService: AccountService) {}\n\n tenant = {} as ABP.BasicItem;\n\n tenantName: string;\n\n isModalVisible: boolean;\n\n ngOnInit() {\n this.tenant = this.store.selectSnapshot(SessionState.getTenant) || ({} as ABP.BasicItem);\n this.tenantName = this.tenant.name || '';\n }\n\n onSwitch() {\n this.isModalVisible = true;\n }\n\n save() {\n if (this.tenant.name) {\n this.accountService\n .findTenant(this.tenant.name)\n .pipe(\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description, 'AbpUi::DefaultErrorMessage'),\n 'AbpUi::Error',\n );\n return throwError(err);\n }),\n )\n .subscribe(({ success, tenantId }) => {\n if (success) {\n this.tenant = {\n id: tenantId,\n name: this.tenant.name,\n };\n this.tenantName = this.tenant.name;\n this.isModalVisible = false;\n } else {\n this.toasterService.error(`AbpUiMultiTenancy::GivenTenantIsNotAvailable`, 'AbpUi::Error', {\n messageLocalizationParams: [this.tenant.name],\n });\n this.tenant = {} as ABP.BasicItem;\n }\n this.store.dispatch(new SetTenant(success ? this.tenant : null));\n });\n } else {\n this.store.dispatch(new SetTenant(null));\n this.tenantName = null;\n this.isModalVisible = false;\n }\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { TableModule } from 'primeng/table';\nimport { AccountRoutingModule } from './account-routing.module';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { TenantBoxComponent } from './components/tenant-box/tenant-box.component';\n\n@NgModule({\n declarations: [LoginComponent, RegisterComponent, TenantBoxComponent],\n imports: [CoreModule, AccountRoutingModule, ThemeSharedModule, TableModule, NgbDropdownModule, NgxValidateCoreModule],\n exports: [],\n})\nexport class AccountModule {}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const ACCOUNT_ROUTES = {\n routes: [\n {\n name: 'Account',\n path: 'account',\n invisible: true,\n layout: eLayoutType.application,\n children: [{ path: 'login', name: 'Login', order: 1 }, { path: 'register', name: 'Register', order: 2 }],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n"]} \ No newline at end of file +{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.account/lib/components/login/login.component.ts","ng://@abp/ng.account/lib/services/account.service.ts","ng://@abp/ng.account/lib/components/register/register.component.ts","ng://@abp/ng.account/lib/account-routing.module.ts","ng://@abp/ng.account/lib/components/tenant-box/tenant-box.component.ts","ng://@abp/ng.account/lib/tokens/options.token.ts","ng://@abp/ng.account/lib/account.module.ts","ng://@abp/ng.account/lib/constants/routes.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","maxLength","forms","Validators","required","minLength","LoginComponent","fb","oauthService","store","toasterService","options","configure","selectSnapshot","ConfigState","getOne","oAuthConfig","loadDiscoveryDocument","form","group","username","password","remember","onSubmit","_this","invalid","inProgress","from","fetchTokenUsingPasswordFlow","get","value","pipe","switchMap","dispatch","GetAppConfiguration","tap","redirectUrl","snq","window","history","state","Navigate","catchError","err","error","error_description","message","life","throwError","finalize","subscribe","Component","args","selector","template","FormBuilder","OAuthService","Store","ToasterService","Optional","type","Inject","AccountService","rest","findTenant","tenantName","request","method","url","register","body","skipHandleError","Injectable","providedIn","RestService","email","RegisterComponent","accountService","newUser","userName","emailAddress","appName","take","routes","path","pathMatch","redirectTo","component","DynamicLayoutComponent","children","AccountRoutingModule","NgModule","imports","RouterModule","forChild","exports","TenantBoxComponent","tenant","ngOnInit","SessionState","getTenant","name","onSwitch","isModalVisible","save","_a","success","tenantId","id","messageLocalizationParams","SetTenant","optionsFactory","ACCOUNT_OPTIONS","InjectionToken","AccountModule","declarations","CoreModule","ThemeSharedModule","TableModule","NgbDropdownModule","NgxValidateCoreModule","invisible","layout","order","settings","provide","useValue","useFactory","deps"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { GetAppConfiguration, ConfigState } from '@abp/ng.core';\nimport { Component, Inject, Optional } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { Options } from '../../models/options';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { catchError, finalize, switchMap, tap } from 'rxjs/operators';\nimport snq from 'snq';\n\nconst { maxLength, minLength, required } = Validators;\n\n@Component({\n selector: 'abp-login',\n templateUrl: './login.component.html',\n})\nexport class LoginComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n @Optional() @Inject('ACCOUNT_OPTIONS') private options: Options,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n remember: [false],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n // this.oauthService.setStorage(this.form.value.remember ? localStorage : sessionStorage);\n\n this.inProgress = true;\n from(\n this.oauthService.fetchTokenUsingPasswordFlow(this.form.get('username').value, this.form.get('password').value),\n )\n .pipe(\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => {\n const redirectUrl = snq(() => window.history.state).redirectUrl || (this.options || {}).redirectUrl || '/';\n this.store.dispatch(new Navigate([redirectUrl]));\n }),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { RegisterResponse, RegisterRequest, TenantIdResponse } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AccountService {\n constructor(private rest: RestService) {}\n\n findTenant(tenantName: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/abp/multi-tenancy/find-tenant/${tenantName}`,\n };\n\n return this.rest.request(request);\n }\n\n register(body: RegisterRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/account/register`,\n body,\n };\n\n return this.rest.request(request, { skipHandleError: true });\n }\n}\n","import { ConfigState, GetAppConfiguration } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { catchError, finalize, switchMap, take, tap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { RegisterRequest } from '../../models';\nimport { AccountService } from '../../services/account.service';\nconst { maxLength, minLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-register',\n templateUrl: './register.component.html',\n})\nexport class RegisterComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private accountService: AccountService,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n email: ['', [required, email]],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.inProgress = true;\n\n const newUser = {\n userName: this.form.get('username').value,\n password: this.form.get('password').value,\n emailAddress: this.form.get('email').value,\n appName: 'Angular',\n } as RegisterRequest;\n\n this.accountService\n .register(newUser)\n .pipe(\n switchMap(() => from(this.oauthService.fetchTokenUsingPasswordFlow(newUser.userName, newUser.password))),\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => this.store.dispatch(new Navigate(['/']))),\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { DynamicLayoutComponent } from '@abp/ng.core';\n\nconst routes: Routes = [\n { path: '', pathMatch: 'full', redirectTo: 'login' },\n {\n path: '',\n component: DynamicLayoutComponent,\n children: [{ path: 'login', component: LoginComponent }, { path: 'register', component: RegisterComponent }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class AccountRoutingModule {}\n","import { ABP, SetTenant, SessionState } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component, OnInit } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AccountService } from '../../services/account.service';\n\n@Component({\n selector: 'abp-tenant-box',\n templateUrl: './tenant-box.component.html',\n})\nexport class TenantBoxComponent implements OnInit {\n constructor(private store: Store, private toasterService: ToasterService, private accountService: AccountService) {}\n\n tenant = {} as ABP.BasicItem;\n\n tenantName: string;\n\n isModalVisible: boolean;\n\n ngOnInit() {\n this.tenant = this.store.selectSnapshot(SessionState.getTenant) || ({} as ABP.BasicItem);\n this.tenantName = this.tenant.name || '';\n }\n\n onSwitch() {\n this.isModalVisible = true;\n }\n\n save() {\n if (this.tenant.name) {\n this.accountService\n .findTenant(this.tenant.name)\n .pipe(\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description, 'AbpUi::DefaultErrorMessage'),\n 'AbpUi::Error',\n );\n return throwError(err);\n }),\n )\n .subscribe(({ success, tenantId }) => {\n if (success) {\n this.tenant = {\n id: tenantId,\n name: this.tenant.name,\n };\n this.tenantName = this.tenant.name;\n this.isModalVisible = false;\n } else {\n this.toasterService.error(`AbpUiMultiTenancy::GivenTenantIsNotAvailable`, 'AbpUi::Error', {\n messageLocalizationParams: [this.tenant.name],\n });\n this.tenant = {} as ABP.BasicItem;\n }\n this.store.dispatch(new SetTenant(success ? this.tenant : null));\n });\n } else {\n this.store.dispatch(new SetTenant(null));\n this.tenantName = null;\n this.isModalVisible = false;\n }\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { Options } from '../models/options';\n\nexport function optionsFactory(options: Options) {\n return {\n redirectUrl: '/',\n ...options,\n };\n}\n\nexport const ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS');\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule, Provider } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { TableModule } from 'primeng/table';\nimport { AccountRoutingModule } from './account-routing.module';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { TenantBoxComponent } from './components/tenant-box/tenant-box.component';\nimport { Options } from './models/options';\nimport { ACCOUNT_OPTIONS, optionsFactory } from './tokens/options.token';\n\n@NgModule({\n declarations: [LoginComponent, RegisterComponent, TenantBoxComponent],\n imports: [CoreModule, AccountRoutingModule, ThemeSharedModule, TableModule, NgbDropdownModule, NgxValidateCoreModule],\n exports: [],\n})\nexport class AccountModule {}\n\nexport function AccountProviders(options = {} as Options): Provider[] {\n return [\n { provide: ACCOUNT_OPTIONS, useValue: options },\n {\n provide: 'ACCOUNT_OPTIONS',\n useFactory: optionsFactory,\n deps: [ACCOUNT_OPTIONS],\n },\n ];\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const ACCOUNT_ROUTES = {\n routes: [\n {\n name: 'Account',\n path: 'account',\n invisible: true,\n layout: eLayoutType.application,\n children: [{ path: 'login', name: 'Login', order: 1 }, { path: 'register', name: 'Register', order: 2 }],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n"]} \ No newline at end of file diff --git a/npm/ng-packs/dist/account/esm2015/abp-ng.account.js b/npm/ng-packs/dist/account/esm2015/abp-ng.account.js index c279ccfee1..6a9de79cae 100644 --- a/npm/ng-packs/dist/account/esm2015/abp-ng.account.js +++ b/npm/ng-packs/dist/account/esm2015/abp-ng.account.js @@ -5,11 +5,11 @@ /** * Generated bundle index. Do not edit. */ -export { RootAccountModule, AccountModule, LoginComponent, RegisterComponent, ACCOUNT_ROUTES, optionsFactory, ACCOUNT_OPTIONS } from './public-api'; -export { AccountRoutingModule as ɵh } from './lib/account-routing.module'; -export { LoginComponent as ɵc } from './lib/components/login/login.component'; -export { RegisterComponent as ɵe } from './lib/components/register/register.component'; -export { TenantBoxComponent as ɵg } from './lib/components/tenant-box/tenant-box.component'; -export { AccountService as ɵf } from './lib/services/account.service'; -export { ACCOUNT_OPTIONS as ɵb, optionsFactory as ɵa } from './lib/tokens/options.token'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmFjY291bnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJhYnAtbmcuYWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEscUlBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUN4RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxpQkFBaUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw4Q0FBOEMsQ0FBQztBQUNyRixPQUFPLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFFMUYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7QWNjb3VudFJvdXRpbmdNb2R1bGUgYXMgybVofSBmcm9tICcuL2xpYi9hY2NvdW50LXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7TG9naW5Db21wb25lbnQgYXMgybVjfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xvZ2luL2xvZ2luLmNvbXBvbmVudCc7XG5leHBvcnQge1JlZ2lzdGVyQ29tcG9uZW50IGFzIMm1ZX0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9yZWdpc3Rlci9yZWdpc3Rlci5jb21wb25lbnQnO1xuZXhwb3J0IHtUZW5hbnRCb3hDb21wb25lbnQgYXMgybVnfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RlbmFudC1ib3gvdGVuYW50LWJveC5jb21wb25lbnQnO1xuZXhwb3J0IHtPcHRpb25zIGFzIMm1ZH0gZnJvbSAnLi9saWIvbW9kZWxzL29wdGlvbnMnO1xuZXhwb3J0IHtBY2NvdW50U2VydmljZSBhcyDJtWZ9IGZyb20gJy4vbGliL3NlcnZpY2VzL2FjY291bnQuc2VydmljZSc7XG5leHBvcnQge0FDQ09VTlRfT1BUSU9OUyBhcyDJtWIsb3B0aW9uc0ZhY3RvcnkgYXMgybVhfSBmcm9tICcuL2xpYi90b2tlbnMvb3B0aW9ucy50b2tlbic7Il19 \ No newline at end of file +export { AccountProviders, AccountModule, LoginComponent, RegisterComponent, ACCOUNT_ROUTES, optionsFactory, ACCOUNT_OPTIONS } from './public-api'; +export { AccountRoutingModule as ɵf } from './lib/account-routing.module'; +export { LoginComponent as ɵa } from './lib/components/login/login.component'; +export { RegisterComponent as ɵc } from './lib/components/register/register.component'; +export { TenantBoxComponent as ɵe } from './lib/components/tenant-box/tenant-box.component'; +export { AccountService as ɵd } from './lib/services/account.service'; +export { ACCOUNT_OPTIONS as ɵh, optionsFactory as ɵg } from './lib/tokens/options.token'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmFjY291bnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJhYnAtbmcuYWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsb0lBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUN4RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxpQkFBaUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw4Q0FBOEMsQ0FBQztBQUNyRixPQUFPLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFFMUYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7QWNjb3VudFJvdXRpbmdNb2R1bGUgYXMgybVmfSBmcm9tICcuL2xpYi9hY2NvdW50LXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7TG9naW5Db21wb25lbnQgYXMgybVhfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xvZ2luL2xvZ2luLmNvbXBvbmVudCc7XG5leHBvcnQge1JlZ2lzdGVyQ29tcG9uZW50IGFzIMm1Y30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9yZWdpc3Rlci9yZWdpc3Rlci5jb21wb25lbnQnO1xuZXhwb3J0IHtUZW5hbnRCb3hDb21wb25lbnQgYXMgybVlfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RlbmFudC1ib3gvdGVuYW50LWJveC5jb21wb25lbnQnO1xuZXhwb3J0IHtPcHRpb25zIGFzIMm1Yn0gZnJvbSAnLi9saWIvbW9kZWxzL29wdGlvbnMnO1xuZXhwb3J0IHtBY2NvdW50U2VydmljZSBhcyDJtWR9IGZyb20gJy4vbGliL3NlcnZpY2VzL2FjY291bnQuc2VydmljZSc7XG5leHBvcnQge0FDQ09VTlRfT1BUSU9OUyBhcyDJtWgsb3B0aW9uc0ZhY3RvcnkgYXMgybVnfSBmcm9tICcuL2xpYi90b2tlbnMvb3B0aW9ucy50b2tlbic7Il19 \ No newline at end of file diff --git a/npm/ng-packs/dist/account/esm2015/lib/account.module.js b/npm/ng-packs/dist/account/esm2015/lib/account.module.js index 310ef81a9a..a67f725856 100644 --- a/npm/ng-packs/dist/account/esm2015/lib/account.module.js +++ b/npm/ng-packs/dist/account/esm2015/lib/account.module.js @@ -12,6 +12,7 @@ import { AccountRoutingModule } from './account-routing.module'; import { LoginComponent } from './components/login/login.component'; import { RegisterComponent } from './components/register/register.component'; import { TenantBoxComponent } from './components/tenant-box/tenant-box.component'; +import { ACCOUNT_OPTIONS, optionsFactory } from './tokens/options.token'; export class AccountModule { } AccountModule.decorators = [ @@ -21,4 +22,18 @@ AccountModule.decorators = [ exports: [], },] } ]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJsaWIvYWNjb3VudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQU9sRixNQUFNLE9BQU8sYUFBYTs7O1lBTHpCLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUM7Z0JBQ3JFLE9BQU8sRUFBRSxDQUFDLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUscUJBQXFCLENBQUM7Z0JBQ3JILE9BQU8sRUFBRSxFQUFFO2FBQ1oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JlTW9kdWxlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IFRoZW1lU2hhcmVkTW9kdWxlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nYkRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgTmd4VmFsaWRhdGVDb3JlTW9kdWxlIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcbmltcG9ydCB7IFRhYmxlTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XG5pbXBvcnQgeyBBY2NvdW50Um91dGluZ01vZHVsZSB9IGZyb20gJy4vYWNjb3VudC1yb3V0aW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBMb2dpbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVnaXN0ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcmVnaXN0ZXIvcmVnaXN0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFRlbmFudEJveENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90ZW5hbnQtYm94L3RlbmFudC1ib3guY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTG9naW5Db21wb25lbnQsIFJlZ2lzdGVyQ29tcG9uZW50LCBUZW5hbnRCb3hDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29yZU1vZHVsZSwgQWNjb3VudFJvdXRpbmdNb2R1bGUsIFRoZW1lU2hhcmVkTW9kdWxlLCBUYWJsZU1vZHVsZSwgTmdiRHJvcGRvd25Nb2R1bGUsIE5neFZhbGlkYXRlQ29yZU1vZHVsZV0sXG4gIGV4cG9ydHM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBBY2NvdW50TW9kdWxlIHt9XG4iXX0= \ No newline at end of file +/** + * @param {?=} options + * @return {?} + */ +export function AccountProviders(options = (/** @type {?} */ ({}))) { + return [ + { provide: ACCOUNT_OPTIONS, useValue: options }, + { + provide: 'ACCOUNT_OPTIONS', + useFactory: optionsFactory, + deps: [ACCOUNT_OPTIONS], + }, + ]; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJsaWIvYWNjb3VudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUVsRixPQUFPLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBT3pFLE1BQU0sT0FBTyxhQUFhOzs7WUFMekIsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRSxDQUFDLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQztnQkFDckUsT0FBTyxFQUFFLENBQUMsVUFBVSxFQUFFLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxxQkFBcUIsQ0FBQztnQkFDckgsT0FBTyxFQUFFLEVBQUU7YUFDWjs7Ozs7O0FBR0QsTUFBTSxVQUFVLGdCQUFnQixDQUFDLE9BQU8sR0FBRyxtQkFBQSxFQUFFLEVBQVc7SUFDdEQsT0FBTztRQUNMLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFO1FBQy9DO1lBQ0UsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixVQUFVLEVBQUUsY0FBYztZQUMxQixJQUFJLEVBQUUsQ0FBQyxlQUFlLENBQUM7U0FDeEI7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgVGhlbWVTaGFyZWRNb2R1bGUgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBOZ01vZHVsZSwgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nYkRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgTmd4VmFsaWRhdGVDb3JlTW9kdWxlIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcbmltcG9ydCB7IFRhYmxlTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XG5pbXBvcnQgeyBBY2NvdW50Um91dGluZ01vZHVsZSB9IGZyb20gJy4vYWNjb3VudC1yb3V0aW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBMb2dpbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVnaXN0ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcmVnaXN0ZXIvcmVnaXN0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFRlbmFudEJveENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90ZW5hbnQtYm94L3RlbmFudC1ib3guY29tcG9uZW50JztcbmltcG9ydCB7IE9wdGlvbnMgfSBmcm9tICcuL21vZGVscy9vcHRpb25zJztcbmltcG9ydCB7IEFDQ09VTlRfT1BUSU9OUywgb3B0aW9uc0ZhY3RvcnkgfSBmcm9tICcuL3Rva2Vucy9vcHRpb25zLnRva2VuJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbTG9naW5Db21wb25lbnQsIFJlZ2lzdGVyQ29tcG9uZW50LCBUZW5hbnRCb3hDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29yZU1vZHVsZSwgQWNjb3VudFJvdXRpbmdNb2R1bGUsIFRoZW1lU2hhcmVkTW9kdWxlLCBUYWJsZU1vZHVsZSwgTmdiRHJvcGRvd25Nb2R1bGUsIE5neFZhbGlkYXRlQ29yZU1vZHVsZV0sXG4gIGV4cG9ydHM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBBY2NvdW50TW9kdWxlIHt9XG5cbmV4cG9ydCBmdW5jdGlvbiBBY2NvdW50UHJvdmlkZXJzKG9wdGlvbnMgPSB7fSBhcyBPcHRpb25zKTogUHJvdmlkZXJbXSB7XG4gIHJldHVybiBbXG4gICAgeyBwcm92aWRlOiBBQ0NPVU5UX09QVElPTlMsIHVzZVZhbHVlOiBvcHRpb25zIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogJ0FDQ09VTlRfT1BUSU9OUycsXG4gICAgICB1c2VGYWN0b3J5OiBvcHRpb25zRmFjdG9yeSxcbiAgICAgIGRlcHM6IFtBQ0NPVU5UX09QVElPTlNdLFxuICAgIH0sXG4gIF07XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/account/esm2015/lib/root-account.module.js b/npm/ng-packs/dist/account/esm2015/lib/root-account.module.js deleted file mode 100644 index 374b07fd9c..0000000000 --- a/npm/ng-packs/dist/account/esm2015/lib/root-account.module.js +++ /dev/null @@ -1,29 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { NgModule } from '@angular/core'; -import { ACCOUNT_OPTIONS, optionsFactory } from './tokens/options.token'; -export class RootAccountModule { - /** - * @param {?=} options - * @return {?} - */ - static forRoot(options = (/** @type {?} */ ({}))) { - return { - ngModule: RootAccountModule, - providers: [ - { provide: ACCOUNT_OPTIONS, useValue: options }, - { - provide: 'ACCOUNT_OPTIONS', - useFactory: optionsFactory, - deps: [ACCOUNT_OPTIONS], - }, - ], - }; - } -} -RootAccountModule.decorators = [ - { type: NgModule, args: [{},] } -]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1hY2NvdW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuYWNjb3VudC8iLCJzb3VyY2VzIjpbImxpYi9yb290LWFjY291bnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBR3pFLE1BQU0sT0FBTyxpQkFBaUI7Ozs7O0lBQzVCLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLG1CQUFBLEVBQUUsRUFBVztRQUNwQyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixTQUFTLEVBQUU7Z0JBQ1QsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7Z0JBQy9DO29CQUNFLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFVBQVUsRUFBRSxjQUFjO29CQUMxQixJQUFJLEVBQUUsQ0FBQyxlQUFlLENBQUM7aUJBQ3hCO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzs7O1lBZEYsUUFBUSxTQUFDLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT3B0aW9ucyB9IGZyb20gJy4vbW9kZWxzL29wdGlvbnMnO1xuaW1wb3J0IHsgQUNDT1VOVF9PUFRJT05TLCBvcHRpb25zRmFjdG9yeSB9IGZyb20gJy4vdG9rZW5zL29wdGlvbnMudG9rZW4nO1xuXG5ATmdNb2R1bGUoe30pXG5leHBvcnQgY2xhc3MgUm9vdEFjY291bnRNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChvcHRpb25zID0ge30gYXMgT3B0aW9ucyk6IE1vZHVsZVdpdGhQcm92aWRlcnMge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogUm9vdEFjY291bnRNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBBQ0NPVU5UX09QVElPTlMsIHVzZVZhbHVlOiBvcHRpb25zIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiAnQUNDT1VOVF9PUFRJT05TJyxcbiAgICAgICAgICB1c2VGYWN0b3J5OiBvcHRpb25zRmFjdG9yeSxcbiAgICAgICAgICBkZXBzOiBbQUNDT1VOVF9PUFRJT05TXSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/account/esm2015/public-api.js b/npm/ng-packs/dist/account/esm2015/public-api.js index fd11ff2e34..afdd9ba85f 100644 --- a/npm/ng-packs/dist/account/esm2015/public-api.js +++ b/npm/ng-packs/dist/account/esm2015/public-api.js @@ -2,10 +2,9 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { RootAccountModule } from './lib/root-account.module'; -export { AccountModule } from './lib/account.module'; +export { AccountProviders, AccountModule } from './lib/account.module'; export { LoginComponent, RegisterComponent } from './lib/components'; export { ACCOUNT_ROUTES } from './lib/constants/routes'; export { optionsFactory, ACCOUNT_OPTIONS } from './lib/tokens'; export {} from './lib/models'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuYWNjb3VudC8iLCJzb3VyY2VzIjpbInB1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGtDQUFjLDJCQUEyQixDQUFDO0FBQzFDLDhCQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGtEQUFjLGtCQUFrQixDQUFDO0FBQ2pDLCtCQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGdEQUFjLGNBQWMsQ0FBQztBQUM3QixlQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL3Jvb3QtYWNjb3VudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYWNjb3VudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudHMvcm91dGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Rva2Vucyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMnO1xuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuYWNjb3VudC8iLCJzb3VyY2VzIjpbInB1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGdEQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGtEQUFjLGtCQUFrQixDQUFDO0FBQ2pDLCtCQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGdEQUFjLGNBQWMsQ0FBQztBQUM3QixlQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2FjY291bnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzL3JvdXRlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90b2tlbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/account/esm5/abp-ng.account.js b/npm/ng-packs/dist/account/esm5/abp-ng.account.js index c279ccfee1..6a9de79cae 100644 --- a/npm/ng-packs/dist/account/esm5/abp-ng.account.js +++ b/npm/ng-packs/dist/account/esm5/abp-ng.account.js @@ -5,11 +5,11 @@ /** * Generated bundle index. Do not edit. */ -export { RootAccountModule, AccountModule, LoginComponent, RegisterComponent, ACCOUNT_ROUTES, optionsFactory, ACCOUNT_OPTIONS } from './public-api'; -export { AccountRoutingModule as ɵh } from './lib/account-routing.module'; -export { LoginComponent as ɵc } from './lib/components/login/login.component'; -export { RegisterComponent as ɵe } from './lib/components/register/register.component'; -export { TenantBoxComponent as ɵg } from './lib/components/tenant-box/tenant-box.component'; -export { AccountService as ɵf } from './lib/services/account.service'; -export { ACCOUNT_OPTIONS as ɵb, optionsFactory as ɵa } from './lib/tokens/options.token'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmFjY291bnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJhYnAtbmcuYWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEscUlBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUN4RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxpQkFBaUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw4Q0FBOEMsQ0FBQztBQUNyRixPQUFPLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFFMUYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7QWNjb3VudFJvdXRpbmdNb2R1bGUgYXMgybVofSBmcm9tICcuL2xpYi9hY2NvdW50LXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7TG9naW5Db21wb25lbnQgYXMgybVjfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xvZ2luL2xvZ2luLmNvbXBvbmVudCc7XG5leHBvcnQge1JlZ2lzdGVyQ29tcG9uZW50IGFzIMm1ZX0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9yZWdpc3Rlci9yZWdpc3Rlci5jb21wb25lbnQnO1xuZXhwb3J0IHtUZW5hbnRCb3hDb21wb25lbnQgYXMgybVnfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RlbmFudC1ib3gvdGVuYW50LWJveC5jb21wb25lbnQnO1xuZXhwb3J0IHtPcHRpb25zIGFzIMm1ZH0gZnJvbSAnLi9saWIvbW9kZWxzL29wdGlvbnMnO1xuZXhwb3J0IHtBY2NvdW50U2VydmljZSBhcyDJtWZ9IGZyb20gJy4vbGliL3NlcnZpY2VzL2FjY291bnQuc2VydmljZSc7XG5leHBvcnQge0FDQ09VTlRfT1BUSU9OUyBhcyDJtWIsb3B0aW9uc0ZhY3RvcnkgYXMgybVhfSBmcm9tICcuL2xpYi90b2tlbnMvb3B0aW9ucy50b2tlbic7Il19 \ No newline at end of file +export { AccountProviders, AccountModule, LoginComponent, RegisterComponent, ACCOUNT_ROUTES, optionsFactory, ACCOUNT_OPTIONS } from './public-api'; +export { AccountRoutingModule as ɵf } from './lib/account-routing.module'; +export { LoginComponent as ɵa } from './lib/components/login/login.component'; +export { RegisterComponent as ɵc } from './lib/components/register/register.component'; +export { TenantBoxComponent as ɵe } from './lib/components/tenant-box/tenant-box.component'; +export { AccountService as ɵd } from './lib/services/account.service'; +export { ACCOUNT_OPTIONS as ɵh, optionsFactory as ɵg } from './lib/tokens/options.token'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmFjY291bnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJhYnAtbmcuYWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsb0lBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUN4RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxpQkFBaUIsSUFBSSxFQUFFLEVBQUMsTUFBTSw4Q0FBOEMsQ0FBQztBQUNyRixPQUFPLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFFMUYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7QWNjb3VudFJvdXRpbmdNb2R1bGUgYXMgybVmfSBmcm9tICcuL2xpYi9hY2NvdW50LXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7TG9naW5Db21wb25lbnQgYXMgybVhfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xvZ2luL2xvZ2luLmNvbXBvbmVudCc7XG5leHBvcnQge1JlZ2lzdGVyQ29tcG9uZW50IGFzIMm1Y30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9yZWdpc3Rlci9yZWdpc3Rlci5jb21wb25lbnQnO1xuZXhwb3J0IHtUZW5hbnRCb3hDb21wb25lbnQgYXMgybVlfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RlbmFudC1ib3gvdGVuYW50LWJveC5jb21wb25lbnQnO1xuZXhwb3J0IHtPcHRpb25zIGFzIMm1Yn0gZnJvbSAnLi9saWIvbW9kZWxzL29wdGlvbnMnO1xuZXhwb3J0IHtBY2NvdW50U2VydmljZSBhcyDJtWR9IGZyb20gJy4vbGliL3NlcnZpY2VzL2FjY291bnQuc2VydmljZSc7XG5leHBvcnQge0FDQ09VTlRfT1BUSU9OUyBhcyDJtWgsb3B0aW9uc0ZhY3RvcnkgYXMgybVnfSBmcm9tICcuL2xpYi90b2tlbnMvb3B0aW9ucy50b2tlbic7Il19 \ No newline at end of file diff --git a/npm/ng-packs/dist/account/esm5/lib/account.module.js b/npm/ng-packs/dist/account/esm5/lib/account.module.js index 1e44d84a41..4ffe8eae99 100644 --- a/npm/ng-packs/dist/account/esm5/lib/account.module.js +++ b/npm/ng-packs/dist/account/esm5/lib/account.module.js @@ -12,6 +12,7 @@ import { AccountRoutingModule } from './account-routing.module'; import { LoginComponent } from './components/login/login.component'; import { RegisterComponent } from './components/register/register.component'; import { TenantBoxComponent } from './components/tenant-box/tenant-box.component'; +import { ACCOUNT_OPTIONS, optionsFactory } from './tokens/options.token'; var AccountModule = /** @class */ (function () { function AccountModule() { } @@ -25,4 +26,19 @@ var AccountModule = /** @class */ (function () { return AccountModule; }()); export { AccountModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJsaWIvYWNjb3VudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUVsRjtJQUFBO0lBSzRCLENBQUM7O2dCQUw1QixRQUFRLFNBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsY0FBYyxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDO29CQUNyRSxPQUFPLEVBQUUsQ0FBQyxVQUFVLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLHFCQUFxQixDQUFDO29CQUNySCxPQUFPLEVBQUUsRUFBRTtpQkFDWjs7SUFDMkIsb0JBQUM7Q0FBQSxBQUw3QixJQUs2QjtTQUFoQixhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ2JEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IE5neFZhbGlkYXRlQ29yZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdmFsaWRhdGUvY29yZSc7XG5pbXBvcnQgeyBUYWJsZU1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdGFibGUnO1xuaW1wb3J0IHsgQWNjb3VudFJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2FjY291bnQtcm91dGluZy5tb2R1bGUnO1xuaW1wb3J0IHsgTG9naW5Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50JztcbmltcG9ydCB7IFJlZ2lzdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JlZ2lzdGVyL3JlZ2lzdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZW5hbnRCb3hDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGVuYW50LWJveC90ZW5hbnQtYm94LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW0xvZ2luQ29tcG9uZW50LCBSZWdpc3RlckNvbXBvbmVudCwgVGVuYW50Qm94Q29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvcmVNb2R1bGUsIEFjY291bnRSb3V0aW5nTW9kdWxlLCBUaGVtZVNoYXJlZE1vZHVsZSwgVGFibGVNb2R1bGUsIE5nYkRyb3Bkb3duTW9kdWxlLCBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGVdLFxuICBleHBvcnRzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgQWNjb3VudE1vZHVsZSB7fVxuIl19 \ No newline at end of file +/** + * @param {?=} options + * @return {?} + */ +export function AccountProviders(options) { + if (options === void 0) { options = (/** @type {?} */ ({})); } + return [ + { provide: ACCOUNT_OPTIONS, useValue: options }, + { + provide: 'ACCOUNT_OPTIONS', + useFactory: optionsFactory, + deps: [ACCOUNT_OPTIONS], + }, + ]; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmFjY291bnQvIiwic291cmNlcyI6WyJsaWIvYWNjb3VudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUVsRixPQUFPLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXpFO0lBQUE7SUFLNEIsQ0FBQzs7Z0JBTDVCLFFBQVEsU0FBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUM7b0JBQ3JFLE9BQU8sRUFBRSxDQUFDLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUscUJBQXFCLENBQUM7b0JBQ3JILE9BQU8sRUFBRSxFQUFFO2lCQUNaOztJQUMyQixvQkFBQztDQUFBLEFBTDdCLElBSzZCO1NBQWhCLGFBQWE7Ozs7O0FBRTFCLE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxPQUF1QjtJQUF2Qix3QkFBQSxFQUFBLDZCQUFVLEVBQUUsRUFBVztJQUN0RCxPQUFPO1FBQ0wsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7UUFDL0M7WUFDRSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFVBQVUsRUFBRSxjQUFjO1lBQzFCLElBQUksRUFBRSxDQUFDLGVBQWUsQ0FBQztTQUN4QjtLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IE5nTW9kdWxlLCBQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdiRHJvcGRvd25Nb2R1bGUgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xuaW1wb3J0IHsgVGFibGVNb2R1bGUgfSBmcm9tICdwcmltZW5nL3RhYmxlJztcbmltcG9ydCB7IEFjY291bnRSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9hY2NvdW50LXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IExvZ2luQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvZ2luL2xvZ2luLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZWdpc3RlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9yZWdpc3Rlci9yZWdpc3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGVuYW50Qm94Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RlbmFudC1ib3gvdGVuYW50LWJveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3B0aW9ucyB9IGZyb20gJy4vbW9kZWxzL29wdGlvbnMnO1xuaW1wb3J0IHsgQUNDT1VOVF9PUFRJT05TLCBvcHRpb25zRmFjdG9yeSB9IGZyb20gJy4vdG9rZW5zL29wdGlvbnMudG9rZW4nO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtMb2dpbkNvbXBvbmVudCwgUmVnaXN0ZXJDb21wb25lbnQsIFRlbmFudEJveENvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb3JlTW9kdWxlLCBBY2NvdW50Um91dGluZ01vZHVsZSwgVGhlbWVTaGFyZWRNb2R1bGUsIFRhYmxlTW9kdWxlLCBOZ2JEcm9wZG93bk1vZHVsZSwgTmd4VmFsaWRhdGVDb3JlTW9kdWxlXSxcbiAgZXhwb3J0czogW10sXG59KVxuZXhwb3J0IGNsYXNzIEFjY291bnRNb2R1bGUge31cblxuZXhwb3J0IGZ1bmN0aW9uIEFjY291bnRQcm92aWRlcnMob3B0aW9ucyA9IHt9IGFzIE9wdGlvbnMpOiBQcm92aWRlcltdIHtcbiAgcmV0dXJuIFtcbiAgICB7IHByb3ZpZGU6IEFDQ09VTlRfT1BUSU9OUywgdXNlVmFsdWU6IG9wdGlvbnMgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiAnQUNDT1VOVF9PUFRJT05TJyxcbiAgICAgIHVzZUZhY3Rvcnk6IG9wdGlvbnNGYWN0b3J5LFxuICAgICAgZGVwczogW0FDQ09VTlRfT1BUSU9OU10sXG4gICAgfSxcbiAgXTtcbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/account/esm5/lib/root-account.module.js b/npm/ng-packs/dist/account/esm5/lib/root-account.module.js deleted file mode 100644 index de2903e05d..0000000000 --- a/npm/ng-packs/dist/account/esm5/lib/root-account.module.js +++ /dev/null @@ -1,38 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { NgModule } from '@angular/core'; -import { ACCOUNT_OPTIONS, optionsFactory } from './tokens/options.token'; -var RootAccountModule = /** @class */ (function () { - function RootAccountModule() { - } - /** - * @param {?=} options - * @return {?} - */ - RootAccountModule.forRoot = /** - * @param {?=} options - * @return {?} - */ - function (options) { - if (options === void 0) { options = (/** @type {?} */ ({})); } - return { - ngModule: RootAccountModule, - providers: [ - { provide: ACCOUNT_OPTIONS, useValue: options }, - { - provide: 'ACCOUNT_OPTIONS', - useFactory: optionsFactory, - deps: [ACCOUNT_OPTIONS], - }, - ], - }; - }; - RootAccountModule.decorators = [ - { type: NgModule, args: [{},] } - ]; - return RootAccountModule; -}()); -export { RootAccountModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1hY2NvdW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuYWNjb3VudC8iLCJzb3VyY2VzIjpbImxpYi9yb290LWFjY291bnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXpFO0lBQUE7SUFlQSxDQUFDOzs7OztJQWJRLHlCQUFPOzs7O0lBQWQsVUFBZSxPQUF1QjtRQUF2Qix3QkFBQSxFQUFBLDZCQUFVLEVBQUUsRUFBVztRQUNwQyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixTQUFTLEVBQUU7Z0JBQ1QsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7Z0JBQy9DO29CQUNFLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFVBQVUsRUFBRSxjQUFjO29CQUMxQixJQUFJLEVBQUUsQ0FBQyxlQUFlLENBQUM7aUJBQ3hCO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzs7Z0JBZEYsUUFBUSxTQUFDLEVBQUU7O0lBZVosd0JBQUM7Q0FBQSxBQWZELElBZUM7U0FkWSxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT3B0aW9ucyB9IGZyb20gJy4vbW9kZWxzL29wdGlvbnMnO1xuaW1wb3J0IHsgQUNDT1VOVF9PUFRJT05TLCBvcHRpb25zRmFjdG9yeSB9IGZyb20gJy4vdG9rZW5zL29wdGlvbnMudG9rZW4nO1xuXG5ATmdNb2R1bGUoe30pXG5leHBvcnQgY2xhc3MgUm9vdEFjY291bnRNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChvcHRpb25zID0ge30gYXMgT3B0aW9ucyk6IE1vZHVsZVdpdGhQcm92aWRlcnMge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogUm9vdEFjY291bnRNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBBQ0NPVU5UX09QVElPTlMsIHVzZVZhbHVlOiBvcHRpb25zIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiAnQUNDT1VOVF9PUFRJT05TJyxcbiAgICAgICAgICB1c2VGYWN0b3J5OiBvcHRpb25zRmFjdG9yeSxcbiAgICAgICAgICBkZXBzOiBbQUNDT1VOVF9PUFRJT05TXSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/account/esm5/public-api.js b/npm/ng-packs/dist/account/esm5/public-api.js index fd11ff2e34..afdd9ba85f 100644 --- a/npm/ng-packs/dist/account/esm5/public-api.js +++ b/npm/ng-packs/dist/account/esm5/public-api.js @@ -2,10 +2,9 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { RootAccountModule } from './lib/root-account.module'; -export { AccountModule } from './lib/account.module'; +export { AccountProviders, AccountModule } from './lib/account.module'; export { LoginComponent, RegisterComponent } from './lib/components'; export { ACCOUNT_ROUTES } from './lib/constants/routes'; export { optionsFactory, ACCOUNT_OPTIONS } from './lib/tokens'; export {} from './lib/models'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuYWNjb3VudC8iLCJzb3VyY2VzIjpbInB1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGtDQUFjLDJCQUEyQixDQUFDO0FBQzFDLDhCQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGtEQUFjLGtCQUFrQixDQUFDO0FBQ2pDLCtCQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGdEQUFjLGNBQWMsQ0FBQztBQUM3QixlQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL3Jvb3QtYWNjb3VudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYWNjb3VudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudHMvcm91dGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Rva2Vucyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMnO1xuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuYWNjb3VudC8iLCJzb3VyY2VzIjpbInB1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGdEQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGtEQUFjLGtCQUFrQixDQUFDO0FBQ2pDLCtCQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGdEQUFjLGNBQWMsQ0FBQztBQUM3QixlQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2FjY291bnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzL3JvdXRlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90b2tlbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/account/fesm2015/abp-ng.account.js b/npm/ng-packs/dist/account/fesm2015/abp-ng.account.js index f20bd893c6..22c6d07e8b 100644 --- a/npm/ng-packs/dist/account/fesm2015/abp-ng.account.js +++ b/npm/ng-packs/dist/account/fesm2015/abp-ng.account.js @@ -1,6 +1,6 @@ -import { InjectionToken, NgModule, Component, Optional, Inject, Injectable, ɵɵdefineInjectable, ɵɵinject } from '@angular/core'; import { ConfigState, GetAppConfiguration, RestService, DynamicLayoutComponent, SessionState, SetTenant, CoreModule } from '@abp/ng.core'; import { ToasterService, ThemeSharedModule } from '@abp/ng.theme.shared'; +import { Component, Optional, Inject, Injectable, ɵɵdefineInjectable, ɵɵinject, NgModule, InjectionToken } from '@angular/core'; import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; import { NgxValidateCoreModule } from '@ngx-validate/core'; import { TableModule } from 'primeng/table'; @@ -13,47 +13,6 @@ import { from, throwError } from 'rxjs'; import { switchMap, tap, catchError, finalize, take } from 'rxjs/operators'; import snq from 'snq'; -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -/** - * @param {?} options - * @return {?} - */ -function optionsFactory(options) { - return Object.assign({ redirectUrl: '/' }, options); -} -/** @type {?} */ -const ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS'); - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class RootAccountModule { - /** - * @param {?=} options - * @return {?} - */ - static forRoot(options = (/** @type {?} */ ({}))) { - return { - ngModule: RootAccountModule, - providers: [ - { provide: ACCOUNT_OPTIONS, useValue: options }, - { - provide: 'ACCOUNT_OPTIONS', - useFactory: optionsFactory, - deps: [ACCOUNT_OPTIONS], - }, - ], - }; - } -} -RootAccountModule.decorators = [ - { type: NgModule, args: [{},] } -]; - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -478,6 +437,20 @@ if (false) { TenantBoxComponent.prototype.accountService; } +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +/** + * @param {?} options + * @return {?} + */ +function optionsFactory(options) { + return Object.assign({ redirectUrl: '/' }, options); +} +/** @type {?} */ +const ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS'); + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -491,6 +464,20 @@ AccountModule.decorators = [ exports: [], },] } ]; +/** + * @param {?=} options + * @return {?} + */ +function AccountProviders(options = (/** @type {?} */ ({}))) { + return [ + { provide: ACCOUNT_OPTIONS, useValue: options }, + { + provide: 'ACCOUNT_OPTIONS', + useFactory: optionsFactory, + deps: [ACCOUNT_OPTIONS], + }, + ]; +} /** * @fileoverview added by tsickle @@ -628,5 +615,5 @@ if (false) { * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { ACCOUNT_OPTIONS, ACCOUNT_ROUTES, AccountModule, LoginComponent, RegisterComponent, RootAccountModule, optionsFactory, optionsFactory as ɵa, ACCOUNT_OPTIONS as ɵb, LoginComponent as ɵc, RegisterComponent as ɵe, AccountService as ɵf, TenantBoxComponent as ɵg, AccountRoutingModule as ɵh }; +export { ACCOUNT_OPTIONS, ACCOUNT_ROUTES, AccountModule, AccountProviders, LoginComponent, RegisterComponent, optionsFactory, LoginComponent as ɵa, RegisterComponent as ɵc, AccountService as ɵd, TenantBoxComponent as ɵe, AccountRoutingModule as ɵf, optionsFactory as ɵg, ACCOUNT_OPTIONS as ɵh }; //# sourceMappingURL=abp-ng.account.js.map diff --git a/npm/ng-packs/dist/account/fesm2015/abp-ng.account.js.map b/npm/ng-packs/dist/account/fesm2015/abp-ng.account.js.map index e36db18b33..b0ecac878b 100644 --- a/npm/ng-packs/dist/account/fesm2015/abp-ng.account.js.map +++ b/npm/ng-packs/dist/account/fesm2015/abp-ng.account.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.account.js","sources":["ng://@abp/ng.account/lib/tokens/options.token.ts","ng://@abp/ng.account/lib/root-account.module.ts","ng://@abp/ng.account/lib/components/login/login.component.ts","ng://@abp/ng.account/lib/services/account.service.ts","ng://@abp/ng.account/lib/components/register/register.component.ts","ng://@abp/ng.account/lib/account-routing.module.ts","ng://@abp/ng.account/lib/components/tenant-box/tenant-box.component.ts","ng://@abp/ng.account/lib/account.module.ts","ng://@abp/ng.account/lib/constants/routes.ts","ng://@abp/ng.account/lib/models/options.ts","ng://@abp/ng.account/lib/models/user.ts","ng://@abp/ng.account/lib/models/tenant.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { Options } from '../models/options';\n\nexport function optionsFactory(options: Options) {\n return {\n redirectUrl: '/',\n ...options,\n };\n}\n\nexport const ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS');\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { Options } from './models/options';\nimport { ACCOUNT_OPTIONS, optionsFactory } from './tokens/options.token';\n\n@NgModule({})\nexport class RootAccountModule {\n static forRoot(options = {} as Options): ModuleWithProviders {\n return {\n ngModule: RootAccountModule,\n providers: [\n { provide: ACCOUNT_OPTIONS, useValue: options },\n {\n provide: 'ACCOUNT_OPTIONS',\n useFactory: optionsFactory,\n deps: [ACCOUNT_OPTIONS],\n },\n ],\n };\n }\n}\n","import { GetAppConfiguration, ConfigState } from '@abp/ng.core';\nimport { Component, Inject, Optional } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { Options } from '../../models/options';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { catchError, finalize, switchMap, tap } from 'rxjs/operators';\nimport snq from 'snq';\n\nconst { maxLength, minLength, required } = Validators;\n\n@Component({\n selector: 'abp-login',\n templateUrl: './login.component.html',\n})\nexport class LoginComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n @Optional() @Inject('ACCOUNT_OPTIONS') private options: Options,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n remember: [false],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n // this.oauthService.setStorage(this.form.value.remember ? localStorage : sessionStorage);\n\n this.inProgress = true;\n from(\n this.oauthService.fetchTokenUsingPasswordFlow(this.form.get('username').value, this.form.get('password').value),\n )\n .pipe(\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => {\n const redirectUrl = snq(() => window.history.state).redirectUrl || (this.options || {}).redirectUrl || '/';\n this.store.dispatch(new Navigate([redirectUrl]));\n }),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { RegisterResponse, RegisterRequest, TenantIdResponse } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AccountService {\n constructor(private rest: RestService) {}\n\n findTenant(tenantName: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/abp/multi-tenancy/find-tenant/${tenantName}`,\n };\n\n return this.rest.request(request);\n }\n\n register(body: RegisterRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/account/register`,\n body,\n };\n\n return this.rest.request(request, { skipHandleError: true });\n }\n}\n","import { ConfigState, GetAppConfiguration } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { catchError, finalize, switchMap, take, tap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { RegisterRequest } from '../../models';\nimport { AccountService } from '../../services/account.service';\nconst { maxLength, minLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-register',\n templateUrl: './register.component.html',\n})\nexport class RegisterComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private accountService: AccountService,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n email: ['', [required, email]],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.inProgress = true;\n\n const newUser = {\n userName: this.form.get('username').value,\n password: this.form.get('password').value,\n emailAddress: this.form.get('email').value,\n appName: 'Angular',\n } as RegisterRequest;\n\n this.accountService\n .register(newUser)\n .pipe(\n switchMap(() => from(this.oauthService.fetchTokenUsingPasswordFlow(newUser.userName, newUser.password))),\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => this.store.dispatch(new Navigate(['/']))),\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { DynamicLayoutComponent } from '@abp/ng.core';\n\nconst routes: Routes = [\n { path: '', pathMatch: 'full', redirectTo: 'login' },\n {\n path: '',\n component: DynamicLayoutComponent,\n children: [{ path: 'login', component: LoginComponent }, { path: 'register', component: RegisterComponent }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class AccountRoutingModule {}\n","import { ABP, SetTenant, SessionState } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component, OnInit } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AccountService } from '../../services/account.service';\n\n@Component({\n selector: 'abp-tenant-box',\n templateUrl: './tenant-box.component.html',\n})\nexport class TenantBoxComponent implements OnInit {\n constructor(private store: Store, private toasterService: ToasterService, private accountService: AccountService) {}\n\n tenant = {} as ABP.BasicItem;\n\n tenantName: string;\n\n isModalVisible: boolean;\n\n ngOnInit() {\n this.tenant = this.store.selectSnapshot(SessionState.getTenant) || ({} as ABP.BasicItem);\n this.tenantName = this.tenant.name || '';\n }\n\n onSwitch() {\n this.isModalVisible = true;\n }\n\n save() {\n if (this.tenant.name) {\n this.accountService\n .findTenant(this.tenant.name)\n .pipe(\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description, 'AbpUi::DefaultErrorMessage'),\n 'AbpUi::Error',\n );\n return throwError(err);\n }),\n )\n .subscribe(({ success, tenantId }) => {\n if (success) {\n this.tenant = {\n id: tenantId,\n name: this.tenant.name,\n };\n this.tenantName = this.tenant.name;\n this.isModalVisible = false;\n } else {\n this.toasterService.error(`AbpUiMultiTenancy::GivenTenantIsNotAvailable`, 'AbpUi::Error', {\n messageLocalizationParams: [this.tenant.name],\n });\n this.tenant = {} as ABP.BasicItem;\n }\n this.store.dispatch(new SetTenant(success ? this.tenant : null));\n });\n } else {\n this.store.dispatch(new SetTenant(null));\n this.tenantName = null;\n this.isModalVisible = false;\n }\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { TableModule } from 'primeng/table';\nimport { AccountRoutingModule } from './account-routing.module';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { TenantBoxComponent } from './components/tenant-box/tenant-box.component';\n\n@NgModule({\n declarations: [LoginComponent, RegisterComponent, TenantBoxComponent],\n imports: [CoreModule, AccountRoutingModule, ThemeSharedModule, TableModule, NgbDropdownModule, NgxValidateCoreModule],\n exports: [],\n})\nexport class AccountModule {}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const ACCOUNT_ROUTES = {\n routes: [\n {\n name: 'Account',\n path: 'account',\n invisible: true,\n layout: eLayoutType.application,\n children: [{ path: 'login', name: 'Login', order: 1 }, { path: 'register', name: 'Register', order: 2 }],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","export interface Options {\n redirectUrl?: string;\n}\n","export interface RegisterRequest {\n userName: string;\n emailAddress: string;\n password: string;\n appName?: string;\n}\n\nexport interface RegisterResponse {\n tenantId: string;\n userName: string;\n name: string;\n surname: string;\n email: string;\n emailConfirmed: boolean;\n phoneNumber: string;\n phoneNumberConfirmed: boolean;\n twoFactorEnabled: boolean;\n lockoutEnabled: boolean;\n lockoutEnd: string;\n concurrencyStamp: string;\n isDeleted: boolean;\n deleterId: string;\n deletionTime: string;\n lastModificationTime: string;\n lastModifierId: string;\n creationTime: string;\n creatorId: string;\n id: string;\n}\n","export interface TenantIdResponse {\n success: boolean;\n tenantId: string;\n}\n"],"names":["maxLength","minLength","required"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.account.js","sources":["ng://@abp/ng.account/lib/components/login/login.component.ts","ng://@abp/ng.account/lib/services/account.service.ts","ng://@abp/ng.account/lib/components/register/register.component.ts","ng://@abp/ng.account/lib/account-routing.module.ts","ng://@abp/ng.account/lib/components/tenant-box/tenant-box.component.ts","ng://@abp/ng.account/lib/tokens/options.token.ts","ng://@abp/ng.account/lib/account.module.ts","ng://@abp/ng.account/lib/constants/routes.ts","ng://@abp/ng.account/lib/models/options.ts","ng://@abp/ng.account/lib/models/user.ts","ng://@abp/ng.account/lib/models/tenant.ts"],"sourcesContent":["import { GetAppConfiguration, ConfigState } from '@abp/ng.core';\nimport { Component, Inject, Optional } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { Options } from '../../models/options';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { catchError, finalize, switchMap, tap } from 'rxjs/operators';\nimport snq from 'snq';\n\nconst { maxLength, minLength, required } = Validators;\n\n@Component({\n selector: 'abp-login',\n templateUrl: './login.component.html',\n})\nexport class LoginComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n @Optional() @Inject('ACCOUNT_OPTIONS') private options: Options,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n remember: [false],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n // this.oauthService.setStorage(this.form.value.remember ? localStorage : sessionStorage);\n\n this.inProgress = true;\n from(\n this.oauthService.fetchTokenUsingPasswordFlow(this.form.get('username').value, this.form.get('password').value),\n )\n .pipe(\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => {\n const redirectUrl = snq(() => window.history.state).redirectUrl || (this.options || {}).redirectUrl || '/';\n this.store.dispatch(new Navigate([redirectUrl]));\n }),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { RegisterResponse, RegisterRequest, TenantIdResponse } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AccountService {\n constructor(private rest: RestService) {}\n\n findTenant(tenantName: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/abp/multi-tenancy/find-tenant/${tenantName}`,\n };\n\n return this.rest.request(request);\n }\n\n register(body: RegisterRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/account/register`,\n body,\n };\n\n return this.rest.request(request, { skipHandleError: true });\n }\n}\n","import { ConfigState, GetAppConfiguration } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { catchError, finalize, switchMap, take, tap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { RegisterRequest } from '../../models';\nimport { AccountService } from '../../services/account.service';\nconst { maxLength, minLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-register',\n templateUrl: './register.component.html',\n})\nexport class RegisterComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private accountService: AccountService,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n email: ['', [required, email]],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.inProgress = true;\n\n const newUser = {\n userName: this.form.get('username').value,\n password: this.form.get('password').value,\n emailAddress: this.form.get('email').value,\n appName: 'Angular',\n } as RegisterRequest;\n\n this.accountService\n .register(newUser)\n .pipe(\n switchMap(() => from(this.oauthService.fetchTokenUsingPasswordFlow(newUser.userName, newUser.password))),\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => this.store.dispatch(new Navigate(['/']))),\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { DynamicLayoutComponent } from '@abp/ng.core';\n\nconst routes: Routes = [\n { path: '', pathMatch: 'full', redirectTo: 'login' },\n {\n path: '',\n component: DynamicLayoutComponent,\n children: [{ path: 'login', component: LoginComponent }, { path: 'register', component: RegisterComponent }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class AccountRoutingModule {}\n","import { ABP, SetTenant, SessionState } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component, OnInit } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AccountService } from '../../services/account.service';\n\n@Component({\n selector: 'abp-tenant-box',\n templateUrl: './tenant-box.component.html',\n})\nexport class TenantBoxComponent implements OnInit {\n constructor(private store: Store, private toasterService: ToasterService, private accountService: AccountService) {}\n\n tenant = {} as ABP.BasicItem;\n\n tenantName: string;\n\n isModalVisible: boolean;\n\n ngOnInit() {\n this.tenant = this.store.selectSnapshot(SessionState.getTenant) || ({} as ABP.BasicItem);\n this.tenantName = this.tenant.name || '';\n }\n\n onSwitch() {\n this.isModalVisible = true;\n }\n\n save() {\n if (this.tenant.name) {\n this.accountService\n .findTenant(this.tenant.name)\n .pipe(\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description, 'AbpUi::DefaultErrorMessage'),\n 'AbpUi::Error',\n );\n return throwError(err);\n }),\n )\n .subscribe(({ success, tenantId }) => {\n if (success) {\n this.tenant = {\n id: tenantId,\n name: this.tenant.name,\n };\n this.tenantName = this.tenant.name;\n this.isModalVisible = false;\n } else {\n this.toasterService.error(`AbpUiMultiTenancy::GivenTenantIsNotAvailable`, 'AbpUi::Error', {\n messageLocalizationParams: [this.tenant.name],\n });\n this.tenant = {} as ABP.BasicItem;\n }\n this.store.dispatch(new SetTenant(success ? this.tenant : null));\n });\n } else {\n this.store.dispatch(new SetTenant(null));\n this.tenantName = null;\n this.isModalVisible = false;\n }\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { Options } from '../models/options';\n\nexport function optionsFactory(options: Options) {\n return {\n redirectUrl: '/',\n ...options,\n };\n}\n\nexport const ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS');\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule, Provider } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { TableModule } from 'primeng/table';\nimport { AccountRoutingModule } from './account-routing.module';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { TenantBoxComponent } from './components/tenant-box/tenant-box.component';\nimport { Options } from './models/options';\nimport { ACCOUNT_OPTIONS, optionsFactory } from './tokens/options.token';\n\n@NgModule({\n declarations: [LoginComponent, RegisterComponent, TenantBoxComponent],\n imports: [CoreModule, AccountRoutingModule, ThemeSharedModule, TableModule, NgbDropdownModule, NgxValidateCoreModule],\n exports: [],\n})\nexport class AccountModule {}\n\nexport function AccountProviders(options = {} as Options): Provider[] {\n return [\n { provide: ACCOUNT_OPTIONS, useValue: options },\n {\n provide: 'ACCOUNT_OPTIONS',\n useFactory: optionsFactory,\n deps: [ACCOUNT_OPTIONS],\n },\n ];\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const ACCOUNT_ROUTES = {\n routes: [\n {\n name: 'Account',\n path: 'account',\n invisible: true,\n layout: eLayoutType.application,\n children: [{ path: 'login', name: 'Login', order: 1 }, { path: 'register', name: 'Register', order: 2 }],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","export interface Options {\n redirectUrl?: string;\n}\n","export interface RegisterRequest {\n userName: string;\n emailAddress: string;\n password: string;\n appName?: string;\n}\n\nexport interface RegisterResponse {\n tenantId: string;\n userName: string;\n name: string;\n surname: string;\n email: string;\n emailConfirmed: boolean;\n phoneNumber: string;\n phoneNumberConfirmed: boolean;\n twoFactorEnabled: boolean;\n lockoutEnabled: boolean;\n lockoutEnd: string;\n concurrencyStamp: string;\n isDeleted: boolean;\n deleterId: string;\n deletionTime: string;\n lastModificationTime: string;\n lastModifierId: string;\n creationTime: string;\n creatorId: string;\n id: string;\n}\n","export interface TenantIdResponse {\n success: boolean;\n tenantId: string;\n}\n"],"names":["maxLength","minLength","required"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/account/fesm5/abp-ng.account.js b/npm/ng-packs/dist/account/fesm5/abp-ng.account.js index c0abbf1d4d..2ddd7b7e49 100644 --- a/npm/ng-packs/dist/account/fesm5/abp-ng.account.js +++ b/npm/ng-packs/dist/account/fesm5/abp-ng.account.js @@ -1,7 +1,6 @@ -import { InjectionToken, NgModule, Component, Optional, Inject, Injectable, ɵɵdefineInjectable, ɵɵinject } from '@angular/core'; -import { __assign } from 'tslib'; import { ConfigState, GetAppConfiguration, RestService, DynamicLayoutComponent, SessionState, SetTenant, CoreModule } from '@abp/ng.core'; import { ToasterService, ThemeSharedModule } from '@abp/ng.theme.shared'; +import { Component, Optional, Inject, Injectable, ɵɵdefineInjectable, ɵɵinject, NgModule, InjectionToken } from '@angular/core'; import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; import { NgxValidateCoreModule } from '@ngx-validate/core'; import { TableModule } from 'primeng/table'; @@ -13,55 +12,7 @@ import { OAuthService } from 'angular-oauth2-oidc'; import { from, throwError } from 'rxjs'; import { switchMap, tap, catchError, finalize, take } from 'rxjs/operators'; import snq from 'snq'; - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -/** - * @param {?} options - * @return {?} - */ -function optionsFactory(options) { - return __assign({ redirectUrl: '/' }, options); -} -/** @type {?} */ -var ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS'); - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var RootAccountModule = /** @class */ (function () { - function RootAccountModule() { - } - /** - * @param {?=} options - * @return {?} - */ - RootAccountModule.forRoot = /** - * @param {?=} options - * @return {?} - */ - function (options) { - if (options === void 0) { options = (/** @type {?} */ ({})); } - return { - ngModule: RootAccountModule, - providers: [ - { provide: ACCOUNT_OPTIONS, useValue: options }, - { - provide: 'ACCOUNT_OPTIONS', - useFactory: optionsFactory, - deps: [ACCOUNT_OPTIONS], - }, - ], - }; - }; - RootAccountModule.decorators = [ - { type: NgModule, args: [{},] } - ]; - return RootAccountModule; -}()); +import { __assign } from 'tslib'; /** * @fileoverview added by tsickle @@ -499,6 +450,20 @@ if (false) { TenantBoxComponent.prototype.accountService; } +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +/** + * @param {?} options + * @return {?} + */ +function optionsFactory(options) { + return __assign({ redirectUrl: '/' }, options); +} +/** @type {?} */ +var ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS'); + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -515,6 +480,21 @@ var AccountModule = /** @class */ (function () { ]; return AccountModule; }()); +/** + * @param {?=} options + * @return {?} + */ +function AccountProviders(options) { + if (options === void 0) { options = (/** @type {?} */ ({})); } + return [ + { provide: ACCOUNT_OPTIONS, useValue: options }, + { + provide: 'ACCOUNT_OPTIONS', + useFactory: optionsFactory, + deps: [ACCOUNT_OPTIONS], + }, + ]; +} /** * @fileoverview added by tsickle @@ -652,5 +632,5 @@ if (false) { * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { ACCOUNT_OPTIONS, ACCOUNT_ROUTES, AccountModule, LoginComponent, RegisterComponent, RootAccountModule, optionsFactory, optionsFactory as ɵa, ACCOUNT_OPTIONS as ɵb, LoginComponent as ɵc, RegisterComponent as ɵe, AccountService as ɵf, TenantBoxComponent as ɵg, AccountRoutingModule as ɵh }; +export { ACCOUNT_OPTIONS, ACCOUNT_ROUTES, AccountModule, AccountProviders, LoginComponent, RegisterComponent, optionsFactory, LoginComponent as ɵa, RegisterComponent as ɵc, AccountService as ɵd, TenantBoxComponent as ɵe, AccountRoutingModule as ɵf, optionsFactory as ɵg, ACCOUNT_OPTIONS as ɵh }; //# sourceMappingURL=abp-ng.account.js.map diff --git a/npm/ng-packs/dist/account/fesm5/abp-ng.account.js.map b/npm/ng-packs/dist/account/fesm5/abp-ng.account.js.map index 2fa526547f..c58800dfdf 100644 --- a/npm/ng-packs/dist/account/fesm5/abp-ng.account.js.map +++ b/npm/ng-packs/dist/account/fesm5/abp-ng.account.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.account.js","sources":["ng://@abp/ng.account/lib/tokens/options.token.ts","ng://@abp/ng.account/lib/root-account.module.ts","ng://@abp/ng.account/lib/components/login/login.component.ts","ng://@abp/ng.account/lib/services/account.service.ts","ng://@abp/ng.account/lib/components/register/register.component.ts","ng://@abp/ng.account/lib/account-routing.module.ts","ng://@abp/ng.account/lib/components/tenant-box/tenant-box.component.ts","ng://@abp/ng.account/lib/account.module.ts","ng://@abp/ng.account/lib/constants/routes.ts","ng://@abp/ng.account/lib/models/options.ts","ng://@abp/ng.account/lib/models/user.ts","ng://@abp/ng.account/lib/models/tenant.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { Options } from '../models/options';\n\nexport function optionsFactory(options: Options) {\n return {\n redirectUrl: '/',\n ...options,\n };\n}\n\nexport const ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS');\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { Options } from './models/options';\nimport { ACCOUNT_OPTIONS, optionsFactory } from './tokens/options.token';\n\n@NgModule({})\nexport class RootAccountModule {\n static forRoot(options = {} as Options): ModuleWithProviders {\n return {\n ngModule: RootAccountModule,\n providers: [\n { provide: ACCOUNT_OPTIONS, useValue: options },\n {\n provide: 'ACCOUNT_OPTIONS',\n useFactory: optionsFactory,\n deps: [ACCOUNT_OPTIONS],\n },\n ],\n };\n }\n}\n","import { GetAppConfiguration, ConfigState } from '@abp/ng.core';\nimport { Component, Inject, Optional } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { Options } from '../../models/options';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { catchError, finalize, switchMap, tap } from 'rxjs/operators';\nimport snq from 'snq';\n\nconst { maxLength, minLength, required } = Validators;\n\n@Component({\n selector: 'abp-login',\n templateUrl: './login.component.html',\n})\nexport class LoginComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n @Optional() @Inject('ACCOUNT_OPTIONS') private options: Options,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n remember: [false],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n // this.oauthService.setStorage(this.form.value.remember ? localStorage : sessionStorage);\n\n this.inProgress = true;\n from(\n this.oauthService.fetchTokenUsingPasswordFlow(this.form.get('username').value, this.form.get('password').value),\n )\n .pipe(\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => {\n const redirectUrl = snq(() => window.history.state).redirectUrl || (this.options || {}).redirectUrl || '/';\n this.store.dispatch(new Navigate([redirectUrl]));\n }),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { RegisterResponse, RegisterRequest, TenantIdResponse } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AccountService {\n constructor(private rest: RestService) {}\n\n findTenant(tenantName: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/abp/multi-tenancy/find-tenant/${tenantName}`,\n };\n\n return this.rest.request(request);\n }\n\n register(body: RegisterRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/account/register`,\n body,\n };\n\n return this.rest.request(request, { skipHandleError: true });\n }\n}\n","import { ConfigState, GetAppConfiguration } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { catchError, finalize, switchMap, take, tap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { RegisterRequest } from '../../models';\nimport { AccountService } from '../../services/account.service';\nconst { maxLength, minLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-register',\n templateUrl: './register.component.html',\n})\nexport class RegisterComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private accountService: AccountService,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n email: ['', [required, email]],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.inProgress = true;\n\n const newUser = {\n userName: this.form.get('username').value,\n password: this.form.get('password').value,\n emailAddress: this.form.get('email').value,\n appName: 'Angular',\n } as RegisterRequest;\n\n this.accountService\n .register(newUser)\n .pipe(\n switchMap(() => from(this.oauthService.fetchTokenUsingPasswordFlow(newUser.userName, newUser.password))),\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => this.store.dispatch(new Navigate(['/']))),\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { DynamicLayoutComponent } from '@abp/ng.core';\n\nconst routes: Routes = [\n { path: '', pathMatch: 'full', redirectTo: 'login' },\n {\n path: '',\n component: DynamicLayoutComponent,\n children: [{ path: 'login', component: LoginComponent }, { path: 'register', component: RegisterComponent }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class AccountRoutingModule {}\n","import { ABP, SetTenant, SessionState } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component, OnInit } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AccountService } from '../../services/account.service';\n\n@Component({\n selector: 'abp-tenant-box',\n templateUrl: './tenant-box.component.html',\n})\nexport class TenantBoxComponent implements OnInit {\n constructor(private store: Store, private toasterService: ToasterService, private accountService: AccountService) {}\n\n tenant = {} as ABP.BasicItem;\n\n tenantName: string;\n\n isModalVisible: boolean;\n\n ngOnInit() {\n this.tenant = this.store.selectSnapshot(SessionState.getTenant) || ({} as ABP.BasicItem);\n this.tenantName = this.tenant.name || '';\n }\n\n onSwitch() {\n this.isModalVisible = true;\n }\n\n save() {\n if (this.tenant.name) {\n this.accountService\n .findTenant(this.tenant.name)\n .pipe(\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description, 'AbpUi::DefaultErrorMessage'),\n 'AbpUi::Error',\n );\n return throwError(err);\n }),\n )\n .subscribe(({ success, tenantId }) => {\n if (success) {\n this.tenant = {\n id: tenantId,\n name: this.tenant.name,\n };\n this.tenantName = this.tenant.name;\n this.isModalVisible = false;\n } else {\n this.toasterService.error(`AbpUiMultiTenancy::GivenTenantIsNotAvailable`, 'AbpUi::Error', {\n messageLocalizationParams: [this.tenant.name],\n });\n this.tenant = {} as ABP.BasicItem;\n }\n this.store.dispatch(new SetTenant(success ? this.tenant : null));\n });\n } else {\n this.store.dispatch(new SetTenant(null));\n this.tenantName = null;\n this.isModalVisible = false;\n }\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { TableModule } from 'primeng/table';\nimport { AccountRoutingModule } from './account-routing.module';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { TenantBoxComponent } from './components/tenant-box/tenant-box.component';\n\n@NgModule({\n declarations: [LoginComponent, RegisterComponent, TenantBoxComponent],\n imports: [CoreModule, AccountRoutingModule, ThemeSharedModule, TableModule, NgbDropdownModule, NgxValidateCoreModule],\n exports: [],\n})\nexport class AccountModule {}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const ACCOUNT_ROUTES = {\n routes: [\n {\n name: 'Account',\n path: 'account',\n invisible: true,\n layout: eLayoutType.application,\n children: [{ path: 'login', name: 'Login', order: 1 }, { path: 'register', name: 'Register', order: 2 }],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","export interface Options {\n redirectUrl?: string;\n}\n","export interface RegisterRequest {\n userName: string;\n emailAddress: string;\n password: string;\n appName?: string;\n}\n\nexport interface RegisterResponse {\n tenantId: string;\n userName: string;\n name: string;\n surname: string;\n email: string;\n emailConfirmed: boolean;\n phoneNumber: string;\n phoneNumberConfirmed: boolean;\n twoFactorEnabled: boolean;\n lockoutEnabled: boolean;\n lockoutEnd: string;\n concurrencyStamp: string;\n isDeleted: boolean;\n deleterId: string;\n deletionTime: string;\n lastModificationTime: string;\n lastModifierId: string;\n creationTime: string;\n creatorId: string;\n id: string;\n}\n","export interface TenantIdResponse {\n success: boolean;\n tenantId: string;\n}\n"],"names":["maxLength","minLength","required"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.account.js","sources":["ng://@abp/ng.account/lib/components/login/login.component.ts","ng://@abp/ng.account/lib/services/account.service.ts","ng://@abp/ng.account/lib/components/register/register.component.ts","ng://@abp/ng.account/lib/account-routing.module.ts","ng://@abp/ng.account/lib/components/tenant-box/tenant-box.component.ts","ng://@abp/ng.account/lib/tokens/options.token.ts","ng://@abp/ng.account/lib/account.module.ts","ng://@abp/ng.account/lib/constants/routes.ts","ng://@abp/ng.account/lib/models/options.ts","ng://@abp/ng.account/lib/models/user.ts","ng://@abp/ng.account/lib/models/tenant.ts"],"sourcesContent":["import { GetAppConfiguration, ConfigState } from '@abp/ng.core';\nimport { Component, Inject, Optional } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { Options } from '../../models/options';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { catchError, finalize, switchMap, tap } from 'rxjs/operators';\nimport snq from 'snq';\n\nconst { maxLength, minLength, required } = Validators;\n\n@Component({\n selector: 'abp-login',\n templateUrl: './login.component.html',\n})\nexport class LoginComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n @Optional() @Inject('ACCOUNT_OPTIONS') private options: Options,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n remember: [false],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n // this.oauthService.setStorage(this.form.value.remember ? localStorage : sessionStorage);\n\n this.inProgress = true;\n from(\n this.oauthService.fetchTokenUsingPasswordFlow(this.form.get('username').value, this.form.get('password').value),\n )\n .pipe(\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => {\n const redirectUrl = snq(() => window.history.state).redirectUrl || (this.options || {}).redirectUrl || '/';\n this.store.dispatch(new Navigate([redirectUrl]));\n }),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { RegisterResponse, RegisterRequest, TenantIdResponse } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AccountService {\n constructor(private rest: RestService) {}\n\n findTenant(tenantName: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/abp/multi-tenancy/find-tenant/${tenantName}`,\n };\n\n return this.rest.request(request);\n }\n\n register(body: RegisterRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/account/register`,\n body,\n };\n\n return this.rest.request(request, { skipHandleError: true });\n }\n}\n","import { ConfigState, GetAppConfiguration } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { from, throwError } from 'rxjs';\nimport { catchError, finalize, switchMap, take, tap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { RegisterRequest } from '../../models';\nimport { AccountService } from '../../services/account.service';\nconst { maxLength, minLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-register',\n templateUrl: './register.component.html',\n})\nexport class RegisterComponent {\n form: FormGroup;\n\n inProgress: boolean;\n\n constructor(\n private fb: FormBuilder,\n private accountService: AccountService,\n private oauthService: OAuthService,\n private store: Store,\n private toasterService: ToasterService,\n ) {\n this.oauthService.configure(this.store.selectSnapshot(ConfigState.getOne('environment')).oAuthConfig);\n this.oauthService.loadDiscoveryDocument();\n\n this.form = this.fb.group({\n username: ['', [required, maxLength(255)]],\n password: ['', [required, maxLength(32)]],\n email: ['', [required, email]],\n });\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n\n this.inProgress = true;\n\n const newUser = {\n userName: this.form.get('username').value,\n password: this.form.get('password').value,\n emailAddress: this.form.get('email').value,\n appName: 'Angular',\n } as RegisterRequest;\n\n this.accountService\n .register(newUser)\n .pipe(\n switchMap(() => from(this.oauthService.fetchTokenUsingPasswordFlow(newUser.userName, newUser.password))),\n switchMap(() => this.store.dispatch(new GetAppConfiguration())),\n tap(() => this.store.dispatch(new Navigate(['/']))),\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description) ||\n snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'),\n 'Error',\n { life: 7000 },\n );\n return throwError(err);\n }),\n finalize(() => (this.inProgress = false)),\n )\n .subscribe();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { DynamicLayoutComponent } from '@abp/ng.core';\n\nconst routes: Routes = [\n { path: '', pathMatch: 'full', redirectTo: 'login' },\n {\n path: '',\n component: DynamicLayoutComponent,\n children: [{ path: 'login', component: LoginComponent }, { path: 'register', component: RegisterComponent }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class AccountRoutingModule {}\n","import { ABP, SetTenant, SessionState } from '@abp/ng.core';\nimport { ToasterService } from '@abp/ng.theme.shared';\nimport { Component, OnInit } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AccountService } from '../../services/account.service';\n\n@Component({\n selector: 'abp-tenant-box',\n templateUrl: './tenant-box.component.html',\n})\nexport class TenantBoxComponent implements OnInit {\n constructor(private store: Store, private toasterService: ToasterService, private accountService: AccountService) {}\n\n tenant = {} as ABP.BasicItem;\n\n tenantName: string;\n\n isModalVisible: boolean;\n\n ngOnInit() {\n this.tenant = this.store.selectSnapshot(SessionState.getTenant) || ({} as ABP.BasicItem);\n this.tenantName = this.tenant.name || '';\n }\n\n onSwitch() {\n this.isModalVisible = true;\n }\n\n save() {\n if (this.tenant.name) {\n this.accountService\n .findTenant(this.tenant.name)\n .pipe(\n take(1),\n catchError(err => {\n this.toasterService.error(\n snq(() => err.error.error_description, 'AbpUi::DefaultErrorMessage'),\n 'AbpUi::Error',\n );\n return throwError(err);\n }),\n )\n .subscribe(({ success, tenantId }) => {\n if (success) {\n this.tenant = {\n id: tenantId,\n name: this.tenant.name,\n };\n this.tenantName = this.tenant.name;\n this.isModalVisible = false;\n } else {\n this.toasterService.error(`AbpUiMultiTenancy::GivenTenantIsNotAvailable`, 'AbpUi::Error', {\n messageLocalizationParams: [this.tenant.name],\n });\n this.tenant = {} as ABP.BasicItem;\n }\n this.store.dispatch(new SetTenant(success ? this.tenant : null));\n });\n } else {\n this.store.dispatch(new SetTenant(null));\n this.tenantName = null;\n this.isModalVisible = false;\n }\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { Options } from '../models/options';\n\nexport function optionsFactory(options: Options) {\n return {\n redirectUrl: '/',\n ...options,\n };\n}\n\nexport const ACCOUNT_OPTIONS = new InjectionToken('ACCOUNT_OPTIONS');\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule, Provider } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { TableModule } from 'primeng/table';\nimport { AccountRoutingModule } from './account-routing.module';\nimport { LoginComponent } from './components/login/login.component';\nimport { RegisterComponent } from './components/register/register.component';\nimport { TenantBoxComponent } from './components/tenant-box/tenant-box.component';\nimport { Options } from './models/options';\nimport { ACCOUNT_OPTIONS, optionsFactory } from './tokens/options.token';\n\n@NgModule({\n declarations: [LoginComponent, RegisterComponent, TenantBoxComponent],\n imports: [CoreModule, AccountRoutingModule, ThemeSharedModule, TableModule, NgbDropdownModule, NgxValidateCoreModule],\n exports: [],\n})\nexport class AccountModule {}\n\nexport function AccountProviders(options = {} as Options): Provider[] {\n return [\n { provide: ACCOUNT_OPTIONS, useValue: options },\n {\n provide: 'ACCOUNT_OPTIONS',\n useFactory: optionsFactory,\n deps: [ACCOUNT_OPTIONS],\n },\n ];\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const ACCOUNT_ROUTES = {\n routes: [\n {\n name: 'Account',\n path: 'account',\n invisible: true,\n layout: eLayoutType.application,\n children: [{ path: 'login', name: 'Login', order: 1 }, { path: 'register', name: 'Register', order: 2 }],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","export interface Options {\n redirectUrl?: string;\n}\n","export interface RegisterRequest {\n userName: string;\n emailAddress: string;\n password: string;\n appName?: string;\n}\n\nexport interface RegisterResponse {\n tenantId: string;\n userName: string;\n name: string;\n surname: string;\n email: string;\n emailConfirmed: boolean;\n phoneNumber: string;\n phoneNumberConfirmed: boolean;\n twoFactorEnabled: boolean;\n lockoutEnabled: boolean;\n lockoutEnd: string;\n concurrencyStamp: string;\n isDeleted: boolean;\n deleterId: string;\n deletionTime: string;\n lastModificationTime: string;\n lastModifierId: string;\n creationTime: string;\n creatorId: string;\n id: string;\n}\n","export interface TenantIdResponse {\n success: boolean;\n tenantId: string;\n}\n"],"names":["maxLength","minLength","required"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,AAYQ,IAAA,gCAAS,EAAE,gCAAS,EAAE,8BAAQ;AAEtC;IASE,wBACU,EAAe,EACf,YAA0B,EAC1B,KAAY,EACZ,cAA8B,EACS,OAAgB;QAJvD,OAAE,GAAF,EAAE,CAAa;QACf,iBAAY,GAAZ,YAAY,CAAc;QAC1B,UAAK,GAAL,KAAK,CAAO;QACZ,mBAAc,GAAd,cAAc,CAAgB;QACS,YAAO,GAAP,OAAO,CAAS;QAE/D,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QACtG,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,CAAC;QAE1C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YACxB,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1C,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;YACzC,QAAQ,EAAE,CAAC,KAAK,CAAC;SAClB,CAAC,CAAC;KACJ;;;;IAED,iCAAQ;;;IAAR;QAAA,iBA0BC;QAzBC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;;QAG9B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CACF,IAAI,CAAC,YAAY,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAChH;aACE,IAAI,CACH,SAAS;;;QAAC,cAAM,OAAA,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,mBAAmB,EAAE,CAAC,GAAA,EAAC,EAC/D,GAAG;;;QAAC;;gBACI,WAAW,GAAG,GAAG;;;YAAC,cAAM,OAAA,MAAM,CAAC,OAAO,CAAC,KAAK,GAAA,EAAC,CAAC,WAAW,IAAI,CAAC,KAAI,CAAC,OAAO,IAAI,EAAE,EAAE,WAAW,IAAI,GAAG;YAC1G,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;SAClD,EAAC,EACF,UAAU;;;;QAAC,UAAA,GAAG;YACZ,KAAI,CAAC,cAAc,CAAC,KAAK,CACvB,GAAG;;;YAAC,cAAM,OAAA,GAAG,CAAC,KAAK,CAAC,iBAAiB,GAAA,EAAC;gBACpC,GAAG;;;gBAAC,cAAM,OAAA,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,GAAA,GAAE,iCAAiC,CAAC,EACvE,OAAO,EACP,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;YACF,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;SACxB,EAAC,EACF,QAAQ;;;QAAC,cAAM,QAAC,KAAI,CAAC,UAAU,GAAG,KAAK,IAAC,EAAC,CAC1C;aACA,SAAS,EAAE,CAAC;KAChB;;gBApDF,SAAS,SAAC;oBACT,QAAQ,EAAE,WAAW;oBACrB,6tDAAqC;iBACtC;;;;gBAfQ,WAAW;gBAGX,YAAY;gBADZ,KAAK;gBAIL,cAAc;gDAoBlB,QAAQ,YAAI,MAAM,SAAC,iBAAiB;;IAuCzC,qBAAC;CArDD,IAqDC;;;IAhDC,8BAAgB;;IAEhB,oCAAoB;;;;;IAGlB,4BAAuB;;;;;IACvB,sCAAkC;;;;;IAClC,+BAAoB;;;;;IACpB,wCAAsC;;;;;IACtC,iCAA+D;;;;;;;AC5BnE;IASE,wBAAoB,IAAiB;QAAjB,SAAI,GAAJ,IAAI,CAAa;KAAI;;;;;IAEzC,mCAAU;;;;IAAV,UAAW,UAAkB;;YACrB,OAAO,GAAuB;YAClC,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,wCAAsC,UAAY;SACxD;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAyB,OAAO,CAAC,CAAC;KAC3D;;;;;IAED,iCAAQ;;;;IAAR,UAAS,IAAqB;;YACtB,OAAO,GAAkC;YAC7C,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,uBAAuB;YAC5B,IAAI,MAAA;SACL;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAoC,OAAO,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;KACjG;;gBAvBF,UAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;;gBALQ,WAAW;;;yBAFpB;CAKA,IAwBC;;;;;;IApBa,8BAAyB;;;;;;;ACTvC,AAYQ,IAAAA,kCAAS,EAAEC,kCAAS,EAAEC,gCAAQ,EAAE,wBAAK;AAE7C;IASE,2BACU,EAAe,EACf,cAA8B,EAC9B,YAA0B,EAC1B,KAAY,EACZ,cAA8B;QAJ9B,OAAE,GAAF,EAAE,CAAa;QACf,mBAAc,GAAd,cAAc,CAAgB;QAC9B,iBAAY,GAAZ,YAAY,CAAc;QAC1B,UAAK,GAAL,KAAK,CAAO;QACZ,mBAAc,GAAd,cAAc,CAAgB;QAEtC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QACtG,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,CAAC;QAE1C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YACxB,QAAQ,EAAE,CAAC,EAAE,EAAE,CAACA,UAAQ,EAAEF,WAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1C,QAAQ,EAAE,CAAC,EAAE,EAAE,CAACE,UAAQ,EAAEF,WAAS,CAAC,EAAE,CAAC,CAAC,CAAC;YACzC,KAAK,EAAE,CAAC,EAAE,EAAE,CAACE,UAAQ,EAAE,KAAK,CAAC,CAAC;SAC/B,CAAC,CAAC;KACJ;;;;IAED,oCAAQ;;;IAAR;QAAA,iBA+BC;QA9BC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAE9B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;;YAEjB,OAAO,sBAAG;YACd,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK;YACzC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK;YACzC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK;YAC1C,OAAO,EAAE,SAAS;SACnB,EAAmB;QAEpB,IAAI,CAAC,cAAc;aAChB,QAAQ,CAAC,OAAO,CAAC;aACjB,IAAI,CACH,SAAS;;;QAAC,cAAM,OAAA,IAAI,CAAC,KAAI,CAAC,YAAY,CAAC,2BAA2B,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAA,EAAC,EACxG,SAAS;;;QAAC,cAAM,OAAA,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,mBAAmB,EAAE,CAAC,GAAA,EAAC,EAC/D,GAAG;;;QAAC,cAAM,OAAA,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAA,EAAC,EACnD,IAAI,CAAC,CAAC,CAAC,EACP,UAAU;;;;QAAC,UAAA,GAAG;YACZ,KAAI,CAAC,cAAc,CAAC,KAAK,CACvB,GAAG;;;YAAC,cAAM,OAAA,GAAG,CAAC,KAAK,CAAC,iBAAiB,GAAA,EAAC;gBACpC,GAAG;;;gBAAC,cAAM,OAAA,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,GAAA,GAAE,iCAAiC,CAAC,EACvE,OAAO,EACP,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;YACF,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;SACxB,EAAC,EACF,QAAQ;;;QAAC,cAAM,QAAC,KAAI,CAAC,UAAU,GAAG,KAAK,IAAC,EAAC,CAC1C;aACA,SAAS,EAAE,CAAC;KAChB;;gBAzDF,SAAS,SAAC;oBACT,QAAQ,EAAE,cAAc;oBACxB,i9CAAwC;iBACzC;;;;gBAdQ,WAAW;gBAQX,cAAc;gBALd,YAAY;gBADZ,KAAK;gBAJL,cAAc;;IAuEvB,wBAAC;CA1DD,IA0DC;;;IArDC,iCAAgB;;IAEhB,uCAAoB;;;;;IAGlB,+BAAuB;;;;;IACvB,2CAAsC;;;;;IACtC,yCAAkC;;;;;IAClC,kCAAoB;;;;;IACpB,2CAAsC;;;;;;;AC5B1C;IAMM,MAAM,GAAW;IACrB,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE;IACpD;QACE,IAAI,EAAE,EAAE;QACR,SAAS,EAAE,sBAAsB;QACjC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC;KAC7G;CACF;AAED;IAAA;KAIoC;;gBAJnC,QAAQ,SAAC;oBACR,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBACxC,OAAO,EAAE,CAAC,YAAY,CAAC;iBACxB;;IACkC,2BAAC;CAJpC;;;;;;ACfA;IAcE,4BAAoB,KAAY,EAAU,cAA8B,EAAU,cAA8B;QAA5F,UAAK,GAAL,KAAK,CAAO;QAAU,mBAAc,GAAd,cAAc,CAAgB;QAAU,mBAAc,GAAd,cAAc,CAAgB;QAEhH,WAAM,sBAAG,EAAE,EAAiB,CAAC;KAFuF;;;;IAQpH,qCAAQ;;;IAAR;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,SAAS,CAAC,wBAAK,EAAE,GAAkB,CAAC;QACzF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;KAC1C;;;;IAED,qCAAQ;;;IAAR;QACE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;KAC5B;;;;IAED,iCAAI;;;IAAJ;QAAA,iBAmCC;QAlCC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YACpB,IAAI,CAAC,cAAc;iBAChB,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;iBAC5B,IAAI,CACH,IAAI,CAAC,CAAC,CAAC,EACP,UAAU;;;;YAAC,UAAA,GAAG;gBACZ,KAAI,CAAC,cAAc,CAAC,KAAK,CACvB,GAAG;;;gBAAC,cAAM,OAAA,GAAG,CAAC,KAAK,CAAC,iBAAiB,GAAA,GAAE,4BAA4B,CAAC,EACpE,cAAc,CACf,CAAC;gBACF,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;aACxB,EAAC,CACH;iBACA,SAAS;;;;YAAC,UAAC,EAAqB;oBAAnB,oBAAO,EAAE,sBAAQ;gBAC7B,IAAI,OAAO,EAAE;oBACX,KAAI,CAAC,MAAM,GAAG;wBACZ,EAAE,EAAE,QAAQ;wBACZ,IAAI,EAAE,KAAI,CAAC,MAAM,CAAC,IAAI;qBACvB,CAAC;oBACF,KAAI,CAAC,UAAU,GAAG,KAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBACnC,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;iBAC7B;qBAAM;oBACL,KAAI,CAAC,cAAc,CAAC,KAAK,CAAC,8CAA8C,EAAE,cAAc,EAAE;wBACxF,yBAAyB,EAAE,CAAC,KAAI,CAAC,MAAM,CAAC,IAAI,CAAC;qBAC9C,CAAC,CAAC;oBACH,KAAI,CAAC,MAAM,sBAAG,EAAE,EAAiB,CAAC;iBACnC;gBACD,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,OAAO,GAAG,KAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;aAClE,EAAC,CAAC;SACN;aAAM;YACL,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YACzC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;SAC7B;KACF;;gBAzDF,SAAS,SAAC;oBACT,QAAQ,EAAE,gBAAgB;oBAC1B,0gDAA0C;iBAC3C;;;;gBATQ,KAAK;gBAFL,cAAc;gBAMd,cAAc;;IA4DvB,yBAAC;CA1DD,IA0DC;;;IAnDC,oCAA6B;;IAE7B,wCAAmB;;IAEnB,4CAAwB;;;;;IANZ,mCAAoB;;;;;IAAE,4CAAsC;;;;;IAAE,4CAAsC;;;;;;;;;;;ACXlH,SAAgB,cAAc,CAAC,OAAgB;IAC7C,kBACE,WAAW,EAAE,GAAG,IACb,OAAO,EACV;CACH;;AAED,IAAa,eAAe,GAAG,IAAI,cAAc,CAAC,iBAAiB,CAAC;;;;;;ACVpE;IAaA;KAK6B;;gBAL5B,QAAQ,SAAC;oBACR,YAAY,EAAE,CAAC,cAAc,EAAE,iBAAiB,EAAE,kBAAkB,CAAC;oBACrE,OAAO,EAAE,CAAC,UAAU,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,WAAW,EAAE,iBAAiB,EAAE,qBAAqB,CAAC;oBACrH,OAAO,EAAE,EAAE;iBACZ;;IAC2B,oBAAC;CAL7B,IAK6B;;;;;AAE7B,SAAgB,gBAAgB,CAAC,OAAuB;IAAvB,wBAAA,EAAA,6BAAU,EAAE,EAAW;IACtD,OAAO;QACL,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE;QAC/C;YACE,OAAO,EAAE,iBAAiB;YAC1B,UAAU,EAAE,cAAc;YAC1B,IAAI,EAAE,CAAC,eAAe,CAAC;SACxB;KACF,CAAC;CACH;;;;;;;;;;;;AC3BD,IAAa,cAAc,GAAG;IAC5B,MAAM,qBAAE;QACN;YACE,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS;YACf,SAAS,EAAE,IAAI;YACf,MAAM;YACN,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;SACzG;KACF,EAAmB;IACpB,QAAQ,EAAE,EAAE;CACb;;;;;;;;;;;;;;ACbD,sBAEC;;;IADC,8BAAqB;;;;;;;;;;ACDvB,8BAKC;;;IAJC,mCAAiB;;IACjB,uCAAqB;;IACrB,mCAAiB;;IACjB,kCAAiB;;;;;AAGnB,+BAqBC;;;IApBC,oCAAiB;;IACjB,oCAAiB;;IACjB,gCAAa;;IACb,mCAAgB;;IAChB,iCAAc;;IACd,0CAAwB;;IACxB,uCAAoB;;IACpB,gDAA8B;;IAC9B,4CAA0B;;IAC1B,0CAAwB;;IACxB,sCAAmB;;IACnB,4CAAyB;;IACzB,qCAAmB;;IACnB,qCAAkB;;IAClB,wCAAqB;;IACrB,gDAA6B;;IAC7B,0CAAuB;;IACvB,wCAAqB;;IACrB,qCAAkB;;IAClB,8BAAW;;;;;;;;;;AC3Bb,+BAGC;;;IAFC,mCAAiB;;IACjB,oCAAiB;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/npm/ng-packs/dist/account/lib/account.module.d.ts b/npm/ng-packs/dist/account/lib/account.module.d.ts index ab6f139b3a..7174d1c1c5 100644 --- a/npm/ng-packs/dist/account/lib/account.module.d.ts +++ b/npm/ng-packs/dist/account/lib/account.module.d.ts @@ -1,2 +1,5 @@ +import { Provider } from '@angular/core'; +import { Options } from './models/options'; export declare class AccountModule { } +export declare function AccountProviders(options?: Options): Provider[]; diff --git a/npm/ng-packs/dist/account/lib/root-account.module.d.ts b/npm/ng-packs/dist/account/lib/root-account.module.d.ts deleted file mode 100644 index e182b0e9b3..0000000000 --- a/npm/ng-packs/dist/account/lib/root-account.module.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { ModuleWithProviders } from '@angular/core'; -import { Options } from './models/options'; -export declare class RootAccountModule { - static forRoot(options?: Options): ModuleWithProviders; -} diff --git a/npm/ng-packs/dist/account/public-api.d.ts b/npm/ng-packs/dist/account/public-api.d.ts index d75f7155f1..0e845f0768 100644 --- a/npm/ng-packs/dist/account/public-api.d.ts +++ b/npm/ng-packs/dist/account/public-api.d.ts @@ -1,4 +1,3 @@ -export * from './lib/root-account.module'; export * from './lib/account.module'; export * from './lib/components'; export * from './lib/constants/routes'; diff --git a/npm/ng-packs/dist/core/abp-ng.core.d.ts b/npm/ng-packs/dist/core/abp-ng.core.d.ts index e6300c00d5..839ec46e2d 100644 --- a/npm/ng-packs/dist/core/abp-ng.core.d.ts +++ b/npm/ng-packs/dist/core/abp-ng.core.d.ts @@ -7,9 +7,10 @@ export { ChangePassword as ɵf, GetProfile as ɵd, UpdateProfile as ɵe } from ' export { SetLanguage as ɵj, SetTenant as ɵk } from './lib/actions/session.actions'; export { DynamicLayoutComponent as ɵr } from './lib/components/dynamic-layout.component'; export { RouterOutletComponent as ɵq } from './lib/components/router-outlet.component'; -export { AutofocusDirective as ɵt } from './lib/directives/autofocus.directive'; +export { AutofocusDirective as ɵs } from './lib/directives/autofocus.directive'; export { InputEventDebounceDirective as ɵz } from './lib/directives/debounce.directive'; -export { EllipsisDirective as ɵu } from './lib/directives/ellipsis.directive'; +export { EllipsisDirective as ɵt } from './lib/directives/ellipsis.directive'; +export { ForDirective as ɵu } from './lib/directives/for.directive'; export { FormSubmitDirective as ɵv } from './lib/directives/form-submit.directive'; export { PermissionDirective as ɵx } from './lib/directives/permission.directive'; export { ClickEventStopPropagationDirective as ɵba } from './lib/directives/stop-propagation.directive'; @@ -23,7 +24,6 @@ export { ApplicationConfigurationService as ɵn } from './lib/services/applicati export { LocalizationService as ɵi } from './lib/services/localization.service'; export { ProfileService as ɵb } from './lib/services/profile.service'; export { RestService as ɵc } from './lib/services/rest.service'; -export { ConfigState as ɵs } from './lib/states'; export { ConfigState as ɵm } from './lib/states/config.state'; export { ProfileState as ɵa } from './lib/states/profile.state'; export { SessionState as ɵh } from './lib/states/session.state'; diff --git a/npm/ng-packs/dist/core/abp-ng.core.metadata.json b/npm/ng-packs/dist/core/abp-ng.core.metadata.json index 0285cce08b..51d94cbc45 100644 --- a/npm/ng-packs/dist/core/abp-ng.core.metadata.json +++ b/npm/ng-packs/dist/core/abp-ng.core.metadata.json @@ -1 +1 @@ -{"__symbolic":"module","version":4,"exports":[{"from":"./lib/common-utils"},{"from":"./lib/generator-utils"},{"from":"./lib/initial-utils"},{"from":"./lib/route-utils"},{"from":"./lib/rxjs-utils"},{"from":"./lib/rest.service"}],"metadata":{"CoreModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":27,"character":1},"arguments":[{"imports":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"NgxsModule","line":29,"character":4},"member":"forFeature"},"arguments":[[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵm"}]]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/storage-plugin","name":"NgxsStoragePluginModule","line":30,"character":4},"member":"forRoot"},"arguments":[{"key":"SessionState"}]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/router-plugin","name":"NgxsRouterPluginModule","line":31,"character":4},"member":"forRoot"}},{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":32,"character":4},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClientModule","line":33,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":34,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":35,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":36,"character":4}],"declarations":[{"__symbolic":"reference","name":"ɵq"},{"__symbolic":"reference","name":"ɵr"},{"__symbolic":"reference","name":"ɵt"},{"__symbolic":"reference","name":"ɵu"},{"__symbolic":"reference","name":"ɵv"},{"__symbolic":"reference","name":"ɵw"},{"__symbolic":"reference","name":"ɵx"},{"__symbolic":"reference","name":"ɵy"},{"__symbolic":"reference","name":"ɵz"},{"__symbolic":"reference","name":"ɵba"}],"exports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":51,"character":4},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClientModule","line":52,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":53,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":54,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":55,"character":4},{"__symbolic":"reference","name":"ɵq"},{"__symbolic":"reference","name":"ɵr"},{"__symbolic":"reference","name":"ɵt"},{"__symbolic":"reference","name":"ɵu"},{"__symbolic":"reference","name":"ɵv"},{"__symbolic":"reference","name":"ɵw"},{"__symbolic":"reference","name":"ɵx"},{"__symbolic":"reference","name":"ɵy"},{"__symbolic":"reference","name":"ɵz"},{"__symbolic":"reference","name":"ɵw"},{"__symbolic":"reference","name":"ɵba"}],"providers":[{"__symbolic":"reference","name":"ɵw"}],"entryComponents":[{"__symbolic":"reference","name":"ɵq"},{"__symbolic":"reference","name":"ɵr"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":["options"],"defaults":[{}],"value":{"ngModule":{"__symbolic":"reference","name":"CoreModule"},"providers":[{"__symbolic":"reference","name":"ɵbc"},{"provide":{"__symbolic":"reference","module":"@ngxs/store","name":"NGXS_PLUGINS","line":78,"character":19},"useClass":{"__symbolic":"reference","name":"ɵbe"},"multi":true},{"provide":{"__symbolic":"reference","name":"ɵbd"},"useValue":{"__symbolic":"reference","name":"options"}},{"provide":{"__symbolic":"reference","module":"@angular/common/http","name":"HTTP_INTERCEPTORS","line":87,"character":19},"useClass":{"__symbolic":"reference","name":"ɵbf"},"multi":true},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"APP_INITIALIZER","line":92,"character":19},"multi":true,"deps":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":94,"character":17}],"useFactory":{"__symbolic":"reference","name":"ɵbg"}},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"APP_INITIALIZER","line":98,"character":19},"multi":true,"deps":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":100,"character":17}],"useFactory":{"__symbolic":"reference","name":"ɵbh"}}]}}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":6,"character":1},"arguments":[{"name":"ProfileState","defaults":{}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵb"}]}],"profileGet":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":18,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵd"}]}]}],"profileUpdate":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":29,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵe"}]}]}],"changePassword":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":40,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵf"}]}]}]},"statics":{"getProfile":{"__symbolic":"function","parameters":["profile"],"value":{"__symbolic":"reference","name":"profile"}}}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵc"}]}],"get":[{"__symbolic":"method"}],"update":[{"__symbolic":"method"}],"changePassword":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":13,"character":28},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":13,"character":55}]}],"handleError":[{"__symbolic":"method"}],"request":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵd":{"__symbolic":"class","members":{},"statics":{"type":"[Profile] Get"}},"ɵe":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵg"},"member":"Response"}]}]},"statics":{"type":"[Profile] Update"}},"ɵf":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵg"},"member":"ChangePasswordRequest"}]}]},"statics":{"type":"[Profile] Change Password"}},"ɵh":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":7,"character":1},"arguments":[{"name":"SessionState","defaults":{}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵi"}]}],"setLanguage":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":24,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵj"}]}]}],"setTenantId":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":33,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵk"}]}]}]},"statics":{"getLanguage":{"__symbolic":"function","parameters":["language"],"value":{"__symbolic":"reference","name":"language"}},"getTenant":{"__symbolic":"function","parameters":["tenant"],"value":{"__symbolic":"reference","name":"tenant"}}}},"ɵi":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":10,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":20,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf","line":21,"character":5}}]],"parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":17,"character":19},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":18,"character":20},{"__symbolic":"reference","module":"@ngxs/store","name":"Actions","line":19,"character":21},{"__symbolic":"reference","name":"ɵi"}]}],"setRouteReuse":[{"__symbolic":"method"}],"registerLocale":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"instant":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵj":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Session] Set Language"}},"ɵk":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵl"},"member":"BasicItem"}]}]},"statics":{"type":"[Session] Set Tenant"}},"ɵm":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":11,"character":1},"arguments":[{"name":"ConfigState","defaults":{}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵn"},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":172,"character":95}]}],"addData":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":174,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵp"}]}]}],"patchRoute":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":194,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵo"}]}]}]},"statics":{"getAll":{"__symbolic":"function","parameters":["state"],"value":{"__symbolic":"reference","name":"state"}},"getApplicationInfo":{"__symbolic":"function","parameters":["state"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"state"},"member":"environment"},"member":"application"},"right":{}}}}},"ɵn":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵc"}]}],"getConfiguration":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵo":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"error","message":"Could not resolve type","line":4,"character":52,"context":{"typeName":"Partial"},"module":"./lib/actions/config.actions"}]}]},"statics":{"type":"[Config] Patch Route By Name"}},"ɵp":{"__symbolic":"class","members":{},"statics":{"type":"[Config] Get App Configuration"}},"ɵq":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"abp-router-outlet","template":"\n \n "}]}],"members":{}},"ɵr":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"abp-dynamic-layout","template":"\n \n\n \n \n "}]}],"members":{"requirements$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":20,"character":3},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵs"},"member":"getOne"},"arguments":["requirements"]}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":25,"character":30},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":25,"character":53}]}],"ngOnDestroy":[{"__symbolic":"method"}]}},"ɵt":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[autofocus]"}]}],"members":{"delay":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":6,"character":3},"arguments":["autofocus"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":9,"character":29}]}],"ngAfterViewInit":[{"__symbolic":"method"}]}},"ɵu":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[abpEllipsis]"}]}],"members":{"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":6,"character":3},"arguments":["abpEllipsis"]}]}],"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":9,"character":3},"arguments":["title"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"enabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3},"arguments":["abpEllipsisEnabled"]}]}],"inlineClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":16,"character":3},"arguments":["class.abp-ellipsis-inline"]}]}],"class":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":21,"character":3},"arguments":["class.abp-ellipsis"]}]}],"maxWidth":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":26,"character":3},"arguments":["style.max-width"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":31,"character":29},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":31,"character":63}]}],"ngAfterContentInit":[{"__symbolic":"method"}]}},"ɵv":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":18,"character":1},"arguments":[{"selector":"form[ngSubmit][formGroup]"}]}],"members":{"notValidateOnSubmit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3}}]}],"ngSubmit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Self","line":31,"character":5}}],null,null],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormGroupDirective","line":31,"character":40},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":32,"character":29,"context":{"typeName":"HTMLFormElement"},"module":"./lib/directives/form-submit.directive"}]},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":33,"character":19}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"markAsDirty":[{"__symbolic":"method"}]}},"ɵw":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":7,"character":1},"arguments":[{"name":"abpLocalization","pure":false}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":18,"character":29}]}],"transform":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"ɵx":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":5,"character":1},"arguments":[{"selector":"[abpPermission]"}]}],"members":{"condition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3},"arguments":["abpPermission"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":11,"character":15}}],null,null],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":11,"character":41},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":11,"character":71},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":11,"character":97}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"ɵy":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":4,"character":1},"arguments":[{"selector":"[abpVisibility]"}]}],"members":{"focusedElement":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3},"arguments":["abpVisibility"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":13,"character":15}}],null],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":13,"character":41},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":13,"character":71}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"disconnect":[{"__symbolic":"method"}]}},"ɵz":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":5,"character":1},"arguments":[{"selector":"[input.debounce]"}]}],"members":{"debounce":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"debounceEvent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":11,"character":3},"arguments":["input.debounce"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":13,"character":32},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":13,"character":55}]}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵba":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":4,"character":1},"arguments":[{"selector":"[click.stop]"}]}],"members":{"stopPropEvent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":8,"character":3},"arguments":["click.stop"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":10,"character":32},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":10,"character":55}]}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵbb":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"String"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵi"}]}],"toString":[{"__symbolic":"method"}],"valueOf":[{"__symbolic":"method"}]}},"ɵbc":{"provide":{"__symbolic":"reference","module":"@angular/core","name":"LOCALE_ID","line":20,"character":11},"useClass":{"__symbolic":"reference","name":"ɵbb"},"deps":[{"__symbolic":"reference","name":"ɵi"}]},"ɵbd":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":7,"character":46},"arguments":["NGXS_CONFIG_PLUGIN_OPTIONS"]},"ɵbe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":13,"character":15},"arguments":[{"__symbolic":"reference","name":"ɵbd"}]}],null],"parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵl"},"member":"Root"},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":13,"character":93}]}],"handle":[{"__symbolic":"method"}]}},"ɵbf":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":8,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"angular-oauth2-oidc","name":"OAuthService","line":10,"character":36},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":10,"character":65}]}],"intercept":[{"__symbolic":"method"}]}},"ɵbg":{"__symbolic":"function"},"ɵbh":{"__symbolic":"function"}},"origins":{"CoreModule":"./lib/core.module","ɵa":"./lib/states/profile.state","ɵb":"./lib/services/profile.service","ɵc":"./lib/services/rest.service","ɵd":"./lib/actions/profile.actions","ɵe":"./lib/actions/profile.actions","ɵf":"./lib/actions/profile.actions","ɵg":"./lib/models","ɵh":"./lib/states/session.state","ɵi":"./lib/services/localization.service","ɵj":"./lib/actions/session.actions","ɵk":"./lib/actions/session.actions","ɵl":"./lib/models","ɵm":"./lib/states/config.state","ɵn":"./lib/services/application-configuration.service","ɵo":"./lib/actions/config.actions","ɵp":"./lib/actions/config.actions","ɵq":"./lib/components/router-outlet.component","ɵr":"./lib/components/dynamic-layout.component","ɵs":"./lib/states","ɵt":"./lib/directives/autofocus.directive","ɵu":"./lib/directives/ellipsis.directive","ɵv":"./lib/directives/form-submit.directive","ɵw":"./lib/pipes/localization.pipe","ɵx":"./lib/directives/permission.directive","ɵy":"./lib/directives/visibility.directive","ɵz":"./lib/directives/debounce.directive","ɵba":"./lib/directives/stop-propagation.directive","ɵbb":"./lib/providers/locale.provider","ɵbc":"./lib/providers/locale.provider","ɵbd":"./lib/plugins/config/config.plugin","ɵbe":"./lib/plugins/config/config.plugin","ɵbf":"./lib/interceptors/api.interceptor","ɵbg":"./lib/utils/initial-utils","ɵbh":"./lib/utils/initial-utils"},"importAs":"@abp/ng.core"} \ No newline at end of file +{"__symbolic":"module","version":4,"exports":[{"from":"./lib/common-utils"},{"from":"./lib/generator-utils"},{"from":"./lib/initial-utils"},{"from":"./lib/route-utils"},{"from":"./lib/rxjs-utils"},{"from":"./lib/rest.service"}],"metadata":{"CoreModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":28,"character":1},"arguments":[{"imports":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"NgxsModule","line":30,"character":4},"member":"forFeature"},"arguments":[[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵm"}]]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/storage-plugin","name":"NgxsStoragePluginModule","line":31,"character":4},"member":"forRoot"},"arguments":[{"key":"SessionState"}]},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/router-plugin","name":"NgxsRouterPluginModule","line":32,"character":4},"member":"forRoot"}},{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":33,"character":4},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClientModule","line":34,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":35,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":36,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":37,"character":4}],"declarations":[{"__symbolic":"reference","name":"ɵq"},{"__symbolic":"reference","name":"ɵr"},{"__symbolic":"reference","name":"ɵs"},{"__symbolic":"reference","name":"ɵt"},{"__symbolic":"reference","name":"ɵu"},{"__symbolic":"reference","name":"ɵv"},{"__symbolic":"reference","name":"ɵw"},{"__symbolic":"reference","name":"ɵx"},{"__symbolic":"reference","name":"ɵy"},{"__symbolic":"reference","name":"ɵz"},{"__symbolic":"reference","name":"ɵba"}],"exports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":53,"character":4},{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClientModule","line":54,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":55,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":56,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":57,"character":4},{"__symbolic":"reference","name":"ɵq"},{"__symbolic":"reference","name":"ɵr"},{"__symbolic":"reference","name":"ɵs"},{"__symbolic":"reference","name":"ɵt"},{"__symbolic":"reference","name":"ɵu"},{"__symbolic":"reference","name":"ɵv"},{"__symbolic":"reference","name":"ɵw"},{"__symbolic":"reference","name":"ɵx"},{"__symbolic":"reference","name":"ɵy"},{"__symbolic":"reference","name":"ɵz"},{"__symbolic":"reference","name":"ɵw"},{"__symbolic":"reference","name":"ɵba"}],"providers":[{"__symbolic":"reference","name":"ɵw"}],"entryComponents":[{"__symbolic":"reference","name":"ɵq"},{"__symbolic":"reference","name":"ɵr"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":["options"],"defaults":[{}],"value":{"ngModule":{"__symbolic":"reference","name":"CoreModule"},"providers":[{"__symbolic":"reference","name":"ɵbc"},{"provide":{"__symbolic":"reference","module":"@ngxs/store","name":"NGXS_PLUGINS","line":81,"character":19},"useClass":{"__symbolic":"reference","name":"ɵbe"},"multi":true},{"provide":{"__symbolic":"reference","name":"ɵbd"},"useValue":{"__symbolic":"reference","name":"options"}},{"provide":{"__symbolic":"reference","module":"@angular/common/http","name":"HTTP_INTERCEPTORS","line":90,"character":19},"useClass":{"__symbolic":"reference","name":"ɵbf"},"multi":true},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"APP_INITIALIZER","line":95,"character":19},"multi":true,"deps":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":97,"character":17}],"useFactory":{"__symbolic":"reference","name":"ɵbg"}},{"provide":{"__symbolic":"reference","module":"@angular/core","name":"APP_INITIALIZER","line":101,"character":19},"multi":true,"deps":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":103,"character":17}],"useFactory":{"__symbolic":"reference","name":"ɵbh"}}]}}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":6,"character":1},"arguments":[{"name":"ProfileState","defaults":{}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵb"}]}],"profileGet":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":18,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵd"}]}]}],"profileUpdate":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":29,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵe"}]}]}],"changePassword":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":40,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵf"}]}]}]},"statics":{"getProfile":{"__symbolic":"function","parameters":["profile"],"value":{"__symbolic":"reference","name":"profile"}}}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵc"}]}],"get":[{"__symbolic":"method"}],"update":[{"__symbolic":"method"}],"changePassword":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/common/http","name":"HttpClient","line":13,"character":28},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":13,"character":55}]}],"handleError":[{"__symbolic":"method"}],"request":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵd":{"__symbolic":"class","members":{},"statics":{"type":"[Profile] Get"}},"ɵe":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵg"},"member":"Response"}]}]},"statics":{"type":"[Profile] Update"}},"ɵf":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵg"},"member":"ChangePasswordRequest"}]}]},"statics":{"type":"[Profile] Change Password"}},"ɵh":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":7,"character":1},"arguments":[{"name":"SessionState","defaults":{}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵi"}]}],"setLanguage":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":24,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵj"}]}]}],"setTenantId":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":33,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵk"}]}]}]},"statics":{"getLanguage":{"__symbolic":"function","parameters":["language"],"value":{"__symbolic":"reference","name":"language"}},"getTenant":{"__symbolic":"function","parameters":["tenant"],"value":{"__symbolic":"reference","name":"tenant"}}}},"ɵi":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":10,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":20,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"SkipSelf","line":21,"character":5}}]],"parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":17,"character":19},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":18,"character":20},{"__symbolic":"reference","module":"@ngxs/store","name":"Actions","line":19,"character":21},{"__symbolic":"reference","name":"ɵi"}]}],"setRouteReuse":[{"__symbolic":"method"}],"registerLocale":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"instant":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵj":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Session] Set Language"}},"ɵk":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵl"},"member":"BasicItem"}]}]},"statics":{"type":"[Session] Set Tenant"}},"ɵm":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":11,"character":1},"arguments":[{"name":"ConfigState","defaults":{}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵn"},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":162,"character":95}]}],"addData":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":164,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵp"}]}]}],"patchRoute":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":184,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵo"}]}]}]},"statics":{"getAll":{"__symbolic":"function","parameters":["state"],"value":{"__symbolic":"reference","name":"state"}},"getApplicationInfo":{"__symbolic":"function","parameters":["state"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"state"},"member":"environment"},"member":"application"},"right":{}}}}},"ɵn":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵc"}]}],"getConfiguration":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵo":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"error","message":"Could not resolve type","line":4,"character":52,"context":{"typeName":"Partial"},"module":"./lib/actions/config.actions"}]}]},"statics":{"type":"[Config] Patch Route By Name"}},"ɵp":{"__symbolic":"class","members":{},"statics":{"type":"[Config] Get App Configuration"}},"ɵq":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"abp-router-outlet","template":"\n \n "}]}],"members":{}},"ɵr":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":11,"character":1},"arguments":[{"selector":"abp-dynamic-layout","template":"\n \n\n \n \n "}]}],"members":{"requirements$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":21,"character":3},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵm"},"member":"getOne"},"arguments":["requirements"]}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":26,"character":30},{"__symbolic":"reference","module":"@angular/router","name":"ActivatedRoute","line":26,"character":53},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":26,"character":84}]}],"ngOnDestroy":[{"__symbolic":"method"}]}},"ɵs":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[autofocus]"}]}],"members":{"delay":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":6,"character":3},"arguments":["autofocus"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":9,"character":29}]}],"ngAfterViewInit":[{"__symbolic":"method"}]}},"ɵt":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[abpEllipsis]"}]}],"members":{"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":6,"character":3},"arguments":["abpEllipsis"]}]}],"title":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":9,"character":3},"arguments":["title"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"enabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3},"arguments":["abpEllipsisEnabled"]}]}],"inlineClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":16,"character":3},"arguments":["class.abp-ellipsis-inline"]}]}],"class":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":21,"character":3},"arguments":["class.abp-ellipsis"]}]}],"maxWidth":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":26,"character":3},"arguments":["style.max-width"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":31,"character":29},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":31,"character":63}]}],"ngAfterContentInit":[{"__symbolic":"method"}]}},"ɵu":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":26,"character":1},"arguments":[{"selector":"[abpFor]"}]}],"members":{"items":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":3},"arguments":["abpForOf"]}]}],"orderBy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3},"arguments":["abpForOrderBy"]}]}],"orderDir":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":3},"arguments":["abpForOrderDir"]}]}],"filterBy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":39,"character":3},"arguments":["abpForFilterBy"]}]}],"filterVal":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":42,"character":3},"arguments":["abpForFilterVal"]}]}],"trackBy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":45,"character":3},"arguments":["abpForTrackBy"]}]}],"compareBy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":48,"character":3},"arguments":["abpForCompareBy"]}]}],"emptyRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":51,"character":3},"arguments":["abpForEmptyRef"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Reference to non-exported class","line":18,"character":0,"context":{"className":"AbpForContext"},"module":"./lib/directives/for.directive"}]},{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":68,"character":19},{"__symbolic":"reference","module":"@angular/core","name":"IterableDiffers","line":69,"character":21}]}],"iterateOverAppliedOperations":[{"__symbolic":"method"}],"iterateOverAttachedViews":[{"__symbolic":"method"}],"projectItems":[{"__symbolic":"method"}],"sortItems":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ɵv":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":18,"character":1},"arguments":[{"selector":"form[ngSubmit][formGroup]"}]}],"members":{"notValidateOnSubmit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3}}]}],"ngSubmit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Self","line":31,"character":5}}],null,null],"parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormGroupDirective","line":31,"character":40},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":32,"character":29,"context":{"typeName":"HTMLFormElement"},"module":"./lib/directives/form-submit.directive"}]},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":33,"character":19}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"markAsDirty":[{"__symbolic":"method"}]}},"ɵw":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Pipe","line":7,"character":1},"arguments":[{"name":"abpLocalization","pure":false}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":18,"character":29}]}],"transform":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"ɵx":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":5,"character":1},"arguments":[{"selector":"[abpPermission]"}]}],"members":{"condition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3},"arguments":["abpPermission"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":11,"character":15}}],null,null],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":11,"character":41},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":11,"character":71},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":11,"character":97}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"ɵy":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":4,"character":1},"arguments":[{"selector":"[abpVisibility]"}]}],"members":{"focusedElement":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3},"arguments":["abpVisibility"]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":13,"character":15}}],null],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":13,"character":41},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":13,"character":71}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"disconnect":[{"__symbolic":"method"}]}},"ɵz":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":5,"character":1},"arguments":[{"selector":"[input.debounce]"}]}],"members":{"debounce":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"debounceEvent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":11,"character":3},"arguments":["input.debounce"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":13,"character":32},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":13,"character":55}]}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵba":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":4,"character":1},"arguments":[{"selector":"[click.stop]"}]}],"members":{"stopPropEvent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":8,"character":3},"arguments":["click.stop"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":10,"character":32},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":10,"character":55}]}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵbb":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"String"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵi"}]}],"toString":[{"__symbolic":"method"}],"valueOf":[{"__symbolic":"method"}]}},"ɵbc":{"provide":{"__symbolic":"reference","module":"@angular/core","name":"LOCALE_ID","line":20,"character":11},"useClass":{"__symbolic":"reference","name":"ɵbb"},"deps":[{"__symbolic":"reference","name":"ɵi"}]},"ɵbd":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":8,"character":46},"arguments":["NGXS_CONFIG_PLUGIN_OPTIONS"]},"ɵbe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":10,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":14,"character":15},"arguments":[{"__symbolic":"reference","name":"ɵbd"}]}],null],"parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵl"},"member":"Root"},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":14,"character":93}]}],"handle":[{"__symbolic":"method"}]}},"ɵbf":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":8,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"angular-oauth2-oidc","name":"OAuthService","line":10,"character":36},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":10,"character":65}]}],"intercept":[{"__symbolic":"method"}]}},"ɵbg":{"__symbolic":"function"},"ɵbh":{"__symbolic":"function"}},"origins":{"CoreModule":"./lib/core.module","ɵa":"./lib/states/profile.state","ɵb":"./lib/services/profile.service","ɵc":"./lib/services/rest.service","ɵd":"./lib/actions/profile.actions","ɵe":"./lib/actions/profile.actions","ɵf":"./lib/actions/profile.actions","ɵg":"./lib/models","ɵh":"./lib/states/session.state","ɵi":"./lib/services/localization.service","ɵj":"./lib/actions/session.actions","ɵk":"./lib/actions/session.actions","ɵl":"./lib/models","ɵm":"./lib/states/config.state","ɵn":"./lib/services/application-configuration.service","ɵo":"./lib/actions/config.actions","ɵp":"./lib/actions/config.actions","ɵq":"./lib/components/router-outlet.component","ɵr":"./lib/components/dynamic-layout.component","ɵs":"./lib/directives/autofocus.directive","ɵt":"./lib/directives/ellipsis.directive","ɵu":"./lib/directives/for.directive","ɵv":"./lib/directives/form-submit.directive","ɵw":"./lib/pipes/localization.pipe","ɵx":"./lib/directives/permission.directive","ɵy":"./lib/directives/visibility.directive","ɵz":"./lib/directives/debounce.directive","ɵba":"./lib/directives/stop-propagation.directive","ɵbb":"./lib/providers/locale.provider","ɵbc":"./lib/providers/locale.provider","ɵbd":"./lib/plugins/config/config.plugin","ɵbe":"./lib/plugins/config/config.plugin","ɵbf":"./lib/interceptors/api.interceptor","ɵbg":"./lib/utils/initial-utils","ɵbh":"./lib/utils/initial-utils"},"importAs":"@abp/ng.core"} \ No newline at end of file diff --git a/npm/ng-packs/dist/core/bundles/abp-ng.core.umd.js b/npm/ng-packs/dist/core/bundles/abp-ng.core.umd.js index c4af371d2f..7479ac7ef5 100644 --- a/npm/ng-packs/dist/core/bundles/abp-ng.core.umd.js +++ b/npm/ng-packs/dist/core/bundles/abp-ng.core.umd.js @@ -1,10 +1,12 @@ (function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/router'), require('@ngxs/store'), require('rxjs'), require('@angular/common/http'), require('rxjs/operators'), require('snq'), require('@angular/common'), require('@angular/forms'), require('angular-oauth2-oidc'), require('@ngxs/router-plugin'), require('@ngxs/storage-plugin'), require('@ngx-validate/core')) : - typeof define === 'function' && define.amd ? define('@abp/ng.core', ['exports', '@angular/core', '@angular/router', '@ngxs/store', 'rxjs', '@angular/common/http', 'rxjs/operators', 'snq', '@angular/common', '@angular/forms', 'angular-oauth2-oidc', '@ngxs/router-plugin', '@ngxs/storage-plugin', '@ngx-validate/core'], factory) : - (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng.core = {}), global.ng.core, global.ng.router, global.store, global.rxjs, global.ng.common.http, global.rxjs.operators, global.snq, global.ng.common, global.ng.forms, global.angularOauth2Oidc, global.routerPlugin, global.storagePlugin, global.core$1)); -}(this, function (exports, core, router, store, rxjs, http, operators, snq, common, forms, angularOauth2Oidc, routerPlugin, storagePlugin, core$1) { 'use strict'; + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/router'), require('@ngxs/store'), require('rxjs'), require('snq'), require('@angular/common/http'), require('rxjs/operators'), require('@angular/common'), require('just-compare'), require('just-clone'), require('@angular/forms'), require('angular-oauth2-oidc'), require('@ngxs/router-plugin'), require('@ngxs/storage-plugin'), require('@ngx-validate/core')) : + typeof define === 'function' && define.amd ? define('@abp/ng.core', ['exports', '@angular/core', '@angular/router', '@ngxs/store', 'rxjs', 'snq', '@angular/common/http', 'rxjs/operators', '@angular/common', 'just-compare', 'just-clone', '@angular/forms', 'angular-oauth2-oidc', '@ngxs/router-plugin', '@ngxs/storage-plugin', '@ngx-validate/core'], factory) : + (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng.core = {}), global.ng.core, global.ng.router, global.store, global.rxjs, global.snq, global.ng.common.http, global.rxjs.operators, global.ng.common, global.compare, global.clone, global.ng.forms, global.angularOauth2Oidc, global.routerPlugin, global.storagePlugin, global.core$1)); +}(this, function (exports, core, router, store, rxjs, snq, http, operators, common, compare, clone, forms, angularOauth2Oidc, routerPlugin, storagePlugin, core$1) { 'use strict'; snq = snq && snq.hasOwnProperty('default') ? snq['default'] : snq; + compare = compare && compare.hasOwnProperty('default') ? compare['default'] : compare; + clone = clone && clone.hasOwnProperty('default') ? clone['default'] : clone; /*! ***************************************************************************** Copyright (c) Microsoft Corporation. All rights reserved. @@ -360,86 +362,6 @@ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var RestService = /** @class */ (function () { - function RestService(http, store) { - this.http = http; - this.store = store; - } - /** - * @param {?} err - * @return {?} - */ - RestService.prototype.handleError = /** - * @param {?} err - * @return {?} - */ - function (err) { - this.store.dispatch(new RestOccurError(err)); - console.error(err); - return rxjs.throwError(err); - }; - /** - * @template T, R - * @param {?} request - * @param {?=} config - * @param {?=} api - * @return {?} - */ - RestService.prototype.request = /** - * @template T, R - * @param {?} request - * @param {?=} config - * @param {?=} api - * @return {?} - */ - function (request, config, api) { - var _this = this; - if (config === void 0) { config = {}; } - var _a = config.observe, observe = _a === void 0 ? "body" /* Body */ : _a, skipHandleError = config.skipHandleError; - /** @type {?} */ - var url = api || this.store.selectSnapshot(ConfigState.getApiUrl()) + request.url; - var method = request.method, options = __rest(request, ["method"]); - return this.http.request(method, url, (/** @type {?} */ (__assign({ observe: observe }, options)))).pipe(observe === "body" /* Body */ ? operators.take(1) : null, operators.catchError((/** - * @param {?} err - * @return {?} - */ - function (err) { - if (skipHandleError) { - return rxjs.throwError(err); - } - return _this.handleError(err); - }))); - }; - RestService.decorators = [ - { type: core.Injectable, args: [{ - providedIn: 'root', - },] } - ]; - /** @nocollapse */ - RestService.ctorParameters = function () { return [ - { type: http.HttpClient }, - { type: store.Store } - ]; }; - /** @nocollapse */ RestService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function RestService_Factory() { return new RestService(core.ɵɵinject(http.HttpClient), core.ɵɵinject(store.Store)); }, token: RestService, providedIn: "root" }); - return RestService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - RestService.prototype.http; - /** - * @type {?} - * @private - */ - RestService.prototype.store; - } - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -637,48 +559,6 @@ ProfileState.prototype.profileService; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var ApplicationConfigurationService = /** @class */ (function () { - function ApplicationConfigurationService(rest) { - this.rest = rest; - } - /** - * @return {?} - */ - ApplicationConfigurationService.prototype.getConfiguration = /** - * @return {?} - */ - function () { - /** @type {?} */ - var request = { - method: 'GET', - url: '/api/abp/application-configuration', - }; - return this.rest.request(request); - }; - ApplicationConfigurationService.decorators = [ - { type: core.Injectable, args: [{ - providedIn: 'root', - },] } - ]; - /** @nocollapse */ - ApplicationConfigurationService.ctorParameters = function () { return [ - { type: RestService } - ]; }; - /** @nocollapse */ ApplicationConfigurationService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ApplicationConfigurationService_Factory() { return new ApplicationConfigurationService(core.ɵɵinject(RestService)); }, token: ApplicationConfigurationService, providedIn: "root" }); - return ApplicationConfigurationService; - }()); - if (false) { - /** - * @type {?} - * @private - */ - ApplicationConfigurationService.prototype.rest; - } - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -1019,6 +899,133 @@ SessionState.prototype.localizationService; } + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var RestService = /** @class */ (function () { + function RestService(http, store) { + this.http = http; + this.store = store; + } + /** + * @param {?} err + * @return {?} + */ + RestService.prototype.handleError = /** + * @param {?} err + * @return {?} + */ + function (err) { + this.store.dispatch(new RestOccurError(err)); + console.error(err); + return rxjs.throwError(err); + }; + /** + * @template T, R + * @param {?} request + * @param {?=} config + * @param {?=} api + * @return {?} + */ + RestService.prototype.request = /** + * @template T, R + * @param {?} request + * @param {?=} config + * @param {?=} api + * @return {?} + */ + function (request, config, api) { + var _this = this; + if (config === void 0) { config = {}; } + var _a = config.observe, observe = _a === void 0 ? "body" /* Body */ : _a, skipHandleError = config.skipHandleError; + /** @type {?} */ + var url = api || this.store.selectSnapshot(ConfigState.getApiUrl()) + request.url; + var method = request.method, options = __rest(request, ["method"]); + return this.http.request(method, url, (/** @type {?} */ (__assign({ observe: observe }, options)))).pipe(observe === "body" /* Body */ ? operators.take(1) : null, operators.catchError((/** + * @param {?} err + * @return {?} + */ + function (err) { + if (skipHandleError) { + return rxjs.throwError(err); + } + return _this.handleError(err); + }))); + }; + RestService.decorators = [ + { type: core.Injectable, args: [{ + providedIn: 'root', + },] } + ]; + /** @nocollapse */ + RestService.ctorParameters = function () { return [ + { type: http.HttpClient }, + { type: store.Store } + ]; }; + /** @nocollapse */ RestService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function RestService_Factory() { return new RestService(core.ɵɵinject(http.HttpClient), core.ɵɵinject(store.Store)); }, token: RestService, providedIn: "root" }); + return RestService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + RestService.prototype.http; + /** + * @type {?} + * @private + */ + RestService.prototype.store; + } + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var ApplicationConfigurationService = /** @class */ (function () { + function ApplicationConfigurationService(rest) { + this.rest = rest; + } + /** + * @return {?} + */ + ApplicationConfigurationService.prototype.getConfiguration = /** + * @return {?} + */ + function () { + /** @type {?} */ + var request = { + method: 'GET', + url: '/api/abp/application-configuration', + }; + return this.rest.request(request); + }; + ApplicationConfigurationService.decorators = [ + { type: core.Injectable, args: [{ + providedIn: 'root', + },] } + ]; + /** @nocollapse */ + ApplicationConfigurationService.ctorParameters = function () { return [ + { type: RestService } + ]; }; + /** @nocollapse */ ApplicationConfigurationService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ApplicationConfigurationService_Factory() { return new ApplicationConfigurationService(core.ɵɵinject(RestService)); }, token: ApplicationConfigurationService, providedIn: "root" }); + return ApplicationConfigurationService; + }()); + if (false) { + /** + * @type {?} + * @private + */ + ApplicationConfigurationService.prototype.rest; + } + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -1216,7 +1223,19 @@ * @return {?} */ function (state) { - return findRoute(state.routes, path, name); + var flattedRoutes = state.flattedRoutes; + return ((/** @type {?} */ (flattedRoutes))).find((/** + * @param {?} route + * @return {?} + */ + function (route) { + if (path && route.path === path) { + return route; + } + else if (name && route.name === name) { + return route; + } + })); })); return selector; }; @@ -1262,55 +1281,26 @@ return selector; }; /** - * @param {?=} condition + * @param {?} key * @return {?} */ ConfigState.getGrantedPolicy = /** - * @param {?=} condition + * @param {?} key * @return {?} */ - function (condition) { - if (condition === void 0) { condition = ''; } - /** @type {?} */ - var keys = condition - .replace(/\(|\)|\!|\s/g, '') - .split(/\|\||&&/) - .filter((/** - * @param {?} key - * @return {?} - */ - function (key) { return key; })); + function (key) { /** @type {?} */ var selector = store.createSelector([ConfigState_1], (/** * @param {?} state * @return {?} */ function (state) { - if (!keys.length) + if (!key) return true; - /** @type {?} */ - var getPolicy = (/** - * @param {?} key - * @return {?} - */ - function (key) { return snq((/** + return snq((/** * @return {?} */ - function () { return state.auth.grantedPolicies[key]; }), false); }); - if (keys.length > 1) { - keys.forEach((/** - * @param {?} key - * @return {?} - */ - function (key) { - /** @type {?} */ - var value = getPolicy(key); - condition = condition.replace(key, value); - })); - // tslint:disable-next-line: no-eval - return eval("!!" + condition); - } - return getPolicy(condition); + function () { return state.auth.grantedPolicies[key]; }), false); })); return selector; }; @@ -1352,7 +1342,7 @@ function () { return defaultResourceName; })); } /** @type {?} */ - var copy = keys.reduce((/** + var copy = ((/** @type {?} */ (keys))).reduce((/** * @param {?} acc * @param {?} val * @return {?} @@ -1488,103 +1478,38 @@ * @param {?} name * @param {?} newValue * @param {?=} parentUrl - * @return {?} - */ - function patchRouteDeep(routes, name, newValue, parentUrl) { - if (parentUrl === void 0) { parentUrl = null; } - routes = routes.map((/** - * @param {?} route - * @return {?} - */ - function (route) { - if (route.name === name) { - if (newValue.path) { - newValue.url = parentUrl + "/" + newValue.path; - } - if (newValue.children && newValue.children.length) { - newValue.children = newValue.children.map((/** - * @param {?} child - * @return {?} - */ - function (child) { return (__assign({}, child, { url: parentUrl + "/" + route.path + "/" + child.path })); })); - } - return __assign({}, route, newValue); - } - else if (route.children && route.children.length) { - route.children = patchRouteDeep(route.children, name, newValue, (parentUrl || '/') + route.path); - } - return route; - })); - if (parentUrl) { - // recursive block - return routes; - } - return organizeRoutes(routes); - } - /** - * @param {?} routes - * @param {?=} path - * @param {?=} name - * @return {?} - */ - function findRoute(routes, path, name) { - /** @type {?} */ - var foundRoute; - routes.forEach((/** - * @param {?} route - * @return {?} - */ - function (route) { - if (foundRoute) - return; - if (path && route.path === path) { - foundRoute = route; - } - else if (name && route.name === name) { - foundRoute = route; - return; - } - else if (route.children && route.children.length) { - foundRoute = findRoute(route.children, path, name); - return; - } - })); - return foundRoute; - } - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** - * @return {?} - */ - function noop() { - /** @type {?} */ - var fn = (/** - * @return {?} - */ - function () { }); - return fn; - } - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** - * @param {?=} a - * @return {?} - */ - function uuid(a) { - return a - ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16) - : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid); + * @return {?} + */ + function patchRouteDeep(routes, name, newValue, parentUrl) { + if (parentUrl === void 0) { parentUrl = null; } + routes = routes.map((/** + * @param {?} route + * @return {?} + */ + function (route) { + if (route.name === name) { + if (newValue.path) { + newValue.url = parentUrl + "/" + newValue.path; + } + if (newValue.children && newValue.children.length) { + newValue.children = newValue.children.map((/** + * @param {?} child + * @return {?} + */ + function (child) { return (__assign({}, child, { url: parentUrl + "/" + route.path + "/" + child.path })); })); + } + return __assign({}, route, newValue); + } + else if (route.children && route.children.length) { + route.children = patchRouteDeep(route.children, name, newValue, (parentUrl || '/') + route.path); + } + return route; + })); + if (parentUrl) { + // recursive block + return routes; + } + return organizeRoutes(routes); } /** @@ -1632,20 +1557,33 @@ }); }); - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ var DynamicLayoutComponent = /** @class */ (function () { - function DynamicLayoutComponent(router$1, store) { + function DynamicLayoutComponent(router$1, route, store) { var _this = this; this.router = router$1; + this.route = route; this.store = store; + var _a = this.store.selectSnapshot(ConfigState.getAll), layouts = _a.requirements.layouts, routes = _a.routes; + if ((this.route.snapshot.data || {}).layout) { + this.layout = layouts + .filter((/** + * @param {?} l + * @return {?} + */ + function (l) { return !!l; })) + .find((/** + * @param {?} l + * @return {?} + */ + function (l) { return snq((/** + * @return {?} + */ + function () { return l.type.toLowerCase().indexOf(_this.route.snapshot.data.layout); }), -1) > -1; })); + } this.router.events.pipe(takeUntilDestroy(this)).subscribe((/** * @param {?} event * @return {?} @@ -1653,14 +1591,15 @@ function (event) { if (event instanceof router.NavigationEnd) { var segments = _this.router.parseUrl(event.url).root.children.primary.segments; - var _a = _this.store.selectSnapshot(ConfigState.getAll), layouts = _a.requirements.layouts, routes = _a.routes; /** @type {?} */ - var layout_1 = findLayout(segments, routes); - _this.layout = layouts.filter((/** + var layout_1 = (_this.route.snapshot.data || {}).layout || findLayout(segments, routes); + _this.layout = layouts + .filter((/** * @param {?} l * @return {?} */ - function (l) { return !!l; })).find((/** + function (l) { return !!l; })) + .find((/** * @param {?} l * @return {?} */ @@ -1687,6 +1626,7 @@ /** @nocollapse */ DynamicLayoutComponent.ctorParameters = function () { return [ { type: router.Router }, + { type: router.ActivatedRoute }, { type: store.Store } ]; }; __decorate([ @@ -1705,6 +1645,11 @@ * @private */ DynamicLayoutComponent.prototype.router; + /** + * @type {?} + * @private + */ + DynamicLayoutComponent.prototype.route; /** * @type {?} * @private @@ -1922,6 +1867,335 @@ EllipsisDirective.prototype.elRef; } + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var AbpForContext = /** @class */ (function () { + function AbpForContext($implicit, index, count, list) { + this.$implicit = $implicit; + this.index = index; + this.count = count; + this.list = list; + } + return AbpForContext; + }()); + if (false) { + /** @type {?} */ + AbpForContext.prototype.$implicit; + /** @type {?} */ + AbpForContext.prototype.index; + /** @type {?} */ + AbpForContext.prototype.count; + /** @type {?} */ + AbpForContext.prototype.list; + } + var RecordView = /** @class */ (function () { + function RecordView(record, view) { + this.record = record; + this.view = view; + } + return RecordView; + }()); + if (false) { + /** @type {?} */ + RecordView.prototype.record; + /** @type {?} */ + RecordView.prototype.view; + } + var ForDirective = /** @class */ (function () { + function ForDirective(tempRef, vcRef, differs) { + this.tempRef = tempRef; + this.vcRef = vcRef; + this.differs = differs; + } + Object.defineProperty(ForDirective.prototype, "compareFn", { + get: /** + * @return {?} + */ + function () { + return this.compareBy || compare; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ForDirective.prototype, "trackByFn", { + get: /** + * @return {?} + */ + function () { + return this.trackBy || ((/** + * @param {?} index + * @param {?} item + * @return {?} + */ + function (index, item) { return ((/** @type {?} */ (item))).id || index; })); + }, + enumerable: true, + configurable: true + }); + /** + * @private + * @param {?} changes + * @return {?} + */ + ForDirective.prototype.iterateOverAppliedOperations = /** + * @private + * @param {?} changes + * @return {?} + */ + function (changes) { + var _this = this; + /** @type {?} */ + var rw = []; + changes.forEachOperation((/** + * @param {?} record + * @param {?} previousIndex + * @param {?} currentIndex + * @return {?} + */ + function (record, previousIndex, currentIndex) { + if (record.previousIndex == null) { + /** @type {?} */ + var view = _this.vcRef.createEmbeddedView(_this.tempRef, new AbpForContext(null, -1, -1, _this.items), currentIndex); + rw.push(new RecordView(record, view)); + } + else if (currentIndex == null) { + _this.vcRef.remove(previousIndex); + } + else { + /** @type {?} */ + var view = _this.vcRef.get(previousIndex); + _this.vcRef.move(view, currentIndex); + rw.push(new RecordView(record, (/** @type {?} */ (view)))); + } + })); + for (var i = 0, l = rw.length; i < l; i++) { + rw[i].view.context.$implicit = rw[i].record.item; + } + }; + /** + * @private + * @param {?} changes + * @return {?} + */ + ForDirective.prototype.iterateOverAttachedViews = /** + * @private + * @param {?} changes + * @return {?} + */ + function (changes) { + var _this = this; + for (var i = 0, l = this.vcRef.length; i < l; i++) { + /** @type {?} */ + var viewRef = (/** @type {?} */ (this.vcRef.get(i))); + viewRef.context.index = i; + viewRef.context.count = l; + viewRef.context.list = this.items; + } + changes.forEachIdentityChange((/** + * @param {?} record + * @return {?} + */ + function (record) { + /** @type {?} */ + var viewRef = (/** @type {?} */ (_this.vcRef.get(record.currentIndex))); + viewRef.context.$implicit = record.item; + })); + }; + /** + * @private + * @param {?} items + * @return {?} + */ + ForDirective.prototype.projectItems = /** + * @private + * @param {?} items + * @return {?} + */ + function (items) { + if (!items.length && this.emptyRef) { + this.vcRef.createEmbeddedView(this.emptyRef).rootNodes; + this.isShowEmptyRef = true; + return; + } + if (this.emptyRef && this.isShowEmptyRef) { + this.vcRef.clear(); + this.isShowEmptyRef = false; + } + if (!this.differ && items) { + this.differ = this.differs.find(items).create(this.trackByFn); + } + if (this.differ) { + /** @type {?} */ + var changes = this.differ.diff(items); + if (changes) { + this.iterateOverAppliedOperations(changes); + this.iterateOverAttachedViews(changes); + } + } + }; + /** + * @private + * @param {?} items + * @return {?} + */ + ForDirective.prototype.sortItems = /** + * @private + * @param {?} items + * @return {?} + */ + function (items) { + var _this = this; + if (this.orderBy) { + items.sort((/** + * @param {?} a + * @param {?} b + * @return {?} + */ + function (a, b) { return (a[_this.orderBy] > b[_this.orderBy] ? 1 : a[_this.orderBy] < b[_this.orderBy] ? -1 : 0); })); + } + else { + items.sort(); + } + }; + /** + * @return {?} + */ + ForDirective.prototype.ngOnChanges = /** + * @return {?} + */ + function () { + var _this = this; + /** @type {?} */ + var items = (/** @type {?} */ (clone(this.items))); + if (!Array.isArray(items)) + return; + /** @type {?} */ + var compareFn = this.compareFn; + if (typeof this.filterBy !== 'undefined') { + items = items.filter((/** + * @param {?} item + * @return {?} + */ + function (item) { return compareFn(item[_this.filterBy], _this.filterVal); })); + } + switch (this.orderDir) { + case 'ASC': + this.sortItems(items); + this.projectItems(items); + break; + case 'DESC': + this.sortItems(items); + items.reverse(); + this.projectItems(items); + break; + default: + this.projectItems(items); + } + }; + ForDirective.decorators = [ + { type: core.Directive, args: [{ + selector: '[abpFor]', + },] } + ]; + /** @nocollapse */ + ForDirective.ctorParameters = function () { return [ + { type: core.TemplateRef }, + { type: core.ViewContainerRef }, + { type: core.IterableDiffers } + ]; }; + ForDirective.propDecorators = { + items: [{ type: core.Input, args: ['abpForOf',] }], + orderBy: [{ type: core.Input, args: ['abpForOrderBy',] }], + orderDir: [{ type: core.Input, args: ['abpForOrderDir',] }], + filterBy: [{ type: core.Input, args: ['abpForFilterBy',] }], + filterVal: [{ type: core.Input, args: ['abpForFilterVal',] }], + trackBy: [{ type: core.Input, args: ['abpForTrackBy',] }], + compareBy: [{ type: core.Input, args: ['abpForCompareBy',] }], + emptyRef: [{ type: core.Input, args: ['abpForEmptyRef',] }] + }; + return ForDirective; + }()); + if (false) { + /** @type {?} */ + ForDirective.prototype.items; + /** @type {?} */ + ForDirective.prototype.orderBy; + /** @type {?} */ + ForDirective.prototype.orderDir; + /** @type {?} */ + ForDirective.prototype.filterBy; + /** @type {?} */ + ForDirective.prototype.filterVal; + /** @type {?} */ + ForDirective.prototype.trackBy; + /** @type {?} */ + ForDirective.prototype.compareBy; + /** @type {?} */ + ForDirective.prototype.emptyRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.differ; + /** + * @type {?} + * @private + */ + ForDirective.prototype.isShowEmptyRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.tempRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.vcRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.differs; + } + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** + * @return {?} + */ + function noop() { + /** @type {?} */ + var fn = (/** + * @return {?} + */ + function () { }); + return fn; + } + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** + * @param {?=} a + * @return {?} + */ + function uuid(a) { + return a + ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16) + : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid); + } + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -2256,6 +2530,7 @@ account: 'account', application: 'application', empty: 'empty', + setting: 'setting', }; /** @@ -2651,11 +2926,6 @@ */ var Config; (function (Config) { - /** - * @record - */ - function State() { } - Config.State = State; /** * @record */ @@ -2670,6 +2940,8 @@ Environment.prototype.oAuthConfig; /** @type {?} */ Environment.prototype.apis; + /** @type {?} */ + Environment.prototype.localization; } /** * @record @@ -2843,7 +3115,10 @@ if (isInitAction && !this.initialized) { var _a = transformRoutes(this.router.config), routes = _a.routes, wrappers = _a.wrappers; routes = organizeRoutes(routes, wrappers); - state = store.setValue(state, 'ConfigState', __assign({}, (state.ConfigState && __assign({}, state.ConfigState)), this.options, { routes: routes })); + /** @type {?} */ + var flattedRoutes = flatRoutes(clone(routes)); + state = store.setValue(state, 'ConfigState', __assign({}, (state.ConfigState && __assign({}, state.ConfigState)), this.options, { routes: routes, + flattedRoutes: flattedRoutes })); this.initialized = true; } return next(state, event); @@ -2971,6 +3246,35 @@ children: setUrls(route.children, "/" + route.path), }))); })); } + /** + * @param {?} routes + * @return {?} + */ + function flatRoutes(routes) { + /** @type {?} */ + var flat = (/** + * @param {?} r + * @return {?} + */ + function (r) { + return r.reduce((/** + * @param {?} acc + * @param {?} val + * @return {?} + */ + function (acc, val) { + /** @type {?} */ + var value = [val]; + if (val.children) { + var children = val.children; + delete val.children; + value = __spread([val], flat(children)); + } + return __spread(acc, value); + }), []); + }); + return flat(routes); + } /** * @fileoverview added by tsickle @@ -3475,6 +3779,7 @@ DynamicLayoutComponent, AutofocusDirective, EllipsisDirective, + ForDirective, FormSubmitDirective, LocalizationPipe, PermissionDirective, @@ -3492,6 +3797,7 @@ DynamicLayoutComponent, AutofocusDirective, EllipsisDirective, + ForDirective, FormSubmitDirective, LocalizationPipe, PermissionDirective, @@ -3520,6 +3826,7 @@ exports.DynamicLayoutComponent = DynamicLayoutComponent; exports.ENVIRONMENT = ENVIRONMENT; exports.EllipsisDirective = EllipsisDirective; + exports.ForDirective = ForDirective; exports.FormSubmitDirective = FormSubmitDirective; exports.GetAppConfiguration = GetAppConfiguration; exports.GetProfile = GetProfile; @@ -3576,9 +3883,9 @@ exports.ɵp = GetAppConfiguration; exports.ɵq = RouterOutletComponent; exports.ɵr = DynamicLayoutComponent; - exports.ɵs = ConfigState; - exports.ɵt = AutofocusDirective; - exports.ɵu = EllipsisDirective; + exports.ɵs = AutofocusDirective; + exports.ɵt = EllipsisDirective; + exports.ɵu = ForDirective; exports.ɵv = FormSubmitDirective; exports.ɵw = LocalizationPipe; exports.ɵx = PermissionDirective; diff --git a/npm/ng-packs/dist/core/bundles/abp-ng.core.umd.js.map b/npm/ng-packs/dist/core/bundles/abp-ng.core.umd.js.map index 07e224ca32..594f844d05 100644 --- a/npm/ng-packs/dist/core/bundles/abp-ng.core.umd.js.map +++ b/npm/ng-packs/dist/core/bundles/abp-ng.core.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.core.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.core/lib/actions/config.actions.ts","ng://@abp/ng.core/lib/actions/loader.actions.ts","ng://@abp/ng.core/lib/actions/profile.actions.ts","ng://@abp/ng.core/lib/actions/rest.actions.ts","ng://@abp/ng.core/lib/actions/session.actions.ts","ng://@abp/ng.core/lib/services/rest.service.ts","ng://@abp/ng.core/lib/services/profile.service.ts","ng://@abp/ng.core/lib/states/profile.state.ts","ng://@abp/ng.core/lib/services/application-configuration.service.ts","ng://@abp/ng.core/lib/constants/different-locales.ts","ng://@abp/ng.core/lib/utils/initial-utils.ts","ng://@abp/ng.core/lib/services/localization.service.ts","ng://@abp/ng.core/lib/states/session.state.ts","ng://@abp/ng.core/lib/utils/route-utils.ts","ng://@abp/ng.core/lib/states/config.state.ts","ng://@abp/ng.core/lib/utils/common-utils.ts","ng://@abp/ng.core/lib/utils/generator-utils.ts","ng://@abp/ng.core/lib/utils/rxjs-utils.ts","ng://@abp/ng.core/lib/components/dynamic-layout.component.ts","ng://@abp/ng.core/lib/components/router-outlet.component.ts","ng://@abp/ng.core/lib/directives/autofocus.directive.ts","ng://@abp/ng.core/lib/directives/ellipsis.directive.ts","ng://@abp/ng.core/lib/directives/form-submit.directive.ts","ng://@abp/ng.core/lib/directives/permission.directive.ts","ng://@abp/ng.core/lib/directives/visibility.directive.ts","ng://@abp/ng.core/lib/enums/common.ts","ng://@abp/ng.core/lib/guards/auth.guard.ts","ng://@abp/ng.core/lib/guards/permission.guard.ts","ng://@abp/ng.core/lib/interceptors/api.interceptor.ts","ng://@abp/ng.core/lib/models/application-configuration.ts","ng://@abp/ng.core/lib/models/common.ts","ng://@abp/ng.core/lib/models/config.ts","ng://@abp/ng.core/lib/models/rest.ts","ng://@abp/ng.core/lib/models/session.ts","ng://@abp/ng.core/lib/models/profile.ts","ng://@abp/ng.core/lib/plugins/config/config.plugin.ts","ng://@abp/ng.core/lib/services/config.service.ts","ng://@abp/ng.core/lib/services/lazy-load.service.ts","ng://@abp/ng.core/lib/tokens/common.token.ts","ng://@abp/ng.core/lib/directives/debounce.directive.ts","ng://@abp/ng.core/lib/directives/stop-propagation.directive.ts","ng://@abp/ng.core/lib/pipes/localization.pipe.ts","ng://@abp/ng.core/lib/providers/locale.provider.ts","ng://@abp/ng.core/lib/core.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ABP } from '../models';\n\nexport class PatchRouteByName {\n static readonly type = '[Config] Patch Route By Name';\n constructor(public name: string, public newValue: Partial) {}\n}\n\nexport class GetAppConfiguration {\n static readonly type = '[Config] Get App Configuration';\n}\n","import { HttpRequest } from '@angular/common/http';\n\nexport class StartLoader {\n static readonly type = '[Loader] Start';\n constructor(public payload: HttpRequest) {}\n}\n\nexport class StopLoader {\n static readonly type = '[Loader] Stop';\n constructor(public payload: HttpRequest) {}\n}\n","import { Profile } from '../models';\n\nexport class GetProfile {\n static readonly type = '[Profile] Get';\n}\n\nexport class UpdateProfile {\n static readonly type = '[Profile] Update';\n constructor(public payload: Profile.Response) {}\n}\n\nexport class ChangePassword {\n static readonly type = '[Profile] Change Password';\n constructor(public payload: Profile.ChangePasswordRequest) {}\n}\n","import { HttpErrorResponse } from '@angular/common/http';\n\nexport class RestOccurError {\n static readonly type = '[Rest] Error';\n constructor(public payload: HttpErrorResponse | any) {}\n}\n","import { ABP } from '../models';\n\nexport class SetLanguage {\n static readonly type = '[Session] Set Language';\n constructor(public payload: string) {}\n}\nexport class SetTenant {\n static readonly type = '[Session] Set Tenant';\n constructor(public payload: ABP.BasicItem) {}\n}\n","import { HttpClient, HttpRequest } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { NEVER, Observable, throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport { Rest } from '../models/rest';\nimport { ConfigState } from '../states';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RestService {\n constructor(private http: HttpClient, private store: Store) {}\n\n handleError(err: any): Observable {\n this.store.dispatch(new RestOccurError(err));\n console.error(err);\n return throwError(err);\n }\n\n request(request: HttpRequest | Rest.Request, config: Rest.Config = {}, api?: string): Observable {\n const { observe = Rest.Observe.Body, skipHandleError } = config;\n const url = api || this.store.selectSnapshot(ConfigState.getApiUrl()) + request.url;\n const { method, ...options } = request;\n return this.http.request(method, url, { observe, ...options } as any).pipe(\n observe === Rest.Observe.Body ? take(1) : null,\n catchError(err => {\n if (skipHandleError) {\n return throwError(err);\n }\n\n return this.handleError(err);\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService } from './rest.service';\nimport { Profile, Rest } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ProfileService {\n constructor(private rest: RestService) {}\n\n get(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/my-profile',\n };\n\n return this.rest.request(request);\n }\n\n update(body: Profile.Response): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/identity/my-profile',\n body,\n };\n\n return this.rest.request(request);\n }\n\n changePassword(body: Profile.ChangePasswordRequest, skipHandleError: boolean = false): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/my-profile/change-password',\n body,\n };\n\n return this.rest.request(request, { skipHandleError });\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetProfile, ChangePassword, UpdateProfile } from '../actions/profile.actions';\nimport { Profile } from '../models/profile';\nimport { ProfileService } from '../services/profile.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'ProfileState',\n defaults: {} as Profile.State,\n})\nexport class ProfileState {\n @Selector()\n static getProfile({ profile }: Profile.State): Profile.Response {\n return profile;\n }\n\n constructor(private profileService: ProfileService) {}\n\n @Action(GetProfile)\n profileGet({ patchState }: StateContext) {\n return this.profileService.get().pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(UpdateProfile)\n profileUpdate({ patchState }: StateContext, { payload }: UpdateProfile) {\n return this.profileService.update(payload).pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(ChangePassword)\n changePassword(_, { payload }: ChangePassword) {\n return this.profileService.changePassword(payload, true);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ApplicationConfiguration, Rest } from '../models';\nimport { RestService } from './rest.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ApplicationConfigurationService {\n constructor(private rest: RestService) {}\n\n getConfiguration(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/application-configuration',\n };\n\n return this.rest.request(request);\n }\n}\n","// Different locales from .NET\n// Key is .NET locale, value is Angular locale\n\nexport default {\n 'ar-sa': 'ar-SA',\n 'ca-ES-valencia': 'ca-ES-VALENCIA',\n 'de-de': 'de',\n 'es-ES': 'es',\n 'en-US': 'en',\n 'fil-Latn': 'en',\n 'ku-Arab': 'en',\n 'ky-Cyrl': 'en',\n 'mi-Latn': 'en',\n 'prs-Arab': 'en',\n 'qut-Latn': 'en',\n nso: 'en',\n quz: 'en',\n 'fr-FR': 'fr',\n 'gd-Latn': 'gd',\n 'ha-Latn': 'ha',\n 'ig-Latn': 'ig',\n 'it-it': 'it',\n 'mn-Cyrl': 'mn',\n 'pt-BR': 'pt',\n 'sd-Arab': 'pa-Arab',\n 'sr-Cyrl-RS': 'sr-Cyrl',\n 'sr-Latn-RS': 'sr-Latn',\n 'tg-Cyrl': 'tg',\n 'tk-Latn': 'tk',\n 'tt-Cyrl': 'tt',\n 'ug-Arab': 'ug',\n 'yo-Latn': 'yo',\n};\n","import { registerLocaleData } from '@angular/common';\nimport { Injector } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport differentLocales from '../constants/different-locales';\nimport { SessionState } from '../states/session.state';\n\nexport function getInitialData(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n return store.dispatch(new GetAppConfiguration()).toPromise();\n };\n\n return fn;\n}\n\nexport function localeInitializer(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n const lang = store.selectSnapshot(SessionState.getLanguage) || 'en';\n\n return new Promise((resolve, reject) => {\n registerLocale(lang).then(() => resolve(), reject);\n });\n };\n\n return fn;\n}\n\nexport function registerLocale(locale: string) {\n return import(\n /* webpackInclude: /(af|am|ar-SA|as|az-Latn|be|bg|bn-BD|bn-IN|bs|ca|ca-ES-VALENCIA|cs|cy|da|de|de|el|en-GB|en|es|en|es-US|es-MX|et|eu|fa|fi|en|fr|fr|fr-CA|ga|gd|gl|gu|ha|he|hi|hr|hu|hy|id|ig|is|it|it|ja|ka|kk|km|kn|ko|kok|en|en|lb|lt|lv|en|mk|ml|mn|mr|ms|mt|nb|ne|nl|nl-BE|nn|en|or|pa|pa-Arab|pl|en|pt|pt-PT|en|en|ro|ru|rw|pa-Arab|si|sk|sl|sq|sr-Cyrl-BA|sr-Cyrl|sr-Latn|sv|sw|ta|te|tg|th|ti|tk|tn|tr|tt|ug|uk|ur|uz-Latn|vi|wo|xh|yo|zh-Hans|zh-Hant|zu)\\.js$/ */\n `@angular/common/locales/${differentLocales[locale] || locale}.js`\n ).then(module => {\n registerLocaleData(module.default);\n });\n}\n","import { Injectable, Optional, SkipSelf } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router } from '@angular/router';\nimport { Actions, Store } from '@ngxs/store';\nimport { noop, Observable } from 'rxjs';\nimport { ConfigState } from '../states/config.state';\nimport { SessionState } from '../states/session.state';\nimport { registerLocale } from '../utils/initial-utils';\n\ntype ShouldReuseRoute = (future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot) => boolean;\n\n@Injectable({ providedIn: 'root' })\nexport class LocalizationService {\n get currentLang(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n constructor(\n private store: Store,\n private router: Router,\n private actions: Actions,\n @Optional()\n @SkipSelf()\n otherInstance: LocalizationService,\n ) {\n if (otherInstance) throw new Error('LocaleService should have only one instance.');\n }\n\n private setRouteReuse(reuse: ShouldReuseRoute) {\n this.router.routeReuseStrategy.shouldReuseRoute = reuse;\n }\n\n registerLocale(locale: string) {\n const { shouldReuseRoute } = this.router.routeReuseStrategy;\n\n this.setRouteReuse(() => false);\n this.router.navigated = false;\n\n return registerLocale(locale).then(async () => {\n await this.router.navigateByUrl(this.router.url).catch(noop);\n this.setRouteReuse(shouldReuseRoute);\n });\n }\n\n get(keys: string, ...interpolateParams: string[]): Observable {\n return this.store.select(ConfigState.getCopy(keys, ...interpolateParams));\n }\n\n instant(keys: string, ...interpolateParams: string[]): string {\n return this.store.selectSnapshot(ConfigState.getCopy(keys, ...interpolateParams));\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { SetLanguage, SetTenant } from '../actions/session.actions';\nimport { ABP, Session } from '../models';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport { LocalizationService } from '../services/localization.service';\nimport { from, combineLatest } from 'rxjs';\n\n@State({\n name: 'SessionState',\n defaults: {} as Session.State,\n})\nexport class SessionState {\n @Selector()\n static getLanguage({ language }: Session.State): string {\n return language;\n }\n\n @Selector()\n static getTenant({ tenant }: Session.State): ABP.BasicItem {\n return tenant;\n }\n\n constructor(private localizationService: LocalizationService) {}\n\n @Action(SetLanguage)\n setLanguage({ patchState, dispatch }: StateContext, { payload }: SetLanguage) {\n patchState({\n language: payload,\n });\n\n return combineLatest([dispatch(new GetAppConfiguration()), from(this.localizationService.registerLocale(payload))]);\n }\n\n @Action(SetTenant)\n setTenantId({ patchState }: StateContext, { payload }: SetTenant) {\n patchState({\n tenant: payload,\n });\n }\n}\n","import { ABP } from '../models';\n\nexport function organizeRoutes(\n routes: ABP.FullRoute[],\n wrappers: ABP.FullRoute[] = [],\n parentNameArr = [] as ABP.FullRoute[],\n parentName: string = null,\n): ABP.FullRoute[] {\n const filter = route => {\n if (route.children && route.children.length) {\n route.children = organizeRoutes(route.children, wrappers, parentNameArr, route.name);\n }\n\n if (route.parentName && route.parentName !== parentName) {\n parentNameArr.push(route);\n return false;\n }\n\n return true;\n };\n\n if (parentName) {\n // recursive block\n return routes.filter(filter);\n }\n\n const filteredRoutes = routes.filter(filter);\n\n if (parentNameArr.length) {\n return sortRoutes(setChildRoute([...filteredRoutes, ...wrappers], parentNameArr));\n }\n\n return filteredRoutes;\n}\n\nexport function setChildRoute(routes: ABP.FullRoute[], parentNameArr: ABP.FullRoute[]): ABP.FullRoute[] {\n return routes.map(route => {\n if (route.children && route.children.length) {\n route.children = setChildRoute(route.children, parentNameArr);\n }\n\n const foundedChildren = parentNameArr.filter(parent => parent.parentName === route.name);\n if (foundedChildren && foundedChildren.length) {\n route.children = [...(route.children || []), ...foundedChildren];\n }\n\n return route;\n });\n}\n\nexport function sortRoutes(routes: ABP.FullRoute[] = []): ABP.FullRoute[] {\n if (!routes.length) return [];\n return routes\n .sort((a, b) => a.order - b.order)\n .map(route => {\n if (route.children && route.children.length) {\n route.children = sortRoutes(route.children);\n }\n\n return route;\n });\n}\n","import { State, Selector, createSelector, Action, StateContext, Store } from '@ngxs/store';\nimport { Config, ABP } from '../models';\nimport { GetAppConfiguration, PatchRouteByName } from '../actions/config.actions';\nimport { ApplicationConfigurationService } from '../services/application-configuration.service';\nimport { tap, switchMap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { SetLanguage } from '../actions';\nimport { SessionState } from './session.state';\nimport { of } from 'rxjs';\nimport { setChildRoute, sortRoutes, organizeRoutes } from '../utils/route-utils';\n\n@State({\n name: 'ConfigState',\n defaults: {} as Config.State,\n})\nexport class ConfigState {\n @Selector()\n static getAll(state: Config.State) {\n return state;\n }\n\n @Selector()\n static getApplicationInfo(state: Config.State) {\n return state.environment.application || {};\n }\n\n static getOne(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return state[key];\n },\n );\n\n return selector;\n }\n\n static getDeep(keys: string[] | string) {\n if (typeof keys === 'string') {\n keys = keys.split('.');\n }\n\n if (!Array.isArray(keys)) {\n throw new Error('The argument must be a dot string or an string array.');\n }\n\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return (keys as string[]).reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state);\n },\n );\n\n return selector;\n }\n\n static getRoute(path?: string, name?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return findRoute(state.routes, path, name);\n },\n );\n\n return selector;\n }\n\n static getApiUrl(key?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): string {\n return state.environment.apis[key || 'default'].url;\n },\n );\n\n return selector;\n }\n\n static getSetting(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return snq(() => state.setting.values[key]);\n },\n );\n\n return selector;\n }\n\n static getGrantedPolicy(condition: string = '') {\n const keys = condition\n .replace(/\\(|\\)|\\!|\\s/g, '')\n .split(/\\|\\||&&/)\n .filter(key => key);\n\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): boolean {\n if (!keys.length) return true;\n\n const getPolicy = key => snq(() => state.auth.grantedPolicies[key], false);\n if (keys.length > 1) {\n keys.forEach(key => {\n const value = getPolicy(key);\n condition = condition.replace(key, value);\n });\n\n // tslint:disable-next-line: no-eval\n return eval(`!!${condition}`);\n }\n\n return getPolicy(condition);\n },\n );\n\n return selector;\n }\n\n static getCopy(key: string, ...interpolateParams: string[]) {\n if (!key) key = '';\n\n const keys = key.split('::') as string[];\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n if (!state.localization) return key;\n\n const { defaultResourceName } = state.environment.localization;\n if (keys[0] === '') {\n if (!defaultResourceName) {\n throw new Error(\n `Please check your environment. May you forget set defaultResourceName? \n Here is the example:\n { production: false,\n localization: {\n defaultResourceName: 'MyProjectName'\n }\n }`,\n );\n }\n\n keys[0] = snq(() => defaultResourceName);\n }\n\n let copy = keys.reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state.localization.values);\n\n interpolateParams = interpolateParams.filter(params => params != null);\n if (copy && interpolateParams && interpolateParams.length) {\n interpolateParams.forEach(param => {\n copy = copy.replace(/[\\'\\\"]?\\{[\\d]+\\}[\\'\\\"]?/, param);\n });\n }\n\n return copy || key;\n },\n );\n\n return selector;\n }\n\n constructor(private appConfigurationService: ApplicationConfigurationService, private store: Store) {}\n\n @Action(GetAppConfiguration)\n addData({ patchState, dispatch }: StateContext) {\n return this.appConfigurationService.getConfiguration().pipe(\n tap(configuration =>\n patchState({\n ...configuration,\n }),\n ),\n switchMap(configuration => {\n let defaultLang: string = configuration.setting.values['Abp.Localization.DefaultLanguage'];\n\n if (defaultLang.includes(';')) {\n defaultLang = defaultLang.split(';')[0];\n }\n\n return this.store.selectSnapshot(SessionState.getLanguage) ? of(null) : dispatch(new SetLanguage(defaultLang));\n }),\n );\n }\n\n @Action(PatchRouteByName)\n patchRoute({ patchState, getState }: StateContext, { name, newValue }: PatchRouteByName) {\n let routes: ABP.FullRoute[] = getState().routes;\n\n const index = routes.findIndex(route => route.name === name);\n\n routes = patchRouteDeep(routes, name, newValue);\n\n return patchState({\n routes,\n });\n }\n}\n\nfunction patchRouteDeep(\n routes: ABP.FullRoute[],\n name: string,\n newValue: Partial,\n parentUrl: string = null,\n): ABP.FullRoute[] {\n routes = routes.map(route => {\n if (route.name === name) {\n if (newValue.path) {\n newValue.url = `${parentUrl}/${newValue.path}`;\n }\n\n if (newValue.children && newValue.children.length) {\n newValue.children = newValue.children.map(child => ({\n ...child,\n url: `${parentUrl}/${route.path}/${child.path}`,\n }));\n }\n\n return { ...route, ...newValue };\n } else if (route.children && route.children.length) {\n route.children = patchRouteDeep(route.children, name, newValue, (parentUrl || '/') + route.path);\n }\n\n return route;\n });\n\n if (parentUrl) {\n // recursive block\n return routes;\n }\n\n return organizeRoutes(routes);\n}\n\nfunction findRoute(routes: ABP.FullRoute[], path?: string, name?: string) {\n let foundRoute;\n routes.forEach(route => {\n if (foundRoute) return;\n\n if (path && route.path === path) {\n foundRoute = route;\n } else if (name && route.name === name) {\n foundRoute = route;\n return;\n } else if (route.children && route.children.length) {\n foundRoute = findRoute(route.children, path, name);\n return;\n }\n });\n\n return foundRoute;\n}\n","export function noop() {\n const fn = function() {};\n return fn;\n}\n","export function uuid(a?: any): string {\n return a\n ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16)\n : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid);\n}\n","import { Observable, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nexport const takeUntilDestroy = (componentInstance, destroyMethodName = 'ngOnDestroy') => (\n source: Observable,\n) => {\n const originalDestroy = componentInstance[destroyMethodName];\n if (isFunction(originalDestroy) === false) {\n throw new Error(\n `${componentInstance.constructor.name} is using untilDestroyed but doesn't implement ${destroyMethodName}`,\n );\n }\n if (!componentInstance['__takeUntilDestroy']) {\n componentInstance['__takeUntilDestroy'] = new Subject();\n\n componentInstance[destroyMethodName] = function() {\n isFunction(originalDestroy) && originalDestroy.apply(this, arguments);\n componentInstance['__takeUntilDestroy'].next(true);\n componentInstance['__takeUntilDestroy'].complete();\n };\n }\n return source.pipe(takeUntil(componentInstance['__takeUntilDestroy']));\n};\n","import { Component, OnDestroy, Type } from '@angular/core';\nimport { NavigationEnd, Router, UrlSegment } from '@angular/router';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { eLayoutType } from '../enums';\nimport { ABP, Config } from '../models';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\nimport snq from 'snq';\n\n@Component({\n selector: 'abp-dynamic-layout',\n template: `\n \n\n \n \n `,\n})\nexport class DynamicLayoutComponent implements OnDestroy {\n @Select(ConfigState.getOne('requirements'))\n requirements$: Observable;\n\n layout: Type;\n\n constructor(private router: Router, private store: Store) {\n this.router.events.pipe(takeUntilDestroy(this)).subscribe(event => {\n if (event instanceof NavigationEnd) {\n const { segments } = this.router.parseUrl(event.url).root.children.primary;\n const {\n requirements: { layouts },\n routes,\n } = this.store.selectSnapshot(ConfigState.getAll);\n\n const layout = findLayout(segments, routes);\n\n this.layout = layouts.filter(l => !!l).find(l => snq(() => l.type.toLowerCase().indexOf(layout), -1) > -1);\n }\n });\n }\n\n ngOnDestroy() {}\n}\n\nfunction findLayout(segments: UrlSegment[], routes: ABP.FullRoute[]): eLayoutType {\n let layout = eLayoutType.empty;\n\n const route = routes\n .reduce((acc, val) => (val.wrapper ? [...acc, ...val.children] : [...acc, val]), [])\n .find(r => r.path === segments[0].path);\n\n if (route) {\n if (route.layout) {\n layout = route.layout;\n }\n\n if (route.children && route.children.length && segments.length > 1) {\n const child = route.children.find(c => c.path === segments[1].path);\n\n if (child && child.layout) {\n layout = child.layout;\n }\n }\n }\n\n return layout;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-router-outlet',\n template: `\n \n `,\n})\nexport class RouterOutletComponent {}\n","import { Directive, ElementRef, Input, AfterViewInit } from '@angular/core';\n\n@Directive({\n selector: '[autofocus]',\n})\nexport class AutofocusDirective implements AfterViewInit {\n @Input('autofocus')\n delay: number = 0;\n\n constructor(private elRef: ElementRef) {}\n\n ngAfterViewInit(): void {\n setTimeout(() => this.elRef.nativeElement.focus(), this.delay);\n }\n}\n","import { AfterContentInit, ChangeDetectorRef, Directive, ElementRef, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[abpEllipsis]',\n})\nexport class EllipsisDirective implements AfterContentInit {\n @Input('abpEllipsis')\n width: string;\n\n @HostBinding('title')\n @Input()\n title: string;\n\n @Input('abpEllipsisEnabled')\n enabled = true;\n\n @HostBinding('class.abp-ellipsis-inline')\n get inlineClass() {\n return this.enabled && this.width;\n }\n\n @HostBinding('class.abp-ellipsis')\n get class() {\n return this.enabled && !this.width;\n }\n\n @HostBinding('style.max-width')\n get maxWidth() {\n return this.enabled && this.width ? this.width || '170px' : undefined;\n }\n\n constructor(private cdRef: ChangeDetectorRef, private elRef: ElementRef) {}\n\n ngAfterContentInit() {\n setTimeout(() => {\n const title = this.title;\n this.title = title || (this.elRef.nativeElement as HTMLElement).innerText;\n\n if (this.title !== title) {\n this.cdRef.detectChanges();\n }\n }, 0);\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n Self,\n} from '@angular/core';\nimport { FormControl, FormGroup, FormGroupDirective } from '@angular/forms';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime, filter } from 'rxjs/operators';\nimport { takeUntilDestroy } from '../utils';\n\ntype Controls = { [key: string]: FormControl } | FormGroup[];\n\n@Directive({\n selector: 'form[ngSubmit][formGroup]',\n})\nexport class FormSubmitDirective implements OnInit, OnDestroy {\n @Input()\n notValidateOnSubmit: string | boolean;\n\n @Output()\n ngSubmit = new EventEmitter();\n\n executedNgSubmit: boolean = false;\n\n constructor(\n @Self() private formGroupDirective: FormGroupDirective,\n private host: ElementRef,\n private cdRef: ChangeDetectorRef,\n ) {}\n\n ngOnInit() {\n this.formGroupDirective.ngSubmit.pipe(takeUntilDestroy(this)).subscribe(() => {\n this.markAsDirty();\n this.executedNgSubmit = true;\n });\n\n fromEvent(this.host.nativeElement as HTMLElement, 'keyup')\n .pipe(\n debounceTime(200),\n filter((key: KeyboardEvent) => key && key.key === 'Enter'),\n takeUntilDestroy(this),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.host.nativeElement.dispatchEvent(new Event('submit', { bubbles: true, cancelable: true }));\n }\n\n this.executedNgSubmit = false;\n });\n\n fromEvent(this.host.nativeElement, 'submit')\n .pipe(\n takeUntilDestroy(this),\n filter(() => !this.notValidateOnSubmit && typeof this.notValidateOnSubmit !== 'string'),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.markAsDirty();\n }\n });\n }\n\n ngOnDestroy(): void {}\n\n markAsDirty() {\n const { form } = this.formGroupDirective;\n\n setDirty(form.controls as { [key: string]: FormControl });\n form.markAsDirty();\n\n this.cdRef.detectChanges();\n }\n}\n\nfunction setDirty(controls: Controls) {\n if (Array.isArray(controls)) {\n controls.forEach(group => {\n setDirty(group.controls as { [key: string]: FormControl });\n });\n return;\n }\n\n Object.keys(controls).forEach(key => {\n controls[key].markAsDirty();\n controls[key].updateValueAndValidity();\n });\n}\n","import { Directive, ElementRef, Input, OnDestroy, OnInit, Optional, Renderer2 } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\n\n@Directive({\n selector: '[abpPermission]',\n})\nexport class PermissionDirective implements OnInit, OnDestroy {\n @Input('abpPermission') condition: string;\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2, private store: Store) {}\n\n ngOnInit() {\n if (this.condition) {\n this.store\n .select(ConfigState.getGrantedPolicy(this.condition))\n .pipe(takeUntilDestroy(this))\n .subscribe(isGranted => {\n if (!isGranted) {\n this.renderer.removeChild(\n (this.elRef.nativeElement as HTMLElement).parentElement,\n this.elRef.nativeElement,\n );\n }\n });\n }\n }\n\n ngOnDestroy(): void {}\n}\n","import { Directive, Input, Optional, ElementRef, Renderer2, AfterViewInit } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport snq from 'snq';\n\n@Directive({\n selector: '[abpVisibility]',\n})\nexport class VisibilityDirective implements AfterViewInit {\n @Input('abpVisibility')\n focusedElement: HTMLElement;\n\n completed$ = new Subject();\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2) {}\n\n ngAfterViewInit() {\n const observer = new MutationObserver(mutations => {\n mutations.forEach(mutation => {\n if (!mutation.target) return;\n\n const htmlNodes = snq(\n () => Array.from(mutation.target.childNodes).filter(node => node instanceof HTMLElement),\n [],\n );\n\n if (!htmlNodes.length) {\n this.renderer.removeChild(this.elRef.nativeElement.parentElement, this.elRef.nativeElement);\n this.disconnect();\n } else {\n setTimeout(() => {\n this.disconnect();\n }, 0);\n }\n });\n });\n\n observer.observe(this.focusedElement, {\n childList: true,\n });\n\n this.completed$.subscribe(() => observer.disconnect());\n }\n\n disconnect() {\n this.completed$.next();\n this.completed$.complete();\n }\n}\n","export const enum eLayoutType {\n account = 'account',\n application = 'application',\n empty = 'empty',\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Observable } from 'rxjs';\nimport { Navigate } from '@ngxs/router-plugin';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthGuard implements CanActivate {\n constructor(private oauthService: OAuthService, private store: Store) {}\n canActivate(_: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | boolean | UrlTree {\n const hasValidAccessToken = this.oauthService.hasValidAccessToken();\n if (hasValidAccessToken) {\n return hasValidAccessToken;\n }\n\n this.store.dispatch(new Navigate(['/account/login'], null, { state: { redirectUrl: state.url } }));\n\n return false;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { ConfigState } from '../states';\nimport { tap } from 'rxjs/operators';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionGuard implements CanActivate {\n constructor(private store: Store) {}\n\n canActivate({ data }: ActivatedRouteSnapshot): Observable {\n const resource = data.requiredPolicy as string;\n return this.store.select(ConfigState.getGrantedPolicy(resource)).pipe(\n tap(access => {\n if (!access) {\n this.store.dispatch(new RestOccurError({ status: 403 }));\n }\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpInterceptor, HttpHandler, HttpRequest } from '@angular/common/http';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Store } from '@ngxs/store';\nimport { SessionState } from '../states';\nimport { StartLoader, StopLoader } from '../actions/loader.actions';\nimport { finalize } from 'rxjs/operators';\n\n@Injectable()\nexport class ApiInterceptor implements HttpInterceptor {\n constructor(private oAuthService: OAuthService, private store: Store) {}\n\n intercept(request: HttpRequest, next: HttpHandler) {\n this.store.dispatch(new StartLoader(request));\n\n const headers = {} as any;\n\n const token = this.oAuthService.getAccessToken();\n if (!request.headers.has('Authorization') && token) {\n headers['Authorization'] = `Bearer ${token}`;\n }\n\n const lang = this.store.selectSnapshot(SessionState.getLanguage);\n if (!request.headers.has('Accept-Language') && lang) {\n headers['Accept-Language'] = lang;\n }\n\n const tenant = this.store.selectSnapshot(SessionState.getTenant);\n if (!request.headers.has('__tenant') && tenant) {\n headers['__tenant'] = tenant.id;\n }\n\n return next\n .handle(\n request.clone({\n setHeaders: headers,\n }),\n )\n .pipe(finalize(() => this.store.dispatch(new StopLoader(request))));\n }\n}\n","export namespace ApplicationConfiguration {\n export interface Response {\n localization: Localization;\n auth: Auth;\n setting: Setting;\n currentUser: CurrentUser;\n features: Features;\n }\n\n export interface Localization {\n values: LocalizationValue;\n languages: Language[];\n }\n\n export interface LocalizationValue {\n [key: string]: { [key: string]: string };\n }\n\n export interface Language {\n cultureName: string;\n uiCultureName: string;\n displayName: string;\n flagIcon: string;\n }\n\n export interface Auth {\n policies: Policy;\n grantedPolicies: Policy;\n }\n\n export interface Policy {\n [key: string]: boolean;\n }\n\n export interface Setting {\n values: { [key: string]: 'Abp.Localization.DefaultLanguage' };\n }\n\n export interface CurrentUser {\n isAuthenticated: boolean;\n id: string;\n tenantId: string;\n userName: string;\n }\n\n export interface Features {\n values: Setting;\n }\n}\n","import { Config } from './config';\nimport { eLayoutType } from '../enums';\n\nexport namespace ABP {\n export interface Root {\n environment: Partial;\n requirements: Config.Requirements;\n }\n\n export type PagedResponse = {\n totalCount: number;\n } & PagedItemsResponse;\n\n export interface PagedItemsResponse {\n items: T[];\n }\n\n export interface PageQueryParams {\n filter?: string;\n sorting?: string;\n skipCount?: number;\n maxResultCount?: number;\n }\n\n export interface Route {\n children?: Route[];\n invisible?: boolean;\n layout?: eLayoutType;\n name: string;\n order?: number;\n parentName?: string;\n path: string;\n requiredPolicy?: string;\n iconClass?: string;\n }\n\n export interface FullRoute extends Route {\n url?: string;\n wrapper?: boolean;\n }\n\n export interface BasicItem {\n id: string;\n name: string;\n }\n}\n","import { AuthConfig } from 'angular-oauth2-oidc';\nimport { Type } from '@angular/core';\n\nexport namespace Config {\n export interface State {\n [key: string]: any;\n }\n\n export interface Environment {\n application: Application;\n production: boolean;\n oAuthConfig: AuthConfig;\n apis: Apis;\n }\n\n export interface Application {\n name: string;\n logoUrl?: string;\n }\n\n export interface Apis {\n [key: string]: { [key: string]: string };\n }\n\n export interface Requirements {\n layouts: Type[];\n }\n}\n","import { HttpHeaders, HttpParams } from '@angular/common/http';\n\nexport namespace Rest {\n export interface Config {\n skipHandleError?: boolean;\n observe?: Observe;\n }\n\n export const enum Observe {\n Body = 'body',\n Events = 'events',\n Response = 'response',\n }\n\n export const enum ResponseType {\n ArrayBuffer = 'arraybuffer',\n Blob = 'blob',\n JSON = 'json',\n Text = 'text',\n }\n\n export interface Request {\n body?: T;\n headers?:\n | HttpHeaders\n | {\n [header: string]: string | string[];\n };\n method: string;\n params?:\n | HttpParams\n | {\n [param: string]: any;\n };\n reportProgress?: boolean;\n responseType?: ResponseType;\n url: string;\n withCredentials?: boolean;\n }\n}\n","import { ABP } from '../models';\n\nexport namespace Session {\n export interface State {\n language: string;\n tenant: ABP.BasicItem;\n }\n}\n","export namespace Profile {\n export interface State {\n profile: Response;\n }\n\n export interface Response {\n userName: string;\n email: string;\n name: string;\n surname: string;\n phoneNumber: string;\n }\n\n export interface ChangePasswordRequest {\n currentPassword: string;\n newPassword: string;\n }\n}\n","import { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { Router, Routes } from '@angular/router';\nimport { actionMatcher, InitState, NgxsNextPluginFn, NgxsPlugin, setValue, UpdateState } from '@ngxs/store';\nimport snq from 'snq';\nimport { ABP } from '../../models';\nimport { organizeRoutes } from '../../utils/route-utils';\n\nexport const NGXS_CONFIG_PLUGIN_OPTIONS = new InjectionToken('NGXS_CONFIG_PLUGIN_OPTIONS');\n\n@Injectable()\nexport class ConfigPlugin implements NgxsPlugin {\n private initialized: boolean = false;\n\n constructor(@Inject(NGXS_CONFIG_PLUGIN_OPTIONS) private options: ABP.Root, private router: Router) {}\n\n handle(state: any, event: any, next: NgxsNextPluginFn) {\n const matches = actionMatcher(event);\n const isInitAction = matches(InitState) || matches(UpdateState);\n\n // const layouts = snq(() => this.options.requirements.layouts.filter(layout => layout instanceof Type), []);\n if (isInitAction && !this.initialized) {\n let { routes, wrappers } = transformRoutes(this.router.config);\n routes = organizeRoutes(routes, wrappers);\n\n state = setValue(state, 'ConfigState', {\n ...(state.ConfigState && { ...state.ConfigState }),\n ...this.options,\n routes,\n });\n\n this.initialized = true;\n }\n\n return next(state, event);\n }\n}\n\nfunction transformRoutes(routes: Routes = [], wrappers: ABP.FullRoute[] = []): any {\n const abpRoutes: ABP.FullRoute[] = routes\n .filter(route => {\n return snq(() => route.data.routes.routes.find(r => r.path === route.path), false);\n })\n .reduce((acc, val) => [...acc, ...val.data.routes.routes], []);\n\n wrappers = abpRoutes.filter(ar => ar.wrapper);\n const transformed = [] as ABP.FullRoute[];\n routes\n .filter(route => (route.data || {}).routes && (route.component || route.loadChildren))\n .forEach(route => {\n const abpPackage = abpRoutes.find(\n abp => abp.path.toLowerCase() === route.path.toLowerCase() && snq(() => route.data.routes.routes.length, false),\n );\n const { length } = transformed;\n\n if (abpPackage) {\n transformed.push(abpPackage);\n }\n\n if (transformed.length === length) {\n transformed.push({\n ...route.data.routes,\n path: route.path,\n name: snq(() => route.data.routes.name, route.path),\n children: route.data.routes.children || [],\n } as ABP.FullRoute);\n }\n });\n\n return { routes: setUrls(transformed), wrappers };\n}\n\nfunction setUrls(routes: ABP.FullRoute[], parentUrl?: string): ABP.FullRoute[] {\n if (parentUrl) {\n // this if block using for only recursive call\n\n return routes.map(route => ({\n ...route,\n url: `${parentUrl}/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `${parentUrl}/${route.path}`),\n }),\n }));\n }\n\n return routes.map(route => ({\n ...route,\n url: `/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `/${route.path}`),\n }),\n }));\n}\n","import { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConfigService {\n constructor(private store: Store) {}\n\n getAll() {\n return this.store.selectSnapshot(ConfigState.getAll);\n }\n\n getOne(key: string) {\n return this.store.selectSnapshot(ConfigState.getOne(key));\n }\n\n getDeep(keys: string[] | string) {\n return this.store.selectSnapshot(ConfigState.getDeep(keys));\n }\n\n getSetting(key: string) {\n return this.store.selectSnapshot(ConfigState.getSetting(key));\n }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { uuid } from '../utils';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LazyLoadService {\n loadedLibraries: { [url: string]: ReplaySubject } = {};\n\n load(\n url: string,\n type: 'script' | 'style',\n content: string = '',\n targetQuery: string = 'body',\n position: InsertPosition = 'afterend',\n ): Observable {\n if (!url && !content) return;\n const key = url ? url.slice(url.lastIndexOf('/') + 1) : uuid();\n\n if (this.loadedLibraries[key]) {\n return this.loadedLibraries[key].asObservable();\n }\n\n this.loadedLibraries[key] = new ReplaySubject();\n\n let library;\n if (type === 'script') {\n library = document.createElement('script');\n library.type = 'text/javascript';\n if (url) {\n (library as HTMLScriptElement).src = url;\n }\n\n (library as HTMLScriptElement).text = content;\n } else if (url) {\n library = document.createElement('link');\n library.type = 'text/css';\n (library as HTMLLinkElement).rel = 'stylesheet';\n\n if (url) {\n (library as HTMLLinkElement).href = url;\n }\n } else {\n library = document.createElement('style');\n (library as HTMLStyleElement).textContent = content;\n }\n\n library.onload = () => {\n this.loadedLibraries[key].next();\n this.loadedLibraries[key].complete();\n };\n\n document.querySelector(targetQuery).insertAdjacentElement(position, library);\n\n return this.loadedLibraries[key].asObservable();\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { Config } from '../models';\n\nexport function environmentFactory(environment: Config.Environment) {\n return {\n ...environment,\n };\n}\n\nexport function configFactory(config: Config.Requirements) {\n return {\n ...config,\n };\n}\n\nexport const ENVIRONMENT = new InjectionToken('ENVIRONMENT');\n\nexport const CONFIG = new InjectionToken('CONFIG');\n","import { Directive, Output, Renderer2, ElementRef, OnInit, EventEmitter, Input } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[input.debounce]',\n})\nexport class InputEventDebounceDirective implements OnInit {\n @Input() debounce: number = 300;\n\n @Output('input.debounce') debounceEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'input')\n .pipe(\n debounceTime(this.debounce),\n takeUntilDestroy(this),\n )\n .subscribe((event: Event) => {\n this.debounceEvent.emit(event);\n });\n }\n}\n","import { Directive, ElementRef, EventEmitter, OnInit, Output, Renderer2 } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[click.stop]',\n})\nexport class ClickEventStopPropagationDirective implements OnInit {\n @Output('click.stop') stopPropEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'click')\n .pipe(takeUntilDestroy(this))\n .subscribe((event: MouseEvent) => {\n event.stopPropagation();\n this.stopPropEvent.emit(event);\n });\n }\n}\n","import { Pipe, PipeTransform, OnDestroy } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\nimport { distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\n@Pipe({\n name: 'abpLocalization',\n pure: false, // required to update the value\n})\nexport class LocalizationPipe implements PipeTransform, OnDestroy {\n initialValue: string = '';\n\n value: string;\n\n destroy$ = new Subject();\n\n constructor(private store: Store) {}\n\n transform(value: string = '', ...interpolateParams: string[]): string {\n if (this.initialValue !== value) {\n this.initialValue = value;\n this.destroy$.next();\n\n this.store\n .select(\n ConfigState.getCopy(\n value,\n ...interpolateParams.reduce((acc, val) => (Array.isArray(val) ? [...acc, ...val] : [...acc, val]), []),\n ),\n )\n .pipe(\n takeUntil(this.destroy$),\n takeUntilDestroy(this),\n distinctUntilChanged(),\n )\n .subscribe(copy => (this.value = copy));\n }\n\n return this.value;\n }\n\n ngOnDestroy() {}\n}\n","import { LOCALE_ID, Provider } from '@angular/core';\nimport localesMapping from '../constants/different-locales';\nimport { LocalizationService } from '../services/localization.service';\n\nexport class LocaleId extends String {\n constructor(private localizationService: LocalizationService) {\n super();\n }\n\n toString(): string {\n const { currentLang } = this.localizationService;\n return localesMapping[currentLang] || currentLang;\n }\n\n valueOf(): string {\n return this.toString();\n }\n}\n\nexport const LocaleProvider: Provider = {\n provide: LOCALE_ID,\n useClass: LocaleId,\n deps: [LocalizationService],\n};\n","import { CommonModule } from '@angular/common';\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { NgxsRouterPluginModule } from '@ngxs/router-plugin';\nimport { NgxsStoragePluginModule } from '@ngxs/storage-plugin';\nimport { NgxsModule, NGXS_PLUGINS } from '@ngxs/store';\nimport { DynamicLayoutComponent } from './components/dynamic-layout.component';\nimport { RouterOutletComponent } from './components/router-outlet.component';\nimport { AutofocusDirective } from './directives/autofocus.directive';\nimport { InputEventDebounceDirective } from './directives/debounce.directive';\nimport { EllipsisDirective } from './directives/ellipsis.directive';\nimport { FormSubmitDirective } from './directives/form-submit.directive';\nimport { PermissionDirective } from './directives/permission.directive';\nimport { ClickEventStopPropagationDirective } from './directives/stop-propagation.directive';\nimport { VisibilityDirective } from './directives/visibility.directive';\nimport { ApiInterceptor } from './interceptors/api.interceptor';\nimport { ABP } from './models/common';\nimport { LocalizationPipe } from './pipes/localization.pipe';\nimport { LocaleProvider } from './providers/locale.provider';\nimport { ConfigState } from './states/config.state';\nimport { ProfileState } from './states/profile.state';\nimport { SessionState } from './states/session.state';\nimport { getInitialData, localeInitializer } from './utils/initial-utils';\nimport { ConfigPlugin, NGXS_CONFIG_PLUGIN_OPTIONS } from './plugins/config/config.plugin';\n\n@NgModule({\n imports: [\n NgxsModule.forFeature([ProfileState, SessionState, ConfigState]),\n NgxsStoragePluginModule.forRoot({ key: 'SessionState' }),\n NgxsRouterPluginModule.forRoot(),\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n ],\n declarations: [\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n ClickEventStopPropagationDirective,\n ],\n exports: [\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n LocalizationPipe,\n ClickEventStopPropagationDirective,\n ],\n providers: [LocalizationPipe],\n entryComponents: [RouterOutletComponent, DynamicLayoutComponent],\n})\nexport class CoreModule {\n static forRoot(options = {} as ABP.Root): ModuleWithProviders {\n return {\n ngModule: CoreModule,\n providers: [\n LocaleProvider,\n {\n provide: NGXS_PLUGINS,\n useClass: ConfigPlugin,\n multi: true,\n },\n {\n provide: NGXS_CONFIG_PLUGIN_OPTIONS,\n useValue: options,\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: ApiInterceptor,\n multi: true,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: getInitialData,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: localeInitializer,\n },\n ],\n };\n }\n}\n"],"names":["throwError","take","catchError","Injectable","HttpClient","Store","tap","tslib_1.__decorate","Action","Selector","State","store","differentLocales","registerLocaleData","noop","Router","Actions","Optional","SkipSelf","combineLatest","from","createSelector","switchMap","of","Subject","takeUntil","router","NavigationEnd","Component","Select","Observable","Directive","ElementRef","Input","ChangeDetectorRef","HostBinding","EventEmitter","fromEvent","debounceTime","filter","FormGroupDirective","Self","Output","Renderer2","Navigate","OAuthService","finalize","Rest","InjectionToken","actionMatcher","InitState","UpdateState","setValue","Inject","ReplaySubject","takeUntilDestroy","distinctUntilChanged","Pipe","tslib_1.__extends","LOCALE_ID","NGXS_PLUGINS","HTTP_INTERCEPTORS","APP_INITIALIZER","Injector","NgModule","NgxsModule","NgxsStoragePluginModule","NgxsRouterPluginModule","CommonModule","HttpClientModule","FormsModule","ReactiveFormsModule","RouterModule"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.core.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.core/lib/actions/config.actions.ts","ng://@abp/ng.core/lib/actions/loader.actions.ts","ng://@abp/ng.core/lib/actions/profile.actions.ts","ng://@abp/ng.core/lib/actions/rest.actions.ts","ng://@abp/ng.core/lib/actions/session.actions.ts","ng://@abp/ng.core/lib/services/profile.service.ts","ng://@abp/ng.core/lib/states/profile.state.ts","ng://@abp/ng.core/lib/constants/different-locales.ts","ng://@abp/ng.core/lib/utils/initial-utils.ts","ng://@abp/ng.core/lib/services/localization.service.ts","ng://@abp/ng.core/lib/states/session.state.ts","ng://@abp/ng.core/lib/services/rest.service.ts","ng://@abp/ng.core/lib/services/application-configuration.service.ts","ng://@abp/ng.core/lib/utils/route-utils.ts","ng://@abp/ng.core/lib/states/config.state.ts","ng://@abp/ng.core/lib/utils/rxjs-utils.ts","ng://@abp/ng.core/lib/components/dynamic-layout.component.ts","ng://@abp/ng.core/lib/components/router-outlet.component.ts","ng://@abp/ng.core/lib/directives/autofocus.directive.ts","ng://@abp/ng.core/lib/directives/ellipsis.directive.ts","ng://@abp/ng.core/lib/directives/for.directive.ts","ng://@abp/ng.core/lib/utils/common-utils.ts","ng://@abp/ng.core/lib/utils/generator-utils.ts","ng://@abp/ng.core/lib/directives/form-submit.directive.ts","ng://@abp/ng.core/lib/directives/permission.directive.ts","ng://@abp/ng.core/lib/directives/visibility.directive.ts","ng://@abp/ng.core/lib/enums/common.ts","ng://@abp/ng.core/lib/guards/auth.guard.ts","ng://@abp/ng.core/lib/guards/permission.guard.ts","ng://@abp/ng.core/lib/interceptors/api.interceptor.ts","ng://@abp/ng.core/lib/models/application-configuration.ts","ng://@abp/ng.core/lib/models/common.ts","ng://@abp/ng.core/lib/models/config.ts","ng://@abp/ng.core/lib/models/rest.ts","ng://@abp/ng.core/lib/models/session.ts","ng://@abp/ng.core/lib/models/profile.ts","ng://@abp/ng.core/lib/plugins/config/config.plugin.ts","ng://@abp/ng.core/lib/services/config.service.ts","ng://@abp/ng.core/lib/services/lazy-load.service.ts","ng://@abp/ng.core/lib/tokens/common.token.ts","ng://@abp/ng.core/lib/directives/debounce.directive.ts","ng://@abp/ng.core/lib/directives/stop-propagation.directive.ts","ng://@abp/ng.core/lib/pipes/localization.pipe.ts","ng://@abp/ng.core/lib/providers/locale.provider.ts","ng://@abp/ng.core/lib/core.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ABP } from '../models';\n\nexport class PatchRouteByName {\n static readonly type = '[Config] Patch Route By Name';\n constructor(public name: string, public newValue: Partial) {}\n}\n\nexport class GetAppConfiguration {\n static readonly type = '[Config] Get App Configuration';\n}\n","import { HttpRequest } from '@angular/common/http';\n\nexport class StartLoader {\n static readonly type = '[Loader] Start';\n constructor(public payload: HttpRequest) {}\n}\n\nexport class StopLoader {\n static readonly type = '[Loader] Stop';\n constructor(public payload: HttpRequest) {}\n}\n","import { Profile } from '../models';\n\nexport class GetProfile {\n static readonly type = '[Profile] Get';\n}\n\nexport class UpdateProfile {\n static readonly type = '[Profile] Update';\n constructor(public payload: Profile.Response) {}\n}\n\nexport class ChangePassword {\n static readonly type = '[Profile] Change Password';\n constructor(public payload: Profile.ChangePasswordRequest) {}\n}\n","import { HttpErrorResponse } from '@angular/common/http';\n\nexport class RestOccurError {\n static readonly type = '[Rest] Error';\n constructor(public payload: HttpErrorResponse | any) {}\n}\n","import { ABP } from '../models';\n\nexport class SetLanguage {\n static readonly type = '[Session] Set Language';\n constructor(public payload: string) {}\n}\nexport class SetTenant {\n static readonly type = '[Session] Set Tenant';\n constructor(public payload: ABP.BasicItem) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService } from './rest.service';\nimport { Profile, Rest } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ProfileService {\n constructor(private rest: RestService) {}\n\n get(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/my-profile',\n };\n\n return this.rest.request(request);\n }\n\n update(body: Profile.Response): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/identity/my-profile',\n body,\n };\n\n return this.rest.request(request);\n }\n\n changePassword(body: Profile.ChangePasswordRequest, skipHandleError: boolean = false): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/my-profile/change-password',\n body,\n };\n\n return this.rest.request(request, { skipHandleError });\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetProfile, ChangePassword, UpdateProfile } from '../actions/profile.actions';\nimport { Profile } from '../models/profile';\nimport { ProfileService } from '../services/profile.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'ProfileState',\n defaults: {} as Profile.State,\n})\nexport class ProfileState {\n @Selector()\n static getProfile({ profile }: Profile.State): Profile.Response {\n return profile;\n }\n\n constructor(private profileService: ProfileService) {}\n\n @Action(GetProfile)\n profileGet({ patchState }: StateContext) {\n return this.profileService.get().pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(UpdateProfile)\n profileUpdate({ patchState }: StateContext, { payload }: UpdateProfile) {\n return this.profileService.update(payload).pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(ChangePassword)\n changePassword(_, { payload }: ChangePassword) {\n return this.profileService.changePassword(payload, true);\n }\n}\n","// Different locales from .NET\n// Key is .NET locale, value is Angular locale\n\nexport default {\n 'ar-sa': 'ar-SA',\n 'ca-ES-valencia': 'ca-ES-VALENCIA',\n 'de-de': 'de',\n 'es-ES': 'es',\n 'en-US': 'en',\n 'fil-Latn': 'en',\n 'ku-Arab': 'en',\n 'ky-Cyrl': 'en',\n 'mi-Latn': 'en',\n 'prs-Arab': 'en',\n 'qut-Latn': 'en',\n nso: 'en',\n quz: 'en',\n 'fr-FR': 'fr',\n 'gd-Latn': 'gd',\n 'ha-Latn': 'ha',\n 'ig-Latn': 'ig',\n 'it-it': 'it',\n 'mn-Cyrl': 'mn',\n 'pt-BR': 'pt',\n 'sd-Arab': 'pa-Arab',\n 'sr-Cyrl-RS': 'sr-Cyrl',\n 'sr-Latn-RS': 'sr-Latn',\n 'tg-Cyrl': 'tg',\n 'tk-Latn': 'tk',\n 'tt-Cyrl': 'tt',\n 'ug-Arab': 'ug',\n 'yo-Latn': 'yo',\n};\n","import { registerLocaleData } from '@angular/common';\nimport { Injector } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport differentLocales from '../constants/different-locales';\nimport { SessionState } from '../states/session.state';\n\nexport function getInitialData(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n return store.dispatch(new GetAppConfiguration()).toPromise();\n };\n\n return fn;\n}\n\nexport function localeInitializer(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n const lang = store.selectSnapshot(SessionState.getLanguage) || 'en';\n\n return new Promise((resolve, reject) => {\n registerLocale(lang).then(() => resolve(), reject);\n });\n };\n\n return fn;\n}\n\nexport function registerLocale(locale: string) {\n return import(\n /* webpackInclude: /(af|am|ar-SA|as|az-Latn|be|bg|bn-BD|bn-IN|bs|ca|ca-ES-VALENCIA|cs|cy|da|de|de|el|en-GB|en|es|en|es-US|es-MX|et|eu|fa|fi|en|fr|fr|fr-CA|ga|gd|gl|gu|ha|he|hi|hr|hu|hy|id|ig|is|it|it|ja|ka|kk|km|kn|ko|kok|en|en|lb|lt|lv|en|mk|ml|mn|mr|ms|mt|nb|ne|nl|nl-BE|nn|en|or|pa|pa-Arab|pl|en|pt|pt-PT|en|en|ro|ru|rw|pa-Arab|si|sk|sl|sq|sr-Cyrl-BA|sr-Cyrl|sr-Latn|sv|sw|ta|te|tg|th|ti|tk|tn|tr|tt|ug|uk|ur|uz-Latn|vi|wo|xh|yo|zh-Hans|zh-Hant|zu)\\.js$/ */\n `@angular/common/locales/${differentLocales[locale] || locale}.js`\n ).then(module => {\n registerLocaleData(module.default);\n });\n}\n","import { Injectable, Optional, SkipSelf } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router } from '@angular/router';\nimport { Actions, Store } from '@ngxs/store';\nimport { noop, Observable } from 'rxjs';\nimport { ConfigState } from '../states/config.state';\nimport { SessionState } from '../states/session.state';\nimport { registerLocale } from '../utils/initial-utils';\n\ntype ShouldReuseRoute = (future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot) => boolean;\n\n@Injectable({ providedIn: 'root' })\nexport class LocalizationService {\n get currentLang(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n constructor(\n private store: Store,\n private router: Router,\n private actions: Actions,\n @Optional()\n @SkipSelf()\n otherInstance: LocalizationService,\n ) {\n if (otherInstance) throw new Error('LocaleService should have only one instance.');\n }\n\n private setRouteReuse(reuse: ShouldReuseRoute) {\n this.router.routeReuseStrategy.shouldReuseRoute = reuse;\n }\n\n registerLocale(locale: string) {\n const { shouldReuseRoute } = this.router.routeReuseStrategy;\n\n this.setRouteReuse(() => false);\n this.router.navigated = false;\n\n return registerLocale(locale).then(async () => {\n await this.router.navigateByUrl(this.router.url).catch(noop);\n this.setRouteReuse(shouldReuseRoute);\n });\n }\n\n get(keys: string, ...interpolateParams: string[]): Observable {\n return this.store.select(ConfigState.getCopy(keys, ...interpolateParams));\n }\n\n instant(keys: string, ...interpolateParams: string[]): string {\n return this.store.selectSnapshot(ConfigState.getCopy(keys, ...interpolateParams));\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { SetLanguage, SetTenant } from '../actions/session.actions';\nimport { ABP, Session } from '../models';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport { LocalizationService } from '../services/localization.service';\nimport { from, combineLatest } from 'rxjs';\n\n@State({\n name: 'SessionState',\n defaults: {} as Session.State,\n})\nexport class SessionState {\n @Selector()\n static getLanguage({ language }: Session.State): string {\n return language;\n }\n\n @Selector()\n static getTenant({ tenant }: Session.State): ABP.BasicItem {\n return tenant;\n }\n\n constructor(private localizationService: LocalizationService) {}\n\n @Action(SetLanguage)\n setLanguage({ patchState, dispatch }: StateContext, { payload }: SetLanguage) {\n patchState({\n language: payload,\n });\n\n return combineLatest([dispatch(new GetAppConfiguration()), from(this.localizationService.registerLocale(payload))]);\n }\n\n @Action(SetTenant)\n setTenantId({ patchState }: StateContext, { payload }: SetTenant) {\n patchState({\n tenant: payload,\n });\n }\n}\n","import { HttpClient, HttpRequest } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { NEVER, Observable, throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport { Rest } from '../models/rest';\nimport { ConfigState } from '../states';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RestService {\n constructor(private http: HttpClient, private store: Store) {}\n\n handleError(err: any): Observable {\n this.store.dispatch(new RestOccurError(err));\n console.error(err);\n return throwError(err);\n }\n\n request(request: HttpRequest | Rest.Request, config: Rest.Config = {}, api?: string): Observable {\n const { observe = Rest.Observe.Body, skipHandleError } = config;\n const url = api || this.store.selectSnapshot(ConfigState.getApiUrl()) + request.url;\n const { method, ...options } = request;\n return this.http.request(method, url, { observe, ...options } as any).pipe(\n observe === Rest.Observe.Body ? take(1) : null,\n catchError(err => {\n if (skipHandleError) {\n return throwError(err);\n }\n\n return this.handleError(err);\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ApplicationConfiguration, Rest } from '../models';\nimport { RestService } from './rest.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ApplicationConfigurationService {\n constructor(private rest: RestService) {}\n\n getConfiguration(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/application-configuration',\n };\n\n return this.rest.request(request);\n }\n}\n","import { ABP } from '../models';\n\nexport function organizeRoutes(\n routes: ABP.FullRoute[],\n wrappers: ABP.FullRoute[] = [],\n parentNameArr = [] as ABP.FullRoute[],\n parentName: string = null,\n): ABP.FullRoute[] {\n const filter = route => {\n if (route.children && route.children.length) {\n route.children = organizeRoutes(route.children, wrappers, parentNameArr, route.name);\n }\n\n if (route.parentName && route.parentName !== parentName) {\n parentNameArr.push(route);\n return false;\n }\n\n return true;\n };\n\n if (parentName) {\n // recursive block\n return routes.filter(filter);\n }\n\n const filteredRoutes = routes.filter(filter);\n\n if (parentNameArr.length) {\n return sortRoutes(setChildRoute([...filteredRoutes, ...wrappers], parentNameArr));\n }\n\n return filteredRoutes;\n}\n\nexport function setChildRoute(routes: ABP.FullRoute[], parentNameArr: ABP.FullRoute[]): ABP.FullRoute[] {\n return routes.map(route => {\n if (route.children && route.children.length) {\n route.children = setChildRoute(route.children, parentNameArr);\n }\n\n const foundedChildren = parentNameArr.filter(parent => parent.parentName === route.name);\n if (foundedChildren && foundedChildren.length) {\n route.children = [...(route.children || []), ...foundedChildren];\n }\n\n return route;\n });\n}\n\nexport function sortRoutes(routes: ABP.FullRoute[] = []): ABP.FullRoute[] {\n if (!routes.length) return [];\n return routes\n .sort((a, b) => a.order - b.order)\n .map(route => {\n if (route.children && route.children.length) {\n route.children = sortRoutes(route.children);\n }\n\n return route;\n });\n}\n","import { State, Selector, createSelector, Action, StateContext, Store } from '@ngxs/store';\nimport { Config, ABP } from '../models';\nimport { GetAppConfiguration, PatchRouteByName } from '../actions/config.actions';\nimport { ApplicationConfigurationService } from '../services/application-configuration.service';\nimport { tap, switchMap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { SetLanguage } from '../actions';\nimport { SessionState } from './session.state';\nimport { of } from 'rxjs';\nimport { setChildRoute, sortRoutes, organizeRoutes } from '../utils/route-utils';\n\n@State({\n name: 'ConfigState',\n defaults: {} as Config.State,\n})\nexport class ConfigState {\n @Selector()\n static getAll(state: Config.State) {\n return state;\n }\n\n @Selector()\n static getApplicationInfo(state: Config.State) {\n return state.environment.application || {};\n }\n\n static getOne(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return state[key];\n },\n );\n\n return selector;\n }\n\n static getDeep(keys: string[] | string) {\n if (typeof keys === 'string') {\n keys = keys.split('.');\n }\n\n if (!Array.isArray(keys)) {\n throw new Error('The argument must be a dot string or an string array.');\n }\n\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return (keys as string[]).reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state);\n },\n );\n\n return selector;\n }\n\n static getRoute(path?: string, name?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n const { flattedRoutes } = state;\n return (flattedRoutes as ABP.FullRoute[]).find(route => {\n if (path && route.path === path) {\n return route;\n } else if (name && route.name === name) {\n return route;\n }\n });\n },\n );\n\n return selector;\n }\n\n static getApiUrl(key?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): string {\n return state.environment.apis[key || 'default'].url;\n },\n );\n\n return selector;\n }\n\n static getSetting(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return snq(() => state.setting.values[key]);\n },\n );\n\n return selector;\n }\n\n static getGrantedPolicy(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): boolean {\n if (!key) return true;\n return snq(() => state.auth.grantedPolicies[key], false);\n },\n );\n\n return selector;\n }\n\n static getCopy(key: string, ...interpolateParams: string[]) {\n if (!key) key = '';\n\n const keys = key.split('::') as string[];\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n if (!state.localization) return key;\n\n const { defaultResourceName } = state.environment.localization;\n if (keys[0] === '') {\n if (!defaultResourceName) {\n throw new Error(\n `Please check your environment. May you forget set defaultResourceName? \n Here is the example:\n { production: false,\n localization: {\n defaultResourceName: 'MyProjectName'\n }\n }`,\n );\n }\n\n keys[0] = snq(() => defaultResourceName);\n }\n\n let copy = (keys as any).reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state.localization.values);\n\n interpolateParams = interpolateParams.filter(params => params != null);\n if (copy && interpolateParams && interpolateParams.length) {\n interpolateParams.forEach(param => {\n copy = copy.replace(/[\\'\\\"]?\\{[\\d]+\\}[\\'\\\"]?/, param);\n });\n }\n\n return copy || key;\n },\n );\n\n return selector;\n }\n\n constructor(private appConfigurationService: ApplicationConfigurationService, private store: Store) {}\n\n @Action(GetAppConfiguration)\n addData({ patchState, dispatch }: StateContext) {\n return this.appConfigurationService.getConfiguration().pipe(\n tap(configuration =>\n patchState({\n ...configuration,\n }),\n ),\n switchMap(configuration => {\n let defaultLang: string = configuration.setting.values['Abp.Localization.DefaultLanguage'];\n\n if (defaultLang.includes(';')) {\n defaultLang = defaultLang.split(';')[0];\n }\n\n return this.store.selectSnapshot(SessionState.getLanguage) ? of(null) : dispatch(new SetLanguage(defaultLang));\n }),\n );\n }\n\n @Action(PatchRouteByName)\n patchRoute({ patchState, getState }: StateContext, { name, newValue }: PatchRouteByName) {\n let routes: ABP.FullRoute[] = getState().routes;\n\n const index = routes.findIndex(route => route.name === name);\n\n routes = patchRouteDeep(routes, name, newValue);\n\n return patchState({\n routes,\n });\n }\n}\n\nfunction patchRouteDeep(\n routes: ABP.FullRoute[],\n name: string,\n newValue: Partial,\n parentUrl: string = null,\n): ABP.FullRoute[] {\n routes = routes.map(route => {\n if (route.name === name) {\n if (newValue.path) {\n newValue.url = `${parentUrl}/${newValue.path}`;\n }\n\n if (newValue.children && newValue.children.length) {\n newValue.children = newValue.children.map(child => ({\n ...child,\n url: `${parentUrl}/${route.path}/${child.path}`,\n }));\n }\n\n return { ...route, ...newValue };\n } else if (route.children && route.children.length) {\n route.children = patchRouteDeep(route.children, name, newValue, (parentUrl || '/') + route.path);\n }\n\n return route;\n });\n\n if (parentUrl) {\n // recursive block\n return routes;\n }\n\n return organizeRoutes(routes);\n}\n","import { Observable, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nexport const takeUntilDestroy = (componentInstance, destroyMethodName = 'ngOnDestroy') => (\n source: Observable,\n) => {\n const originalDestroy = componentInstance[destroyMethodName];\n if (isFunction(originalDestroy) === false) {\n throw new Error(\n `${componentInstance.constructor.name} is using untilDestroyed but doesn't implement ${destroyMethodName}`,\n );\n }\n if (!componentInstance['__takeUntilDestroy']) {\n componentInstance['__takeUntilDestroy'] = new Subject();\n\n componentInstance[destroyMethodName] = function() {\n isFunction(originalDestroy) && originalDestroy.apply(this, arguments);\n componentInstance['__takeUntilDestroy'].next(true);\n componentInstance['__takeUntilDestroy'].complete();\n };\n }\n return source.pipe(takeUntil(componentInstance['__takeUntilDestroy']));\n};\n","import { Component, Input, OnDestroy, Type } from '@angular/core';\nimport { ActivatedRoute, NavigationEnd, Router, UrlSegment } from '@angular/router';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport snq from 'snq';\nimport { eLayoutType } from '../enums/common';\nimport { Config } from '../models/config';\nimport { ABP } from '../models/common';\nimport { ConfigState } from '../states/config.state';\nimport { takeUntilDestroy } from '../utils/rxjs-utils';\n\n@Component({\n selector: 'abp-dynamic-layout',\n template: `\n \n\n \n \n `,\n})\nexport class DynamicLayoutComponent implements OnDestroy {\n @Select(ConfigState.getOne('requirements'))\n requirements$: Observable;\n\n layout: Type;\n\n constructor(private router: Router, private route: ActivatedRoute, private store: Store) {\n const {\n requirements: { layouts },\n routes,\n } = this.store.selectSnapshot(ConfigState.getAll);\n\n if ((this.route.snapshot.data || {}).layout) {\n this.layout = layouts\n .filter(l => !!l)\n .find((l: any) => snq(() => l.type.toLowerCase().indexOf(this.route.snapshot.data.layout), -1) > -1);\n }\n\n this.router.events.pipe(takeUntilDestroy(this)).subscribe(event => {\n if (event instanceof NavigationEnd) {\n const { segments } = this.router.parseUrl(event.url).root.children.primary;\n\n const layout = (this.route.snapshot.data || {}).layout || findLayout(segments, routes);\n\n this.layout = layouts\n .filter(l => !!l)\n .find((l: any) => snq(() => l.type.toLowerCase().indexOf(layout), -1) > -1);\n }\n });\n }\n\n ngOnDestroy() {}\n}\n\nfunction findLayout(segments: UrlSegment[], routes: ABP.FullRoute[]): eLayoutType {\n let layout = eLayoutType.empty;\n\n const route = routes\n .reduce((acc, val) => (val.wrapper ? [...acc, ...val.children] : [...acc, val]), [])\n .find(r => r.path === segments[0].path);\n\n if (route) {\n if (route.layout) {\n layout = route.layout;\n }\n\n if (route.children && route.children.length && segments.length > 1) {\n const child = route.children.find(c => c.path === segments[1].path);\n\n if (child && child.layout) {\n layout = child.layout;\n }\n }\n }\n\n return layout;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-router-outlet',\n template: `\n \n `,\n})\nexport class RouterOutletComponent {}\n","import { Directive, ElementRef, Input, AfterViewInit } from '@angular/core';\n\n@Directive({\n selector: '[autofocus]',\n})\nexport class AutofocusDirective implements AfterViewInit {\n @Input('autofocus')\n delay: number = 0;\n\n constructor(private elRef: ElementRef) {}\n\n ngAfterViewInit(): void {\n setTimeout(() => this.elRef.nativeElement.focus(), this.delay);\n }\n}\n","import { AfterContentInit, ChangeDetectorRef, Directive, ElementRef, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[abpEllipsis]',\n})\nexport class EllipsisDirective implements AfterContentInit {\n @Input('abpEllipsis')\n width: string;\n\n @HostBinding('title')\n @Input()\n title: string;\n\n @Input('abpEllipsisEnabled')\n enabled = true;\n\n @HostBinding('class.abp-ellipsis-inline')\n get inlineClass() {\n return this.enabled && this.width;\n }\n\n @HostBinding('class.abp-ellipsis')\n get class() {\n return this.enabled && !this.width;\n }\n\n @HostBinding('style.max-width')\n get maxWidth() {\n return this.enabled && this.width ? this.width || '170px' : undefined;\n }\n\n constructor(private cdRef: ChangeDetectorRef, private elRef: ElementRef) {}\n\n ngAfterContentInit() {\n setTimeout(() => {\n const title = this.title;\n this.title = title || (this.elRef.nativeElement as HTMLElement).innerText;\n\n if (this.title !== title) {\n this.cdRef.detectChanges();\n }\n }, 0);\n }\n}\n","import {\n Directive,\n EmbeddedViewRef,\n Input,\n IterableChangeRecord,\n IterableChanges,\n IterableDiffer,\n IterableDiffers,\n OnChanges,\n TemplateRef,\n TrackByFunction,\n ViewContainerRef,\n} from '@angular/core';\nimport compare from 'just-compare';\nimport clone from 'just-clone';\n\nexport type CompareFn = (value: T, comparison: T) => boolean;\n\nclass AbpForContext {\n constructor(public $implicit: any, public index: number, public count: number, public list: any[]) {}\n}\n\nclass RecordView {\n constructor(public record: IterableChangeRecord, public view: EmbeddedViewRef) {}\n}\n\n@Directive({\n selector: '[abpFor]',\n})\nexport class ForDirective implements OnChanges {\n @Input('abpForOf')\n items: any[];\n\n @Input('abpForOrderBy')\n orderBy: string;\n\n @Input('abpForOrderDir')\n orderDir: 'ASC' | 'DESC';\n\n @Input('abpForFilterBy')\n filterBy: string;\n\n @Input('abpForFilterVal')\n filterVal: any;\n\n @Input('abpForTrackBy')\n trackBy;\n\n @Input('abpForCompareBy')\n compareBy: CompareFn;\n\n @Input('abpForEmptyRef')\n emptyRef: TemplateRef;\n\n private differ: IterableDiffer;\n\n private isShowEmptyRef: boolean;\n\n get compareFn(): CompareFn {\n return this.compareBy || compare;\n }\n\n get trackByFn(): TrackByFunction {\n return this.trackBy || ((index: number, item: any) => (item as any).id || index);\n }\n\n constructor(\n private tempRef: TemplateRef,\n private vcRef: ViewContainerRef,\n private differs: IterableDiffers,\n ) {}\n\n private iterateOverAppliedOperations(changes: IterableChanges) {\n const rw: RecordView[] = [];\n\n changes.forEachOperation((record: IterableChangeRecord, previousIndex: number, currentIndex: number) => {\n if (record.previousIndex == null) {\n const view = this.vcRef.createEmbeddedView(\n this.tempRef,\n new AbpForContext(null, -1, -1, this.items),\n currentIndex,\n );\n\n rw.push(new RecordView(record, view));\n } else if (currentIndex == null) {\n this.vcRef.remove(previousIndex);\n } else {\n const view = this.vcRef.get(previousIndex);\n this.vcRef.move(view, currentIndex);\n\n rw.push(new RecordView(record, view as EmbeddedViewRef));\n }\n });\n\n for (let i = 0, l = rw.length; i < l; i++) {\n rw[i].view.context.$implicit = rw[i].record.item;\n }\n }\n\n private iterateOverAttachedViews(changes: IterableChanges) {\n for (let i = 0, l = this.vcRef.length; i < l; i++) {\n const viewRef = this.vcRef.get(i) as EmbeddedViewRef;\n viewRef.context.index = i;\n viewRef.context.count = l;\n viewRef.context.list = this.items;\n }\n\n changes.forEachIdentityChange((record: IterableChangeRecord) => {\n const viewRef = this.vcRef.get(record.currentIndex) as EmbeddedViewRef;\n viewRef.context.$implicit = record.item;\n });\n }\n\n private projectItems(items: any[]): void {\n if (!items.length && this.emptyRef) {\n this.vcRef.createEmbeddedView(this.emptyRef).rootNodes;\n this.isShowEmptyRef = true;\n\n return;\n }\n\n if (this.emptyRef && this.isShowEmptyRef) {\n this.vcRef.clear();\n this.isShowEmptyRef = false;\n }\n\n if (!this.differ && items) {\n this.differ = this.differs.find(items).create(this.trackByFn);\n }\n\n if (this.differ) {\n const changes = this.differ.diff(items);\n\n if (changes) {\n this.iterateOverAppliedOperations(changes);\n this.iterateOverAttachedViews(changes);\n }\n }\n }\n\n private sortItems(items: any[]) {\n if (this.orderBy) {\n items.sort((a, b) => (a[this.orderBy] > b[this.orderBy] ? 1 : a[this.orderBy] < b[this.orderBy] ? -1 : 0));\n } else {\n items.sort();\n }\n }\n\n ngOnChanges() {\n let items = clone(this.items) as any[];\n if (!Array.isArray(items)) return;\n\n const compareFn = this.compareFn;\n\n if (typeof this.filterBy !== 'undefined') {\n items = items.filter(item => compareFn(item[this.filterBy], this.filterVal));\n }\n\n switch (this.orderDir) {\n case 'ASC':\n this.sortItems(items);\n this.projectItems(items);\n break;\n\n case 'DESC':\n this.sortItems(items);\n items.reverse();\n this.projectItems(items);\n break;\n\n default:\n this.projectItems(items);\n }\n }\n}\n","export function noop() {\n const fn = function() {};\n return fn;\n}\n","export function uuid(a?: any): string {\n return a\n ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16)\n : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid);\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n Self,\n} from '@angular/core';\nimport { FormControl, FormGroup, FormGroupDirective } from '@angular/forms';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime, filter } from 'rxjs/operators';\nimport { takeUntilDestroy } from '../utils';\n\ntype Controls = { [key: string]: FormControl } | FormGroup[];\n\n@Directive({\n selector: 'form[ngSubmit][formGroup]',\n})\nexport class FormSubmitDirective implements OnInit, OnDestroy {\n @Input()\n notValidateOnSubmit: string | boolean;\n\n @Output()\n ngSubmit = new EventEmitter();\n\n executedNgSubmit: boolean = false;\n\n constructor(\n @Self() private formGroupDirective: FormGroupDirective,\n private host: ElementRef,\n private cdRef: ChangeDetectorRef,\n ) {}\n\n ngOnInit() {\n this.formGroupDirective.ngSubmit.pipe(takeUntilDestroy(this)).subscribe(() => {\n this.markAsDirty();\n this.executedNgSubmit = true;\n });\n\n fromEvent(this.host.nativeElement as HTMLElement, 'keyup')\n .pipe(\n debounceTime(200),\n filter((key: KeyboardEvent) => key && key.key === 'Enter'),\n takeUntilDestroy(this),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.host.nativeElement.dispatchEvent(new Event('submit', { bubbles: true, cancelable: true }));\n }\n\n this.executedNgSubmit = false;\n });\n\n fromEvent(this.host.nativeElement, 'submit')\n .pipe(\n takeUntilDestroy(this),\n filter(() => !this.notValidateOnSubmit && typeof this.notValidateOnSubmit !== 'string'),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.markAsDirty();\n }\n });\n }\n\n ngOnDestroy(): void {}\n\n markAsDirty() {\n const { form } = this.formGroupDirective;\n\n setDirty(form.controls as { [key: string]: FormControl });\n form.markAsDirty();\n\n this.cdRef.detectChanges();\n }\n}\n\nfunction setDirty(controls: Controls) {\n if (Array.isArray(controls)) {\n controls.forEach(group => {\n setDirty(group.controls as { [key: string]: FormControl });\n });\n return;\n }\n\n Object.keys(controls).forEach(key => {\n controls[key].markAsDirty();\n controls[key].updateValueAndValidity();\n });\n}\n","import { Directive, ElementRef, Input, OnDestroy, OnInit, Optional, Renderer2 } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\n\n@Directive({\n selector: '[abpPermission]',\n})\nexport class PermissionDirective implements OnInit, OnDestroy {\n @Input('abpPermission') condition: string;\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2, private store: Store) {}\n\n ngOnInit() {\n if (this.condition) {\n this.store\n .select(ConfigState.getGrantedPolicy(this.condition))\n .pipe(takeUntilDestroy(this))\n .subscribe(isGranted => {\n if (!isGranted) {\n this.renderer.removeChild(\n (this.elRef.nativeElement as HTMLElement).parentElement,\n this.elRef.nativeElement,\n );\n }\n });\n }\n }\n\n ngOnDestroy(): void {}\n}\n","import { Directive, Input, Optional, ElementRef, Renderer2, AfterViewInit } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport snq from 'snq';\n\n@Directive({\n selector: '[abpVisibility]',\n})\nexport class VisibilityDirective implements AfterViewInit {\n @Input('abpVisibility')\n focusedElement: HTMLElement;\n\n completed$ = new Subject();\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2) {}\n\n ngAfterViewInit() {\n const observer = new MutationObserver(mutations => {\n mutations.forEach(mutation => {\n if (!mutation.target) return;\n\n const htmlNodes = snq(\n () => Array.from(mutation.target.childNodes).filter(node => node instanceof HTMLElement),\n [],\n );\n\n if (!htmlNodes.length) {\n this.renderer.removeChild(this.elRef.nativeElement.parentElement, this.elRef.nativeElement);\n this.disconnect();\n } else {\n setTimeout(() => {\n this.disconnect();\n }, 0);\n }\n });\n });\n\n observer.observe(this.focusedElement, {\n childList: true,\n });\n\n this.completed$.subscribe(() => observer.disconnect());\n }\n\n disconnect() {\n this.completed$.next();\n this.completed$.complete();\n }\n}\n","export const enum eLayoutType {\n account = 'account',\n application = 'application',\n empty = 'empty',\n setting = 'setting',\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Observable } from 'rxjs';\nimport { Navigate } from '@ngxs/router-plugin';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthGuard implements CanActivate {\n constructor(private oauthService: OAuthService, private store: Store) {}\n canActivate(_: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | boolean | UrlTree {\n const hasValidAccessToken = this.oauthService.hasValidAccessToken();\n if (hasValidAccessToken) {\n return hasValidAccessToken;\n }\n\n this.store.dispatch(new Navigate(['/account/login'], null, { state: { redirectUrl: state.url } }));\n\n return false;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { ConfigState } from '../states';\nimport { tap } from 'rxjs/operators';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionGuard implements CanActivate {\n constructor(private store: Store) {}\n\n canActivate({ data }: ActivatedRouteSnapshot): Observable {\n const resource = data.requiredPolicy as string;\n return this.store.select(ConfigState.getGrantedPolicy(resource)).pipe(\n tap(access => {\n if (!access) {\n this.store.dispatch(new RestOccurError({ status: 403 }));\n }\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpInterceptor, HttpHandler, HttpRequest } from '@angular/common/http';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Store } from '@ngxs/store';\nimport { SessionState } from '../states';\nimport { StartLoader, StopLoader } from '../actions/loader.actions';\nimport { finalize } from 'rxjs/operators';\n\n@Injectable()\nexport class ApiInterceptor implements HttpInterceptor {\n constructor(private oAuthService: OAuthService, private store: Store) {}\n\n intercept(request: HttpRequest, next: HttpHandler) {\n this.store.dispatch(new StartLoader(request));\n\n const headers = {} as any;\n\n const token = this.oAuthService.getAccessToken();\n if (!request.headers.has('Authorization') && token) {\n headers['Authorization'] = `Bearer ${token}`;\n }\n\n const lang = this.store.selectSnapshot(SessionState.getLanguage);\n if (!request.headers.has('Accept-Language') && lang) {\n headers['Accept-Language'] = lang;\n }\n\n const tenant = this.store.selectSnapshot(SessionState.getTenant);\n if (!request.headers.has('__tenant') && tenant) {\n headers['__tenant'] = tenant.id;\n }\n\n return next\n .handle(\n request.clone({\n setHeaders: headers,\n }),\n )\n .pipe(finalize(() => this.store.dispatch(new StopLoader(request))));\n }\n}\n","export namespace ApplicationConfiguration {\n export interface Response {\n localization: Localization;\n auth: Auth;\n setting: Setting;\n currentUser: CurrentUser;\n features: Features;\n }\n\n export interface Localization {\n values: LocalizationValue;\n languages: Language[];\n }\n\n export interface LocalizationValue {\n [key: string]: { [key: string]: string };\n }\n\n export interface Language {\n cultureName: string;\n uiCultureName: string;\n displayName: string;\n flagIcon: string;\n }\n\n export interface Auth {\n policies: Policy;\n grantedPolicies: Policy;\n }\n\n export interface Policy {\n [key: string]: boolean;\n }\n\n export interface Setting {\n values: { [key: string]: 'Abp.Localization.DefaultLanguage' };\n }\n\n export interface CurrentUser {\n isAuthenticated: boolean;\n id: string;\n tenantId: string;\n userName: string;\n }\n\n export interface Features {\n values: Setting;\n }\n}\n","import { Config } from './config';\nimport { eLayoutType } from '../enums/common';\n\nexport namespace ABP {\n export interface Root {\n environment: Partial;\n requirements: Config.Requirements;\n }\n\n export type PagedResponse = {\n totalCount: number;\n } & PagedItemsResponse;\n\n export interface PagedItemsResponse {\n items: T[];\n }\n\n export interface PageQueryParams {\n filter?: string;\n sorting?: string;\n skipCount?: number;\n maxResultCount?: number;\n }\n\n export interface Route {\n children?: Route[];\n invisible?: boolean;\n layout?: eLayoutType;\n name: string;\n order?: number;\n parentName?: string;\n path: string;\n requiredPolicy?: string;\n iconClass?: string;\n }\n\n export interface FullRoute extends Route {\n url?: string;\n wrapper?: boolean;\n }\n\n export interface BasicItem {\n id: string;\n name: string;\n }\n}\n","import { AuthConfig } from 'angular-oauth2-oidc';\nimport { Type } from '@angular/core';\nimport { ApplicationConfiguration } from './application-configuration';\nimport { ABP } from './common';\n\nexport namespace Config {\n export type State = ApplicationConfiguration.Response &\n ABP.Root & { environment: Environment } & {\n routes: ABP.FullRoute[];\n flattedRoutes: ABP.FullRoute[];\n };\n\n export interface Environment {\n application: Application;\n production: boolean;\n oAuthConfig: AuthConfig;\n apis: Apis;\n localization: { defaultResourceName: string };\n }\n\n export interface Application {\n name: string;\n logoUrl?: string;\n }\n\n export interface Apis {\n [key: string]: { [key: string]: string };\n }\n\n export interface Requirements {\n layouts: Type[];\n }\n}\n","import { HttpHeaders, HttpParams } from '@angular/common/http';\n\nexport namespace Rest {\n export interface Config {\n skipHandleError?: boolean;\n observe?: Observe;\n }\n\n export const enum Observe {\n Body = 'body',\n Events = 'events',\n Response = 'response',\n }\n\n export const enum ResponseType {\n ArrayBuffer = 'arraybuffer',\n Blob = 'blob',\n JSON = 'json',\n Text = 'text',\n }\n\n export interface Request {\n body?: T;\n headers?:\n | HttpHeaders\n | {\n [header: string]: string | string[];\n };\n method: string;\n params?:\n | HttpParams\n | {\n [param: string]: any;\n };\n reportProgress?: boolean;\n responseType?: ResponseType;\n url: string;\n withCredentials?: boolean;\n }\n}\n","import { ABP } from '../models';\n\nexport namespace Session {\n export interface State {\n language: string;\n tenant: ABP.BasicItem;\n }\n}\n","export namespace Profile {\n export interface State {\n profile: Response;\n }\n\n export interface Response {\n userName: string;\n email: string;\n name: string;\n surname: string;\n phoneNumber: string;\n }\n\n export interface ChangePasswordRequest {\n currentPassword: string;\n newPassword: string;\n }\n}\n","import { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { Router, Routes } from '@angular/router';\nimport { actionMatcher, InitState, NgxsNextPluginFn, NgxsPlugin, setValue, UpdateState } from '@ngxs/store';\nimport snq from 'snq';\nimport { ABP } from '../../models';\nimport { organizeRoutes } from '../../utils/route-utils';\nimport clone from 'just-clone';\n\nexport const NGXS_CONFIG_PLUGIN_OPTIONS = new InjectionToken('NGXS_CONFIG_PLUGIN_OPTIONS');\n\n@Injectable()\nexport class ConfigPlugin implements NgxsPlugin {\n private initialized: boolean = false;\n\n constructor(@Inject(NGXS_CONFIG_PLUGIN_OPTIONS) private options: ABP.Root, private router: Router) {}\n\n handle(state: any, event: any, next: NgxsNextPluginFn) {\n const matches = actionMatcher(event);\n const isInitAction = matches(InitState) || matches(UpdateState);\n\n // const layouts = snq(() => this.options.requirements.layouts.filter(layout => layout instanceof Type), []);\n if (isInitAction && !this.initialized) {\n let { routes, wrappers } = transformRoutes(this.router.config);\n routes = organizeRoutes(routes, wrappers);\n const flattedRoutes = flatRoutes(clone(routes));\n state = setValue(state, 'ConfigState', {\n ...(state.ConfigState && { ...state.ConfigState }),\n ...this.options,\n routes,\n flattedRoutes,\n });\n\n this.initialized = true;\n }\n\n return next(state, event);\n }\n}\n\nfunction transformRoutes(routes: Routes = [], wrappers: ABP.FullRoute[] = []): any {\n const abpRoutes: ABP.FullRoute[] = routes\n .filter(route => {\n return snq(() => route.data.routes.routes.find(r => r.path === route.path), false);\n })\n .reduce((acc, val) => [...acc, ...val.data.routes.routes], []);\n\n wrappers = abpRoutes.filter(ar => ar.wrapper);\n const transformed = [] as ABP.FullRoute[];\n routes\n .filter(route => (route.data || {}).routes && (route.component || route.loadChildren))\n .forEach(route => {\n const abpPackage = abpRoutes.find(\n abp => abp.path.toLowerCase() === route.path.toLowerCase() && snq(() => route.data.routes.routes.length, false),\n );\n const { length } = transformed;\n\n if (abpPackage) {\n transformed.push(abpPackage);\n }\n\n if (transformed.length === length) {\n transformed.push({\n ...route.data.routes,\n path: route.path,\n name: snq(() => route.data.routes.name, route.path),\n children: route.data.routes.children || [],\n } as ABP.FullRoute);\n }\n });\n\n return { routes: setUrls(transformed), wrappers };\n}\n\nfunction setUrls(routes: ABP.FullRoute[], parentUrl?: string): ABP.FullRoute[] {\n if (parentUrl) {\n // this if block using for only recursive call\n\n return routes.map(route => ({\n ...route,\n url: `${parentUrl}/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `${parentUrl}/${route.path}`),\n }),\n }));\n }\n\n return routes.map(route => ({\n ...route,\n url: `/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `/${route.path}`),\n }),\n }));\n}\n\nfunction flatRoutes(routes: ABP.FullRoute[]): ABP.FullRoute[] {\n const flat = (r: ABP.FullRoute[]) => {\n return r.reduce((acc, val) => {\n let value: ABP.FullRoute[] = [val];\n if (val.children) {\n const { children } = val;\n delete val.children;\n value = [val, ...flat(children)];\n }\n\n return [...acc, ...value];\n }, []);\n };\n\n return flat(routes);\n}\n","import { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConfigService {\n constructor(private store: Store) {}\n\n getAll() {\n return this.store.selectSnapshot(ConfigState.getAll);\n }\n\n getOne(key: string) {\n return this.store.selectSnapshot(ConfigState.getOne(key));\n }\n\n getDeep(keys: string[] | string) {\n return this.store.selectSnapshot(ConfigState.getDeep(keys));\n }\n\n getSetting(key: string) {\n return this.store.selectSnapshot(ConfigState.getSetting(key));\n }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { uuid } from '../utils';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LazyLoadService {\n loadedLibraries: { [url: string]: ReplaySubject } = {};\n\n load(\n url: string,\n type: 'script' | 'style',\n content: string = '',\n targetQuery: string = 'body',\n position: InsertPosition = 'afterend',\n ): Observable {\n if (!url && !content) return;\n const key = url ? url.slice(url.lastIndexOf('/') + 1) : uuid();\n\n if (this.loadedLibraries[key]) {\n return this.loadedLibraries[key].asObservable();\n }\n\n this.loadedLibraries[key] = new ReplaySubject();\n\n let library;\n if (type === 'script') {\n library = document.createElement('script');\n library.type = 'text/javascript';\n if (url) {\n (library as HTMLScriptElement).src = url;\n }\n\n (library as HTMLScriptElement).text = content;\n } else if (url) {\n library = document.createElement('link');\n library.type = 'text/css';\n (library as HTMLLinkElement).rel = 'stylesheet';\n\n if (url) {\n (library as HTMLLinkElement).href = url;\n }\n } else {\n library = document.createElement('style');\n (library as HTMLStyleElement).textContent = content;\n }\n\n library.onload = () => {\n this.loadedLibraries[key].next();\n this.loadedLibraries[key].complete();\n };\n\n document.querySelector(targetQuery).insertAdjacentElement(position, library);\n\n return this.loadedLibraries[key].asObservable();\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { Config } from '../models';\n\nexport function environmentFactory(environment: Config.Environment) {\n return {\n ...environment,\n };\n}\n\nexport function configFactory(config: Config.Requirements) {\n return {\n ...config,\n };\n}\n\nexport const ENVIRONMENT = new InjectionToken('ENVIRONMENT');\n\nexport const CONFIG = new InjectionToken('CONFIG');\n","import { Directive, Output, Renderer2, ElementRef, OnInit, EventEmitter, Input } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[input.debounce]',\n})\nexport class InputEventDebounceDirective implements OnInit {\n @Input() debounce: number = 300;\n\n @Output('input.debounce') debounceEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'input')\n .pipe(\n debounceTime(this.debounce),\n takeUntilDestroy(this),\n )\n .subscribe((event: Event) => {\n this.debounceEvent.emit(event);\n });\n }\n}\n","import { Directive, ElementRef, EventEmitter, OnInit, Output, Renderer2 } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[click.stop]',\n})\nexport class ClickEventStopPropagationDirective implements OnInit {\n @Output('click.stop') stopPropEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'click')\n .pipe(takeUntilDestroy(this))\n .subscribe((event: MouseEvent) => {\n event.stopPropagation();\n this.stopPropEvent.emit(event);\n });\n }\n}\n","import { Pipe, PipeTransform, OnDestroy } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\nimport { distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\n@Pipe({\n name: 'abpLocalization',\n pure: false, // required to update the value\n})\nexport class LocalizationPipe implements PipeTransform, OnDestroy {\n initialValue: string = '';\n\n value: string;\n\n destroy$ = new Subject();\n\n constructor(private store: Store) {}\n\n transform(value: string = '', ...interpolateParams: string[]): string {\n if (this.initialValue !== value) {\n this.initialValue = value;\n this.destroy$.next();\n\n this.store\n .select(\n ConfigState.getCopy(\n value,\n ...interpolateParams.reduce((acc, val) => (Array.isArray(val) ? [...acc, ...val] : [...acc, val]), []),\n ),\n )\n .pipe(\n takeUntil(this.destroy$),\n takeUntilDestroy(this),\n distinctUntilChanged(),\n )\n .subscribe(copy => (this.value = copy));\n }\n\n return this.value;\n }\n\n ngOnDestroy() {}\n}\n","import { LOCALE_ID, Provider } from '@angular/core';\nimport localesMapping from '../constants/different-locales';\nimport { LocalizationService } from '../services/localization.service';\n\nexport class LocaleId extends String {\n constructor(private localizationService: LocalizationService) {\n super();\n }\n\n toString(): string {\n const { currentLang } = this.localizationService;\n return localesMapping[currentLang] || currentLang;\n }\n\n valueOf(): string {\n return this.toString();\n }\n}\n\nexport const LocaleProvider: Provider = {\n provide: LOCALE_ID,\n useClass: LocaleId,\n deps: [LocalizationService],\n};\n","import { CommonModule } from '@angular/common';\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { NgxsRouterPluginModule } from '@ngxs/router-plugin';\nimport { NgxsStoragePluginModule } from '@ngxs/storage-plugin';\nimport { NgxsModule, NGXS_PLUGINS } from '@ngxs/store';\nimport { DynamicLayoutComponent } from './components/dynamic-layout.component';\nimport { RouterOutletComponent } from './components/router-outlet.component';\nimport { AutofocusDirective } from './directives/autofocus.directive';\nimport { InputEventDebounceDirective } from './directives/debounce.directive';\nimport { EllipsisDirective } from './directives/ellipsis.directive';\nimport { FormSubmitDirective } from './directives/form-submit.directive';\nimport { PermissionDirective } from './directives/permission.directive';\nimport { ClickEventStopPropagationDirective } from './directives/stop-propagation.directive';\nimport { VisibilityDirective } from './directives/visibility.directive';\nimport { ApiInterceptor } from './interceptors/api.interceptor';\nimport { ABP } from './models/common';\nimport { LocalizationPipe } from './pipes/localization.pipe';\nimport { LocaleProvider } from './providers/locale.provider';\nimport { ConfigState } from './states/config.state';\nimport { ProfileState } from './states/profile.state';\nimport { SessionState } from './states/session.state';\nimport { getInitialData, localeInitializer } from './utils/initial-utils';\nimport { ConfigPlugin, NGXS_CONFIG_PLUGIN_OPTIONS } from './plugins/config/config.plugin';\nimport { ForDirective } from './directives/for.directive';\n\n@NgModule({\n imports: [\n NgxsModule.forFeature([ProfileState, SessionState, ConfigState]),\n NgxsStoragePluginModule.forRoot({ key: 'SessionState' }),\n NgxsRouterPluginModule.forRoot(),\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n ],\n declarations: [\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n ForDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n ClickEventStopPropagationDirective,\n ],\n exports: [\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n ForDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n LocalizationPipe,\n ClickEventStopPropagationDirective,\n ],\n providers: [LocalizationPipe],\n entryComponents: [RouterOutletComponent, DynamicLayoutComponent],\n})\nexport class CoreModule {\n static forRoot(options = {} as ABP.Root): ModuleWithProviders {\n return {\n ngModule: CoreModule,\n providers: [\n LocaleProvider,\n {\n provide: NGXS_PLUGINS,\n useClass: ConfigPlugin,\n multi: true,\n },\n {\n provide: NGXS_CONFIG_PLUGIN_OPTIONS,\n useValue: options,\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: ApiInterceptor,\n multi: true,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: getInitialData,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: localeInitializer,\n },\n ],\n };\n }\n}\n"],"names":["Injectable","tap","tslib_1.__decorate","Action","Selector","State","store","Store","differentLocales","registerLocaleData","noop","Router","Actions","Optional","SkipSelf","combineLatest","from","throwError","take","catchError","HttpClient","createSelector","switchMap","of","Subject","takeUntil","router","NavigationEnd","Component","ActivatedRoute","Select","Observable","Directive","ElementRef","Input","ChangeDetectorRef","HostBinding","TemplateRef","ViewContainerRef","IterableDiffers","EventEmitter","fromEvent","debounceTime","filter","FormGroupDirective","Self","Output","Renderer2","Navigate","OAuthService","finalize","Rest","InjectionToken","actionMatcher","InitState","UpdateState","setValue","Inject","ReplaySubject","takeUntilDestroy","distinctUntilChanged","Pipe","tslib_1.__extends","LOCALE_ID","NGXS_PLUGINS","HTTP_INTERCEPTORS","APP_INITIALIZER","Injector","NgModule","NgxsModule","NgxsStoragePluginModule","NgxsRouterPluginModule","CommonModule","HttpClientModule","FormsModule","ReactiveFormsModule","RouterModule"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/core/bundles/abp-ng.core.umd.min.js b/npm/ng-packs/dist/core/bundles/abp-ng.core.umd.min.js index f20a857e03..5adc238525 100644 --- a/npm/ng-packs/dist/core/bundles/abp-ng.core.umd.min.js +++ b/npm/ng-packs/dist/core/bundles/abp-ng.core.umd.min.js @@ -1,2 +1,2 @@ -!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/router"),require("@ngxs/store"),require("rxjs"),require("@angular/common/http"),require("rxjs/operators"),require("snq"),require("@angular/common"),require("@angular/forms"),require("angular-oauth2-oidc"),require("@ngxs/router-plugin"),require("@ngxs/storage-plugin"),require("@ngx-validate/core")):"function"==typeof define&&define.amd?define("@abp/ng.core",["exports","@angular/core","@angular/router","@ngxs/store","rxjs","@angular/common/http","rxjs/operators","snq","@angular/common","@angular/forms","angular-oauth2-oidc","@ngxs/router-plugin","@ngxs/storage-plugin","@ngx-validate/core"],e):e(((t=t||self).abp=t.abp||{},t.abp.ng=t.abp.ng||{},t.abp.ng.core={}),t.ng.core,t.ng.router,t.store,t.rxjs,t.ng.common.http,t.rxjs.operators,t.snq,t.ng.common,t.ng.forms,t.angularOauth2Oidc,t.routerPlugin,t.storagePlugin,t.core$1)}(this,function(exports,core,router,store,rxjs,http,operators,snq,common,forms,angularOauth2Oidc,routerPlugin,storagePlugin,core$1){"use strict";snq=snq&&snq.hasOwnProperty("default")?snq.default:snq;var extendStatics=function(t,e){return(extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)e.hasOwnProperty(r)&&(t[r]=e[r])})(t,e)};function __extends(t,e){function r(){this.constructor=t}extendStatics(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var __assign=function(){return(__assign=Object.assign||function(t){for(var e,r=1,n=arguments.length;r=0;c--)(o=t[c])&&(a=(i<3?o(a):i>3?o(e,r,a):o(e,r))||a);return i>3&&a&&Object.defineProperty(e,r,a),a}function __param(t,e){return function(r,n){e(r,n,t)}}function __metadata(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function __awaiter(t,e,r,n){return new(r||(r=Promise))(function(o,i){function a(t){try{s(n.next(t))}catch(t){i(t)}}function c(t){try{s(n.throw(t))}catch(t){i(t)}}function s(t){t.done?o(t.value):new r(function(e){e(t.value)}).then(a,c)}s((n=n.apply(t,e||[])).next())})}function __generator(t,e){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:c(0),throw:c(1),return:c(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function c(i){return function(c){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}}}function __read(t,e){var r="function"==typeof Symbol&&t[Symbol.iterator];if(!r)return t;var n,o,i=r.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(n=i.next()).done;)a.push(n.value)}catch(t){o={error:t}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return a}function __spread(){for(var t=[],e=0;e1||c(t,e)})})}function c(t,e){try{(r=o[t](e)).value instanceof __await?Promise.resolve(r.value.v).then(s,u):p(i[0][2],r)}catch(t){p(i[0][3],t)}var r}function s(t){c("next",t)}function u(t){c("throw",t)}function p(t,e){t(e),i.shift(),i.length&&c(i[0][0],i[0][1])}}function __asyncDelegator(t){var e,r;return e={},n("next"),n("throw",function(t){throw t}),n("return"),e[Symbol.iterator]=function(){return this},e;function n(n,o){e[n]=t[n]?function(e){return(r=!r)?{value:__await(t[n](e)),done:"return"===n}:o?o(e):e}:o}}function __asyncValues(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e,r=t[Symbol.asyncIterator];return r?r.call(t):(t="function"==typeof __values?__values(t):t[Symbol.iterator](),e={},n("next"),n("throw"),n("return"),e[Symbol.asyncIterator]=function(){return this},e);function n(r){e[r]=t[r]&&function(e){return new Promise(function(n,o){(function(t,e,r,n){Promise.resolve(n).then(function(e){t({value:e,done:r})},e)})(n,o,(e=t[r](e)).done,e.value)})}}}function __makeTemplateObject(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}function __importStar(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)Object.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e}function __importDefault(t){return t&&t.__esModule?t:{default:t}}var PatchRouteByName=function(){function t(t,e){this.name=t,this.newValue=e}return t.type="[Config] Patch Route By Name",t}();var GetAppConfiguration=function(){function t(){}return t.type="[Config] Get App Configuration",t}();var StartLoader=function(){function t(t){this.payload=t}return t.type="[Loader] Start",t}();var StopLoader=function(){function t(t){this.payload=t}return t.type="[Loader] Stop",t}();var GetProfile=function(){function t(){}return t.type="[Profile] Get",t}();var UpdateProfile=function(){function t(t){this.payload=t}return t.type="[Profile] Update",t}();var ChangePassword=function(){function t(t){this.payload=t}return t.type="[Profile] Change Password",t}();var RestOccurError=function(){function t(t){this.payload=t}return t.type="[Rest] Error",t}();var SetLanguage=function(){function t(t){this.payload=t}return t.type="[Session] Set Language",t}();var SetTenant=function(){function t(t){this.payload=t}return t.type="[Session] Set Tenant",t}();var RestService=function(){function t(t,e){this.http=t,this.store=e}return t.prototype.handleError=function(t){return this.store.dispatch(new RestOccurError(t)),console.error(t),rxjs.throwError(t)},t.prototype.request=function(t,e,r){var n=this;void 0===e&&(e={});var o=e.observe,i=void 0===o?"body":o,a=e.skipHandleError,c=r||this.store.selectSnapshot(ConfigState.getApiUrl())+t.url,s=t.method,u=__rest(t,["method"]);return this.http.request(s,c,__assign({observe:i},u)).pipe("body"===i?operators.take(1):null,operators.catchError(function(t){return a?rxjs.throwError(t):n.handleError(t)}))},t.decorators=[{type:core.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:http.HttpClient},{type:store.Store}]},t.ngInjectableDef=core.ɵɵdefineInjectable({factory:function(){return new t(core.ɵɵinject(http.HttpClient),core.ɵɵinject(store.Store))},token:t,providedIn:"root"}),t}();var ProfileService=function(){function t(t){this.rest=t}return t.prototype.get=function(){return this.rest.request({method:"GET",url:"/api/identity/my-profile"})},t.prototype.update=function(t){var e={method:"PUT",url:"/api/identity/my-profile",body:t};return this.rest.request(e)},t.prototype.changePassword=function(t,e){void 0===e&&(e=!1);var r={method:"POST",url:"/api/identity/my-profile/change-password",body:t};return this.rest.request(r,{skipHandleError:e})},t.decorators=[{type:core.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:RestService}]},t.ngInjectableDef=core.ɵɵdefineInjectable({factory:function(){return new t(core.ɵɵinject(RestService))},token:t,providedIn:"root"}),t}();var ProfileState=function(){function t(t){this.profileService=t}return t.getProfile=function(t){return t.profile},t.prototype.profileGet=function(t){var e=t.patchState;return this.profileService.get().pipe(operators.tap(function(t){return e({profile:t})}))},t.prototype.profileUpdate=function(t,e){var r=t.patchState,n=e.payload;return this.profileService.update(n).pipe(operators.tap(function(t){return r({profile:t})}))},t.prototype.changePassword=function(t,e){var r=e.payload;return this.profileService.changePassword(r,!0)},__decorate([store.Action(GetProfile),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",void 0)],t.prototype,"profileGet",null),__decorate([store.Action(UpdateProfile),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,UpdateProfile]),__metadata("design:returntype",void 0)],t.prototype,"profileUpdate",null),__decorate([store.Action(ChangePassword),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,ChangePassword]),__metadata("design:returntype",void 0)],t.prototype,"changePassword",null),__decorate([store.Selector(),__metadata("design:type",Function),__metadata("design:paramtypes",[Object]),__metadata("design:returntype",Object)],t,"getProfile",null),t=__decorate([store.State({name:"ProfileState",defaults:{}}),__metadata("design:paramtypes",[ProfileService])],t)}();var ApplicationConfigurationService=function(){function t(t){this.rest=t}return t.prototype.getConfiguration=function(){return this.rest.request({method:"GET",url:"/api/abp/application-configuration"})},t.decorators=[{type:core.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:RestService}]},t.ngInjectableDef=core.ɵɵdefineInjectable({factory:function(){return new t(core.ɵɵinject(RestService))},token:t,providedIn:"root"}),t}();var localesMapping={"ar-sa":"ar-SA","ca-ES-valencia":"ca-ES-VALENCIA","de-de":"de","es-ES":"es","en-US":"en","fil-Latn":"en","ku-Arab":"en","ky-Cyrl":"en","mi-Latn":"en","prs-Arab":"en","qut-Latn":"en",nso:"en",quz:"en","fr-FR":"fr","gd-Latn":"gd","ha-Latn":"ha","ig-Latn":"ig","it-it":"it","mn-Cyrl":"mn","pt-BR":"pt","sd-Arab":"pa-Arab","sr-Cyrl-RS":"sr-Cyrl","sr-Latn-RS":"sr-Latn","tg-Cyrl":"tg","tk-Latn":"tk","tt-Cyrl":"tt","ug-Arab":"ug","yo-Latn":"yo"};function getInitialData(t){return function(){return t.get(store.Store).dispatch(new GetAppConfiguration).toPromise()}}function localeInitializer(t){return function(){var e=t.get(store.Store).selectSnapshot(SessionState.getLanguage)||"en";return new Promise(function(t,r){registerLocale(e).then(function(){return t()},r)})}}function registerLocale(t){return import("@angular/common/locales/"+(localesMapping[t]||t)+".js").then(function(t){common.registerLocaleData(t.default)})}var LocalizationService=function(){function t(t,e,r,n){if(this.store=t,this.router=e,this.actions=r,n)throw new Error("LocaleService should have only one instance.")}return Object.defineProperty(t.prototype,"currentLang",{get:function(){return this.store.selectSnapshot(SessionState.getLanguage)},enumerable:!0,configurable:!0}),t.prototype.setRouteReuse=function(t){this.router.routeReuseStrategy.shouldReuseRoute=t},t.prototype.registerLocale=function(t){var e=this,r=this.router.routeReuseStrategy.shouldReuseRoute;return this.setRouteReuse(function(){return!1}),this.router.navigated=!1,registerLocale(t).then(function(){return __awaiter(e,void 0,void 0,function(){return __generator(this,function(t){switch(t.label){case 0:return[4,this.router.navigateByUrl(this.router.url).catch(rxjs.noop)];case 1:return t.sent(),this.setRouteReuse(r),[2]}})})})},t.prototype.get=function(t){for(var e=[],r=1;r1?(keys.forEach(function(t){var e=getPolicy(t);condition=condition.replace(t,e)}),eval("!!"+condition)):getPolicy(condition)});return selector},ConfigState.getCopy=function(t){for(var e=[],r=1;r>t/4).toString(16):(""+1e7+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,uuid)}function isFunction(t){return"function"==typeof t}var takeUntilDestroy=function(t,e){return void 0===e&&(e="ngOnDestroy"),function(r){var n=t[e];if(!1===isFunction(n))throw new Error(t.constructor.name+" is using untilDestroyed but doesn't implement "+e);return t.__takeUntilDestroy||(t.__takeUntilDestroy=new rxjs.Subject,t[e]=function(){isFunction(n)&&n.apply(this,arguments),t.__takeUntilDestroy.next(!0),t.__takeUntilDestroy.complete()}),r.pipe(operators.takeUntil(t.__takeUntilDestroy))}},DynamicLayoutComponent=function(){function t(t,e){var r=this;this.router=t,this.store=e,this.router.events.pipe(takeUntilDestroy(this)).subscribe(function(t){if(t instanceof router.NavigationEnd){var e=r.router.parseUrl(t.url).root.children.primary.segments,n=r.store.selectSnapshot(ConfigState.getAll),o=n.requirements.layouts,i=findLayout(e,n.routes);r.layout=o.filter(function(t){return!!t}).find(function(t){return snq(function(){return t.type.toLowerCase().indexOf(i)},-1)>-1})}})}return t.prototype.ngOnDestroy=function(){},t.decorators=[{type:core.Component,args:[{selector:"abp-dynamic-layout",template:'\n \n\n \n \n '}]}],t.ctorParameters=function(){return[{type:router.Router},{type:store.Store}]},__decorate([store.Select(ConfigState.getOne("requirements")),__metadata("design:type",rxjs.Observable)],t.prototype,"requirements$",void 0),t}();function findLayout(t,e){var r="empty",n=e.reduce(function(t,e){return e.wrapper?__spread(t,e.children):__spread(t,[e])},[]).find(function(e){return e.path===t[0].path});if(n&&(n.layout&&(r=n.layout),n.children&&n.children.length&&t.length>1)){var o=n.children.find(function(e){return e.path===t[1].path});o&&o.layout&&(r=o.layout)}return r}var RouterOutletComponent=function(){function t(){}return t.decorators=[{type:core.Component,args:[{selector:"abp-router-outlet",template:"\n \n "}]}],t}(),AutofocusDirective=function(){function t(t){this.elRef=t,this.delay=0}return t.prototype.ngAfterViewInit=function(){var t=this;setTimeout(function(){return t.elRef.nativeElement.focus()},this.delay)},t.decorators=[{type:core.Directive,args:[{selector:"[autofocus]"}]}],t.ctorParameters=function(){return[{type:core.ElementRef}]},t.propDecorators={delay:[{type:core.Input,args:["autofocus"]}]},t}();var EllipsisDirective=function(){function t(t,e){this.cdRef=t,this.elRef=e,this.enabled=!0}return Object.defineProperty(t.prototype,"inlineClass",{get:function(){return this.enabled&&this.width},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"class",{get:function(){return this.enabled&&!this.width},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"maxWidth",{get:function(){return this.enabled&&this.width?this.width||"170px":void 0},enumerable:!0,configurable:!0}),t.prototype.ngAfterContentInit=function(){var t=this;setTimeout(function(){var e=t.title;t.title=e||t.elRef.nativeElement.innerText,t.title!==e&&t.cdRef.detectChanges()},0)},t.decorators=[{type:core.Directive,args:[{selector:"[abpEllipsis]"}]}],t.ctorParameters=function(){return[{type:core.ChangeDetectorRef},{type:core.ElementRef}]},t.propDecorators={width:[{type:core.Input,args:["abpEllipsis"]}],title:[{type:core.HostBinding,args:["title"]},{type:core.Input}],enabled:[{type:core.Input,args:["abpEllipsisEnabled"]}],inlineClass:[{type:core.HostBinding,args:["class.abp-ellipsis-inline"]}],class:[{type:core.HostBinding,args:["class.abp-ellipsis"]}],maxWidth:[{type:core.HostBinding,args:["style.max-width"]}]},t}();var FormSubmitDirective=function(){function t(t,e,r){this.formGroupDirective=t,this.host=e,this.cdRef=r,this.ngSubmit=new core.EventEmitter,this.executedNgSubmit=!1}return t.prototype.ngOnInit=function(){var t=this;this.formGroupDirective.ngSubmit.pipe(takeUntilDestroy(this)).subscribe(function(){t.markAsDirty(),t.executedNgSubmit=!0}),rxjs.fromEvent(this.host.nativeElement,"keyup").pipe(operators.debounceTime(200),operators.filter(function(t){return t&&"Enter"===t.key}),takeUntilDestroy(this)).subscribe(function(){t.executedNgSubmit||t.host.nativeElement.dispatchEvent(new Event("submit",{bubbles:!0,cancelable:!0})),t.executedNgSubmit=!1}),rxjs.fromEvent(this.host.nativeElement,"submit").pipe(takeUntilDestroy(this),operators.filter(function(){return!t.notValidateOnSubmit&&"string"!=typeof t.notValidateOnSubmit})).subscribe(function(){t.executedNgSubmit||t.markAsDirty()})},t.prototype.ngOnDestroy=function(){},t.prototype.markAsDirty=function(){var t=this.formGroupDirective.form;setDirty(t.controls),t.markAsDirty(),this.cdRef.detectChanges()},t.decorators=[{type:core.Directive,args:[{selector:"form[ngSubmit][formGroup]"}]}],t.ctorParameters=function(){return[{type:forms.FormGroupDirective,decorators:[{type:core.Self}]},{type:core.ElementRef},{type:core.ChangeDetectorRef}]},t.propDecorators={notValidateOnSubmit:[{type:core.Input}],ngSubmit:[{type:core.Output}]},t}();function setDirty(t){Array.isArray(t)?t.forEach(function(t){setDirty(t.controls)}):Object.keys(t).forEach(function(e){t[e].markAsDirty(),t[e].updateValueAndValidity()})}var PermissionDirective=function(){function t(t,e,r){this.elRef=t,this.renderer=e,this.store=r}return t.prototype.ngOnInit=function(){var t=this;this.condition&&this.store.select(ConfigState.getGrantedPolicy(this.condition)).pipe(takeUntilDestroy(this)).subscribe(function(e){e||t.renderer.removeChild(t.elRef.nativeElement.parentElement,t.elRef.nativeElement)})},t.prototype.ngOnDestroy=function(){},t.decorators=[{type:core.Directive,args:[{selector:"[abpPermission]"}]}],t.ctorParameters=function(){return[{type:core.ElementRef,decorators:[{type:core.Optional}]},{type:core.Renderer2},{type:store.Store}]},t.propDecorators={condition:[{type:core.Input,args:["abpPermission"]}]},t}();var VisibilityDirective=function(){function t(t,e){this.elRef=t,this.renderer=e,this.completed$=new rxjs.Subject}return t.prototype.ngAfterViewInit=function(){var t=this,e=new MutationObserver(function(e){e.forEach(function(e){e.target&&(snq(function(){return Array.from(e.target.childNodes).filter(function(t){return t instanceof HTMLElement})},[]).length?setTimeout(function(){t.disconnect()},0):(t.renderer.removeChild(t.elRef.nativeElement.parentElement,t.elRef.nativeElement),t.disconnect()))})});e.observe(this.focusedElement,{childList:!0}),this.completed$.subscribe(function(){return e.disconnect()})},t.prototype.disconnect=function(){this.completed$.next(),this.completed$.complete()},t.decorators=[{type:core.Directive,args:[{selector:"[abpVisibility]"}]}],t.ctorParameters=function(){return[{type:core.ElementRef,decorators:[{type:core.Optional}]},{type:core.Renderer2}]},t.propDecorators={focusedElement:[{type:core.Input,args:["abpVisibility"]}]},t}();var eLayoutType={account:"account",application:"application",empty:"empty"},AuthGuard=function(){function t(t,e){this.oauthService=t,this.store=e}return t.prototype.canActivate=function(t,e){var r=this.oauthService.hasValidAccessToken();return r||(this.store.dispatch(new routerPlugin.Navigate(["/account/login"],null,{state:{redirectUrl:e.url}})),!1)},t.decorators=[{type:core.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:angularOauth2Oidc.OAuthService},{type:store.Store}]},t.ngInjectableDef=core.ɵɵdefineInjectable({factory:function(){return new t(core.ɵɵinject(angularOauth2Oidc.OAuthService),core.ɵɵinject(store.Store))},token:t,providedIn:"root"}),t}();var PermissionGuard=function(){function t(t){this.store=t}return t.prototype.canActivate=function(t){var e=this,r=t.data.requiredPolicy;return this.store.select(ConfigState.getGrantedPolicy(r)).pipe(operators.tap(function(t){t||e.store.dispatch(new RestOccurError({status:403}))}))},t.decorators=[{type:core.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:store.Store}]},t.ngInjectableDef=core.ɵɵdefineInjectable({factory:function(){return new t(core.ɵɵinject(store.Store))},token:t,providedIn:"root"}),t}();var ApiInterceptor=function(){function t(t,e){this.oAuthService=t,this.store=e}return t.prototype.intercept=function(t,e){var r=this;this.store.dispatch(new StartLoader(t));var n={},o=this.oAuthService.getAccessToken();!t.headers.has("Authorization")&&o&&(n.Authorization="Bearer "+o);var i=this.store.selectSnapshot(SessionState.getLanguage);!t.headers.has("Accept-Language")&&i&&(n["Accept-Language"]=i);var a=this.store.selectSnapshot(SessionState.getTenant);return!t.headers.has("__tenant")&&a&&(n.__tenant=a.id),e.handle(t.clone({setHeaders:n})).pipe(operators.finalize(function(){return r.store.dispatch(new StopLoader(t))}))},t.decorators=[{type:core.Injectable}],t.ctorParameters=function(){return[{type:angularOauth2Oidc.OAuthService},{type:store.Store}]},t}(),ApplicationConfiguration,ABP,Config,Session,Profile;(function(t){function e(){}function r(){}function n(){}function o(){}function i(){}function a(){}function c(){}t.Response=e,t.Localization=r,t.LocalizationValue=function(){},t.Language=n,t.Auth=o,t.Policy=function(){},t.Setting=i,t.CurrentUser=a,t.Features=c})(ApplicationConfiguration||(ApplicationConfiguration={})),function(t){function e(){}function r(){}function n(){}function o(){}function i(){}function a(){}t.Root=e,t.PagedItemsResponse=r,t.PageQueryParams=n,t.Route=o,t.FullRoute=i,t.BasicItem=a}(ABP||(ABP={})),function(t){function e(){}function r(){}function n(){}t.State=function(){},t.Environment=e,t.Application=r,t.Apis=function(){},t.Requirements=n}(Config||(Config={})),function(t){function e(){}function r(){}t.Config=e,t.Request=r}(exports.Rest||(exports.Rest={})),function(t){function e(){}t.State=e}(Session||(Session={})),function(t){function e(){}function r(){}function n(){}t.State=e,t.Response=r,t.ChangePasswordRequest=n}(Profile||(Profile={}));var NGXS_CONFIG_PLUGIN_OPTIONS=new core.InjectionToken("NGXS_CONFIG_PLUGIN_OPTIONS"),ConfigPlugin=function(){function t(t,e){this.options=t,this.router=e,this.initialized=!1}return t.prototype.handle=function(t,e,r){var n=store.actionMatcher(e);if((n(store.InitState)||n(store.UpdateState))&&!this.initialized){var o=transformRoutes(this.router.config),i=o.routes;i=organizeRoutes(i,o.wrappers),t=store.setValue(t,"ConfigState",__assign({},t.ConfigState&&__assign({},t.ConfigState),this.options,{routes:i})),this.initialized=!0}return r(t,e)},t.decorators=[{type:core.Injectable}],t.ctorParameters=function(){return[{type:void 0,decorators:[{type:core.Inject,args:[NGXS_CONFIG_PLUGIN_OPTIONS]}]},{type:router.Router}]},t}();function transformRoutes(t,e){void 0===t&&(t=[]),void 0===e&&(e=[]);var r=t.filter(function(t){return snq(function(){return t.data.routes.routes.find(function(e){return e.path===t.path})},!1)}).reduce(function(t,e){return __spread(t,e.data.routes.routes)},[]);e=r.filter(function(t){return t.wrapper});var n=[];return t.filter(function(t){return(t.data||{}).routes&&(t.component||t.loadChildren)}).forEach(function(t){var e=r.find(function(e){return e.path.toLowerCase()===t.path.toLowerCase()&&snq(function(){return t.data.routes.routes.length},!1)}),o=n.length;e&&n.push(e),n.length===o&&n.push(__assign({},t.data.routes,{path:t.path,name:snq(function(){return t.data.routes.name},t.path),children:t.data.routes.children||[]}))}),{routes:setUrls(n),wrappers:e}}function setUrls(t,e){return e?t.map(function(t){return __assign({},t,{url:e+"/"+t.path},t.children&&t.children.length&&{children:setUrls(t.children,e+"/"+t.path)})}):t.map(function(t){return __assign({},t,{url:"/"+t.path},t.children&&t.children.length&&{children:setUrls(t.children,"/"+t.path)})})}var ConfigService=function(){function t(t){this.store=t}return t.prototype.getAll=function(){return this.store.selectSnapshot(ConfigState.getAll)},t.prototype.getOne=function(t){return this.store.selectSnapshot(ConfigState.getOne(t))},t.prototype.getDeep=function(t){return this.store.selectSnapshot(ConfigState.getDeep(t))},t.prototype.getSetting=function(t){return this.store.selectSnapshot(ConfigState.getSetting(t))},t.decorators=[{type:core.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:store.Store}]},t.ngInjectableDef=core.ɵɵdefineInjectable({factory:function(){return new t(core.ɵɵinject(store.Store))},token:t,providedIn:"root"}),t}();var LazyLoadService=function(){function t(){this.loadedLibraries={}}return t.prototype.load=function(t,e,r,n,o){var i=this;if(void 0===r&&(r=""),void 0===n&&(n="body"),void 0===o&&(o="afterend"),t||r){var a,c=t?t.slice(t.lastIndexOf("/")+1):uuid();return this.loadedLibraries[c]?this.loadedLibraries[c].asObservable():(this.loadedLibraries[c]=new rxjs.ReplaySubject,"script"===e?((a=document.createElement("script")).type="text/javascript",t&&(a.src=t),a.text=r):t?((a=document.createElement("link")).type="text/css",a.rel="stylesheet",t&&(a.href=t)):(a=document.createElement("style")).textContent=r,a.onload=function(){i.loadedLibraries[c].next(),i.loadedLibraries[c].complete()},document.querySelector(n).insertAdjacentElement(o,a),this.loadedLibraries[c].asObservable())}},t.decorators=[{type:core.Injectable,args:[{providedIn:"root"}]}],t.ngInjectableDef=core.ɵɵdefineInjectable({factory:function(){return new t},token:t,providedIn:"root"}),t}();function environmentFactory(t){return __assign({},t)}function configFactory(t){return __assign({},t)}var ENVIRONMENT=new core.InjectionToken("ENVIRONMENT"),CONFIG=new core.InjectionToken("CONFIG"),InputEventDebounceDirective=function(){function t(t,e){this.renderer=t,this.el=e,this.debounce=300,this.debounceEvent=new core.EventEmitter}return t.prototype.ngOnInit=function(){var t=this;rxjs.fromEvent(this.el.nativeElement,"input").pipe(operators.debounceTime(this.debounce),core$1.takeUntilDestroy(this)).subscribe(function(e){t.debounceEvent.emit(e)})},t.decorators=[{type:core.Directive,args:[{selector:"[input.debounce]"}]}],t.ctorParameters=function(){return[{type:core.Renderer2},{type:core.ElementRef}]},t.propDecorators={debounce:[{type:core.Input}],debounceEvent:[{type:core.Output,args:["input.debounce"]}]},t}();var ClickEventStopPropagationDirective=function(){function t(t,e){this.renderer=t,this.el=e,this.stopPropEvent=new core.EventEmitter}return t.prototype.ngOnInit=function(){var t=this;rxjs.fromEvent(this.el.nativeElement,"click").pipe(core$1.takeUntilDestroy(this)).subscribe(function(e){e.stopPropagation(),t.stopPropEvent.emit(e)})},t.decorators=[{type:core.Directive,args:[{selector:"[click.stop]"}]}],t.ctorParameters=function(){return[{type:core.Renderer2},{type:core.ElementRef}]},t.propDecorators={stopPropEvent:[{type:core.Output,args:["click.stop"]}]},t}();var LocalizationPipe=function(){function t(t){this.store=t,this.initialValue="",this.destroy$=new rxjs.Subject}return t.prototype.transform=function(t){var e=this;void 0===t&&(t="");for(var r=[],n=1;n=0;u--)(o=t[u])&&(a=(i<3?o(a):i>3?o(e,n,a):o(e,n))||a);return i>3&&a&&Object.defineProperty(e,n,a),a}function b(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function S(t,e){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:u(0),throw:u(1),return:u(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function u(i){return function(u){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,r=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]0)&&!(r=i.next()).done;)a.push(r.value)}catch(t){o={error:t}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a}function I(){for(var t=[],e=0;e-1})),this.router.events.pipe(W(this)).subscribe(function(t){if(t instanceof n.NavigationEnd){var e=o.router.parseUrl(t.url).root.children.primary.segments,r=(o.route.snapshot.data||{}).layout||function(t,e){var n="empty",r=e.reduce(function(t,e){return e.wrapper?I(t,e.children):I(t,[e])},[]).find(function(e){return e.path===t[0].path});if(r&&(r.layout&&(n=r.layout),r.children&&r.children.length&&t.length>1)){var o=r.children.find(function(e){return e.path===t[1].path});o&&o.layout&&(n=o.layout)}return n}(e,c);o.layout=u.filter(function(t){return!!t}).find(function(t){return i(function(){return t.type.toLowerCase().indexOf(r)},-1)>-1})}})}return t.prototype.ngOnDestroy=function(){},t.decorators=[{type:e.Component,args:[{selector:"abp-dynamic-layout",template:'\n \n\n \n \n '}]}],t.ctorParameters=function(){return[{type:n.Router},{type:n.ActivatedRoute},{type:r.Store}]},m([r.Select($.getOne("requirements")),b("design:type",o.Observable)],t.prototype,"requirements$",void 0),t}();var Q=function(){function t(){}return t.decorators=[{type:e.Component,args:[{selector:"abp-router-outlet",template:"\n \n "}]}],t}(),J=function(){function t(t){this.elRef=t,this.delay=0}return t.prototype.ngAfterViewInit=function(){var t=this;setTimeout(function(){return t.elRef.nativeElement.focus()},this.delay)},t.decorators=[{type:e.Directive,args:[{selector:"[autofocus]"}]}],t.ctorParameters=function(){return[{type:e.ElementRef}]},t.propDecorators={delay:[{type:e.Input,args:["autofocus"]}]},t}();var K=function(){function t(t,e){this.cdRef=t,this.elRef=e,this.enabled=!0}return Object.defineProperty(t.prototype,"inlineClass",{get:function(){return this.enabled&&this.width},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"class",{get:function(){return this.enabled&&!this.width},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"maxWidth",{get:function(){return this.enabled&&this.width?this.width||"170px":void 0},enumerable:!0,configurable:!0}),t.prototype.ngAfterContentInit=function(){var t=this;setTimeout(function(){var e=t.title;t.title=e||t.elRef.nativeElement.innerText,t.title!==e&&t.cdRef.detectChanges()},0)},t.decorators=[{type:e.Directive,args:[{selector:"[abpEllipsis]"}]}],t.ctorParameters=function(){return[{type:e.ChangeDetectorRef},{type:e.ElementRef}]},t.propDecorators={width:[{type:e.Input,args:["abpEllipsis"]}],title:[{type:e.HostBinding,args:["title"]},{type:e.Input}],enabled:[{type:e.Input,args:["abpEllipsisEnabled"]}],inlineClass:[{type:e.HostBinding,args:["class.abp-ellipsis-inline"]}],class:[{type:e.HostBinding,args:["class.abp-ellipsis"]}],maxWidth:[{type:e.HostBinding,args:["style.max-width"]}]},t}();var Y=function(t,e,n,r){this.$implicit=t,this.index=e,this.count=n,this.list=r};var tt=function(t,e){this.record=t,this.view=e};var et=function(){function t(t,e,n){this.tempRef=t,this.vcRef=e,this.differs=n}return Object.defineProperty(t.prototype,"compareFn",{get:function(){return this.compareBy||s},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"trackByFn",{get:function(){return this.trackBy||function(t,e){return e.id||t}},enumerable:!0,configurable:!0}),t.prototype.iterateOverAppliedOperations=function(t){var e=this,n=[];t.forEachOperation(function(t,r,o){if(null==t.previousIndex){var i=e.vcRef.createEmbeddedView(e.tempRef,new Y(null,-1,-1,e.items),o);n.push(new tt(t,i))}else if(null==o)e.vcRef.remove(r);else{i=e.vcRef.get(r);e.vcRef.move(i,o),n.push(new tt(t,i))}});for(var r=0,o=n.length;rn[e.orderBy]?1:t[e.orderBy]>t/4).toString(16):(""+1e7+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,nt)}var rt=function(){function t(t,n,r){this.formGroupDirective=t,this.host=n,this.cdRef=r,this.ngSubmit=new e.EventEmitter,this.executedNgSubmit=!1}return t.prototype.ngOnInit=function(){var t=this;this.formGroupDirective.ngSubmit.pipe(W(this)).subscribe(function(){t.markAsDirty(),t.executedNgSubmit=!0}),o.fromEvent(this.host.nativeElement,"keyup").pipe(u.debounceTime(200),u.filter(function(t){return t&&"Enter"===t.key}),W(this)).subscribe(function(){t.executedNgSubmit||t.host.nativeElement.dispatchEvent(new Event("submit",{bubbles:!0,cancelable:!0})),t.executedNgSubmit=!1}),o.fromEvent(this.host.nativeElement,"submit").pipe(W(this),u.filter(function(){return!t.notValidateOnSubmit&&"string"!=typeof t.notValidateOnSubmit})).subscribe(function(){t.executedNgSubmit||t.markAsDirty()})},t.prototype.ngOnDestroy=function(){},t.prototype.markAsDirty=function(){var t=this.formGroupDirective.form;!function t(e){if(Array.isArray(e))return void e.forEach(function(e){t(e.controls)});Object.keys(e).forEach(function(t){e[t].markAsDirty(),e[t].updateValueAndValidity()})}(t.controls),t.markAsDirty(),this.cdRef.detectChanges()},t.decorators=[{type:e.Directive,args:[{selector:"form[ngSubmit][formGroup]"}]}],t.ctorParameters=function(){return[{type:l.FormGroupDirective,decorators:[{type:e.Self}]},{type:e.ElementRef},{type:e.ChangeDetectorRef}]},t.propDecorators={notValidateOnSubmit:[{type:e.Input}],ngSubmit:[{type:e.Output}]},t}();var ot=function(){function t(t,e,n){this.elRef=t,this.renderer=e,this.store=n}return t.prototype.ngOnInit=function(){var t=this;this.condition&&this.store.select($.getGrantedPolicy(this.condition)).pipe(W(this)).subscribe(function(e){e||t.renderer.removeChild(t.elRef.nativeElement.parentElement,t.elRef.nativeElement)})},t.prototype.ngOnDestroy=function(){},t.decorators=[{type:e.Directive,args:[{selector:"[abpPermission]"}]}],t.ctorParameters=function(){return[{type:e.ElementRef,decorators:[{type:e.Optional}]},{type:e.Renderer2},{type:r.Store}]},t.propDecorators={condition:[{type:e.Input,args:["abpPermission"]}]},t}();var it=function(){function t(t,e){this.elRef=t,this.renderer=e,this.completed$=new o.Subject}return t.prototype.ngAfterViewInit=function(){var t=this,e=new MutationObserver(function(e){e.forEach(function(e){e.target&&(i(function(){return Array.from(e.target.childNodes).filter(function(t){return t instanceof HTMLElement})},[]).length?setTimeout(function(){t.disconnect()},0):(t.renderer.removeChild(t.elRef.nativeElement.parentElement,t.elRef.nativeElement),t.disconnect()))})});e.observe(this.focusedElement,{childList:!0}),this.completed$.subscribe(function(){return e.disconnect()})},t.prototype.disconnect=function(){this.completed$.next(),this.completed$.complete()},t.decorators=[{type:e.Directive,args:[{selector:"[abpVisibility]"}]}],t.ctorParameters=function(){return[{type:e.ElementRef,decorators:[{type:e.Optional}]},{type:e.Renderer2}]},t.propDecorators={focusedElement:[{type:e.Input,args:["abpVisibility"]}]},t}();var at=function(){function t(t,e){this.oauthService=t,this.store=e}return t.prototype.canActivate=function(t,e){var n=this.oauthService.hasValidAccessToken();return n||(this.store.dispatch(new d.Navigate(["/account/login"],null,{state:{redirectUrl:e.url}})),!1)},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:f.OAuthService},{type:r.Store}]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(f.OAuthService),e.ɵɵinject(r.Store))},token:t,providedIn:"root"}),t}();var ut=function(){function t(t){this.store=t}return t.prototype.canActivate=function(t){var e=this,n=t.data.requiredPolicy;return this.store.select($.getGrantedPolicy(n)).pipe(u.tap(function(t){t||e.store.dispatch(new D({status:403}))}))},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:r.Store}]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(r.Store))},token:t,providedIn:"root"}),t}();var ct,st,pt,lt,ft,dt=function(){function t(t,e){this.oAuthService=t,this.store=e}return t.prototype.intercept=function(t,e){var n=this;this.store.dispatch(new j(t));var r={},o=this.oAuthService.getAccessToken();!t.headers.has("Authorization")&&o&&(r.Authorization="Bearer "+o);var i=this.store.selectSnapshot(B.getLanguage);!t.headers.has("Accept-Language")&&i&&(r["Accept-Language"]=i);var a=this.store.selectSnapshot(B.getTenant);return!t.headers.has("__tenant")&&a&&(r.__tenant=a.id),e.handle(t.clone({setHeaders:r})).pipe(u.finalize(function(){return n.store.dispatch(new E(t))}))},t.decorators=[{type:e.Injectable}],t.ctorParameters=function(){return[{type:f.OAuthService},{type:r.Store}]},t}();(function(t){function e(){}function n(){}function r(){}function o(){}function i(){}function a(){}function u(){}t.Response=e,t.Localization=n,t.LocalizationValue=function(){},t.Language=r,t.Auth=o,t.Policy=function(){},t.Setting=i,t.CurrentUser=a,t.Features=u})(ct||(ct={})),function(t){function e(){}function n(){}function r(){}function o(){}function i(){}function a(){}t.Root=e,t.PagedItemsResponse=n,t.PageQueryParams=r,t.Route=o,t.FullRoute=i,t.BasicItem=a}(st||(st={})),function(t){function e(){}function n(){}function r(){}t.Environment=e,t.Application=n,t.Apis=function(){},t.Requirements=r}(pt||(pt={})),function(t){function e(){}function n(){}t.Config=e,t.Request=n}(t.Rest||(t.Rest={})),function(t){function e(){}t.State=e}(lt||(lt={})),function(t){function e(){}function n(){}function r(){}t.State=e,t.Response=n,t.ChangePasswordRequest=r}(ft||(ft={}));var ht=new e.InjectionToken("NGXS_CONFIG_PLUGIN_OPTIONS"),yt=function(){function t(t,e){this.options=t,this.router=e,this.initialized=!1}return t.prototype.handle=function(t,e,n){var o=r.actionMatcher(e);if((o(r.InitState)||o(r.UpdateState))&&!this.initialized){var a=function(t,e){void 0===t&&(t=[]);void 0===e&&(e=[]);var n=t.filter(function(t){return i(function(){return t.data.routes.routes.find(function(e){return e.path===t.path})},!1)}).reduce(function(t,e){return I(t,e.data.routes.routes)},[]);e=n.filter(function(t){return t.wrapper});var r=[];return t.filter(function(t){return(t.data||{}).routes&&(t.component||t.loadChildren)}).forEach(function(t){var e=n.find(function(e){return e.path.toLowerCase()===t.path.toLowerCase()&&i(function(){return t.data.routes.routes.length},!1)}),o=r.length;e&&r.push(e),r.length===o&&r.push(v({},t.data.routes,{path:t.path,name:i(function(){return t.data.routes.name},t.path),children:t.data.routes.children||[]}))}),{routes:gt(r),wrappers:e}}(this.router.config),u=a.routes;u=M(u,a.wrappers);var c=function(t){var e=function(t){return t.reduce(function(t,n){var r=[n];if(n.children){var o=n.children;delete n.children,r=I([n],e(o))}return I(t,r)},[])};return e(t)}(p(u));t=r.setValue(t,"ConfigState",v({},t.ConfigState&&v({},t.ConfigState),this.options,{routes:u,flattedRoutes:c})),this.initialized=!0}return n(t,e)},t.decorators=[{type:e.Injectable}],t.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Inject,args:[ht]}]},{type:n.Router}]},t}();function gt(t,e){return e?t.map(function(t){return v({},t,{url:e+"/"+t.path},t.children&&t.children.length&&{children:gt(t.children,e+"/"+t.path)})}):t.map(function(t){return v({},t,{url:"/"+t.path},t.children&&t.children.length&&{children:gt(t.children,"/"+t.path)})})}var vt=function(){function t(t){this.store=t}return t.prototype.getAll=function(){return this.store.selectSnapshot($.getAll)},t.prototype.getOne=function(t){return this.store.selectSnapshot($.getOne(t))},t.prototype.getDeep=function(t){return this.store.selectSnapshot($.getDeep(t))},t.prototype.getSetting=function(t){return this.store.selectSnapshot($.getSetting(t))},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ctorParameters=function(){return[{type:r.Store}]},t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t(e.ɵɵinject(r.Store))},token:t,providedIn:"root"}),t}();var mt=function(){function t(){this.loadedLibraries={}}return t.prototype.load=function(t,e,n,r,i){var a=this;if(void 0===n&&(n=""),void 0===r&&(r="body"),void 0===i&&(i="afterend"),t||n){var u,c=t?t.slice(t.lastIndexOf("/")+1):nt();return this.loadedLibraries[c]?this.loadedLibraries[c].asObservable():(this.loadedLibraries[c]=new o.ReplaySubject,"script"===e?((u=document.createElement("script")).type="text/javascript",t&&(u.src=t),u.text=n):t?((u=document.createElement("link")).type="text/css",u.rel="stylesheet",t&&(u.href=t)):(u=document.createElement("style")).textContent=n,u.onload=function(){a.loadedLibraries[c].next(),a.loadedLibraries[c].complete()},document.querySelector(r).insertAdjacentElement(i,u),this.loadedLibraries[c].asObservable())}},t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ngInjectableDef=e.ɵɵdefineInjectable({factory:function(){return new t},token:t,providedIn:"root"}),t}();var bt=new e.InjectionToken("ENVIRONMENT"),St=new e.InjectionToken("CONFIG"),Rt=function(){function t(t,n){this.renderer=t,this.el=n,this.debounce=300,this.debounceEvent=new e.EventEmitter}return t.prototype.ngOnInit=function(){var t=this;o.fromEvent(this.el.nativeElement,"input").pipe(u.debounceTime(this.debounce),y.takeUntilDestroy(this)).subscribe(function(e){t.debounceEvent.emit(e)})},t.decorators=[{type:e.Directive,args:[{selector:"[input.debounce]"}]}],t.ctorParameters=function(){return[{type:e.Renderer2},{type:e.ElementRef}]},t.propDecorators={debounce:[{type:e.Input}],debounceEvent:[{type:e.Output,args:["input.debounce"]}]},t}();var It=function(){function t(t,n){this.renderer=t,this.el=n,this.stopPropEvent=new e.EventEmitter}return t.prototype.ngOnInit=function(){var t=this;o.fromEvent(this.el.nativeElement,"click").pipe(y.takeUntilDestroy(this)).subscribe(function(e){e.stopPropagation(),t.stopPropEvent.emit(e)})},t.decorators=[{type:e.Directive,args:[{selector:"[click.stop]"}]}],t.ctorParameters=function(){return[{type:e.Renderer2},{type:e.ElementRef}]},t.propDecorators={stopPropEvent:[{type:e.Output,args:["click.stop"]}]},t}();var Ot=function(){function t(t){this.store=t,this.initialValue="",this.destroy$=new o.Subject}return t.prototype.transform=function(t){var e=this;void 0===t&&(t="");for(var n=[],r=1;r= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ABP } from '../models';\n\nexport class PatchRouteByName {\n static readonly type = '[Config] Patch Route By Name';\n constructor(public name: string, public newValue: Partial) {}\n}\n\nexport class GetAppConfiguration {\n static readonly type = '[Config] Get App Configuration';\n}\n","import { HttpRequest } from '@angular/common/http';\n\nexport class StartLoader {\n static readonly type = '[Loader] Start';\n constructor(public payload: HttpRequest) {}\n}\n\nexport class StopLoader {\n static readonly type = '[Loader] Stop';\n constructor(public payload: HttpRequest) {}\n}\n","import { Profile } from '../models';\n\nexport class GetProfile {\n static readonly type = '[Profile] Get';\n}\n\nexport class UpdateProfile {\n static readonly type = '[Profile] Update';\n constructor(public payload: Profile.Response) {}\n}\n\nexport class ChangePassword {\n static readonly type = '[Profile] Change Password';\n constructor(public payload: Profile.ChangePasswordRequest) {}\n}\n","import { HttpErrorResponse } from '@angular/common/http';\n\nexport class RestOccurError {\n static readonly type = '[Rest] Error';\n constructor(public payload: HttpErrorResponse | any) {}\n}\n","import { ABP } from '../models';\n\nexport class SetLanguage {\n static readonly type = '[Session] Set Language';\n constructor(public payload: string) {}\n}\nexport class SetTenant {\n static readonly type = '[Session] Set Tenant';\n constructor(public payload: ABP.BasicItem) {}\n}\n","import { HttpClient, HttpRequest } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { NEVER, Observable, throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport { Rest } from '../models/rest';\nimport { ConfigState } from '../states';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RestService {\n constructor(private http: HttpClient, private store: Store) {}\n\n handleError(err: any): Observable {\n this.store.dispatch(new RestOccurError(err));\n console.error(err);\n return throwError(err);\n }\n\n request(request: HttpRequest | Rest.Request, config: Rest.Config = {}, api?: string): Observable {\n const { observe = Rest.Observe.Body, skipHandleError } = config;\n const url = api || this.store.selectSnapshot(ConfigState.getApiUrl()) + request.url;\n const { method, ...options } = request;\n return this.http.request(method, url, { observe, ...options } as any).pipe(\n observe === Rest.Observe.Body ? take(1) : null,\n catchError(err => {\n if (skipHandleError) {\n return throwError(err);\n }\n\n return this.handleError(err);\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService } from './rest.service';\nimport { Profile, Rest } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ProfileService {\n constructor(private rest: RestService) {}\n\n get(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/my-profile',\n };\n\n return this.rest.request(request);\n }\n\n update(body: Profile.Response): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/identity/my-profile',\n body,\n };\n\n return this.rest.request(request);\n }\n\n changePassword(body: Profile.ChangePasswordRequest, skipHandleError: boolean = false): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/my-profile/change-password',\n body,\n };\n\n return this.rest.request(request, { skipHandleError });\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetProfile, ChangePassword, UpdateProfile } from '../actions/profile.actions';\nimport { Profile } from '../models/profile';\nimport { ProfileService } from '../services/profile.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'ProfileState',\n defaults: {} as Profile.State,\n})\nexport class ProfileState {\n @Selector()\n static getProfile({ profile }: Profile.State): Profile.Response {\n return profile;\n }\n\n constructor(private profileService: ProfileService) {}\n\n @Action(GetProfile)\n profileGet({ patchState }: StateContext) {\n return this.profileService.get().pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(UpdateProfile)\n profileUpdate({ patchState }: StateContext, { payload }: UpdateProfile) {\n return this.profileService.update(payload).pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(ChangePassword)\n changePassword(_, { payload }: ChangePassword) {\n return this.profileService.changePassword(payload, true);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ApplicationConfiguration, Rest } from '../models';\nimport { RestService } from './rest.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ApplicationConfigurationService {\n constructor(private rest: RestService) {}\n\n getConfiguration(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/application-configuration',\n };\n\n return this.rest.request(request);\n }\n}\n","// Different locales from .NET\n// Key is .NET locale, value is Angular locale\n\nexport default {\n 'ar-sa': 'ar-SA',\n 'ca-ES-valencia': 'ca-ES-VALENCIA',\n 'de-de': 'de',\n 'es-ES': 'es',\n 'en-US': 'en',\n 'fil-Latn': 'en',\n 'ku-Arab': 'en',\n 'ky-Cyrl': 'en',\n 'mi-Latn': 'en',\n 'prs-Arab': 'en',\n 'qut-Latn': 'en',\n nso: 'en',\n quz: 'en',\n 'fr-FR': 'fr',\n 'gd-Latn': 'gd',\n 'ha-Latn': 'ha',\n 'ig-Latn': 'ig',\n 'it-it': 'it',\n 'mn-Cyrl': 'mn',\n 'pt-BR': 'pt',\n 'sd-Arab': 'pa-Arab',\n 'sr-Cyrl-RS': 'sr-Cyrl',\n 'sr-Latn-RS': 'sr-Latn',\n 'tg-Cyrl': 'tg',\n 'tk-Latn': 'tk',\n 'tt-Cyrl': 'tt',\n 'ug-Arab': 'ug',\n 'yo-Latn': 'yo',\n};\n","import { registerLocaleData } from '@angular/common';\nimport { Injector } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport differentLocales from '../constants/different-locales';\nimport { SessionState } from '../states/session.state';\n\nexport function getInitialData(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n return store.dispatch(new GetAppConfiguration()).toPromise();\n };\n\n return fn;\n}\n\nexport function localeInitializer(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n const lang = store.selectSnapshot(SessionState.getLanguage) || 'en';\n\n return new Promise((resolve, reject) => {\n registerLocale(lang).then(() => resolve(), reject);\n });\n };\n\n return fn;\n}\n\nexport function registerLocale(locale: string) {\n return import(\n /* webpackInclude: /(af|am|ar-SA|as|az-Latn|be|bg|bn-BD|bn-IN|bs|ca|ca-ES-VALENCIA|cs|cy|da|de|de|el|en-GB|en|es|en|es-US|es-MX|et|eu|fa|fi|en|fr|fr|fr-CA|ga|gd|gl|gu|ha|he|hi|hr|hu|hy|id|ig|is|it|it|ja|ka|kk|km|kn|ko|kok|en|en|lb|lt|lv|en|mk|ml|mn|mr|ms|mt|nb|ne|nl|nl-BE|nn|en|or|pa|pa-Arab|pl|en|pt|pt-PT|en|en|ro|ru|rw|pa-Arab|si|sk|sl|sq|sr-Cyrl-BA|sr-Cyrl|sr-Latn|sv|sw|ta|te|tg|th|ti|tk|tn|tr|tt|ug|uk|ur|uz-Latn|vi|wo|xh|yo|zh-Hans|zh-Hant|zu)\\.js$/ */\n `@angular/common/locales/${differentLocales[locale] || locale}.js`\n ).then(module => {\n registerLocaleData(module.default);\n });\n}\n","import { Injectable, Optional, SkipSelf } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router } from '@angular/router';\nimport { Actions, Store } from '@ngxs/store';\nimport { noop, Observable } from 'rxjs';\nimport { ConfigState } from '../states/config.state';\nimport { SessionState } from '../states/session.state';\nimport { registerLocale } from '../utils/initial-utils';\n\ntype ShouldReuseRoute = (future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot) => boolean;\n\n@Injectable({ providedIn: 'root' })\nexport class LocalizationService {\n get currentLang(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n constructor(\n private store: Store,\n private router: Router,\n private actions: Actions,\n @Optional()\n @SkipSelf()\n otherInstance: LocalizationService,\n ) {\n if (otherInstance) throw new Error('LocaleService should have only one instance.');\n }\n\n private setRouteReuse(reuse: ShouldReuseRoute) {\n this.router.routeReuseStrategy.shouldReuseRoute = reuse;\n }\n\n registerLocale(locale: string) {\n const { shouldReuseRoute } = this.router.routeReuseStrategy;\n\n this.setRouteReuse(() => false);\n this.router.navigated = false;\n\n return registerLocale(locale).then(async () => {\n await this.router.navigateByUrl(this.router.url).catch(noop);\n this.setRouteReuse(shouldReuseRoute);\n });\n }\n\n get(keys: string, ...interpolateParams: string[]): Observable {\n return this.store.select(ConfigState.getCopy(keys, ...interpolateParams));\n }\n\n instant(keys: string, ...interpolateParams: string[]): string {\n return this.store.selectSnapshot(ConfigState.getCopy(keys, ...interpolateParams));\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { SetLanguage, SetTenant } from '../actions/session.actions';\nimport { ABP, Session } from '../models';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport { LocalizationService } from '../services/localization.service';\nimport { from, combineLatest } from 'rxjs';\n\n@State({\n name: 'SessionState',\n defaults: {} as Session.State,\n})\nexport class SessionState {\n @Selector()\n static getLanguage({ language }: Session.State): string {\n return language;\n }\n\n @Selector()\n static getTenant({ tenant }: Session.State): ABP.BasicItem {\n return tenant;\n }\n\n constructor(private localizationService: LocalizationService) {}\n\n @Action(SetLanguage)\n setLanguage({ patchState, dispatch }: StateContext, { payload }: SetLanguage) {\n patchState({\n language: payload,\n });\n\n return combineLatest([dispatch(new GetAppConfiguration()), from(this.localizationService.registerLocale(payload))]);\n }\n\n @Action(SetTenant)\n setTenantId({ patchState }: StateContext, { payload }: SetTenant) {\n patchState({\n tenant: payload,\n });\n }\n}\n","import { ABP } from '../models';\n\nexport function organizeRoutes(\n routes: ABP.FullRoute[],\n wrappers: ABP.FullRoute[] = [],\n parentNameArr = [] as ABP.FullRoute[],\n parentName: string = null,\n): ABP.FullRoute[] {\n const filter = route => {\n if (route.children && route.children.length) {\n route.children = organizeRoutes(route.children, wrappers, parentNameArr, route.name);\n }\n\n if (route.parentName && route.parentName !== parentName) {\n parentNameArr.push(route);\n return false;\n }\n\n return true;\n };\n\n if (parentName) {\n // recursive block\n return routes.filter(filter);\n }\n\n const filteredRoutes = routes.filter(filter);\n\n if (parentNameArr.length) {\n return sortRoutes(setChildRoute([...filteredRoutes, ...wrappers], parentNameArr));\n }\n\n return filteredRoutes;\n}\n\nexport function setChildRoute(routes: ABP.FullRoute[], parentNameArr: ABP.FullRoute[]): ABP.FullRoute[] {\n return routes.map(route => {\n if (route.children && route.children.length) {\n route.children = setChildRoute(route.children, parentNameArr);\n }\n\n const foundedChildren = parentNameArr.filter(parent => parent.parentName === route.name);\n if (foundedChildren && foundedChildren.length) {\n route.children = [...(route.children || []), ...foundedChildren];\n }\n\n return route;\n });\n}\n\nexport function sortRoutes(routes: ABP.FullRoute[] = []): ABP.FullRoute[] {\n if (!routes.length) return [];\n return routes\n .sort((a, b) => a.order - b.order)\n .map(route => {\n if (route.children && route.children.length) {\n route.children = sortRoutes(route.children);\n }\n\n return route;\n });\n}\n","import { State, Selector, createSelector, Action, StateContext, Store } from '@ngxs/store';\nimport { Config, ABP } from '../models';\nimport { GetAppConfiguration, PatchRouteByName } from '../actions/config.actions';\nimport { ApplicationConfigurationService } from '../services/application-configuration.service';\nimport { tap, switchMap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { SetLanguage } from '../actions';\nimport { SessionState } from './session.state';\nimport { of } from 'rxjs';\nimport { setChildRoute, sortRoutes, organizeRoutes } from '../utils/route-utils';\n\n@State({\n name: 'ConfigState',\n defaults: {} as Config.State,\n})\nexport class ConfigState {\n @Selector()\n static getAll(state: Config.State) {\n return state;\n }\n\n @Selector()\n static getApplicationInfo(state: Config.State) {\n return state.environment.application || {};\n }\n\n static getOne(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return state[key];\n },\n );\n\n return selector;\n }\n\n static getDeep(keys: string[] | string) {\n if (typeof keys === 'string') {\n keys = keys.split('.');\n }\n\n if (!Array.isArray(keys)) {\n throw new Error('The argument must be a dot string or an string array.');\n }\n\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return (keys as string[]).reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state);\n },\n );\n\n return selector;\n }\n\n static getRoute(path?: string, name?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return findRoute(state.routes, path, name);\n },\n );\n\n return selector;\n }\n\n static getApiUrl(key?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): string {\n return state.environment.apis[key || 'default'].url;\n },\n );\n\n return selector;\n }\n\n static getSetting(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return snq(() => state.setting.values[key]);\n },\n );\n\n return selector;\n }\n\n static getGrantedPolicy(condition: string = '') {\n const keys = condition\n .replace(/\\(|\\)|\\!|\\s/g, '')\n .split(/\\|\\||&&/)\n .filter(key => key);\n\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): boolean {\n if (!keys.length) return true;\n\n const getPolicy = key => snq(() => state.auth.grantedPolicies[key], false);\n if (keys.length > 1) {\n keys.forEach(key => {\n const value = getPolicy(key);\n condition = condition.replace(key, value);\n });\n\n // tslint:disable-next-line: no-eval\n return eval(`!!${condition}`);\n }\n\n return getPolicy(condition);\n },\n );\n\n return selector;\n }\n\n static getCopy(key: string, ...interpolateParams: string[]) {\n if (!key) key = '';\n\n const keys = key.split('::') as string[];\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n if (!state.localization) return key;\n\n const { defaultResourceName } = state.environment.localization;\n if (keys[0] === '') {\n if (!defaultResourceName) {\n throw new Error(\n `Please check your environment. May you forget set defaultResourceName? \n Here is the example:\n { production: false,\n localization: {\n defaultResourceName: 'MyProjectName'\n }\n }`,\n );\n }\n\n keys[0] = snq(() => defaultResourceName);\n }\n\n let copy = keys.reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state.localization.values);\n\n interpolateParams = interpolateParams.filter(params => params != null);\n if (copy && interpolateParams && interpolateParams.length) {\n interpolateParams.forEach(param => {\n copy = copy.replace(/[\\'\\\"]?\\{[\\d]+\\}[\\'\\\"]?/, param);\n });\n }\n\n return copy || key;\n },\n );\n\n return selector;\n }\n\n constructor(private appConfigurationService: ApplicationConfigurationService, private store: Store) {}\n\n @Action(GetAppConfiguration)\n addData({ patchState, dispatch }: StateContext) {\n return this.appConfigurationService.getConfiguration().pipe(\n tap(configuration =>\n patchState({\n ...configuration,\n }),\n ),\n switchMap(configuration => {\n let defaultLang: string = configuration.setting.values['Abp.Localization.DefaultLanguage'];\n\n if (defaultLang.includes(';')) {\n defaultLang = defaultLang.split(';')[0];\n }\n\n return this.store.selectSnapshot(SessionState.getLanguage) ? of(null) : dispatch(new SetLanguage(defaultLang));\n }),\n );\n }\n\n @Action(PatchRouteByName)\n patchRoute({ patchState, getState }: StateContext, { name, newValue }: PatchRouteByName) {\n let routes: ABP.FullRoute[] = getState().routes;\n\n const index = routes.findIndex(route => route.name === name);\n\n routes = patchRouteDeep(routes, name, newValue);\n\n return patchState({\n routes,\n });\n }\n}\n\nfunction patchRouteDeep(\n routes: ABP.FullRoute[],\n name: string,\n newValue: Partial,\n parentUrl: string = null,\n): ABP.FullRoute[] {\n routes = routes.map(route => {\n if (route.name === name) {\n if (newValue.path) {\n newValue.url = `${parentUrl}/${newValue.path}`;\n }\n\n if (newValue.children && newValue.children.length) {\n newValue.children = newValue.children.map(child => ({\n ...child,\n url: `${parentUrl}/${route.path}/${child.path}`,\n }));\n }\n\n return { ...route, ...newValue };\n } else if (route.children && route.children.length) {\n route.children = patchRouteDeep(route.children, name, newValue, (parentUrl || '/') + route.path);\n }\n\n return route;\n });\n\n if (parentUrl) {\n // recursive block\n return routes;\n }\n\n return organizeRoutes(routes);\n}\n\nfunction findRoute(routes: ABP.FullRoute[], path?: string, name?: string) {\n let foundRoute;\n routes.forEach(route => {\n if (foundRoute) return;\n\n if (path && route.path === path) {\n foundRoute = route;\n } else if (name && route.name === name) {\n foundRoute = route;\n return;\n } else if (route.children && route.children.length) {\n foundRoute = findRoute(route.children, path, name);\n return;\n }\n });\n\n return foundRoute;\n}\n","export function noop() {\n const fn = function() {};\n return fn;\n}\n","export function uuid(a?: any): string {\n return a\n ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16)\n : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid);\n}\n","import { Observable, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nexport const takeUntilDestroy = (componentInstance, destroyMethodName = 'ngOnDestroy') => (\n source: Observable,\n) => {\n const originalDestroy = componentInstance[destroyMethodName];\n if (isFunction(originalDestroy) === false) {\n throw new Error(\n `${componentInstance.constructor.name} is using untilDestroyed but doesn't implement ${destroyMethodName}`,\n );\n }\n if (!componentInstance['__takeUntilDestroy']) {\n componentInstance['__takeUntilDestroy'] = new Subject();\n\n componentInstance[destroyMethodName] = function() {\n isFunction(originalDestroy) && originalDestroy.apply(this, arguments);\n componentInstance['__takeUntilDestroy'].next(true);\n componentInstance['__takeUntilDestroy'].complete();\n };\n }\n return source.pipe(takeUntil(componentInstance['__takeUntilDestroy']));\n};\n","import { Component, OnDestroy, Type } from '@angular/core';\nimport { NavigationEnd, Router, UrlSegment } from '@angular/router';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { eLayoutType } from '../enums';\nimport { ABP, Config } from '../models';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\nimport snq from 'snq';\n\n@Component({\n selector: 'abp-dynamic-layout',\n template: `\n \n\n \n \n `,\n})\nexport class DynamicLayoutComponent implements OnDestroy {\n @Select(ConfigState.getOne('requirements'))\n requirements$: Observable;\n\n layout: Type;\n\n constructor(private router: Router, private store: Store) {\n this.router.events.pipe(takeUntilDestroy(this)).subscribe(event => {\n if (event instanceof NavigationEnd) {\n const { segments } = this.router.parseUrl(event.url).root.children.primary;\n const {\n requirements: { layouts },\n routes,\n } = this.store.selectSnapshot(ConfigState.getAll);\n\n const layout = findLayout(segments, routes);\n\n this.layout = layouts.filter(l => !!l).find(l => snq(() => l.type.toLowerCase().indexOf(layout), -1) > -1);\n }\n });\n }\n\n ngOnDestroy() {}\n}\n\nfunction findLayout(segments: UrlSegment[], routes: ABP.FullRoute[]): eLayoutType {\n let layout = eLayoutType.empty;\n\n const route = routes\n .reduce((acc, val) => (val.wrapper ? [...acc, ...val.children] : [...acc, val]), [])\n .find(r => r.path === segments[0].path);\n\n if (route) {\n if (route.layout) {\n layout = route.layout;\n }\n\n if (route.children && route.children.length && segments.length > 1) {\n const child = route.children.find(c => c.path === segments[1].path);\n\n if (child && child.layout) {\n layout = child.layout;\n }\n }\n }\n\n return layout;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-router-outlet',\n template: `\n \n `,\n})\nexport class RouterOutletComponent {}\n","import { Directive, ElementRef, Input, AfterViewInit } from '@angular/core';\n\n@Directive({\n selector: '[autofocus]',\n})\nexport class AutofocusDirective implements AfterViewInit {\n @Input('autofocus')\n delay: number = 0;\n\n constructor(private elRef: ElementRef) {}\n\n ngAfterViewInit(): void {\n setTimeout(() => this.elRef.nativeElement.focus(), this.delay);\n }\n}\n","import { AfterContentInit, ChangeDetectorRef, Directive, ElementRef, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[abpEllipsis]',\n})\nexport class EllipsisDirective implements AfterContentInit {\n @Input('abpEllipsis')\n width: string;\n\n @HostBinding('title')\n @Input()\n title: string;\n\n @Input('abpEllipsisEnabled')\n enabled = true;\n\n @HostBinding('class.abp-ellipsis-inline')\n get inlineClass() {\n return this.enabled && this.width;\n }\n\n @HostBinding('class.abp-ellipsis')\n get class() {\n return this.enabled && !this.width;\n }\n\n @HostBinding('style.max-width')\n get maxWidth() {\n return this.enabled && this.width ? this.width || '170px' : undefined;\n }\n\n constructor(private cdRef: ChangeDetectorRef, private elRef: ElementRef) {}\n\n ngAfterContentInit() {\n setTimeout(() => {\n const title = this.title;\n this.title = title || (this.elRef.nativeElement as HTMLElement).innerText;\n\n if (this.title !== title) {\n this.cdRef.detectChanges();\n }\n }, 0);\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n Self,\n} from '@angular/core';\nimport { FormControl, FormGroup, FormGroupDirective } from '@angular/forms';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime, filter } from 'rxjs/operators';\nimport { takeUntilDestroy } from '../utils';\n\ntype Controls = { [key: string]: FormControl } | FormGroup[];\n\n@Directive({\n selector: 'form[ngSubmit][formGroup]',\n})\nexport class FormSubmitDirective implements OnInit, OnDestroy {\n @Input()\n notValidateOnSubmit: string | boolean;\n\n @Output()\n ngSubmit = new EventEmitter();\n\n executedNgSubmit: boolean = false;\n\n constructor(\n @Self() private formGroupDirective: FormGroupDirective,\n private host: ElementRef,\n private cdRef: ChangeDetectorRef,\n ) {}\n\n ngOnInit() {\n this.formGroupDirective.ngSubmit.pipe(takeUntilDestroy(this)).subscribe(() => {\n this.markAsDirty();\n this.executedNgSubmit = true;\n });\n\n fromEvent(this.host.nativeElement as HTMLElement, 'keyup')\n .pipe(\n debounceTime(200),\n filter((key: KeyboardEvent) => key && key.key === 'Enter'),\n takeUntilDestroy(this),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.host.nativeElement.dispatchEvent(new Event('submit', { bubbles: true, cancelable: true }));\n }\n\n this.executedNgSubmit = false;\n });\n\n fromEvent(this.host.nativeElement, 'submit')\n .pipe(\n takeUntilDestroy(this),\n filter(() => !this.notValidateOnSubmit && typeof this.notValidateOnSubmit !== 'string'),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.markAsDirty();\n }\n });\n }\n\n ngOnDestroy(): void {}\n\n markAsDirty() {\n const { form } = this.formGroupDirective;\n\n setDirty(form.controls as { [key: string]: FormControl });\n form.markAsDirty();\n\n this.cdRef.detectChanges();\n }\n}\n\nfunction setDirty(controls: Controls) {\n if (Array.isArray(controls)) {\n controls.forEach(group => {\n setDirty(group.controls as { [key: string]: FormControl });\n });\n return;\n }\n\n Object.keys(controls).forEach(key => {\n controls[key].markAsDirty();\n controls[key].updateValueAndValidity();\n });\n}\n","import { Directive, ElementRef, Input, OnDestroy, OnInit, Optional, Renderer2 } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\n\n@Directive({\n selector: '[abpPermission]',\n})\nexport class PermissionDirective implements OnInit, OnDestroy {\n @Input('abpPermission') condition: string;\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2, private store: Store) {}\n\n ngOnInit() {\n if (this.condition) {\n this.store\n .select(ConfigState.getGrantedPolicy(this.condition))\n .pipe(takeUntilDestroy(this))\n .subscribe(isGranted => {\n if (!isGranted) {\n this.renderer.removeChild(\n (this.elRef.nativeElement as HTMLElement).parentElement,\n this.elRef.nativeElement,\n );\n }\n });\n }\n }\n\n ngOnDestroy(): void {}\n}\n","import { Directive, Input, Optional, ElementRef, Renderer2, AfterViewInit } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport snq from 'snq';\n\n@Directive({\n selector: '[abpVisibility]',\n})\nexport class VisibilityDirective implements AfterViewInit {\n @Input('abpVisibility')\n focusedElement: HTMLElement;\n\n completed$ = new Subject();\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2) {}\n\n ngAfterViewInit() {\n const observer = new MutationObserver(mutations => {\n mutations.forEach(mutation => {\n if (!mutation.target) return;\n\n const htmlNodes = snq(\n () => Array.from(mutation.target.childNodes).filter(node => node instanceof HTMLElement),\n [],\n );\n\n if (!htmlNodes.length) {\n this.renderer.removeChild(this.elRef.nativeElement.parentElement, this.elRef.nativeElement);\n this.disconnect();\n } else {\n setTimeout(() => {\n this.disconnect();\n }, 0);\n }\n });\n });\n\n observer.observe(this.focusedElement, {\n childList: true,\n });\n\n this.completed$.subscribe(() => observer.disconnect());\n }\n\n disconnect() {\n this.completed$.next();\n this.completed$.complete();\n }\n}\n","export const enum eLayoutType {\n account = 'account',\n application = 'application',\n empty = 'empty',\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Observable } from 'rxjs';\nimport { Navigate } from '@ngxs/router-plugin';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthGuard implements CanActivate {\n constructor(private oauthService: OAuthService, private store: Store) {}\n canActivate(_: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | boolean | UrlTree {\n const hasValidAccessToken = this.oauthService.hasValidAccessToken();\n if (hasValidAccessToken) {\n return hasValidAccessToken;\n }\n\n this.store.dispatch(new Navigate(['/account/login'], null, { state: { redirectUrl: state.url } }));\n\n return false;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { ConfigState } from '../states';\nimport { tap } from 'rxjs/operators';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionGuard implements CanActivate {\n constructor(private store: Store) {}\n\n canActivate({ data }: ActivatedRouteSnapshot): Observable {\n const resource = data.requiredPolicy as string;\n return this.store.select(ConfigState.getGrantedPolicy(resource)).pipe(\n tap(access => {\n if (!access) {\n this.store.dispatch(new RestOccurError({ status: 403 }));\n }\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpInterceptor, HttpHandler, HttpRequest } from '@angular/common/http';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Store } from '@ngxs/store';\nimport { SessionState } from '../states';\nimport { StartLoader, StopLoader } from '../actions/loader.actions';\nimport { finalize } from 'rxjs/operators';\n\n@Injectable()\nexport class ApiInterceptor implements HttpInterceptor {\n constructor(private oAuthService: OAuthService, private store: Store) {}\n\n intercept(request: HttpRequest, next: HttpHandler) {\n this.store.dispatch(new StartLoader(request));\n\n const headers = {} as any;\n\n const token = this.oAuthService.getAccessToken();\n if (!request.headers.has('Authorization') && token) {\n headers['Authorization'] = `Bearer ${token}`;\n }\n\n const lang = this.store.selectSnapshot(SessionState.getLanguage);\n if (!request.headers.has('Accept-Language') && lang) {\n headers['Accept-Language'] = lang;\n }\n\n const tenant = this.store.selectSnapshot(SessionState.getTenant);\n if (!request.headers.has('__tenant') && tenant) {\n headers['__tenant'] = tenant.id;\n }\n\n return next\n .handle(\n request.clone({\n setHeaders: headers,\n }),\n )\n .pipe(finalize(() => this.store.dispatch(new StopLoader(request))));\n }\n}\n","export namespace ApplicationConfiguration {\n export interface Response {\n localization: Localization;\n auth: Auth;\n setting: Setting;\n currentUser: CurrentUser;\n features: Features;\n }\n\n export interface Localization {\n values: LocalizationValue;\n languages: Language[];\n }\n\n export interface LocalizationValue {\n [key: string]: { [key: string]: string };\n }\n\n export interface Language {\n cultureName: string;\n uiCultureName: string;\n displayName: string;\n flagIcon: string;\n }\n\n export interface Auth {\n policies: Policy;\n grantedPolicies: Policy;\n }\n\n export interface Policy {\n [key: string]: boolean;\n }\n\n export interface Setting {\n values: { [key: string]: 'Abp.Localization.DefaultLanguage' };\n }\n\n export interface CurrentUser {\n isAuthenticated: boolean;\n id: string;\n tenantId: string;\n userName: string;\n }\n\n export interface Features {\n values: Setting;\n }\n}\n","import { Config } from './config';\nimport { eLayoutType } from '../enums';\n\nexport namespace ABP {\n export interface Root {\n environment: Partial;\n requirements: Config.Requirements;\n }\n\n export type PagedResponse = {\n totalCount: number;\n } & PagedItemsResponse;\n\n export interface PagedItemsResponse {\n items: T[];\n }\n\n export interface PageQueryParams {\n filter?: string;\n sorting?: string;\n skipCount?: number;\n maxResultCount?: number;\n }\n\n export interface Route {\n children?: Route[];\n invisible?: boolean;\n layout?: eLayoutType;\n name: string;\n order?: number;\n parentName?: string;\n path: string;\n requiredPolicy?: string;\n iconClass?: string;\n }\n\n export interface FullRoute extends Route {\n url?: string;\n wrapper?: boolean;\n }\n\n export interface BasicItem {\n id: string;\n name: string;\n }\n}\n","import { AuthConfig } from 'angular-oauth2-oidc';\nimport { Type } from '@angular/core';\n\nexport namespace Config {\n export interface State {\n [key: string]: any;\n }\n\n export interface Environment {\n application: Application;\n production: boolean;\n oAuthConfig: AuthConfig;\n apis: Apis;\n }\n\n export interface Application {\n name: string;\n logoUrl?: string;\n }\n\n export interface Apis {\n [key: string]: { [key: string]: string };\n }\n\n export interface Requirements {\n layouts: Type[];\n }\n}\n","import { ABP } from '../models';\n\nexport namespace Session {\n export interface State {\n language: string;\n tenant: ABP.BasicItem;\n }\n}\n","export namespace Profile {\n export interface State {\n profile: Response;\n }\n\n export interface Response {\n userName: string;\n email: string;\n name: string;\n surname: string;\n phoneNumber: string;\n }\n\n export interface ChangePasswordRequest {\n currentPassword: string;\n newPassword: string;\n }\n}\n","import { HttpHeaders, HttpParams } from '@angular/common/http';\n\nexport namespace Rest {\n export interface Config {\n skipHandleError?: boolean;\n observe?: Observe;\n }\n\n export const enum Observe {\n Body = 'body',\n Events = 'events',\n Response = 'response',\n }\n\n export const enum ResponseType {\n ArrayBuffer = 'arraybuffer',\n Blob = 'blob',\n JSON = 'json',\n Text = 'text',\n }\n\n export interface Request {\n body?: T;\n headers?:\n | HttpHeaders\n | {\n [header: string]: string | string[];\n };\n method: string;\n params?:\n | HttpParams\n | {\n [param: string]: any;\n };\n reportProgress?: boolean;\n responseType?: ResponseType;\n url: string;\n withCredentials?: boolean;\n }\n}\n","import { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { Router, Routes } from '@angular/router';\nimport { actionMatcher, InitState, NgxsNextPluginFn, NgxsPlugin, setValue, UpdateState } from '@ngxs/store';\nimport snq from 'snq';\nimport { ABP } from '../../models';\nimport { organizeRoutes } from '../../utils/route-utils';\n\nexport const NGXS_CONFIG_PLUGIN_OPTIONS = new InjectionToken('NGXS_CONFIG_PLUGIN_OPTIONS');\n\n@Injectable()\nexport class ConfigPlugin implements NgxsPlugin {\n private initialized: boolean = false;\n\n constructor(@Inject(NGXS_CONFIG_PLUGIN_OPTIONS) private options: ABP.Root, private router: Router) {}\n\n handle(state: any, event: any, next: NgxsNextPluginFn) {\n const matches = actionMatcher(event);\n const isInitAction = matches(InitState) || matches(UpdateState);\n\n // const layouts = snq(() => this.options.requirements.layouts.filter(layout => layout instanceof Type), []);\n if (isInitAction && !this.initialized) {\n let { routes, wrappers } = transformRoutes(this.router.config);\n routes = organizeRoutes(routes, wrappers);\n\n state = setValue(state, 'ConfigState', {\n ...(state.ConfigState && { ...state.ConfigState }),\n ...this.options,\n routes,\n });\n\n this.initialized = true;\n }\n\n return next(state, event);\n }\n}\n\nfunction transformRoutes(routes: Routes = [], wrappers: ABP.FullRoute[] = []): any {\n const abpRoutes: ABP.FullRoute[] = routes\n .filter(route => {\n return snq(() => route.data.routes.routes.find(r => r.path === route.path), false);\n })\n .reduce((acc, val) => [...acc, ...val.data.routes.routes], []);\n\n wrappers = abpRoutes.filter(ar => ar.wrapper);\n const transformed = [] as ABP.FullRoute[];\n routes\n .filter(route => (route.data || {}).routes && (route.component || route.loadChildren))\n .forEach(route => {\n const abpPackage = abpRoutes.find(\n abp => abp.path.toLowerCase() === route.path.toLowerCase() && snq(() => route.data.routes.routes.length, false),\n );\n const { length } = transformed;\n\n if (abpPackage) {\n transformed.push(abpPackage);\n }\n\n if (transformed.length === length) {\n transformed.push({\n ...route.data.routes,\n path: route.path,\n name: snq(() => route.data.routes.name, route.path),\n children: route.data.routes.children || [],\n } as ABP.FullRoute);\n }\n });\n\n return { routes: setUrls(transformed), wrappers };\n}\n\nfunction setUrls(routes: ABP.FullRoute[], parentUrl?: string): ABP.FullRoute[] {\n if (parentUrl) {\n // this if block using for only recursive call\n\n return routes.map(route => ({\n ...route,\n url: `${parentUrl}/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `${parentUrl}/${route.path}`),\n }),\n }));\n }\n\n return routes.map(route => ({\n ...route,\n url: `/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `/${route.path}`),\n }),\n }));\n}\n","import { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConfigService {\n constructor(private store: Store) {}\n\n getAll() {\n return this.store.selectSnapshot(ConfigState.getAll);\n }\n\n getOne(key: string) {\n return this.store.selectSnapshot(ConfigState.getOne(key));\n }\n\n getDeep(keys: string[] | string) {\n return this.store.selectSnapshot(ConfigState.getDeep(keys));\n }\n\n getSetting(key: string) {\n return this.store.selectSnapshot(ConfigState.getSetting(key));\n }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { uuid } from '../utils';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LazyLoadService {\n loadedLibraries: { [url: string]: ReplaySubject } = {};\n\n load(\n url: string,\n type: 'script' | 'style',\n content: string = '',\n targetQuery: string = 'body',\n position: InsertPosition = 'afterend',\n ): Observable {\n if (!url && !content) return;\n const key = url ? url.slice(url.lastIndexOf('/') + 1) : uuid();\n\n if (this.loadedLibraries[key]) {\n return this.loadedLibraries[key].asObservable();\n }\n\n this.loadedLibraries[key] = new ReplaySubject();\n\n let library;\n if (type === 'script') {\n library = document.createElement('script');\n library.type = 'text/javascript';\n if (url) {\n (library as HTMLScriptElement).src = url;\n }\n\n (library as HTMLScriptElement).text = content;\n } else if (url) {\n library = document.createElement('link');\n library.type = 'text/css';\n (library as HTMLLinkElement).rel = 'stylesheet';\n\n if (url) {\n (library as HTMLLinkElement).href = url;\n }\n } else {\n library = document.createElement('style');\n (library as HTMLStyleElement).textContent = content;\n }\n\n library.onload = () => {\n this.loadedLibraries[key].next();\n this.loadedLibraries[key].complete();\n };\n\n document.querySelector(targetQuery).insertAdjacentElement(position, library);\n\n return this.loadedLibraries[key].asObservable();\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { Config } from '../models';\n\nexport function environmentFactory(environment: Config.Environment) {\n return {\n ...environment,\n };\n}\n\nexport function configFactory(config: Config.Requirements) {\n return {\n ...config,\n };\n}\n\nexport const ENVIRONMENT = new InjectionToken('ENVIRONMENT');\n\nexport const CONFIG = new InjectionToken('CONFIG');\n","import { Directive, Output, Renderer2, ElementRef, OnInit, EventEmitter, Input } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[input.debounce]',\n})\nexport class InputEventDebounceDirective implements OnInit {\n @Input() debounce: number = 300;\n\n @Output('input.debounce') debounceEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'input')\n .pipe(\n debounceTime(this.debounce),\n takeUntilDestroy(this),\n )\n .subscribe((event: Event) => {\n this.debounceEvent.emit(event);\n });\n }\n}\n","import { Directive, ElementRef, EventEmitter, OnInit, Output, Renderer2 } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[click.stop]',\n})\nexport class ClickEventStopPropagationDirective implements OnInit {\n @Output('click.stop') stopPropEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'click')\n .pipe(takeUntilDestroy(this))\n .subscribe((event: MouseEvent) => {\n event.stopPropagation();\n this.stopPropEvent.emit(event);\n });\n }\n}\n","import { Pipe, PipeTransform, OnDestroy } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\nimport { distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\n@Pipe({\n name: 'abpLocalization',\n pure: false, // required to update the value\n})\nexport class LocalizationPipe implements PipeTransform, OnDestroy {\n initialValue: string = '';\n\n value: string;\n\n destroy$ = new Subject();\n\n constructor(private store: Store) {}\n\n transform(value: string = '', ...interpolateParams: string[]): string {\n if (this.initialValue !== value) {\n this.initialValue = value;\n this.destroy$.next();\n\n this.store\n .select(\n ConfigState.getCopy(\n value,\n ...interpolateParams.reduce((acc, val) => (Array.isArray(val) ? [...acc, ...val] : [...acc, val]), []),\n ),\n )\n .pipe(\n takeUntil(this.destroy$),\n takeUntilDestroy(this),\n distinctUntilChanged(),\n )\n .subscribe(copy => (this.value = copy));\n }\n\n return this.value;\n }\n\n ngOnDestroy() {}\n}\n","import { LOCALE_ID, Provider } from '@angular/core';\nimport localesMapping from '../constants/different-locales';\nimport { LocalizationService } from '../services/localization.service';\n\nexport class LocaleId extends String {\n constructor(private localizationService: LocalizationService) {\n super();\n }\n\n toString(): string {\n const { currentLang } = this.localizationService;\n return localesMapping[currentLang] || currentLang;\n }\n\n valueOf(): string {\n return this.toString();\n }\n}\n\nexport const LocaleProvider: Provider = {\n provide: LOCALE_ID,\n useClass: LocaleId,\n deps: [LocalizationService],\n};\n","import { CommonModule } from '@angular/common';\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { NgxsRouterPluginModule } from '@ngxs/router-plugin';\nimport { NgxsStoragePluginModule } from '@ngxs/storage-plugin';\nimport { NgxsModule, NGXS_PLUGINS } from '@ngxs/store';\nimport { DynamicLayoutComponent } from './components/dynamic-layout.component';\nimport { RouterOutletComponent } from './components/router-outlet.component';\nimport { AutofocusDirective } from './directives/autofocus.directive';\nimport { InputEventDebounceDirective } from './directives/debounce.directive';\nimport { EllipsisDirective } from './directives/ellipsis.directive';\nimport { FormSubmitDirective } from './directives/form-submit.directive';\nimport { PermissionDirective } from './directives/permission.directive';\nimport { ClickEventStopPropagationDirective } from './directives/stop-propagation.directive';\nimport { VisibilityDirective } from './directives/visibility.directive';\nimport { ApiInterceptor } from './interceptors/api.interceptor';\nimport { ABP } from './models/common';\nimport { LocalizationPipe } from './pipes/localization.pipe';\nimport { LocaleProvider } from './providers/locale.provider';\nimport { ConfigState } from './states/config.state';\nimport { ProfileState } from './states/profile.state';\nimport { SessionState } from './states/session.state';\nimport { getInitialData, localeInitializer } from './utils/initial-utils';\nimport { ConfigPlugin, NGXS_CONFIG_PLUGIN_OPTIONS } from './plugins/config/config.plugin';\n\n@NgModule({\n imports: [\n NgxsModule.forFeature([ProfileState, SessionState, ConfigState]),\n NgxsStoragePluginModule.forRoot({ key: 'SessionState' }),\n NgxsRouterPluginModule.forRoot(),\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n ],\n declarations: [\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n ClickEventStopPropagationDirective,\n ],\n exports: [\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n LocalizationPipe,\n ClickEventStopPropagationDirective,\n ],\n providers: [LocalizationPipe],\n entryComponents: [RouterOutletComponent, DynamicLayoutComponent],\n})\nexport class CoreModule {\n static forRoot(options = {} as ABP.Root): ModuleWithProviders {\n return {\n ngModule: CoreModule,\n providers: [\n LocaleProvider,\n {\n provide: NGXS_PLUGINS,\n useClass: ConfigPlugin,\n multi: true,\n },\n {\n provide: NGXS_CONFIG_PLUGIN_OPTIONS,\n useValue: options,\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: ApiInterceptor,\n multi: true,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: getInitialData,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: localeInitializer,\n },\n ],\n };\n }\n}\n"]} \ No newline at end of file +{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.core/lib/actions/config.actions.ts","ng://@abp/ng.core/lib/actions/loader.actions.ts","ng://@abp/ng.core/lib/actions/profile.actions.ts","ng://@abp/ng.core/lib/actions/rest.actions.ts","ng://@abp/ng.core/lib/actions/session.actions.ts","ng://@abp/ng.core/lib/services/profile.service.ts","ng://@abp/ng.core/lib/states/profile.state.ts","ng://@abp/ng.core/lib/constants/different-locales.ts","ng://@abp/ng.core/lib/utils/initial-utils.ts","ng://@abp/ng.core/lib/services/localization.service.ts","ng://@abp/ng.core/lib/states/session.state.ts","ng://@abp/ng.core/lib/services/rest.service.ts","ng://@abp/ng.core/lib/services/application-configuration.service.ts","ng://@abp/ng.core/lib/utils/route-utils.ts","ng://@abp/ng.core/lib/states/config.state.ts","ng://@abp/ng.core/lib/utils/rxjs-utils.ts","ng://@abp/ng.core/lib/components/dynamic-layout.component.ts","ng://@abp/ng.core/lib/components/router-outlet.component.ts","ng://@abp/ng.core/lib/directives/autofocus.directive.ts","ng://@abp/ng.core/lib/directives/ellipsis.directive.ts","ng://@abp/ng.core/lib/directives/for.directive.ts","ng://@abp/ng.core/lib/utils/generator-utils.ts","ng://@abp/ng.core/lib/directives/form-submit.directive.ts","ng://@abp/ng.core/lib/directives/permission.directive.ts","ng://@abp/ng.core/lib/directives/visibility.directive.ts","ng://@abp/ng.core/lib/guards/auth.guard.ts","ng://@abp/ng.core/lib/guards/permission.guard.ts","ng://@abp/ng.core/lib/interceptors/api.interceptor.ts","ng://@abp/ng.core/lib/models/application-configuration.ts","ng://@abp/ng.core/lib/models/common.ts","ng://@abp/ng.core/lib/models/config.ts","ng://@abp/ng.core/lib/models/session.ts","ng://@abp/ng.core/lib/models/profile.ts","ng://@abp/ng.core/lib/models/rest.ts","ng://@abp/ng.core/lib/plugins/config/config.plugin.ts","ng://@abp/ng.core/lib/services/config.service.ts","ng://@abp/ng.core/lib/services/lazy-load.service.ts","ng://@abp/ng.core/lib/tokens/common.token.ts","ng://@abp/ng.core/lib/directives/debounce.directive.ts","ng://@abp/ng.core/lib/directives/stop-propagation.directive.ts","ng://@abp/ng.core/lib/pipes/localization.pipe.ts","ng://@abp/ng.core/lib/providers/locale.provider.ts","ng://@abp/ng.core/lib/core.module.ts","ng://@abp/ng.core/lib/utils/common-utils.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__assign","assign","t","s","i","n","arguments","length","prototype","call","apply","this","__decorate","decorators","target","key","desc","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__metadata","metadataKey","metadataValue","metadata","__generator","thisArg","body","f","y","g","_","label","sent","trys","ops","next","verb","throw","return","Symbol","iterator","v","op","TypeError","done","value","pop","push","e","step","__read","o","m","ar","error","__spread","concat","PatchRouteByName","name","newValue","type","GetAppConfiguration","StartLoader","payload","StopLoader","GetProfile","UpdateProfile","ChangePassword","RestOccurError","SetLanguage","SetTenant","ProfileService","rest","get","request","method","url","update","changePassword","skipHandleError","Injectable","args","providedIn","RestService","ProfileState","profileService","getProfile","_a","profile","profileGet","patchState","pipe","tap","profileUpdate","_b","tslib_1.__decorate","Action","Selector","State","defaults","localesMapping","ar-sa","ca-ES-valencia","de-de","es-ES","en-US","fil-Latn","ku-Arab","ky-Cyrl","mi-Latn","prs-Arab","qut-Latn","nso","quz","fr-FR","gd-Latn","ha-Latn","ig-Latn","it-it","mn-Cyrl","pt-BR","sd-Arab","sr-Cyrl-RS","sr-Latn-RS","tg-Cyrl","tk-Latn","tt-Cyrl","ug-Arab","yo-Latn","getInitialData","injector","Store","dispatch","toPromise","localeInitializer","lang","selectSnapshot","SessionState","getLanguage","Promise","resolve","reject","registerLocale","then","locale","import","differentLocales","module","registerLocaleData","default","LocalizationService","store","router","actions","otherInstance","Error","setRouteReuse","reuse","routeReuseStrategy","shouldReuseRoute","_this","navigated","_arguments","generator","navigateByUrl","catch","noop","P","fulfilled","rejected","result","keys","interpolateParams","_i","select","ConfigState","getCopy","instant","Router","Actions","Optional","SkipSelf","localizationService","language","getTenant","tenant","setLanguage","combineLatest","from","setTenantId","http","handleError","err","console","throwError","config","api","observe","getApiUrl","options","indexOf","getOwnPropertySymbols","propertyIsEnumerable","__rest","take","catchError","HttpClient","ApplicationConfigurationService","getConfiguration","organizeRoutes","routes","wrappers","parentNameArr","parentName","filter","route","children","filteredRoutes","sortRoutes","setChildRoute","map","foundedChildren","parent","sort","a","order","appConfigurationService","getAll","state","getApplicationInfo","environment","application","getOne","createSelector","ConfigState_1","getDeep","split","isArray","reduce","acc","val","getRoute","path","flattedRoutes","find","apis","getSetting","snq","setting","values","getGrantedPolicy","auth","grantedPolicies","selector","localization","defaultResourceName","copy","params","forEach","param","replace","addData","configuration","switchMap","defaultLang","includes","of","patchRoute","getState","findIndex","patchRouteDeep","parentUrl","child","isFunction","takeUntilDestroy","componentInstance","destroyMethodName","source","originalDestroy","constructor","Subject","complete","takeUntil","DynamicLayoutComponent","layouts","requirements","snapshot","data","layout","l","toLowerCase","events","subscribe","event","NavigationEnd","segments","parseUrl","root","primary","layout_1","wrapper","findLayout","ngOnDestroy","Component","template","ActivatedRoute","Select","Observable","RouterOutletComponent","AutofocusDirective","elRef","delay","ngAfterViewInit","setTimeout","nativeElement","focus","Directive","ElementRef","Input","EllipsisDirective","cdRef","enabled","width","undefined","ngAfterContentInit","title","innerText","detectChanges","ChangeDetectorRef","HostBinding","AbpForContext","$implicit","index","count","list","RecordView","record","view","ForDirective","tempRef","vcRef","differs","compareBy","compare","trackBy","item","id","iterateOverAppliedOperations","changes","rw","forEachOperation","previousIndex","currentIndex","createEmbeddedView","items","remove","move","context","iterateOverAttachedViews","viewRef","forEachIdentityChange","projectItems","emptyRef","rootNodes","isShowEmptyRef","clear","differ","create","trackByFn","diff","sortItems","orderBy","ngOnChanges","clone","compareFn","filterBy","filterVal","orderDir","reverse","TemplateRef","ViewContainerRef","IterableDiffers","uuid","Math","random","toString","FormSubmitDirective","formGroupDirective","host","ngSubmit","EventEmitter","executedNgSubmit","ngOnInit","markAsDirty","fromEvent","debounceTime","dispatchEvent","Event","bubbles","cancelable","notValidateOnSubmit","form","setDirty","controls","group","updateValueAndValidity","FormGroupDirective","Self","Output","PermissionDirective","renderer","condition","isGranted","removeChild","parentElement","Renderer2","VisibilityDirective","completed$","observer","MutationObserver","mutations","mutation","childNodes","node","HTMLElement","disconnect","focusedElement","childList","AuthGuard","oauthService","canActivate","hasValidAccessToken","Navigate","redirectUrl","OAuthService","PermissionGuard","resource","access","status","ApplicationConfiguration","ABP","Config","Session","Profile","ApiInterceptor","oAuthService","intercept","headers","token","getAccessToken","has","handle","setHeaders","finalize","Response","Localization","Language","Auth","Setting","CurrentUser","Features","Root","PagedItemsResponse","PageQueryParams","Route","FullRoute","BasicItem","Environment","Application","Requirements","Rest","Request","ChangePasswordRequest","NGXS_CONFIG_PLUGIN_OPTIONS","InjectionToken","ConfigPlugin","initialized","matches","actionMatcher","InitState","UpdateState","abpRoutes","transformed","component","loadChildren","abpPackage","abp","setUrls","transformRoutes","flat","flatRoutes","setValue","Inject","ConfigService","LazyLoadService","loadedLibraries","load","content","targetQuery","position","library","slice","lastIndexOf","asObservable","ReplaySubject","document","createElement","src","text","rel","href","textContent","onload","querySelector","insertAdjacentElement","ENVIRONMENT","CONFIG","InputEventDebounceDirective","el","debounce","debounceEvent","emit","ClickEventStopPropagationDirective","stopPropEvent","stopPropagation","LocalizationPipe","initialValue","destroy$","transform","distinctUntilChanged","Pipe","pure","LocaleId","_super","__","tslib_1.__extends","currentLang","valueOf","String","LocaleProvider","provide","LOCALE_ID","useClass","deps","CoreModule","forRoot","ngModule","providers","NGXS_PLUGINS","multi","useValue","HTTP_INTERCEPTORS","APP_INITIALIZER","Injector","useFactory","NgModule","imports","NgxsModule","forFeature","NgxsStoragePluginModule","NgxsRouterPluginModule","CommonModule","HttpClientModule","FormsModule","ReactiveFormsModule","RouterModule","declarations","exports","entryComponents"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ABP } from '../models';\n\nexport class PatchRouteByName {\n static readonly type = '[Config] Patch Route By Name';\n constructor(public name: string, public newValue: Partial) {}\n}\n\nexport class GetAppConfiguration {\n static readonly type = '[Config] Get App Configuration';\n}\n","import { HttpRequest } from '@angular/common/http';\n\nexport class StartLoader {\n static readonly type = '[Loader] Start';\n constructor(public payload: HttpRequest) {}\n}\n\nexport class StopLoader {\n static readonly type = '[Loader] Stop';\n constructor(public payload: HttpRequest) {}\n}\n","import { Profile } from '../models';\n\nexport class GetProfile {\n static readonly type = '[Profile] Get';\n}\n\nexport class UpdateProfile {\n static readonly type = '[Profile] Update';\n constructor(public payload: Profile.Response) {}\n}\n\nexport class ChangePassword {\n static readonly type = '[Profile] Change Password';\n constructor(public payload: Profile.ChangePasswordRequest) {}\n}\n","import { HttpErrorResponse } from '@angular/common/http';\n\nexport class RestOccurError {\n static readonly type = '[Rest] Error';\n constructor(public payload: HttpErrorResponse | any) {}\n}\n","import { ABP } from '../models';\n\nexport class SetLanguage {\n static readonly type = '[Session] Set Language';\n constructor(public payload: string) {}\n}\nexport class SetTenant {\n static readonly type = '[Session] Set Tenant';\n constructor(public payload: ABP.BasicItem) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService } from './rest.service';\nimport { Profile, Rest } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ProfileService {\n constructor(private rest: RestService) {}\n\n get(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/my-profile',\n };\n\n return this.rest.request(request);\n }\n\n update(body: Profile.Response): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/identity/my-profile',\n body,\n };\n\n return this.rest.request(request);\n }\n\n changePassword(body: Profile.ChangePasswordRequest, skipHandleError: boolean = false): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/my-profile/change-password',\n body,\n };\n\n return this.rest.request(request, { skipHandleError });\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetProfile, ChangePassword, UpdateProfile } from '../actions/profile.actions';\nimport { Profile } from '../models/profile';\nimport { ProfileService } from '../services/profile.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'ProfileState',\n defaults: {} as Profile.State,\n})\nexport class ProfileState {\n @Selector()\n static getProfile({ profile }: Profile.State): Profile.Response {\n return profile;\n }\n\n constructor(private profileService: ProfileService) {}\n\n @Action(GetProfile)\n profileGet({ patchState }: StateContext) {\n return this.profileService.get().pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(UpdateProfile)\n profileUpdate({ patchState }: StateContext, { payload }: UpdateProfile) {\n return this.profileService.update(payload).pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(ChangePassword)\n changePassword(_, { payload }: ChangePassword) {\n return this.profileService.changePassword(payload, true);\n }\n}\n","// Different locales from .NET\n// Key is .NET locale, value is Angular locale\n\nexport default {\n 'ar-sa': 'ar-SA',\n 'ca-ES-valencia': 'ca-ES-VALENCIA',\n 'de-de': 'de',\n 'es-ES': 'es',\n 'en-US': 'en',\n 'fil-Latn': 'en',\n 'ku-Arab': 'en',\n 'ky-Cyrl': 'en',\n 'mi-Latn': 'en',\n 'prs-Arab': 'en',\n 'qut-Latn': 'en',\n nso: 'en',\n quz: 'en',\n 'fr-FR': 'fr',\n 'gd-Latn': 'gd',\n 'ha-Latn': 'ha',\n 'ig-Latn': 'ig',\n 'it-it': 'it',\n 'mn-Cyrl': 'mn',\n 'pt-BR': 'pt',\n 'sd-Arab': 'pa-Arab',\n 'sr-Cyrl-RS': 'sr-Cyrl',\n 'sr-Latn-RS': 'sr-Latn',\n 'tg-Cyrl': 'tg',\n 'tk-Latn': 'tk',\n 'tt-Cyrl': 'tt',\n 'ug-Arab': 'ug',\n 'yo-Latn': 'yo',\n};\n","import { registerLocaleData } from '@angular/common';\nimport { Injector } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport differentLocales from '../constants/different-locales';\nimport { SessionState } from '../states/session.state';\n\nexport function getInitialData(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n return store.dispatch(new GetAppConfiguration()).toPromise();\n };\n\n return fn;\n}\n\nexport function localeInitializer(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n const lang = store.selectSnapshot(SessionState.getLanguage) || 'en';\n\n return new Promise((resolve, reject) => {\n registerLocale(lang).then(() => resolve(), reject);\n });\n };\n\n return fn;\n}\n\nexport function registerLocale(locale: string) {\n return import(\n /* webpackInclude: /(af|am|ar-SA|as|az-Latn|be|bg|bn-BD|bn-IN|bs|ca|ca-ES-VALENCIA|cs|cy|da|de|de|el|en-GB|en|es|en|es-US|es-MX|et|eu|fa|fi|en|fr|fr|fr-CA|ga|gd|gl|gu|ha|he|hi|hr|hu|hy|id|ig|is|it|it|ja|ka|kk|km|kn|ko|kok|en|en|lb|lt|lv|en|mk|ml|mn|mr|ms|mt|nb|ne|nl|nl-BE|nn|en|or|pa|pa-Arab|pl|en|pt|pt-PT|en|en|ro|ru|rw|pa-Arab|si|sk|sl|sq|sr-Cyrl-BA|sr-Cyrl|sr-Latn|sv|sw|ta|te|tg|th|ti|tk|tn|tr|tt|ug|uk|ur|uz-Latn|vi|wo|xh|yo|zh-Hans|zh-Hant|zu)\\.js$/ */\n `@angular/common/locales/${differentLocales[locale] || locale}.js`\n ).then(module => {\n registerLocaleData(module.default);\n });\n}\n","import { Injectable, Optional, SkipSelf } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router } from '@angular/router';\nimport { Actions, Store } from '@ngxs/store';\nimport { noop, Observable } from 'rxjs';\nimport { ConfigState } from '../states/config.state';\nimport { SessionState } from '../states/session.state';\nimport { registerLocale } from '../utils/initial-utils';\n\ntype ShouldReuseRoute = (future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot) => boolean;\n\n@Injectable({ providedIn: 'root' })\nexport class LocalizationService {\n get currentLang(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n constructor(\n private store: Store,\n private router: Router,\n private actions: Actions,\n @Optional()\n @SkipSelf()\n otherInstance: LocalizationService,\n ) {\n if (otherInstance) throw new Error('LocaleService should have only one instance.');\n }\n\n private setRouteReuse(reuse: ShouldReuseRoute) {\n this.router.routeReuseStrategy.shouldReuseRoute = reuse;\n }\n\n registerLocale(locale: string) {\n const { shouldReuseRoute } = this.router.routeReuseStrategy;\n\n this.setRouteReuse(() => false);\n this.router.navigated = false;\n\n return registerLocale(locale).then(async () => {\n await this.router.navigateByUrl(this.router.url).catch(noop);\n this.setRouteReuse(shouldReuseRoute);\n });\n }\n\n get(keys: string, ...interpolateParams: string[]): Observable {\n return this.store.select(ConfigState.getCopy(keys, ...interpolateParams));\n }\n\n instant(keys: string, ...interpolateParams: string[]): string {\n return this.store.selectSnapshot(ConfigState.getCopy(keys, ...interpolateParams));\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { SetLanguage, SetTenant } from '../actions/session.actions';\nimport { ABP, Session } from '../models';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport { LocalizationService } from '../services/localization.service';\nimport { from, combineLatest } from 'rxjs';\n\n@State({\n name: 'SessionState',\n defaults: {} as Session.State,\n})\nexport class SessionState {\n @Selector()\n static getLanguage({ language }: Session.State): string {\n return language;\n }\n\n @Selector()\n static getTenant({ tenant }: Session.State): ABP.BasicItem {\n return tenant;\n }\n\n constructor(private localizationService: LocalizationService) {}\n\n @Action(SetLanguage)\n setLanguage({ patchState, dispatch }: StateContext, { payload }: SetLanguage) {\n patchState({\n language: payload,\n });\n\n return combineLatest([dispatch(new GetAppConfiguration()), from(this.localizationService.registerLocale(payload))]);\n }\n\n @Action(SetTenant)\n setTenantId({ patchState }: StateContext, { payload }: SetTenant) {\n patchState({\n tenant: payload,\n });\n }\n}\n","import { HttpClient, HttpRequest } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { NEVER, Observable, throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport { Rest } from '../models/rest';\nimport { ConfigState } from '../states';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RestService {\n constructor(private http: HttpClient, private store: Store) {}\n\n handleError(err: any): Observable {\n this.store.dispatch(new RestOccurError(err));\n console.error(err);\n return throwError(err);\n }\n\n request(request: HttpRequest | Rest.Request, config: Rest.Config = {}, api?: string): Observable {\n const { observe = Rest.Observe.Body, skipHandleError } = config;\n const url = api || this.store.selectSnapshot(ConfigState.getApiUrl()) + request.url;\n const { method, ...options } = request;\n return this.http.request(method, url, { observe, ...options } as any).pipe(\n observe === Rest.Observe.Body ? take(1) : null,\n catchError(err => {\n if (skipHandleError) {\n return throwError(err);\n }\n\n return this.handleError(err);\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ApplicationConfiguration, Rest } from '../models';\nimport { RestService } from './rest.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ApplicationConfigurationService {\n constructor(private rest: RestService) {}\n\n getConfiguration(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/application-configuration',\n };\n\n return this.rest.request(request);\n }\n}\n","import { ABP } from '../models';\n\nexport function organizeRoutes(\n routes: ABP.FullRoute[],\n wrappers: ABP.FullRoute[] = [],\n parentNameArr = [] as ABP.FullRoute[],\n parentName: string = null,\n): ABP.FullRoute[] {\n const filter = route => {\n if (route.children && route.children.length) {\n route.children = organizeRoutes(route.children, wrappers, parentNameArr, route.name);\n }\n\n if (route.parentName && route.parentName !== parentName) {\n parentNameArr.push(route);\n return false;\n }\n\n return true;\n };\n\n if (parentName) {\n // recursive block\n return routes.filter(filter);\n }\n\n const filteredRoutes = routes.filter(filter);\n\n if (parentNameArr.length) {\n return sortRoutes(setChildRoute([...filteredRoutes, ...wrappers], parentNameArr));\n }\n\n return filteredRoutes;\n}\n\nexport function setChildRoute(routes: ABP.FullRoute[], parentNameArr: ABP.FullRoute[]): ABP.FullRoute[] {\n return routes.map(route => {\n if (route.children && route.children.length) {\n route.children = setChildRoute(route.children, parentNameArr);\n }\n\n const foundedChildren = parentNameArr.filter(parent => parent.parentName === route.name);\n if (foundedChildren && foundedChildren.length) {\n route.children = [...(route.children || []), ...foundedChildren];\n }\n\n return route;\n });\n}\n\nexport function sortRoutes(routes: ABP.FullRoute[] = []): ABP.FullRoute[] {\n if (!routes.length) return [];\n return routes\n .sort((a, b) => a.order - b.order)\n .map(route => {\n if (route.children && route.children.length) {\n route.children = sortRoutes(route.children);\n }\n\n return route;\n });\n}\n","import { State, Selector, createSelector, Action, StateContext, Store } from '@ngxs/store';\nimport { Config, ABP } from '../models';\nimport { GetAppConfiguration, PatchRouteByName } from '../actions/config.actions';\nimport { ApplicationConfigurationService } from '../services/application-configuration.service';\nimport { tap, switchMap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { SetLanguage } from '../actions';\nimport { SessionState } from './session.state';\nimport { of } from 'rxjs';\nimport { setChildRoute, sortRoutes, organizeRoutes } from '../utils/route-utils';\n\n@State({\n name: 'ConfigState',\n defaults: {} as Config.State,\n})\nexport class ConfigState {\n @Selector()\n static getAll(state: Config.State) {\n return state;\n }\n\n @Selector()\n static getApplicationInfo(state: Config.State) {\n return state.environment.application || {};\n }\n\n static getOne(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return state[key];\n },\n );\n\n return selector;\n }\n\n static getDeep(keys: string[] | string) {\n if (typeof keys === 'string') {\n keys = keys.split('.');\n }\n\n if (!Array.isArray(keys)) {\n throw new Error('The argument must be a dot string or an string array.');\n }\n\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return (keys as string[]).reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state);\n },\n );\n\n return selector;\n }\n\n static getRoute(path?: string, name?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n const { flattedRoutes } = state;\n return (flattedRoutes as ABP.FullRoute[]).find(route => {\n if (path && route.path === path) {\n return route;\n } else if (name && route.name === name) {\n return route;\n }\n });\n },\n );\n\n return selector;\n }\n\n static getApiUrl(key?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): string {\n return state.environment.apis[key || 'default'].url;\n },\n );\n\n return selector;\n }\n\n static getSetting(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return snq(() => state.setting.values[key]);\n },\n );\n\n return selector;\n }\n\n static getGrantedPolicy(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): boolean {\n if (!key) return true;\n return snq(() => state.auth.grantedPolicies[key], false);\n },\n );\n\n return selector;\n }\n\n static getCopy(key: string, ...interpolateParams: string[]) {\n if (!key) key = '';\n\n const keys = key.split('::') as string[];\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n if (!state.localization) return key;\n\n const { defaultResourceName } = state.environment.localization;\n if (keys[0] === '') {\n if (!defaultResourceName) {\n throw new Error(\n `Please check your environment. May you forget set defaultResourceName? \n Here is the example:\n { production: false,\n localization: {\n defaultResourceName: 'MyProjectName'\n }\n }`,\n );\n }\n\n keys[0] = snq(() => defaultResourceName);\n }\n\n let copy = (keys as any).reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state.localization.values);\n\n interpolateParams = interpolateParams.filter(params => params != null);\n if (copy && interpolateParams && interpolateParams.length) {\n interpolateParams.forEach(param => {\n copy = copy.replace(/[\\'\\\"]?\\{[\\d]+\\}[\\'\\\"]?/, param);\n });\n }\n\n return copy || key;\n },\n );\n\n return selector;\n }\n\n constructor(private appConfigurationService: ApplicationConfigurationService, private store: Store) {}\n\n @Action(GetAppConfiguration)\n addData({ patchState, dispatch }: StateContext) {\n return this.appConfigurationService.getConfiguration().pipe(\n tap(configuration =>\n patchState({\n ...configuration,\n }),\n ),\n switchMap(configuration => {\n let defaultLang: string = configuration.setting.values['Abp.Localization.DefaultLanguage'];\n\n if (defaultLang.includes(';')) {\n defaultLang = defaultLang.split(';')[0];\n }\n\n return this.store.selectSnapshot(SessionState.getLanguage) ? of(null) : dispatch(new SetLanguage(defaultLang));\n }),\n );\n }\n\n @Action(PatchRouteByName)\n patchRoute({ patchState, getState }: StateContext, { name, newValue }: PatchRouteByName) {\n let routes: ABP.FullRoute[] = getState().routes;\n\n const index = routes.findIndex(route => route.name === name);\n\n routes = patchRouteDeep(routes, name, newValue);\n\n return patchState({\n routes,\n });\n }\n}\n\nfunction patchRouteDeep(\n routes: ABP.FullRoute[],\n name: string,\n newValue: Partial,\n parentUrl: string = null,\n): ABP.FullRoute[] {\n routes = routes.map(route => {\n if (route.name === name) {\n if (newValue.path) {\n newValue.url = `${parentUrl}/${newValue.path}`;\n }\n\n if (newValue.children && newValue.children.length) {\n newValue.children = newValue.children.map(child => ({\n ...child,\n url: `${parentUrl}/${route.path}/${child.path}`,\n }));\n }\n\n return { ...route, ...newValue };\n } else if (route.children && route.children.length) {\n route.children = patchRouteDeep(route.children, name, newValue, (parentUrl || '/') + route.path);\n }\n\n return route;\n });\n\n if (parentUrl) {\n // recursive block\n return routes;\n }\n\n return organizeRoutes(routes);\n}\n","import { Observable, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nexport const takeUntilDestroy = (componentInstance, destroyMethodName = 'ngOnDestroy') => (\n source: Observable,\n) => {\n const originalDestroy = componentInstance[destroyMethodName];\n if (isFunction(originalDestroy) === false) {\n throw new Error(\n `${componentInstance.constructor.name} is using untilDestroyed but doesn't implement ${destroyMethodName}`,\n );\n }\n if (!componentInstance['__takeUntilDestroy']) {\n componentInstance['__takeUntilDestroy'] = new Subject();\n\n componentInstance[destroyMethodName] = function() {\n isFunction(originalDestroy) && originalDestroy.apply(this, arguments);\n componentInstance['__takeUntilDestroy'].next(true);\n componentInstance['__takeUntilDestroy'].complete();\n };\n }\n return source.pipe(takeUntil(componentInstance['__takeUntilDestroy']));\n};\n","import { Component, Input, OnDestroy, Type } from '@angular/core';\nimport { ActivatedRoute, NavigationEnd, Router, UrlSegment } from '@angular/router';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport snq from 'snq';\nimport { eLayoutType } from '../enums/common';\nimport { Config } from '../models/config';\nimport { ABP } from '../models/common';\nimport { ConfigState } from '../states/config.state';\nimport { takeUntilDestroy } from '../utils/rxjs-utils';\n\n@Component({\n selector: 'abp-dynamic-layout',\n template: `\n \n\n \n \n `,\n})\nexport class DynamicLayoutComponent implements OnDestroy {\n @Select(ConfigState.getOne('requirements'))\n requirements$: Observable;\n\n layout: Type;\n\n constructor(private router: Router, private route: ActivatedRoute, private store: Store) {\n const {\n requirements: { layouts },\n routes,\n } = this.store.selectSnapshot(ConfigState.getAll);\n\n if ((this.route.snapshot.data || {}).layout) {\n this.layout = layouts\n .filter(l => !!l)\n .find((l: any) => snq(() => l.type.toLowerCase().indexOf(this.route.snapshot.data.layout), -1) > -1);\n }\n\n this.router.events.pipe(takeUntilDestroy(this)).subscribe(event => {\n if (event instanceof NavigationEnd) {\n const { segments } = this.router.parseUrl(event.url).root.children.primary;\n\n const layout = (this.route.snapshot.data || {}).layout || findLayout(segments, routes);\n\n this.layout = layouts\n .filter(l => !!l)\n .find((l: any) => snq(() => l.type.toLowerCase().indexOf(layout), -1) > -1);\n }\n });\n }\n\n ngOnDestroy() {}\n}\n\nfunction findLayout(segments: UrlSegment[], routes: ABP.FullRoute[]): eLayoutType {\n let layout = eLayoutType.empty;\n\n const route = routes\n .reduce((acc, val) => (val.wrapper ? [...acc, ...val.children] : [...acc, val]), [])\n .find(r => r.path === segments[0].path);\n\n if (route) {\n if (route.layout) {\n layout = route.layout;\n }\n\n if (route.children && route.children.length && segments.length > 1) {\n const child = route.children.find(c => c.path === segments[1].path);\n\n if (child && child.layout) {\n layout = child.layout;\n }\n }\n }\n\n return layout;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-router-outlet',\n template: `\n \n `,\n})\nexport class RouterOutletComponent {}\n","import { Directive, ElementRef, Input, AfterViewInit } from '@angular/core';\n\n@Directive({\n selector: '[autofocus]',\n})\nexport class AutofocusDirective implements AfterViewInit {\n @Input('autofocus')\n delay: number = 0;\n\n constructor(private elRef: ElementRef) {}\n\n ngAfterViewInit(): void {\n setTimeout(() => this.elRef.nativeElement.focus(), this.delay);\n }\n}\n","import { AfterContentInit, ChangeDetectorRef, Directive, ElementRef, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[abpEllipsis]',\n})\nexport class EllipsisDirective implements AfterContentInit {\n @Input('abpEllipsis')\n width: string;\n\n @HostBinding('title')\n @Input()\n title: string;\n\n @Input('abpEllipsisEnabled')\n enabled = true;\n\n @HostBinding('class.abp-ellipsis-inline')\n get inlineClass() {\n return this.enabled && this.width;\n }\n\n @HostBinding('class.abp-ellipsis')\n get class() {\n return this.enabled && !this.width;\n }\n\n @HostBinding('style.max-width')\n get maxWidth() {\n return this.enabled && this.width ? this.width || '170px' : undefined;\n }\n\n constructor(private cdRef: ChangeDetectorRef, private elRef: ElementRef) {}\n\n ngAfterContentInit() {\n setTimeout(() => {\n const title = this.title;\n this.title = title || (this.elRef.nativeElement as HTMLElement).innerText;\n\n if (this.title !== title) {\n this.cdRef.detectChanges();\n }\n }, 0);\n }\n}\n","import {\n Directive,\n EmbeddedViewRef,\n Input,\n IterableChangeRecord,\n IterableChanges,\n IterableDiffer,\n IterableDiffers,\n OnChanges,\n TemplateRef,\n TrackByFunction,\n ViewContainerRef,\n} from '@angular/core';\nimport compare from 'just-compare';\nimport clone from 'just-clone';\n\nexport type CompareFn = (value: T, comparison: T) => boolean;\n\nclass AbpForContext {\n constructor(public $implicit: any, public index: number, public count: number, public list: any[]) {}\n}\n\nclass RecordView {\n constructor(public record: IterableChangeRecord, public view: EmbeddedViewRef) {}\n}\n\n@Directive({\n selector: '[abpFor]',\n})\nexport class ForDirective implements OnChanges {\n @Input('abpForOf')\n items: any[];\n\n @Input('abpForOrderBy')\n orderBy: string;\n\n @Input('abpForOrderDir')\n orderDir: 'ASC' | 'DESC';\n\n @Input('abpForFilterBy')\n filterBy: string;\n\n @Input('abpForFilterVal')\n filterVal: any;\n\n @Input('abpForTrackBy')\n trackBy;\n\n @Input('abpForCompareBy')\n compareBy: CompareFn;\n\n @Input('abpForEmptyRef')\n emptyRef: TemplateRef;\n\n private differ: IterableDiffer;\n\n private isShowEmptyRef: boolean;\n\n get compareFn(): CompareFn {\n return this.compareBy || compare;\n }\n\n get trackByFn(): TrackByFunction {\n return this.trackBy || ((index: number, item: any) => (item as any).id || index);\n }\n\n constructor(\n private tempRef: TemplateRef,\n private vcRef: ViewContainerRef,\n private differs: IterableDiffers,\n ) {}\n\n private iterateOverAppliedOperations(changes: IterableChanges) {\n const rw: RecordView[] = [];\n\n changes.forEachOperation((record: IterableChangeRecord, previousIndex: number, currentIndex: number) => {\n if (record.previousIndex == null) {\n const view = this.vcRef.createEmbeddedView(\n this.tempRef,\n new AbpForContext(null, -1, -1, this.items),\n currentIndex,\n );\n\n rw.push(new RecordView(record, view));\n } else if (currentIndex == null) {\n this.vcRef.remove(previousIndex);\n } else {\n const view = this.vcRef.get(previousIndex);\n this.vcRef.move(view, currentIndex);\n\n rw.push(new RecordView(record, view as EmbeddedViewRef));\n }\n });\n\n for (let i = 0, l = rw.length; i < l; i++) {\n rw[i].view.context.$implicit = rw[i].record.item;\n }\n }\n\n private iterateOverAttachedViews(changes: IterableChanges) {\n for (let i = 0, l = this.vcRef.length; i < l; i++) {\n const viewRef = this.vcRef.get(i) as EmbeddedViewRef;\n viewRef.context.index = i;\n viewRef.context.count = l;\n viewRef.context.list = this.items;\n }\n\n changes.forEachIdentityChange((record: IterableChangeRecord) => {\n const viewRef = this.vcRef.get(record.currentIndex) as EmbeddedViewRef;\n viewRef.context.$implicit = record.item;\n });\n }\n\n private projectItems(items: any[]): void {\n if (!items.length && this.emptyRef) {\n this.vcRef.createEmbeddedView(this.emptyRef).rootNodes;\n this.isShowEmptyRef = true;\n\n return;\n }\n\n if (this.emptyRef && this.isShowEmptyRef) {\n this.vcRef.clear();\n this.isShowEmptyRef = false;\n }\n\n if (!this.differ && items) {\n this.differ = this.differs.find(items).create(this.trackByFn);\n }\n\n if (this.differ) {\n const changes = this.differ.diff(items);\n\n if (changes) {\n this.iterateOverAppliedOperations(changes);\n this.iterateOverAttachedViews(changes);\n }\n }\n }\n\n private sortItems(items: any[]) {\n if (this.orderBy) {\n items.sort((a, b) => (a[this.orderBy] > b[this.orderBy] ? 1 : a[this.orderBy] < b[this.orderBy] ? -1 : 0));\n } else {\n items.sort();\n }\n }\n\n ngOnChanges() {\n let items = clone(this.items) as any[];\n if (!Array.isArray(items)) return;\n\n const compareFn = this.compareFn;\n\n if (typeof this.filterBy !== 'undefined') {\n items = items.filter(item => compareFn(item[this.filterBy], this.filterVal));\n }\n\n switch (this.orderDir) {\n case 'ASC':\n this.sortItems(items);\n this.projectItems(items);\n break;\n\n case 'DESC':\n this.sortItems(items);\n items.reverse();\n this.projectItems(items);\n break;\n\n default:\n this.projectItems(items);\n }\n }\n}\n","export function uuid(a?: any): string {\n return a\n ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16)\n : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid);\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n Self,\n} from '@angular/core';\nimport { FormControl, FormGroup, FormGroupDirective } from '@angular/forms';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime, filter } from 'rxjs/operators';\nimport { takeUntilDestroy } from '../utils';\n\ntype Controls = { [key: string]: FormControl } | FormGroup[];\n\n@Directive({\n selector: 'form[ngSubmit][formGroup]',\n})\nexport class FormSubmitDirective implements OnInit, OnDestroy {\n @Input()\n notValidateOnSubmit: string | boolean;\n\n @Output()\n ngSubmit = new EventEmitter();\n\n executedNgSubmit: boolean = false;\n\n constructor(\n @Self() private formGroupDirective: FormGroupDirective,\n private host: ElementRef,\n private cdRef: ChangeDetectorRef,\n ) {}\n\n ngOnInit() {\n this.formGroupDirective.ngSubmit.pipe(takeUntilDestroy(this)).subscribe(() => {\n this.markAsDirty();\n this.executedNgSubmit = true;\n });\n\n fromEvent(this.host.nativeElement as HTMLElement, 'keyup')\n .pipe(\n debounceTime(200),\n filter((key: KeyboardEvent) => key && key.key === 'Enter'),\n takeUntilDestroy(this),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.host.nativeElement.dispatchEvent(new Event('submit', { bubbles: true, cancelable: true }));\n }\n\n this.executedNgSubmit = false;\n });\n\n fromEvent(this.host.nativeElement, 'submit')\n .pipe(\n takeUntilDestroy(this),\n filter(() => !this.notValidateOnSubmit && typeof this.notValidateOnSubmit !== 'string'),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.markAsDirty();\n }\n });\n }\n\n ngOnDestroy(): void {}\n\n markAsDirty() {\n const { form } = this.formGroupDirective;\n\n setDirty(form.controls as { [key: string]: FormControl });\n form.markAsDirty();\n\n this.cdRef.detectChanges();\n }\n}\n\nfunction setDirty(controls: Controls) {\n if (Array.isArray(controls)) {\n controls.forEach(group => {\n setDirty(group.controls as { [key: string]: FormControl });\n });\n return;\n }\n\n Object.keys(controls).forEach(key => {\n controls[key].markAsDirty();\n controls[key].updateValueAndValidity();\n });\n}\n","import { Directive, ElementRef, Input, OnDestroy, OnInit, Optional, Renderer2 } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\n\n@Directive({\n selector: '[abpPermission]',\n})\nexport class PermissionDirective implements OnInit, OnDestroy {\n @Input('abpPermission') condition: string;\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2, private store: Store) {}\n\n ngOnInit() {\n if (this.condition) {\n this.store\n .select(ConfigState.getGrantedPolicy(this.condition))\n .pipe(takeUntilDestroy(this))\n .subscribe(isGranted => {\n if (!isGranted) {\n this.renderer.removeChild(\n (this.elRef.nativeElement as HTMLElement).parentElement,\n this.elRef.nativeElement,\n );\n }\n });\n }\n }\n\n ngOnDestroy(): void {}\n}\n","import { Directive, Input, Optional, ElementRef, Renderer2, AfterViewInit } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport snq from 'snq';\n\n@Directive({\n selector: '[abpVisibility]',\n})\nexport class VisibilityDirective implements AfterViewInit {\n @Input('abpVisibility')\n focusedElement: HTMLElement;\n\n completed$ = new Subject();\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2) {}\n\n ngAfterViewInit() {\n const observer = new MutationObserver(mutations => {\n mutations.forEach(mutation => {\n if (!mutation.target) return;\n\n const htmlNodes = snq(\n () => Array.from(mutation.target.childNodes).filter(node => node instanceof HTMLElement),\n [],\n );\n\n if (!htmlNodes.length) {\n this.renderer.removeChild(this.elRef.nativeElement.parentElement, this.elRef.nativeElement);\n this.disconnect();\n } else {\n setTimeout(() => {\n this.disconnect();\n }, 0);\n }\n });\n });\n\n observer.observe(this.focusedElement, {\n childList: true,\n });\n\n this.completed$.subscribe(() => observer.disconnect());\n }\n\n disconnect() {\n this.completed$.next();\n this.completed$.complete();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Observable } from 'rxjs';\nimport { Navigate } from '@ngxs/router-plugin';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthGuard implements CanActivate {\n constructor(private oauthService: OAuthService, private store: Store) {}\n canActivate(_: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | boolean | UrlTree {\n const hasValidAccessToken = this.oauthService.hasValidAccessToken();\n if (hasValidAccessToken) {\n return hasValidAccessToken;\n }\n\n this.store.dispatch(new Navigate(['/account/login'], null, { state: { redirectUrl: state.url } }));\n\n return false;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { ConfigState } from '../states';\nimport { tap } from 'rxjs/operators';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionGuard implements CanActivate {\n constructor(private store: Store) {}\n\n canActivate({ data }: ActivatedRouteSnapshot): Observable {\n const resource = data.requiredPolicy as string;\n return this.store.select(ConfigState.getGrantedPolicy(resource)).pipe(\n tap(access => {\n if (!access) {\n this.store.dispatch(new RestOccurError({ status: 403 }));\n }\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpInterceptor, HttpHandler, HttpRequest } from '@angular/common/http';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Store } from '@ngxs/store';\nimport { SessionState } from '../states';\nimport { StartLoader, StopLoader } from '../actions/loader.actions';\nimport { finalize } from 'rxjs/operators';\n\n@Injectable()\nexport class ApiInterceptor implements HttpInterceptor {\n constructor(private oAuthService: OAuthService, private store: Store) {}\n\n intercept(request: HttpRequest, next: HttpHandler) {\n this.store.dispatch(new StartLoader(request));\n\n const headers = {} as any;\n\n const token = this.oAuthService.getAccessToken();\n if (!request.headers.has('Authorization') && token) {\n headers['Authorization'] = `Bearer ${token}`;\n }\n\n const lang = this.store.selectSnapshot(SessionState.getLanguage);\n if (!request.headers.has('Accept-Language') && lang) {\n headers['Accept-Language'] = lang;\n }\n\n const tenant = this.store.selectSnapshot(SessionState.getTenant);\n if (!request.headers.has('__tenant') && tenant) {\n headers['__tenant'] = tenant.id;\n }\n\n return next\n .handle(\n request.clone({\n setHeaders: headers,\n }),\n )\n .pipe(finalize(() => this.store.dispatch(new StopLoader(request))));\n }\n}\n","export namespace ApplicationConfiguration {\n export interface Response {\n localization: Localization;\n auth: Auth;\n setting: Setting;\n currentUser: CurrentUser;\n features: Features;\n }\n\n export interface Localization {\n values: LocalizationValue;\n languages: Language[];\n }\n\n export interface LocalizationValue {\n [key: string]: { [key: string]: string };\n }\n\n export interface Language {\n cultureName: string;\n uiCultureName: string;\n displayName: string;\n flagIcon: string;\n }\n\n export interface Auth {\n policies: Policy;\n grantedPolicies: Policy;\n }\n\n export interface Policy {\n [key: string]: boolean;\n }\n\n export interface Setting {\n values: { [key: string]: 'Abp.Localization.DefaultLanguage' };\n }\n\n export interface CurrentUser {\n isAuthenticated: boolean;\n id: string;\n tenantId: string;\n userName: string;\n }\n\n export interface Features {\n values: Setting;\n }\n}\n","import { Config } from './config';\nimport { eLayoutType } from '../enums/common';\n\nexport namespace ABP {\n export interface Root {\n environment: Partial;\n requirements: Config.Requirements;\n }\n\n export type PagedResponse = {\n totalCount: number;\n } & PagedItemsResponse;\n\n export interface PagedItemsResponse {\n items: T[];\n }\n\n export interface PageQueryParams {\n filter?: string;\n sorting?: string;\n skipCount?: number;\n maxResultCount?: number;\n }\n\n export interface Route {\n children?: Route[];\n invisible?: boolean;\n layout?: eLayoutType;\n name: string;\n order?: number;\n parentName?: string;\n path: string;\n requiredPolicy?: string;\n iconClass?: string;\n }\n\n export interface FullRoute extends Route {\n url?: string;\n wrapper?: boolean;\n }\n\n export interface BasicItem {\n id: string;\n name: string;\n }\n}\n","import { AuthConfig } from 'angular-oauth2-oidc';\nimport { Type } from '@angular/core';\nimport { ApplicationConfiguration } from './application-configuration';\nimport { ABP } from './common';\n\nexport namespace Config {\n export type State = ApplicationConfiguration.Response &\n ABP.Root & { environment: Environment } & {\n routes: ABP.FullRoute[];\n flattedRoutes: ABP.FullRoute[];\n };\n\n export interface Environment {\n application: Application;\n production: boolean;\n oAuthConfig: AuthConfig;\n apis: Apis;\n localization: { defaultResourceName: string };\n }\n\n export interface Application {\n name: string;\n logoUrl?: string;\n }\n\n export interface Apis {\n [key: string]: { [key: string]: string };\n }\n\n export interface Requirements {\n layouts: Type[];\n }\n}\n","import { ABP } from '../models';\n\nexport namespace Session {\n export interface State {\n language: string;\n tenant: ABP.BasicItem;\n }\n}\n","export namespace Profile {\n export interface State {\n profile: Response;\n }\n\n export interface Response {\n userName: string;\n email: string;\n name: string;\n surname: string;\n phoneNumber: string;\n }\n\n export interface ChangePasswordRequest {\n currentPassword: string;\n newPassword: string;\n }\n}\n","import { HttpHeaders, HttpParams } from '@angular/common/http';\n\nexport namespace Rest {\n export interface Config {\n skipHandleError?: boolean;\n observe?: Observe;\n }\n\n export const enum Observe {\n Body = 'body',\n Events = 'events',\n Response = 'response',\n }\n\n export const enum ResponseType {\n ArrayBuffer = 'arraybuffer',\n Blob = 'blob',\n JSON = 'json',\n Text = 'text',\n }\n\n export interface Request {\n body?: T;\n headers?:\n | HttpHeaders\n | {\n [header: string]: string | string[];\n };\n method: string;\n params?:\n | HttpParams\n | {\n [param: string]: any;\n };\n reportProgress?: boolean;\n responseType?: ResponseType;\n url: string;\n withCredentials?: boolean;\n }\n}\n","import { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { Router, Routes } from '@angular/router';\nimport { actionMatcher, InitState, NgxsNextPluginFn, NgxsPlugin, setValue, UpdateState } from '@ngxs/store';\nimport snq from 'snq';\nimport { ABP } from '../../models';\nimport { organizeRoutes } from '../../utils/route-utils';\nimport clone from 'just-clone';\n\nexport const NGXS_CONFIG_PLUGIN_OPTIONS = new InjectionToken('NGXS_CONFIG_PLUGIN_OPTIONS');\n\n@Injectable()\nexport class ConfigPlugin implements NgxsPlugin {\n private initialized: boolean = false;\n\n constructor(@Inject(NGXS_CONFIG_PLUGIN_OPTIONS) private options: ABP.Root, private router: Router) {}\n\n handle(state: any, event: any, next: NgxsNextPluginFn) {\n const matches = actionMatcher(event);\n const isInitAction = matches(InitState) || matches(UpdateState);\n\n // const layouts = snq(() => this.options.requirements.layouts.filter(layout => layout instanceof Type), []);\n if (isInitAction && !this.initialized) {\n let { routes, wrappers } = transformRoutes(this.router.config);\n routes = organizeRoutes(routes, wrappers);\n const flattedRoutes = flatRoutes(clone(routes));\n state = setValue(state, 'ConfigState', {\n ...(state.ConfigState && { ...state.ConfigState }),\n ...this.options,\n routes,\n flattedRoutes,\n });\n\n this.initialized = true;\n }\n\n return next(state, event);\n }\n}\n\nfunction transformRoutes(routes: Routes = [], wrappers: ABP.FullRoute[] = []): any {\n const abpRoutes: ABP.FullRoute[] = routes\n .filter(route => {\n return snq(() => route.data.routes.routes.find(r => r.path === route.path), false);\n })\n .reduce((acc, val) => [...acc, ...val.data.routes.routes], []);\n\n wrappers = abpRoutes.filter(ar => ar.wrapper);\n const transformed = [] as ABP.FullRoute[];\n routes\n .filter(route => (route.data || {}).routes && (route.component || route.loadChildren))\n .forEach(route => {\n const abpPackage = abpRoutes.find(\n abp => abp.path.toLowerCase() === route.path.toLowerCase() && snq(() => route.data.routes.routes.length, false),\n );\n const { length } = transformed;\n\n if (abpPackage) {\n transformed.push(abpPackage);\n }\n\n if (transformed.length === length) {\n transformed.push({\n ...route.data.routes,\n path: route.path,\n name: snq(() => route.data.routes.name, route.path),\n children: route.data.routes.children || [],\n } as ABP.FullRoute);\n }\n });\n\n return { routes: setUrls(transformed), wrappers };\n}\n\nfunction setUrls(routes: ABP.FullRoute[], parentUrl?: string): ABP.FullRoute[] {\n if (parentUrl) {\n // this if block using for only recursive call\n\n return routes.map(route => ({\n ...route,\n url: `${parentUrl}/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `${parentUrl}/${route.path}`),\n }),\n }));\n }\n\n return routes.map(route => ({\n ...route,\n url: `/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `/${route.path}`),\n }),\n }));\n}\n\nfunction flatRoutes(routes: ABP.FullRoute[]): ABP.FullRoute[] {\n const flat = (r: ABP.FullRoute[]) => {\n return r.reduce((acc, val) => {\n let value: ABP.FullRoute[] = [val];\n if (val.children) {\n const { children } = val;\n delete val.children;\n value = [val, ...flat(children)];\n }\n\n return [...acc, ...value];\n }, []);\n };\n\n return flat(routes);\n}\n","import { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConfigService {\n constructor(private store: Store) {}\n\n getAll() {\n return this.store.selectSnapshot(ConfigState.getAll);\n }\n\n getOne(key: string) {\n return this.store.selectSnapshot(ConfigState.getOne(key));\n }\n\n getDeep(keys: string[] | string) {\n return this.store.selectSnapshot(ConfigState.getDeep(keys));\n }\n\n getSetting(key: string) {\n return this.store.selectSnapshot(ConfigState.getSetting(key));\n }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { uuid } from '../utils';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LazyLoadService {\n loadedLibraries: { [url: string]: ReplaySubject } = {};\n\n load(\n url: string,\n type: 'script' | 'style',\n content: string = '',\n targetQuery: string = 'body',\n position: InsertPosition = 'afterend',\n ): Observable {\n if (!url && !content) return;\n const key = url ? url.slice(url.lastIndexOf('/') + 1) : uuid();\n\n if (this.loadedLibraries[key]) {\n return this.loadedLibraries[key].asObservable();\n }\n\n this.loadedLibraries[key] = new ReplaySubject();\n\n let library;\n if (type === 'script') {\n library = document.createElement('script');\n library.type = 'text/javascript';\n if (url) {\n (library as HTMLScriptElement).src = url;\n }\n\n (library as HTMLScriptElement).text = content;\n } else if (url) {\n library = document.createElement('link');\n library.type = 'text/css';\n (library as HTMLLinkElement).rel = 'stylesheet';\n\n if (url) {\n (library as HTMLLinkElement).href = url;\n }\n } else {\n library = document.createElement('style');\n (library as HTMLStyleElement).textContent = content;\n }\n\n library.onload = () => {\n this.loadedLibraries[key].next();\n this.loadedLibraries[key].complete();\n };\n\n document.querySelector(targetQuery).insertAdjacentElement(position, library);\n\n return this.loadedLibraries[key].asObservable();\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { Config } from '../models';\n\nexport function environmentFactory(environment: Config.Environment) {\n return {\n ...environment,\n };\n}\n\nexport function configFactory(config: Config.Requirements) {\n return {\n ...config,\n };\n}\n\nexport const ENVIRONMENT = new InjectionToken('ENVIRONMENT');\n\nexport const CONFIG = new InjectionToken('CONFIG');\n","import { Directive, Output, Renderer2, ElementRef, OnInit, EventEmitter, Input } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[input.debounce]',\n})\nexport class InputEventDebounceDirective implements OnInit {\n @Input() debounce: number = 300;\n\n @Output('input.debounce') debounceEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'input')\n .pipe(\n debounceTime(this.debounce),\n takeUntilDestroy(this),\n )\n .subscribe((event: Event) => {\n this.debounceEvent.emit(event);\n });\n }\n}\n","import { Directive, ElementRef, EventEmitter, OnInit, Output, Renderer2 } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[click.stop]',\n})\nexport class ClickEventStopPropagationDirective implements OnInit {\n @Output('click.stop') stopPropEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'click')\n .pipe(takeUntilDestroy(this))\n .subscribe((event: MouseEvent) => {\n event.stopPropagation();\n this.stopPropEvent.emit(event);\n });\n }\n}\n","import { Pipe, PipeTransform, OnDestroy } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\nimport { distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\n@Pipe({\n name: 'abpLocalization',\n pure: false, // required to update the value\n})\nexport class LocalizationPipe implements PipeTransform, OnDestroy {\n initialValue: string = '';\n\n value: string;\n\n destroy$ = new Subject();\n\n constructor(private store: Store) {}\n\n transform(value: string = '', ...interpolateParams: string[]): string {\n if (this.initialValue !== value) {\n this.initialValue = value;\n this.destroy$.next();\n\n this.store\n .select(\n ConfigState.getCopy(\n value,\n ...interpolateParams.reduce((acc, val) => (Array.isArray(val) ? [...acc, ...val] : [...acc, val]), []),\n ),\n )\n .pipe(\n takeUntil(this.destroy$),\n takeUntilDestroy(this),\n distinctUntilChanged(),\n )\n .subscribe(copy => (this.value = copy));\n }\n\n return this.value;\n }\n\n ngOnDestroy() {}\n}\n","import { LOCALE_ID, Provider } from '@angular/core';\nimport localesMapping from '../constants/different-locales';\nimport { LocalizationService } from '../services/localization.service';\n\nexport class LocaleId extends String {\n constructor(private localizationService: LocalizationService) {\n super();\n }\n\n toString(): string {\n const { currentLang } = this.localizationService;\n return localesMapping[currentLang] || currentLang;\n }\n\n valueOf(): string {\n return this.toString();\n }\n}\n\nexport const LocaleProvider: Provider = {\n provide: LOCALE_ID,\n useClass: LocaleId,\n deps: [LocalizationService],\n};\n","import { CommonModule } from '@angular/common';\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { NgxsRouterPluginModule } from '@ngxs/router-plugin';\nimport { NgxsStoragePluginModule } from '@ngxs/storage-plugin';\nimport { NgxsModule, NGXS_PLUGINS } from '@ngxs/store';\nimport { DynamicLayoutComponent } from './components/dynamic-layout.component';\nimport { RouterOutletComponent } from './components/router-outlet.component';\nimport { AutofocusDirective } from './directives/autofocus.directive';\nimport { InputEventDebounceDirective } from './directives/debounce.directive';\nimport { EllipsisDirective } from './directives/ellipsis.directive';\nimport { FormSubmitDirective } from './directives/form-submit.directive';\nimport { PermissionDirective } from './directives/permission.directive';\nimport { ClickEventStopPropagationDirective } from './directives/stop-propagation.directive';\nimport { VisibilityDirective } from './directives/visibility.directive';\nimport { ApiInterceptor } from './interceptors/api.interceptor';\nimport { ABP } from './models/common';\nimport { LocalizationPipe } from './pipes/localization.pipe';\nimport { LocaleProvider } from './providers/locale.provider';\nimport { ConfigState } from './states/config.state';\nimport { ProfileState } from './states/profile.state';\nimport { SessionState } from './states/session.state';\nimport { getInitialData, localeInitializer } from './utils/initial-utils';\nimport { ConfigPlugin, NGXS_CONFIG_PLUGIN_OPTIONS } from './plugins/config/config.plugin';\nimport { ForDirective } from './directives/for.directive';\n\n@NgModule({\n imports: [\n NgxsModule.forFeature([ProfileState, SessionState, ConfigState]),\n NgxsStoragePluginModule.forRoot({ key: 'SessionState' }),\n NgxsRouterPluginModule.forRoot(),\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n ],\n declarations: [\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n ForDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n ClickEventStopPropagationDirective,\n ],\n exports: [\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n ForDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n LocalizationPipe,\n ClickEventStopPropagationDirective,\n ],\n providers: [LocalizationPipe],\n entryComponents: [RouterOutletComponent, DynamicLayoutComponent],\n})\nexport class CoreModule {\n static forRoot(options = {} as ABP.Root): ModuleWithProviders {\n return {\n ngModule: CoreModule,\n providers: [\n LocaleProvider,\n {\n provide: NGXS_PLUGINS,\n useClass: ConfigPlugin,\n multi: true,\n },\n {\n provide: NGXS_CONFIG_PLUGIN_OPTIONS,\n useValue: options,\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: ApiInterceptor,\n multi: true,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: getInitialData,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: localeInitializer,\n },\n ],\n };\n }\n}\n","export function noop() {\n const fn = function() {};\n return fn;\n}\n"]} \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm2015/abp-ng.core.js b/npm/ng-packs/dist/core/esm2015/abp-ng.core.js index bb50ae9be4..25e8c19332 100644 --- a/npm/ng-packs/dist/core/esm2015/abp-ng.core.js +++ b/npm/ng-packs/dist/core/esm2015/abp-ng.core.js @@ -5,15 +5,16 @@ /** * Generated bundle index. Do not edit. */ -export { PatchRouteByName, GetAppConfiguration, StartLoader, StopLoader, GetProfile, UpdateProfile, ChangePassword, RestOccurError, SetLanguage, SetTenant, DynamicLayoutComponent, RouterOutletComponent, AutofocusDirective, EllipsisDirective, FormSubmitDirective, PermissionDirective, VisibilityDirective, AuthGuard, PermissionGuard, ApiInterceptor, Rest, NGXS_CONFIG_PLUGIN_OPTIONS, ConfigPlugin, ApplicationConfigurationService, ConfigService, LazyLoadService, LocalizationService, ProfileService, RestService, ProfileState, ConfigState, SessionState, environmentFactory, configFactory, ENVIRONMENT, CONFIG, noop, uuid, getInitialData, localeInitializer, registerLocale, organizeRoutes, setChildRoute, sortRoutes, takeUntilDestroy, CoreModule } from './public-api'; +export { PatchRouteByName, GetAppConfiguration, StartLoader, StopLoader, GetProfile, UpdateProfile, ChangePassword, RestOccurError, SetLanguage, SetTenant, DynamicLayoutComponent, RouterOutletComponent, AutofocusDirective, EllipsisDirective, ForDirective, FormSubmitDirective, PermissionDirective, VisibilityDirective, AuthGuard, PermissionGuard, ApiInterceptor, Rest, NGXS_CONFIG_PLUGIN_OPTIONS, ConfigPlugin, ApplicationConfigurationService, ConfigService, LazyLoadService, LocalizationService, ProfileService, RestService, ProfileState, ConfigState, SessionState, environmentFactory, configFactory, ENVIRONMENT, CONFIG, noop, uuid, getInitialData, localeInitializer, registerLocale, organizeRoutes, setChildRoute, sortRoutes, takeUntilDestroy, CoreModule } from './public-api'; export { GetAppConfiguration as ɵp, PatchRouteByName as ɵo } from './lib/actions/config.actions'; export { ChangePassword as ɵf, GetProfile as ɵd, UpdateProfile as ɵe } from './lib/actions/profile.actions'; export { SetLanguage as ɵj, SetTenant as ɵk } from './lib/actions/session.actions'; export { DynamicLayoutComponent as ɵr } from './lib/components/dynamic-layout.component'; export { RouterOutletComponent as ɵq } from './lib/components/router-outlet.component'; -export { AutofocusDirective as ɵt } from './lib/directives/autofocus.directive'; +export { AutofocusDirective as ɵs } from './lib/directives/autofocus.directive'; export { InputEventDebounceDirective as ɵz } from './lib/directives/debounce.directive'; -export { EllipsisDirective as ɵu } from './lib/directives/ellipsis.directive'; +export { EllipsisDirective as ɵt } from './lib/directives/ellipsis.directive'; +export { ForDirective as ɵu } from './lib/directives/for.directive'; export { FormSubmitDirective as ɵv } from './lib/directives/form-submit.directive'; export { PermissionDirective as ɵx } from './lib/directives/permission.directive'; export { ClickEventStopPropagationDirective as ɵba } from './lib/directives/stop-propagation.directive'; @@ -26,9 +27,8 @@ export { ApplicationConfigurationService as ɵn } from './lib/services/applicati export { LocalizationService as ɵi } from './lib/services/localization.service'; export { ProfileService as ɵb } from './lib/services/profile.service'; export { RestService as ɵc } from './lib/services/rest.service'; -export { ConfigState as ɵs } from './lib/states'; export { ConfigState as ɵm } from './lib/states/config.state'; export { ProfileState as ɵa } from './lib/states/profile.state'; export { SessionState as ɵh } from './lib/states/session.state'; export { getInitialData as ɵbg, localeInitializer as ɵbh } from './lib/utils/initial-utils'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmNvcmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmNvcmUvIiwic291cmNlcyI6WyJhYnAtbmcuY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsK3VCQUFjLGNBQWMsQ0FBQztBQUU3QixPQUFPLEVBQUMsbUJBQW1CLElBQUksRUFBRSxFQUFDLGdCQUFnQixJQUFJLEVBQUUsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzlGLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLFVBQVUsSUFBSSxFQUFFLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ3hHLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLFNBQVMsSUFBSSxFQUFFLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRixPQUFPLEVBQUMsc0JBQXNCLElBQUksRUFBRSxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDdkYsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUM5RSxPQUFPLEVBQUMsMkJBQTJCLElBQUksRUFBRSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEYsT0FBTyxFQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUNqRixPQUFPLEVBQUMsbUJBQW1CLElBQUksRUFBRSxFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDaEYsT0FBTyxFQUFDLGtDQUFrQyxJQUFJLEdBQUcsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQ3RHLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUNoRixPQUFPLEVBQUMsY0FBYyxJQUFJLEdBQUcsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBRXpFLE9BQU8sRUFBQyxnQkFBZ0IsSUFBSSxFQUFFLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUNyRSxPQUFPLEVBQUMsWUFBWSxJQUFJLEdBQUcsRUFBQywwQkFBMEIsSUFBSSxHQUFHLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RyxPQUFPLEVBQUMsUUFBUSxJQUFJLEdBQUcsRUFBQyxjQUFjLElBQUksR0FBRyxFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDdEYsT0FBTyxFQUFDLCtCQUErQixJQUFJLEVBQUUsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQ3ZHLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BFLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDL0MsT0FBTyxFQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGNBQWMsSUFBSSxHQUFHLEVBQUMsaUJBQWlCLElBQUksR0FBRyxFQUFDLE1BQU0sMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7R2V0QXBwQ29uZmlndXJhdGlvbiBhcyDJtXAsUGF0Y2hSb3V0ZUJ5TmFtZSBhcyDJtW99IGZyb20gJy4vbGliL2FjdGlvbnMvY29uZmlnLmFjdGlvbnMnO1xuZXhwb3J0IHtDaGFuZ2VQYXNzd29yZCBhcyDJtWYsR2V0UHJvZmlsZSBhcyDJtWQsVXBkYXRlUHJvZmlsZSBhcyDJtWV9IGZyb20gJy4vbGliL2FjdGlvbnMvcHJvZmlsZS5hY3Rpb25zJztcbmV4cG9ydCB7U2V0TGFuZ3VhZ2UgYXMgybVqLFNldFRlbmFudCBhcyDJtWt9IGZyb20gJy4vbGliL2FjdGlvbnMvc2Vzc2lvbi5hY3Rpb25zJztcbmV4cG9ydCB7RHluYW1pY0xheW91dENvbXBvbmVudCBhcyDJtXJ9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvZHluYW1pYy1sYXlvdXQuY29tcG9uZW50JztcbmV4cG9ydCB7Um91dGVyT3V0bGV0Q29tcG9uZW50IGFzIMm1cX0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9yb3V0ZXItb3V0bGV0LmNvbXBvbmVudCc7XG5leHBvcnQge0F1dG9mb2N1c0RpcmVjdGl2ZSBhcyDJtXR9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvYXV0b2ZvY3VzLmRpcmVjdGl2ZSc7XG5leHBvcnQge0lucHV0RXZlbnREZWJvdW5jZURpcmVjdGl2ZSBhcyDJtXp9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvZGVib3VuY2UuZGlyZWN0aXZlJztcbmV4cG9ydCB7RWxsaXBzaXNEaXJlY3RpdmUgYXMgybV1fSBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2VsbGlwc2lzLmRpcmVjdGl2ZSc7XG5leHBvcnQge0Zvcm1TdWJtaXREaXJlY3RpdmUgYXMgybV2fSBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2Zvcm0tc3VibWl0LmRpcmVjdGl2ZSc7XG5leHBvcnQge1Blcm1pc3Npb25EaXJlY3RpdmUgYXMgybV4fSBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3Blcm1pc3Npb24uZGlyZWN0aXZlJztcbmV4cG9ydCB7Q2xpY2tFdmVudFN0b3BQcm9wYWdhdGlvbkRpcmVjdGl2ZSBhcyDJtWJhfSBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3N0b3AtcHJvcGFnYXRpb24uZGlyZWN0aXZlJztcbmV4cG9ydCB7VmlzaWJpbGl0eURpcmVjdGl2ZSBhcyDJtXl9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvdmlzaWJpbGl0eS5kaXJlY3RpdmUnO1xuZXhwb3J0IHtBcGlJbnRlcmNlcHRvciBhcyDJtWJmfSBmcm9tICcuL2xpYi9pbnRlcmNlcHRvcnMvYXBpLmludGVyY2VwdG9yJztcbmV4cG9ydCB7QUJQIGFzIMm1bCxQcm9maWxlIGFzIMm1Z30gZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCB7TG9jYWxpemF0aW9uUGlwZSBhcyDJtXd9IGZyb20gJy4vbGliL3BpcGVzL2xvY2FsaXphdGlvbi5waXBlJztcbmV4cG9ydCB7Q29uZmlnUGx1Z2luIGFzIMm1YmUsTkdYU19DT05GSUdfUExVR0lOX09QVElPTlMgYXMgybViZH0gZnJvbSAnLi9saWIvcGx1Z2lucy9jb25maWcvY29uZmlnLnBsdWdpbic7XG5leHBvcnQge0xvY2FsZUlkIGFzIMm1YmIsTG9jYWxlUHJvdmlkZXIgYXMgybViY30gZnJvbSAnLi9saWIvcHJvdmlkZXJzL2xvY2FsZS5wcm92aWRlcic7XG5leHBvcnQge0FwcGxpY2F0aW9uQ29uZmlndXJhdGlvblNlcnZpY2UgYXMgybVufSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9hcHBsaWNhdGlvbi1jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHtMb2NhbGl6YXRpb25TZXJ2aWNlIGFzIMm1aX0gZnJvbSAnLi9saWIvc2VydmljZXMvbG9jYWxpemF0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHtQcm9maWxlU2VydmljZSBhcyDJtWJ9IGZyb20gJy4vbGliL3NlcnZpY2VzL3Byb2ZpbGUuc2VydmljZSc7XG5leHBvcnQge1Jlc3RTZXJ2aWNlIGFzIMm1Y30gZnJvbSAnLi9saWIvc2VydmljZXMvcmVzdC5zZXJ2aWNlJztcbmV4cG9ydCB7Q29uZmlnU3RhdGUgYXMgybVzfSBmcm9tICcuL2xpYi9zdGF0ZXMnO1xuZXhwb3J0IHtDb25maWdTdGF0ZSBhcyDJtW19IGZyb20gJy4vbGliL3N0YXRlcy9jb25maWcuc3RhdGUnO1xuZXhwb3J0IHtQcm9maWxlU3RhdGUgYXMgybVhfSBmcm9tICcuL2xpYi9zdGF0ZXMvcHJvZmlsZS5zdGF0ZSc7XG5leHBvcnQge1Nlc3Npb25TdGF0ZSBhcyDJtWh9IGZyb20gJy4vbGliL3N0YXRlcy9zZXNzaW9uLnN0YXRlJztcbmV4cG9ydCB7Z2V0SW5pdGlhbERhdGEgYXMgybViZyxsb2NhbGVJbml0aWFsaXplciBhcyDJtWJofSBmcm9tICcuL2xpYi91dGlscy9pbml0aWFsLXV0aWxzJzsiXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmNvcmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmNvcmUvIiwic291cmNlcyI6WyJhYnAtbmcuY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsNnZCQUFjLGNBQWMsQ0FBQztBQUU3QixPQUFPLEVBQUMsbUJBQW1CLElBQUksRUFBRSxFQUFDLGdCQUFnQixJQUFJLEVBQUUsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzlGLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLFVBQVUsSUFBSSxFQUFFLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ3hHLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLFNBQVMsSUFBSSxFQUFFLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRixPQUFPLEVBQUMsc0JBQXNCLElBQUksRUFBRSxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDdkYsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUM5RSxPQUFPLEVBQUMsMkJBQTJCLElBQUksRUFBRSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEYsT0FBTyxFQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUNoRixPQUFPLEVBQUMsa0NBQWtDLElBQUksR0FBRyxFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDdEcsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxjQUFjLElBQUksR0FBRyxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFFekUsT0FBTyxFQUFDLGdCQUFnQixJQUFJLEVBQUUsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ3JFLE9BQU8sRUFBQyxZQUFZLElBQUksR0FBRyxFQUFDLDBCQUEwQixJQUFJLEdBQUcsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pHLE9BQU8sRUFBQyxRQUFRLElBQUksR0FBRyxFQUFDLGNBQWMsSUFBSSxHQUFHLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RixPQUFPLEVBQUMsK0JBQStCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDdkcsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsV0FBVyxJQUFJLEVBQUUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFDLFlBQVksSUFBSSxFQUFFLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsY0FBYyxJQUFJLEdBQUcsRUFBQyxpQkFBaUIsSUFBSSxHQUFHLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcblxuZXhwb3J0IHtHZXRBcHBDb25maWd1cmF0aW9uIGFzIMm1cCxQYXRjaFJvdXRlQnlOYW1lIGFzIMm1b30gZnJvbSAnLi9saWIvYWN0aW9ucy9jb25maWcuYWN0aW9ucyc7XG5leHBvcnQge0NoYW5nZVBhc3N3b3JkIGFzIMm1ZixHZXRQcm9maWxlIGFzIMm1ZCxVcGRhdGVQcm9maWxlIGFzIMm1ZX0gZnJvbSAnLi9saWIvYWN0aW9ucy9wcm9maWxlLmFjdGlvbnMnO1xuZXhwb3J0IHtTZXRMYW5ndWFnZSBhcyDJtWosU2V0VGVuYW50IGFzIMm1a30gZnJvbSAnLi9saWIvYWN0aW9ucy9zZXNzaW9uLmFjdGlvbnMnO1xuZXhwb3J0IHtEeW5hbWljTGF5b3V0Q29tcG9uZW50IGFzIMm1cn0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9keW5hbWljLWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtSb3V0ZXJPdXRsZXRDb21wb25lbnQgYXMgybVxfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3JvdXRlci1vdXRsZXQuY29tcG9uZW50JztcbmV4cG9ydCB7QXV0b2ZvY3VzRGlyZWN0aXZlIGFzIMm1c30gZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9hdXRvZm9jdXMuZGlyZWN0aXZlJztcbmV4cG9ydCB7SW5wdXRFdmVudERlYm91bmNlRGlyZWN0aXZlIGFzIMm1en0gZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9kZWJvdW5jZS5kaXJlY3RpdmUnO1xuZXhwb3J0IHtFbGxpcHNpc0RpcmVjdGl2ZSBhcyDJtXR9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvZWxsaXBzaXMuZGlyZWN0aXZlJztcbmV4cG9ydCB7Rm9yRGlyZWN0aXZlIGFzIMm1dX0gZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9mb3IuZGlyZWN0aXZlJztcbmV4cG9ydCB7Rm9ybVN1Ym1pdERpcmVjdGl2ZSBhcyDJtXZ9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvZm9ybS1zdWJtaXQuZGlyZWN0aXZlJztcbmV4cG9ydCB7UGVybWlzc2lvbkRpcmVjdGl2ZSBhcyDJtXh9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvcGVybWlzc2lvbi5kaXJlY3RpdmUnO1xuZXhwb3J0IHtDbGlja0V2ZW50U3RvcFByb3BhZ2F0aW9uRGlyZWN0aXZlIGFzIMm1YmF9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvc3RvcC1wcm9wYWdhdGlvbi5kaXJlY3RpdmUnO1xuZXhwb3J0IHtWaXNpYmlsaXR5RGlyZWN0aXZlIGFzIMm1eX0gZnJvbSAnLi9saWIvZGlyZWN0aXZlcy92aXNpYmlsaXR5LmRpcmVjdGl2ZSc7XG5leHBvcnQge0FwaUludGVyY2VwdG9yIGFzIMm1YmZ9IGZyb20gJy4vbGliL2ludGVyY2VwdG9ycy9hcGkuaW50ZXJjZXB0b3InO1xuZXhwb3J0IHtBQlAgYXMgybVsLFByb2ZpbGUgYXMgybVnfSBmcm9tICcuL2xpYi9tb2RlbHMnO1xuZXhwb3J0IHtMb2NhbGl6YXRpb25QaXBlIGFzIMm1d30gZnJvbSAnLi9saWIvcGlwZXMvbG9jYWxpemF0aW9uLnBpcGUnO1xuZXhwb3J0IHtDb25maWdQbHVnaW4gYXMgybViZSxOR1hTX0NPTkZJR19QTFVHSU5fT1BUSU9OUyBhcyDJtWJkfSBmcm9tICcuL2xpYi9wbHVnaW5zL2NvbmZpZy9jb25maWcucGx1Z2luJztcbmV4cG9ydCB7TG9jYWxlSWQgYXMgybViYixMb2NhbGVQcm92aWRlciBhcyDJtWJjfSBmcm9tICcuL2xpYi9wcm92aWRlcnMvbG9jYWxlLnByb3ZpZGVyJztcbmV4cG9ydCB7QXBwbGljYXRpb25Db25maWd1cmF0aW9uU2VydmljZSBhcyDJtW59IGZyb20gJy4vbGliL3NlcnZpY2VzL2FwcGxpY2F0aW9uLWNvbmZpZ3VyYXRpb24uc2VydmljZSc7XG5leHBvcnQge0xvY2FsaXphdGlvblNlcnZpY2UgYXMgybVpfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9sb2NhbGl6YXRpb24uc2VydmljZSc7XG5leHBvcnQge1Byb2ZpbGVTZXJ2aWNlIGFzIMm1Yn0gZnJvbSAnLi9saWIvc2VydmljZXMvcHJvZmlsZS5zZXJ2aWNlJztcbmV4cG9ydCB7UmVzdFNlcnZpY2UgYXMgybVjfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9yZXN0LnNlcnZpY2UnO1xuZXhwb3J0IHtDb25maWdTdGF0ZSBhcyDJtW19IGZyb20gJy4vbGliL3N0YXRlcy9jb25maWcuc3RhdGUnO1xuZXhwb3J0IHtQcm9maWxlU3RhdGUgYXMgybVhfSBmcm9tICcuL2xpYi9zdGF0ZXMvcHJvZmlsZS5zdGF0ZSc7XG5leHBvcnQge1Nlc3Npb25TdGF0ZSBhcyDJtWh9IGZyb20gJy4vbGliL3N0YXRlcy9zZXNzaW9uLnN0YXRlJztcbmV4cG9ydCB7Z2V0SW5pdGlhbERhdGEgYXMgybViZyxsb2NhbGVJbml0aWFsaXplciBhcyDJtWJofSBmcm9tICcuL2xpYi91dGlscy9pbml0aWFsLXV0aWxzJzsiXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm2015/lib/components/dynamic-layout.component.js b/npm/ng-packs/dist/core/esm2015/lib/components/dynamic-layout.component.js index 001fc9351d..af6adf48e3 100644 --- a/npm/ng-packs/dist/core/esm2015/lib/components/dynamic-layout.component.js +++ b/npm/ng-packs/dist/core/esm2015/lib/components/dynamic-layout.component.js @@ -4,20 +4,39 @@ */ import * as tslib_1 from "tslib"; import { Component } from '@angular/core'; -import { NavigationEnd, Router } from '@angular/router'; +import { ActivatedRoute, NavigationEnd, Router } from '@angular/router'; import { Select, Store } from '@ngxs/store'; import { Observable } from 'rxjs'; -import { ConfigState } from '../states'; -import { takeUntilDestroy } from '../utils'; import snq from 'snq'; +import { ConfigState } from '../states/config.state'; +import { takeUntilDestroy } from '../utils/rxjs-utils'; export class DynamicLayoutComponent { /** * @param {?} router + * @param {?} route * @param {?} store */ - constructor(router, store) { + constructor(router, route, store) { this.router = router; + this.route = route; this.store = store; + const { requirements: { layouts }, routes, } = this.store.selectSnapshot(ConfigState.getAll); + if ((this.route.snapshot.data || {}).layout) { + this.layout = layouts + .filter((/** + * @param {?} l + * @return {?} + */ + l => !!l)) + .find((/** + * @param {?} l + * @return {?} + */ + (l) => snq((/** + * @return {?} + */ + () => l.type.toLowerCase().indexOf(this.route.snapshot.data.layout)), -1) > -1)); + } this.router.events.pipe(takeUntilDestroy(this)).subscribe((/** * @param {?} event * @return {?} @@ -25,18 +44,19 @@ export class DynamicLayoutComponent { event => { if (event instanceof NavigationEnd) { const { segments } = this.router.parseUrl(event.url).root.children.primary; - const { requirements: { layouts }, routes, } = this.store.selectSnapshot(ConfigState.getAll); /** @type {?} */ - const layout = findLayout(segments, routes); - this.layout = layouts.filter((/** + const layout = (this.route.snapshot.data || {}).layout || findLayout(segments, routes); + this.layout = layouts + .filter((/** * @param {?} l * @return {?} */ - l => !!l)).find((/** + l => !!l)) + .find((/** * @param {?} l * @return {?} */ - l => snq((/** + (l) => snq((/** * @return {?} */ () => l.type.toLowerCase().indexOf(layout)), -1) > -1)); @@ -62,6 +82,7 @@ DynamicLayoutComponent.decorators = [ /** @nocollapse */ DynamicLayoutComponent.ctorParameters = () => [ { type: Router }, + { type: ActivatedRoute }, { type: Store } ]; tslib_1.__decorate([ @@ -78,6 +99,11 @@ if (false) { * @private */ DynamicLayoutComponent.prototype.router; + /** + * @type {?} + * @private + */ + DynamicLayoutComponent.prototype.route; /** * @type {?} * @private @@ -123,4 +149,4 @@ function findLayout(segments, routes) { } return layout; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvZHluYW1pYy1sYXlvdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBbUIsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQWMsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR2xDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDeEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzVDLE9BQU8sR0FBRyxNQUFNLEtBQUssQ0FBQztBQVd0QixNQUFNLE9BQU8sc0JBQXNCOzs7OztJQU1qQyxZQUFvQixNQUFjLEVBQVUsS0FBWTtRQUFwQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUN0RCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTOzs7O1FBQUMsS0FBSyxDQUFDLEVBQUU7WUFDaEUsSUFBSSxLQUFLLFlBQVksYUFBYSxFQUFFO3NCQUM1QixFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU87c0JBQ3BFLEVBQ0osWUFBWSxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQ3pCLE1BQU0sR0FDUCxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7O3NCQUUzQyxNQUFNLEdBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUM7Z0JBRTNDLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU07Ozs7Z0JBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUMsSUFBSTs7OztnQkFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUc7OztnQkFBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFDLENBQUM7YUFDNUc7UUFDSCxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7Ozs7SUFFRCxXQUFXLEtBQUksQ0FBQzs7O1lBL0JqQixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtnQkFDOUIsUUFBUSxFQUFFOzs7OztHQUtUO2FBQ0Y7Ozs7WUFqQnVCLE1BQU07WUFDYixLQUFLOztBQW1CcEI7SUFEQyxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztzQ0FDNUIsVUFBVTs2REFBc0I7OztJQUQvQywrQ0FDK0M7O0lBRS9DLHdDQUFrQjs7Ozs7SUFFTix3Q0FBc0I7Ozs7O0lBQUUsdUNBQW9COzs7Ozs7O0FBbUIxRCxTQUFTLFVBQVUsQ0FBQyxRQUFzQixFQUFFLE1BQXVCOztRQUM3RCxNQUFNLHNCQUFvQjs7VUFFeEIsS0FBSyxHQUFHLE1BQU07U0FDakIsTUFBTTs7Ozs7SUFBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsRUFBRSxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxHQUFFLEVBQUUsQ0FBQztTQUNuRixJQUFJOzs7O0lBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUM7SUFFekMsSUFBSSxLQUFLLEVBQUU7UUFDVCxJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDaEIsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7U0FDdkI7UUFFRCxJQUFJLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7O2tCQUM1RCxLQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJOzs7O1lBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUM7WUFFbkUsSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRTtnQkFDekIsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7YUFDdkI7U0FDRjtLQUNGO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIsIFVybFNlZ21lbnQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGVMYXlvdXRUeXBlIH0gZnJvbSAnLi4vZW51bXMnO1xuaW1wb3J0IHsgQUJQLCBDb25maWcgfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgQ29uZmlnU3RhdGUgfSBmcm9tICcuLi9zdGF0ZXMnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveSB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCBzbnEgZnJvbSAnc25xJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWR5bmFtaWMtbGF5b3V0JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibGF5b3V0ID8gY29tcG9uZW50T3V0bGV0IDogcm91dGVyT3V0bGV0XCI+PC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctdGVtcGxhdGUgI3JvdXRlck91dGxldD48cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+PC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI2NvbXBvbmVudE91dGxldD48bmctY29udGFpbmVyICpuZ0NvbXBvbmVudE91dGxldD1cImxheW91dFwiPjwvbmctY29udGFpbmVyPjwvbmctdGVtcGxhdGU+XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIER5bmFtaWNMYXlvdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBAU2VsZWN0KENvbmZpZ1N0YXRlLmdldE9uZSgncmVxdWlyZW1lbnRzJykpXG4gIHJlcXVpcmVtZW50cyQ6IE9ic2VydmFibGU8Q29uZmlnLlJlcXVpcmVtZW50cz47XG5cbiAgbGF5b3V0OiBUeXBlPGFueT47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSBzdG9yZTogU3RvcmUpIHtcbiAgICB0aGlzLnJvdXRlci5ldmVudHMucGlwZSh0YWtlVW50aWxEZXN0cm95KHRoaXMpKS5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkge1xuICAgICAgICBjb25zdCB7IHNlZ21lbnRzIH0gPSB0aGlzLnJvdXRlci5wYXJzZVVybChldmVudC51cmwpLnJvb3QuY2hpbGRyZW4ucHJpbWFyeTtcbiAgICAgICAgY29uc3Qge1xuICAgICAgICAgIHJlcXVpcmVtZW50czogeyBsYXlvdXRzIH0sXG4gICAgICAgICAgcm91dGVzLFxuICAgICAgICB9ID0gdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChDb25maWdTdGF0ZS5nZXRBbGwpO1xuXG4gICAgICAgIGNvbnN0IGxheW91dCA9IGZpbmRMYXlvdXQoc2VnbWVudHMsIHJvdXRlcyk7XG5cbiAgICAgICAgdGhpcy5sYXlvdXQgPSBsYXlvdXRzLmZpbHRlcihsID0+ICEhbCkuZmluZChsID0+IHNucSgoKSA9PiBsLnR5cGUudG9Mb3dlckNhc2UoKS5pbmRleE9mKGxheW91dCksIC0xKSA+IC0xKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge31cbn1cblxuZnVuY3Rpb24gZmluZExheW91dChzZWdtZW50czogVXJsU2VnbWVudFtdLCByb3V0ZXM6IEFCUC5GdWxsUm91dGVbXSk6IGVMYXlvdXRUeXBlIHtcbiAgbGV0IGxheW91dCA9IGVMYXlvdXRUeXBlLmVtcHR5O1xuXG4gIGNvbnN0IHJvdXRlID0gcm91dGVzXG4gICAgLnJlZHVjZSgoYWNjLCB2YWwpID0+ICh2YWwud3JhcHBlciA/IFsuLi5hY2MsIC4uLnZhbC5jaGlsZHJlbl0gOiBbLi4uYWNjLCB2YWxdKSwgW10pXG4gICAgLmZpbmQociA9PiByLnBhdGggPT09IHNlZ21lbnRzWzBdLnBhdGgpO1xuXG4gIGlmIChyb3V0ZSkge1xuICAgIGlmIChyb3V0ZS5sYXlvdXQpIHtcbiAgICAgIGxheW91dCA9IHJvdXRlLmxheW91dDtcbiAgICB9XG5cbiAgICBpZiAocm91dGUuY2hpbGRyZW4gJiYgcm91dGUuY2hpbGRyZW4ubGVuZ3RoICYmIHNlZ21lbnRzLmxlbmd0aCA+IDEpIHtcbiAgICAgIGNvbnN0IGNoaWxkID0gcm91dGUuY2hpbGRyZW4uZmluZChjID0+IGMucGF0aCA9PT0gc2VnbWVudHNbMV0ucGF0aCk7XG5cbiAgICAgIGlmIChjaGlsZCAmJiBjaGlsZC5sYXlvdXQpIHtcbiAgICAgICAgbGF5b3V0ID0gY2hpbGQubGF5b3V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiBsYXlvdXQ7XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvZHluYW1pYy1sYXlvdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBMEIsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFjLE1BQU0saUJBQWlCLENBQUM7QUFDcEYsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7QUFJdEIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBV3ZELE1BQU0sT0FBTyxzQkFBc0I7Ozs7OztJQU1qQyxZQUFvQixNQUFjLEVBQVUsS0FBcUIsRUFBVSxLQUFZO1FBQW5FLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUFVLFVBQUssR0FBTCxLQUFLLENBQU87Y0FDL0UsRUFDSixZQUFZLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFDekIsTUFBTSxHQUNQLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQztRQUVqRCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtZQUMzQyxJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU87aUJBQ2xCLE1BQU07Ozs7WUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFD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QUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUM7WUFFbkUsSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRTtnQkFDekIsTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7YUFDdkI7U0FDRjtLQUNGO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIE5hdmlnYXRpb25FbmQsIFJvdXRlciwgVXJsU2VnbWVudCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHNucSBmcm9tICdzbnEnO1xuaW1wb3J0IHsgZUxheW91dFR5cGUgfSBmcm9tICcuLi9lbnVtcy9jb21tb24nO1xuaW1wb3J0IHsgQ29uZmlnIH0gZnJvbSAnLi4vbW9kZWxzL2NvbmZpZyc7XG5pbXBvcnQgeyBBQlAgfSBmcm9tICcuLi9tb2RlbHMvY29tbW9uJztcbmltcG9ydCB7IENvbmZpZ1N0YXRlIH0gZnJvbSAnLi4vc3RhdGVzL2NvbmZpZy5zdGF0ZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95IH0gZnJvbSAnLi4vdXRpbHMvcnhqcy11dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1keW5hbWljLWxheW91dCcsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxheW91dCA/IGNvbXBvbmVudE91dGxldCA6IHJvdXRlck91dGxldFwiPjwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLXRlbXBsYXRlICNyb3V0ZXJPdXRsZXQ+PHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PjwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNjb21wb25lbnRPdXRsZXQ+PG5nLWNvbnRhaW5lciAqbmdDb21wb25lbnRPdXRsZXQ9XCJsYXlvdXRcIj48L25nLWNvbnRhaW5lcj48L25nLXRlbXBsYXRlPlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBEeW5hbWljTGF5b3V0Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgQFNlbGVjdChDb25maWdTdGF0ZS5nZXRPbmUoJ3JlcXVpcmVtZW50cycpKVxuICByZXF1aXJlbWVudHMkOiBPYnNlcnZhYmxlPENvbmZpZy5SZXF1aXJlbWVudHM+O1xuXG4gIGxheW91dDogVHlwZTxhbnk+O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwcml2YXRlIHN0b3JlOiBTdG9yZSkge1xuICAgIGNvbnN0IHtcbiAgICAgIHJlcXVpcmVtZW50czogeyBsYXlvdXRzIH0sXG4gICAgICByb3V0ZXMsXG4gICAgfSA9IHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoQ29uZmlnU3RhdGUuZ2V0QWxsKTtcblxuICAgIGlmICgodGhpcy5yb3V0ZS5zbmFwc2hvdC5kYXRhIHx8IHt9KS5sYXlvdXQpIHtcbiAgICAgIHRoaXMubGF5b3V0ID0gbGF5b3V0c1xuICAgICAgICAuZmlsdGVyKGwgPT4gISFsKVxuICAgICAgICAuZmluZCgobDogYW55KSA9PiBzbnEoKCkgPT4gbC50eXBlLnRvTG93ZXJDYXNlKCkuaW5kZXhPZih0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEubGF5b3V0KSwgLTEpID4gLTEpO1xuICAgIH1cblxuICAgIHRoaXMucm91dGVyLmV2ZW50cy5waXBlKHRha2VVbnRpbERlc3Ryb3kodGhpcykpLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSB7XG4gICAgICAgIGNvbnN0IHsgc2VnbWVudHMgfSA9IHRoaXMucm91dGVyLnBhcnNlVXJsKGV2ZW50LnVybCkucm9vdC5jaGlsZHJlbi5wcmltYXJ5O1xuXG4gICAgICAgIGNvbnN0IGxheW91dCA9ICh0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEgfHwge30pLmxheW91dCB8fCBmaW5kTGF5b3V0KHNlZ21lbnRzLCByb3V0ZXMpO1xuXG4gICAgICAgIHRoaXMubGF5b3V0ID0gbGF5b3V0c1xuICAgICAgICAgIC5maWx0ZXIobCA9PiAhIWwpXG4gICAgICAgICAgLmZpbmQoKGw6IGFueSkgPT4gc25xKCgpID0+IGwudHlwZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YobGF5b3V0KSwgLTEpID4gLTEpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7fVxufVxuXG5mdW5jdGlvbiBmaW5kTGF5b3V0KHNlZ21lbnRzOiBVcmxTZWdtZW50W10sIHJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdKTogZUxheW91dFR5cGUge1xuICBsZXQgbGF5b3V0ID0gZUxheW91dFR5cGUuZW1wdHk7XG5cbiAgY29uc3Qgcm91dGUgPSByb3V0ZXNcbiAgICAucmVkdWNlKChhY2MsIHZhbCkgPT4gKHZhbC53cmFwcGVyID8gWy4uLmFjYywgLi4udmFsLmNoaWxkcmVuXSA6IFsuLi5hY2MsIHZhbF0pLCBbXSlcbiAgICAuZmluZChyID0+IHIucGF0aCA9PT0gc2VnbWVudHNbMF0ucGF0aCk7XG5cbiAgaWYgKHJvdXRlKSB7XG4gICAgaWYgKHJvdXRlLmxheW91dCkge1xuICAgICAgbGF5b3V0ID0gcm91dGUubGF5b3V0O1xuICAgIH1cblxuICAgIGlmIChyb3V0ZS5jaGlsZHJlbiAmJiByb3V0ZS5jaGlsZHJlbi5sZW5ndGggJiYgc2VnbWVudHMubGVuZ3RoID4gMSkge1xuICAgICAgY29uc3QgY2hpbGQgPSByb3V0ZS5jaGlsZHJlbi5maW5kKGMgPT4gYy5wYXRoID09PSBzZWdtZW50c1sxXS5wYXRoKTtcblxuICAgICAgaWYgKGNoaWxkICYmIGNoaWxkLmxheW91dCkge1xuICAgICAgICBsYXlvdXQgPSBjaGlsZC5sYXlvdXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGxheW91dDtcbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm2015/lib/core.module.js b/npm/ng-packs/dist/core/esm2015/lib/core.module.js index 937d91ead1..d12aa82e1f 100644 --- a/npm/ng-packs/dist/core/esm2015/lib/core.module.js +++ b/npm/ng-packs/dist/core/esm2015/lib/core.module.js @@ -27,6 +27,7 @@ import { ProfileState } from './states/profile.state'; import { SessionState } from './states/session.state'; import { getInitialData, localeInitializer } from './utils/initial-utils'; import { ConfigPlugin, NGXS_CONFIG_PLUGIN_OPTIONS } from './plugins/config/config.plugin'; +import { ForDirective } from './directives/for.directive'; export class CoreModule { /** * @param {?=} options @@ -84,6 +85,7 @@ CoreModule.decorators = [ DynamicLayoutComponent, AutofocusDirective, EllipsisDirective, + ForDirective, FormSubmitDirective, LocalizationPipe, PermissionDirective, @@ -101,6 +103,7 @@ CoreModule.decorators = [ DynamicLayoutComponent, AutofocusDirective, EllipsisDirective, + ForDirective, FormSubmitDirective, LocalizationPipe, PermissionDirective, @@ -113,4 +116,4 @@ CoreModule.decorators = [ entryComponents: [RouterOutletComponent, DynamicLayoutComponent], },] } ]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmNvcmUvIiwic291cmNlcyI6WyJsaWIvY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDN0YsT0FB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Y29tbW9uJztcbmltcG9ydCB7IEh0dHBDbGllbnRNb2R1bGUsIEhUVFBfSU5URVJDRVBUT1JTIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSLCBJbmplY3RvciwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE5neHNSb3V0ZXJQbHVnaW5Nb2R1bGUgfSBmcm9tICdAbmd4cy9yb3V0ZXItcGx1Z2luJztcbmltcG9ydCB7IE5neHNTdG9yYWdlUGx1Z2luTW9kdWxlIH0gZnJvbSAnQG5neHMvc3RvcmFnZS1wbHVnaW4nO1xuaW1wb3J0IHsgTmd4c01vZHVsZSwgTkdYU19QTFVHSU5TIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgRHluYW1pY0xheW91dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9keW5hbWljLWxheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUm91dGVyT3V0bGV0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JvdXRlci1vdXRsZXQuY29tcG9uZW50JztcbmltcG9ydCB7IEF1dG9mb2N1c0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9hdXRvZm9jdXMuZGlyZWN0aXZlJztcbmltcG9ydCB7IElucHV0RXZlbnREZWJvdW5jZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9kZWJvdW5jZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWxsaXBzaXNEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZWxsaXBzaXMuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZvcm1TdWJtaXREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZm9ybS1zdWJtaXQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFBlcm1pc3Npb25EaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvcGVybWlzc2lvbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ2xpY2tFdmVudFN0b3BQcm9wYWdhdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9zdG9wLXByb3BhZ2F0aW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBWaXNpYmlsaXR5RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3Zpc2liaWxpdHkuZGlyZWN0aXZlJztcbmltcG9ydCB7IEFwaUludGVyY2VwdG9yIH0gZnJvbSAnLi9pbnRlcmNlcHRvcnMvYXBpLmludGVyY2VwdG9yJztcbmltcG9ydCB7IEFCUCB9IGZyb20gJy4vbW9kZWxzL2NvbW1vbic7XG5pbXBvcnQgeyBMb2NhbGl6YXRpb25QaXBlIH0gZnJvbSAnLi9waXBlcy9sb2NhbGl6YXRpb24ucGlwZSc7XG5pbXBvcnQgeyBMb2NhbGVQcm92aWRlciB9IGZyb20gJy4vcHJvdmlkZXJzL2xvY2FsZS5wcm92aWRlcic7XG5pbXBvcnQgeyBDb25maWdTdGF0ZSB9IGZyb20gJy4vc3RhdGVzL2NvbmZpZy5zdGF0ZSc7XG5pbXBvcnQgeyBQcm9maWxlU3RhdGUgfSBmcm9tICcuL3N0YXRlcy9wcm9maWxlLnN0YXRlJztcbmltcG9ydCB7IFNlc3Npb25TdGF0ZSB9IGZyb20gJy4vc3RhdGVzL3Nlc3Npb24uc3RhdGUnO1xuaW1wb3J0IHsgZ2V0SW5pdGlhbERhdGEsIGxvY2FsZUluaXRpYWxpemVyIH0gZnJvbSAnLi91dGlscy9pbml0aWFsLXV0aWxzJztcbmltcG9ydCB7IENvbmZpZ1BsdWdpbiwgTkdYU19DT05GSUdfUExVR0lOX09QVElPTlMgfSBmcm9tICcuL3BsdWdpbnMvY29uZmlnL2NvbmZpZy5wbHVnaW4nO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgTmd4c01vZHVsZS5mb3JGZWF0dXJlKFtQcm9maWxlU3RhdGUsIFNlc3Npb25TdGF0ZSwgQ29uZmlnU3RhdGVdKSxcbiAgICBOZ3hzU3RvcmFnZVBsdWdpbk1vZHVsZS5mb3JSb290KHsga2V5OiAnU2Vzc2lvblN0YXRlJyB9KSxcbiAgICBOZ3hzUm91dGVyUGx1Z2luTW9kdWxlLmZvclJvb3QoKSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSHR0cENsaWVudE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgUm91dGVyT3V0bGV0Q29tcG9uZW50LFxuICAgIER5bmFtaWNMYXlvdXRDb21wb25lbnQsXG4gICAgQXV0b2ZvY3VzRGlyZWN0aXZlLFxuICAgIEVsbGlwc2lzRGlyZWN0aXZlLFxuICAgIEZvcm1TdWJtaXREaXJlY3RpdmUsXG4gICAgTG9jYWxpemF0aW9uUGlwZSxcbiAgICBQZXJtaXNzaW9uRGlyZWN0aXZlLFxuICAgIFZpc2liaWxpdHlEaXJlY3RpdmUsXG4gICAgSW5wdXRFdmVudERlYm91bmNlRGlyZWN0aXZlLFxuICAgIENsaWNrRXZlbnRTdG9wUHJvcGFnYXRpb25EaXJlY3RpdmUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSHR0cENsaWVudE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBSb3V0ZXJPdXRsZXRDb21wb25lbnQsXG4gICAgRHluYW1pY0xheW91dENvbXBvbmVudCxcbiAgICBBdXRvZm9jdXNEaXJlY3RpdmUsXG4gICAgRWxsaXBzaXNEaXJlY3RpdmUsXG4gICAgRm9ybVN1Ym1pdERpcmVjdGl2ZSxcbiAgICBMb2NhbGl6YXRpb25QaXBlLFxuICAgIFBlcm1pc3Npb25EaXJlY3RpdmUsXG4gICAgVmlzaWJpbGl0eURpcmVjdGl2ZSxcbiAgICBJbnB1dEV2ZW50RGVib3VuY2VEaXJlY3RpdmUsXG4gICAgTG9jYWxpemF0aW9uUGlwZSxcbiAgICBDbGlja0V2ZW50U3RvcFByb3BhZ2F0aW9uRGlyZWN0aXZlLFxuICBdLFxuICBwcm92aWRlcnM6IFtMb2NhbGl6YXRpb25QaXBlXSxcbiAgZW50cnlDb21wb25lbnRzOiBbUm91dGVyT3V0bGV0Q29tcG9uZW50LCBEeW5hbWljTGF5b3V0Q29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgQ29yZU1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KG9wdGlvbnMgPSB7fSBhcyBBQlAuUm9vdCk6IE1vZHVsZVdpdGhQcm92aWRlcnMge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogQ29yZU1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICBMb2NhbGVQcm92aWRlcixcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IE5HWFNfUExVR0lOUyxcbiAgICAgICAgICB1c2VDbGFzczogQ29uZmlnUGx1Z2luLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogTkdYU19DT05GSUdfUExVR0lOX09QVElPTlMsXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnMsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBIVFRQX0lOVEVSQ0VQVE9SUyxcbiAgICAgICAgICB1c2VDbGFzczogQXBpSW50ZXJjZXB0b3IsXG4gICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgZGVwczogW0luamVjdG9yXSxcbiAgICAgICAgICB1c2VGYWN0b3J5OiBnZXRJbml0aWFsRGF0YSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgICBkZXBzOiBbSW5qZWN0b3JdLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IGxvY2FsZUluaXRpYWxpemVyLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICB9XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmNvcmUvIiwic291cmNlcyI6WyJsaWIvY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDN0YsT0FB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YUFDakUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSwgSFRUUF9JTlRFUkNFUFRPUlMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBBUFBfSU5JVElBTElaRVIsIEluamVjdG9yLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTmd4c1JvdXRlclBsdWdpbk1vZHVsZSB9IGZyb20gJ0BuZ3hzL3JvdXRlci1wbHVnaW4nO1xuaW1wb3J0IHsgTmd4c1N0b3JhZ2VQbHVnaW5Nb2R1bGUgfSBmcm9tICdAbmd4cy9zdG9yYWdlLXBsdWdpbic7XG5pbXBvcnQgeyBOZ3hzTW9kdWxlLCBOR1hTX1BMVUdJTlMgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBEeW5hbWljTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2R5bmFtaWMtbGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSb3V0ZXJPdXRsZXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcm91dGVyLW91dGxldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXV0b2ZvY3VzRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2F1dG9mb2N1cy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSW5wdXRFdmVudERlYm91bmNlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2RlYm91bmNlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFbGxpcHNpc0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9lbGxpcHNpcy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRm9ybVN1Ym1pdERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9mb3JtLXN1Ym1pdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUGVybWlzc2lvbkRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9wZXJtaXNzaW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDbGlja0V2ZW50U3RvcFByb3BhZ2F0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3N0b3AtcHJvcGFnYXRpb24uZGlyZWN0aXZlJztcbmltcG9ydCB7IFZpc2liaWxpdHlEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvdmlzaWJpbGl0eS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQXBpSW50ZXJjZXB0b3IgfSBmcm9tICcuL2ludGVyY2VwdG9ycy9hcGkuaW50ZXJjZXB0b3InO1xuaW1wb3J0IHsgQUJQIH0gZnJvbSAnLi9tb2RlbHMvY29tbW9uJztcbmltcG9ydCB7IExvY2FsaXphdGlvblBpcGUgfSBmcm9tICcuL3BpcGVzL2xvY2FsaXphdGlvbi5waXBlJztcbmltcG9ydCB7IExvY2FsZVByb3ZpZGVyIH0gZnJvbSAnLi9wcm92aWRlcnMvbG9jYWxlLnByb3ZpZGVyJztcbmltcG9ydCB7IENvbmZpZ1N0YXRlIH0gZnJvbSAnLi9zdGF0ZXMvY29uZmlnLnN0YXRlJztcbmltcG9ydCB7IFByb2ZpbGVTdGF0ZSB9IGZyb20gJy4vc3RhdGVzL3Byb2ZpbGUuc3RhdGUnO1xuaW1wb3J0IHsgU2Vzc2lvblN0YXRlIH0gZnJvbSAnLi9zdGF0ZXMvc2Vzc2lvbi5zdGF0ZSc7XG5pbXBvcnQgeyBnZXRJbml0aWFsRGF0YSwgbG9jYWxlSW5pdGlhbGl6ZXIgfSBmcm9tICcuL3V0aWxzL2luaXRpYWwtdXRpbHMnO1xuaW1wb3J0IHsgQ29uZmlnUGx1Z2luLCBOR1hTX0NPTkZJR19QTFVHSU5fT1BUSU9OUyB9IGZyb20gJy4vcGx1Z2lucy9jb25maWcvY29uZmlnLnBsdWdpbic7XG5pbXBvcnQgeyBGb3JEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZm9yLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBOZ3hzTW9kdWxlLmZvckZlYXR1cmUoW1Byb2ZpbGVTdGF0ZSwgU2Vzc2lvblN0YXRlLCBDb25maWdTdGF0ZV0pLFxuICAgIE5neHNTdG9yYWdlUGx1Z2luTW9kdWxlLmZvclJvb3QoeyBrZXk6ICdTZXNzaW9uU3RhdGUnIH0pLFxuICAgIE5neHNSb3V0ZXJQbHVnaW5Nb2R1bGUuZm9yUm9vdCgpLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBIdHRwQ2xpZW50TW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBSb3V0ZXJPdXRsZXRDb21wb25lbnQsXG4gICAgRHluYW1pY0xheW91dENvbXBvbmVudCxcbiAgICBBdXRvZm9jdXNEaXJlY3RpdmUsXG4gICAgRWxsaXBzaXNEaXJlY3RpdmUsXG4gICAgRm9yRGlyZWN0aXZlLFxuICAgIEZvcm1TdWJtaXREaXJlY3RpdmUsXG4gICAgTG9jYWxpemF0aW9uUGlwZSxcbiAgICBQZXJtaXNzaW9uRGlyZWN0aXZlLFxuICAgIFZpc2liaWxpdHlEaXJlY3RpdmUsXG4gICAgSW5wdXRFdmVudERlYm91bmNlRGlyZWN0aXZlLFxuICAgIENsaWNrRXZlbnRTdG9wUHJvcGFnYXRpb25EaXJlY3RpdmUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSHR0cENsaWVudE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBSb3V0ZXJPdXRsZXRDb21wb25lbnQsXG4gICAgRHluYW1pY0xheW91dENvbXBvbmVudCxcbiAgICBBdXRvZm9jdXNEaXJlY3RpdmUsXG4gICAgRWxsaXBzaXNEaXJlY3RpdmUsXG4gICAgRm9yRGlyZWN0aXZlLFxuICAgIEZvcm1TdWJtaXREaXJlY3RpdmUsXG4gICAgTG9jYWxpemF0aW9uUGlwZSxcbiAgICBQZXJtaXNzaW9uRGlyZWN0aXZlLFxuICAgIFZpc2liaWxpdHlEaXJlY3RpdmUsXG4gICAgSW5wdXRFdmVudERlYm91bmNlRGlyZWN0aXZlLFxuICAgIExvY2FsaXphdGlvblBpcGUsXG4gICAgQ2xpY2tFdmVudFN0b3BQcm9wYWdhdGlvbkRpcmVjdGl2ZSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbTG9jYWxpemF0aW9uUGlwZV0sXG4gIGVudHJ5Q29tcG9uZW50czogW1JvdXRlck91dGxldENvbXBvbmVudCwgRHluYW1pY0xheW91dENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIENvcmVNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChvcHRpb25zID0ge30gYXMgQUJQLlJvb3QpOiBNb2R1bGVXaXRoUHJvdmlkZXJzIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IENvcmVNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgTG9jYWxlUHJvdmlkZXIsXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBOR1hTX1BMVUdJTlMsXG4gICAgICAgICAgdXNlQ2xhc3M6IENvbmZpZ1BsdWdpbixcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IE5HWFNfQ09ORklHX1BMVUdJTl9PUFRJT05TLFxuICAgICAgICAgIHVzZVZhbHVlOiBvcHRpb25zLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogSFRUUF9JTlRFUkNFUFRPUlMsXG4gICAgICAgICAgdXNlQ2xhc3M6IEFwaUludGVyY2VwdG9yLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICAgIGRlcHM6IFtJbmplY3Rvcl0sXG4gICAgICAgICAgdXNlRmFjdG9yeTogZ2V0SW5pdGlhbERhdGEsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgZGVwczogW0luamVjdG9yXSxcbiAgICAgICAgICB1c2VGYWN0b3J5OiBsb2NhbGVJbml0aWFsaXplcixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm2015/lib/directives/for.directive.js b/npm/ng-packs/dist/core/esm2015/lib/directives/for.directive.js new file mode 100644 index 0000000000..bb0d618ebc --- /dev/null +++ b/npm/ng-packs/dist/core/esm2015/lib/directives/for.directive.js @@ -0,0 +1,274 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Directive, Input, IterableDiffers, TemplateRef, ViewContainerRef, } from '@angular/core'; +import compare from 'just-compare'; +import clone from 'just-clone'; +class AbpForContext { + /** + * @param {?} $implicit + * @param {?} index + * @param {?} count + * @param {?} list + */ + constructor($implicit, index, count, list) { + this.$implicit = $implicit; + this.index = index; + this.count = count; + this.list = list; + } +} +if (false) { + /** @type {?} */ + AbpForContext.prototype.$implicit; + /** @type {?} */ + AbpForContext.prototype.index; + /** @type {?} */ + AbpForContext.prototype.count; + /** @type {?} */ + AbpForContext.prototype.list; +} +class RecordView { + /** + * @param {?} record + * @param {?} view + */ + constructor(record, view) { + this.record = record; + this.view = view; + } +} +if (false) { + /** @type {?} */ + RecordView.prototype.record; + /** @type {?} */ + RecordView.prototype.view; +} +export class ForDirective { + /** + * @param {?} tempRef + * @param {?} vcRef + * @param {?} differs + */ + constructor(tempRef, vcRef, differs) { + this.tempRef = tempRef; + this.vcRef = vcRef; + this.differs = differs; + } + /** + * @return {?} + */ + get compareFn() { + return this.compareBy || compare; + } + /** + * @return {?} + */ + get trackByFn() { + return this.trackBy || ((/** + * @param {?} index + * @param {?} item + * @return {?} + */ + (index, item) => ((/** @type {?} */ (item))).id || index)); + } + /** + * @private + * @param {?} changes + * @return {?} + */ + iterateOverAppliedOperations(changes) { + /** @type {?} */ + const rw = []; + changes.forEachOperation((/** + * @param {?} record + * @param {?} previousIndex + * @param {?} currentIndex + * @return {?} + */ + (record, previousIndex, currentIndex) => { + if (record.previousIndex == null) { + /** @type {?} */ + const view = this.vcRef.createEmbeddedView(this.tempRef, new AbpForContext(null, -1, -1, this.items), currentIndex); + rw.push(new RecordView(record, view)); + } + else if (currentIndex == null) { + this.vcRef.remove(previousIndex); + } + else { + /** @type {?} */ + const view = this.vcRef.get(previousIndex); + this.vcRef.move(view, currentIndex); + rw.push(new RecordView(record, (/** @type {?} */ (view)))); + } + })); + for (let i = 0, l = rw.length; i < l; i++) { + rw[i].view.context.$implicit = rw[i].record.item; + } + } + /** + * @private + * @param {?} changes + * @return {?} + */ + iterateOverAttachedViews(changes) { + for (let i = 0, l = this.vcRef.length; i < l; i++) { + /** @type {?} */ + const viewRef = (/** @type {?} */ (this.vcRef.get(i))); + viewRef.context.index = i; + viewRef.context.count = l; + viewRef.context.list = this.items; + } + changes.forEachIdentityChange((/** + * @param {?} record + * @return {?} + */ + (record) => { + /** @type {?} */ + const viewRef = (/** @type {?} */ (this.vcRef.get(record.currentIndex))); + viewRef.context.$implicit = record.item; + })); + } + /** + * @private + * @param {?} items + * @return {?} + */ + projectItems(items) { + if (!items.length && this.emptyRef) { + this.vcRef.createEmbeddedView(this.emptyRef).rootNodes; + this.isShowEmptyRef = true; + return; + } + if (this.emptyRef && this.isShowEmptyRef) { + this.vcRef.clear(); + this.isShowEmptyRef = false; + } + if (!this.differ && items) { + this.differ = this.differs.find(items).create(this.trackByFn); + } + if (this.differ) { + /** @type {?} */ + const changes = this.differ.diff(items); + if (changes) { + this.iterateOverAppliedOperations(changes); + this.iterateOverAttachedViews(changes); + } + } + } + /** + * @private + * @param {?} items + * @return {?} + */ + sortItems(items) { + if (this.orderBy) { + items.sort((/** + * @param {?} a + * @param {?} b + * @return {?} + */ + (a, b) => (a[this.orderBy] > b[this.orderBy] ? 1 : a[this.orderBy] < b[this.orderBy] ? -1 : 0))); + } + else { + items.sort(); + } + } + /** + * @return {?} + */ + ngOnChanges() { + /** @type {?} */ + let items = (/** @type {?} */ (clone(this.items))); + if (!Array.isArray(items)) + return; + /** @type {?} */ + const compareFn = this.compareFn; + if (typeof this.filterBy !== 'undefined') { + items = items.filter((/** + * @param {?} item + * @return {?} + */ + item => compareFn(item[this.filterBy], this.filterVal))); + } + switch (this.orderDir) { + case 'ASC': + this.sortItems(items); + this.projectItems(items); + break; + case 'DESC': + this.sortItems(items); + items.reverse(); + this.projectItems(items); + break; + default: + this.projectItems(items); + } + } +} +ForDirective.decorators = [ + { type: Directive, args: [{ + selector: '[abpFor]', + },] } +]; +/** @nocollapse */ +ForDirective.ctorParameters = () => [ + { type: TemplateRef }, + { type: ViewContainerRef }, + { type: IterableDiffers } +]; +ForDirective.propDecorators = { + items: [{ type: Input, args: ['abpForOf',] }], + orderBy: [{ type: Input, args: ['abpForOrderBy',] }], + orderDir: [{ type: Input, args: ['abpForOrderDir',] }], + filterBy: [{ type: Input, args: ['abpForFilterBy',] }], + filterVal: [{ type: Input, args: ['abpForFilterVal',] }], + trackBy: [{ type: Input, args: ['abpForTrackBy',] }], + compareBy: [{ type: Input, args: ['abpForCompareBy',] }], + emptyRef: [{ type: Input, args: ['abpForEmptyRef',] }] +}; +if (false) { + /** @type {?} */ + ForDirective.prototype.items; + /** @type {?} */ + ForDirective.prototype.orderBy; + /** @type {?} */ + ForDirective.prototype.orderDir; + /** @type {?} */ + ForDirective.prototype.filterBy; + /** @type {?} */ + ForDirective.prototype.filterVal; + /** @type {?} */ + ForDirective.prototype.trackBy; + /** @type {?} */ + ForDirective.prototype.compareBy; + /** @type {?} */ + ForDirective.prototype.emptyRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.differ; + /** + * @type {?} + * @private + */ + ForDirective.prototype.isShowEmptyRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.tempRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.vcRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.differs; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuY29yZS8iLCJzb3VyY2VzIjpbImxpYi9kaXJlY3RpdmVzL2Zvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxFQUlMLGVBQWUsRUFFZixXQUFXLEVBRVgsZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sT0FBTyxNQUFNLGNBQWMsQ0FBQztBQUNuQyxPQUFPLEtBQUssTUFBTSxZQUFZLENBQUM7QUFJL0IsTUFBTSxhQUFhOzs7Ozs7O0lBQ2pCLFlBQW1CLFNBQWMsRUFBUyxLQUFhLEVBQVMsS0FBYSxFQUFTLElBQVc7UUFBOUUsY0FBUyxHQUFULFNBQVMsQ0FBSztRQUFTLFVBQUssR0FBTCxLQUFLLENBQVE7UUFBUyxVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQVMsU0FBSSxHQUFKLElBQUksQ0FBTztJQUFHLENBQUM7Q0FDdEc7OztJQURhLGtDQUFxQjs7SUFBRSw4QkFBb0I7O0lBQUUsOEJBQW9COztJQUFFLDZCQUFrQjs7QUFHbkcsTUFBTSxVQUFVOzs7OztJQUNkLFlBQW1CLE1BQWlDLEVBQVMsSUFBb0M7UUFBOUUsV0FBTSxHQUFOLE1BQU0sQ0FBMkI7UUFBUyxTQUFJLEdBQUosSUFBSSxDQUFnQztJQUFHLENBQUM7Q0FDdEc7OztJQURhLDRCQUF3Qzs7SUFBRSwwQkFBMkM7O0FBTW5HLE1BQU0sT0FBTyxZQUFZOzs7Ozs7SUFxQ3ZCLFlBQ1UsT0FBbUMsRUFDbkMsS0FBdUIsRUFDdkIsT0FBd0I7UUFGeEIsWUFBTyxHQUFQLE9BQU8sQ0FBNEI7UUFDbkMsVUFBSyxHQUFMLEtBQUssQ0FBa0I7UUFDdkIsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7SUFDL0IsQ0FBQzs7OztJQVpKLElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLFNBQVMsSUFBSSxPQUFPLENBQUM7SUFDbkMs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SyxTQUFDLFVBQVU7c0JBR2hCLEtBQUssU0FBQyxlQUFlO3VCQUdyQixLQUFLLFNBQUMsZ0JBQWdCO3VCQUd0QixLQUFLLFNBQUMsZ0JBQWdCO3dCQUd0QixLQUFLLFNBQUMsaUJBQWlCO3NCQUd2QixLQUFLLFNBQUMsZUFBZTt3QkFHckIsS0FBSyxTQUFDLGlCQUFpQjt1QkFHdkIsS0FBSyxTQUFDLGdCQUFnQjs7OztJQXJCdkIsNkJBQ2E7O0lBRWIsK0JBQ2dCOztJQUVoQixnQ0FDeUI7O0lBRXpCLGdDQUNpQjs7SUFFakIsaUNBQ2U7O0lBRWYsK0JBQ1E7O0lBRVIsaUNBQ3FCOztJQUVyQixnQ0FDMkI7Ozs7O0lBRTNCLDhCQUFvQzs7Ozs7SUFFcEMsc0NBQWdDOzs7OztJQVc5QiwrQkFBMkM7Ozs7O0lBQzNDLDZCQUErQjs7Ozs7SUFDL0IsK0JBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFbWJlZGRlZFZpZXdSZWYsXG4gIElucHV0LFxuICBJdGVyYWJsZUNoYW5nZVJlY29yZCxcbiAgSXRlcmFibGVDaGFuZ2VzLFxuICBJdGVyYWJsZURpZmZlcixcbiAgSXRlcmFibGVEaWZmZXJzLFxuICBPbkNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBUcmFja0J5RnVuY3Rpb24sXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IGNvbXBhcmUgZnJvbSAnanVzdC1jb21wYXJlJztcbmltcG9ydCBjbG9uZSBmcm9tICdqdXN0LWNsb25lJztcblxuZXhwb3J0IHR5cGUgQ29tcGFyZUZuPFQgPSBhbnk+ID0gKHZhbHVlOiBULCBjb21wYXJpc29uOiBUKSA9PiBib29sZWFuO1xuXG5jbGFzcyBBYnBGb3JDb250ZXh0IHtcbiAgY29uc3RydWN0b3IocHVibGljICRpbXBsaWNpdDogYW55LCBwdWJsaWMgaW5kZXg6IG51bWJlciwgcHVibGljIGNvdW50OiBudW1iZXIsIHB1YmxpYyBsaXN0OiBhbnlbXSkge31cbn1cblxuY2xhc3MgUmVjb3JkVmlldyB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWNvcmQ6IEl0ZXJhYmxlQ2hhbmdlUmVjb3JkPGFueT4sIHB1YmxpYyB2aWV3OiBFbWJlZGRlZFZpZXdSZWY8QWJwRm9yQ29udGV4dD4pIHt9XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thYnBGb3JdJyxcbn0pXG5leHBvcnQgY2xhc3MgRm9yRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCdhYnBGb3JPZicpXG4gIGl0ZW1zOiBhbnlbXTtcblxuICBASW5wdXQoJ2FicEZvck9yZGVyQnknKVxuICBvcmRlckJ5OiBzdHJpbmc7XG5cbiAgQElucHV0KCdhYnBGb3JPcmRlckRpcicpXG4gIG9yZGVyRGlyOiAnQVNDJyB8ICdERVNDJztcblxuICBASW5wdXQoJ2FicEZvckZpbHRlckJ5JylcbiAgZmlsdGVyQnk6IHN0cmluZztcblxuICBASW5wdXQoJ2FicEZvckZpbHRlclZhbCcpXG4gIGZpbHRlclZhbDogYW55O1xuXG4gIEBJbnB1dCgnYWJwRm9yVHJhY2tCeScpXG4gIHRyYWNrQnk7XG5cbiAgQElucHV0KCdhYnBGb3JDb21wYXJlQnknKVxuICBjb21wYXJlQnk6IENvbXBhcmVGbjtcblxuICBASW5wdXQoJ2FicEZvckVtcHR5UmVmJylcbiAgZW1wdHlSZWY6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgcHJpdmF0ZSBkaWZmZXI6IEl0ZXJhYmxlRGlmZmVyPGFueT47XG5cbiAgcHJpdmF0ZSBpc1Nob3dFbXB0eVJlZjogYm9vbGVhbjtcblxuICBnZXQgY29tcGFyZUZuKCk6IENvbXBhcmVGbiB7XG4gICAgcmV0dXJuIHRoaXMuY29tcGFyZUJ5IHx8IGNvbXBhcmU7XG4gIH1cblxuICBnZXQgdHJhY2tCeUZuKCk6IFRyYWNrQnlGdW5jdGlvbjxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy50cmFja0J5IHx8ICgoaW5kZXg6IG51bWJlciwgaXRlbTogYW55KSA9PiAoaXRlbSBhcyBhbnkpLmlkIHx8IGluZGV4KTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdGVtcFJlZjogVGVtcGxhdGVSZWY8QWJwRm9yQ29udGV4dD4sXG4gICAgcHJpdmF0ZSB2Y1JlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcml2YXRlIGRpZmZlcnM6IEl0ZXJhYmxlRGlmZmVycyxcbiAgKSB7fVxuXG4gIHByaXZhdGUgaXRlcmF0ZU92ZXJBcHBsaWVkT3BlcmF0aW9ucyhjaGFuZ2VzOiBJdGVyYWJsZUNoYW5nZXM8YW55Pikge1xuICAgIGNvbnN0IHJ3OiBSZWNvcmRWaWV3W10gPSBbXTtcblxuICAgIGNoYW5nZXMuZm9yRWFjaE9wZXJhdGlvbigocmVjb3JkOiBJdGVyYWJsZUNoYW5nZVJlY29yZDxhbnk+LCBwcmV2aW91c0luZGV4OiBudW1iZXIsIGN1cnJlbnRJbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICBpZiAocmVjb3JkLnByZXZpb3VzSW5kZXggPT0gbnVsbCkge1xuICAgICAgICBjb25zdCB2aWV3ID0gdGhpcy52Y1JlZi5jcmVhdGVFbWJlZGRlZFZpZXcoXG4gICAgICAgICAgdGhpcy50ZW1wUmVmLFxuICAgICAgICAgIG5ldyBBYnBGb3JDb250ZXh0KG51bGwsIC0xLCAtMSwgdGhpcy5pdGVtcyksXG4gICAgICAgICAgY3VycmVudEluZGV4LFxuICAgICAgICApO1xuXG4gICAgICAgIHJ3LnB1c2gobmV3IFJlY29yZFZpZXcocmVjb3JkLCB2aWV3KSk7XG4gICAgICB9IGVsc2UgaWYgKGN1cnJlbnRJbmRleCA9PSBudWxsKSB7XG4gICAgICAgIHRoaXMudmNSZWYucmVtb3ZlKHByZXZpb3VzSW5kZXgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgdmlldyA9IHRoaXMudmNSZWYuZ2V0KHByZXZpb3VzSW5kZXgpO1xuICAgICAgICB0aGlzLnZjUmVmLm1vdmUodmlldywgY3VycmVudEluZGV4KTtcblxuICAgICAgICBydy5wdXNoKG5ldyBSZWNvcmRWaWV3KHJlY29yZCwgdmlldyBhcyBFbWJlZGRlZFZpZXdSZWY8QWJwRm9yQ29udGV4dD4pKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGZvciAobGV0IGkgPSAwLCBsID0gcncubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICByd1tpXS52aWV3LmNvbnRleHQuJGltcGxpY2l0ID0gcndbaV0ucmVjb3JkLml0ZW07XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpdGVyYXRlT3ZlckF0dGFjaGVkVmlld3MoY2hhbmdlczogSXRlcmFibGVDaGFuZ2VzPGFueT4pIHtcbiAgICBmb3IgKGxldCBpID0gMCwgbCA9IHRoaXMudmNSZWYubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICBjb25zdCB2aWV3UmVmID0gdGhpcy52Y1JlZi5nZXQoaSkgYXMgRW1iZWRkZWRWaWV3UmVmPEFicEZvckNvbnRleHQ+O1xuICAgICAgdmlld1JlZi5jb250ZXh0LmluZGV4ID0gaTtcbiAgICAgIHZpZXdSZWYuY29udGV4dC5jb3VudCA9IGw7XG4gICAgICB2aWV3UmVmLmNvbnRleHQubGlzdCA9IHRoaXMuaXRlbXM7XG4gICAgfVxuXG4gICAgY2hhbmdlcy5mb3JFYWNoSWRlbnRpdHlDaGFuZ2UoKHJlY29yZDogSXRlcmFibGVDaGFuZ2VSZWNvcmQ8YW55PikgPT4ge1xuICAgICAgY29uc3Qgdmlld1JlZiA9IHRoaXMudmNSZWYuZ2V0KHJlY29yZC5jdXJyZW50SW5kZXgpIGFzIEVtYmVkZGVkVmlld1JlZjxBYnBGb3JDb250ZXh0PjtcbiAgICAgIHZpZXdSZWYuY29udGV4dC4kaW1wbGljaXQgPSByZWNvcmQuaXRlbTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcHJvamVjdEl0ZW1zKGl0ZW1zOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmICghaXRlbXMubGVuZ3RoICYmIHRoaXMuZW1wdHlSZWYpIHtcbiAgICAgIHRoaXMudmNSZWYuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMuZW1wdHlSZWYpLnJvb3ROb2RlcztcbiAgICAgIHRoaXMuaXNTaG93RW1wdHlSZWYgPSB0cnVlO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZW1wdHlSZWYgJiYgdGhpcy5pc1Nob3dFbXB0eVJlZikge1xuICAgICAgdGhpcy52Y1JlZi5jbGVhcigpO1xuICAgICAgdGhpcy5pc1Nob3dFbXB0eVJlZiA9IGZhbHNlO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5kaWZmZXIgJiYgaXRlbXMpIHtcbiAgICAgIHRoaXMuZGlmZmVyID0gdGhpcy5kaWZmZXJzLmZpbmQoaXRlbXMpLmNyZWF0ZSh0aGlzLnRyYWNrQnlGbik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZGlmZmVyKSB7XG4gICAgICBjb25zdCBjaGFuZ2VzID0gdGhpcy5kaWZmZXIuZGlmZihpdGVtcyk7XG5cbiAgICAgIGlmIChjaGFuZ2VzKSB7XG4gICAgICAgIHRoaXMuaXRlcmF0ZU92ZXJBcHBsaWVkT3BlcmF0aW9ucyhjaGFuZ2VzKTtcbiAgICAgICAgdGhpcy5pdGVyYXRlT3ZlckF0dGFjaGVkVmlld3MoY2hhbmdlcyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzb3J0SXRlbXMoaXRlbXM6IGFueVtdKSB7XG4gICAgaWYgKHRoaXMub3JkZXJCeSkge1xuICAgICAgaXRlbXMuc29ydCgoYSwgYikgPT4gKGFbdGhpcy5vcmRlckJ5XSA+IGJbdGhpcy5vcmRlckJ5XSA/IDEgOiBhW3RoaXMub3JkZXJCeV0gPCBiW3RoaXMub3JkZXJCeV0gPyAtMSA6IDApKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaXRlbXMuc29ydCgpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIGxldCBpdGVtcyA9IGNsb25lKHRoaXMuaXRlbXMpIGFzIGFueVtdO1xuICAgIGlmICghQXJyYXkuaXNBcnJheShpdGVtcykpIHJldHVybjtcblxuICAgIGNvbnN0IGNvbXBhcmVGbiA9IHRoaXMuY29tcGFyZUZuO1xuXG4gICAgaWYgKHR5cGVvZiB0aGlzLmZpbHRlckJ5ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgaXRlbXMgPSBpdGVtcy5maWx0ZXIoaXRlbSA9PiBjb21wYXJlRm4oaXRlbVt0aGlzLmZpbHRlckJ5XSwgdGhpcy5maWx0ZXJWYWwpKTtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKHRoaXMub3JkZXJEaXIpIHtcbiAgICAgIGNhc2UgJ0FTQyc6XG4gICAgICAgIHRoaXMuc29ydEl0ZW1zKGl0ZW1zKTtcbiAgICAgICAgdGhpcy5wcm9qZWN0SXRlbXMoaXRlbXMpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnREVTQyc6XG4gICAgICAgIHRoaXMuc29ydEl0ZW1zKGl0ZW1zKTtcbiAgICAgICAgaXRlbXMucmV2ZXJzZSgpO1xuICAgICAgICB0aGlzLnByb2plY3RJdGVtcyhpdGVtcyk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aGlzLnByb2plY3RJdGVtcyhpdGVtcyk7XG4gICAgfVxuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm2015/lib/directives/index.js b/npm/ng-packs/dist/core/esm2015/lib/directives/index.js index a90d5a4597..80dcedb82e 100644 --- a/npm/ng-packs/dist/core/esm2015/lib/directives/index.js +++ b/npm/ng-packs/dist/core/esm2015/lib/directives/index.js @@ -4,7 +4,8 @@ */ export { AutofocusDirective } from './autofocus.directive'; export { EllipsisDirective } from './ellipsis.directive'; +export { ForDirective } from './for.directive'; export { FormSubmitDirective } from './form-submit.directive'; export { PermissionDirective } from './permission.directive'; export { VisibilityDirective } from './visibility.directive'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmNvcmUvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsbUNBQWMsdUJBQXVCLENBQUM7QUFDdEMsa0NBQWMsc0JBQXNCLENBQUM7QUFDckMsb0NBQWMseUJBQXlCLENBQUM7QUFDeEMsb0NBQWMsd0JBQXdCLENBQUM7QUFDdkMsb0NBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dG9mb2N1cy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9lbGxpcHNpcy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtLXN1Ym1pdC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9wZXJtaXNzaW9uLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3Zpc2liaWxpdHkuZGlyZWN0aXZlJztcbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmNvcmUvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsbUNBQWMsdUJBQXVCLENBQUM7QUFDdEMsa0NBQWMsc0JBQXNCLENBQUM7QUFDckMsNkJBQWMsaUJBQWlCLENBQUM7QUFDaEMsb0NBQWMseUJBQXlCLENBQUM7QUFDeEMsb0NBQWMsd0JBQXdCLENBQUM7QUFDdkMsb0NBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dG9mb2N1cy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9lbGxpcHNpcy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3IuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS1zdWJtaXQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vcGVybWlzc2lvbi5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi92aXNpYmlsaXR5LmRpcmVjdGl2ZSc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm2015/lib/enums/common.js b/npm/ng-packs/dist/core/esm2015/lib/enums/common.js index 335239be34..274d74e50c 100644 --- a/npm/ng-packs/dist/core/esm2015/lib/enums/common.js +++ b/npm/ng-packs/dist/core/esm2015/lib/enums/common.js @@ -7,6 +7,7 @@ const eLayoutType = { account: 'account', application: 'application', empty: 'empty', + setting: 'setting', }; export { eLayoutType }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL2VudW1zL2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7SUFDRSxTQUFVLFNBQVM7SUFDbkIsYUFBYyxhQUFhO0lBQzNCLE9BQVEsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBlbnVtIGVMYXlvdXRUeXBlIHtcbiAgYWNjb3VudCA9ICdhY2NvdW50JyxcbiAgYXBwbGljYXRpb24gPSAnYXBwbGljYXRpb24nLFxuICBlbXB0eSA9ICdlbXB0eScsXG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL2VudW1zL2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7SUFDRSxTQUFVLFNBQVM7SUFDbkIsYUFBYyxhQUFhO0lBQzNCLE9BQVEsT0FBTztJQUNmLFNBQVUsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBlbnVtIGVMYXlvdXRUeXBlIHtcbiAgYWNjb3VudCA9ICdhY2NvdW50JyxcbiAgYXBwbGljYXRpb24gPSAnYXBwbGljYXRpb24nLFxuICBlbXB0eSA9ICdlbXB0eScsXG4gIHNldHRpbmcgPSAnc2V0dGluZycsXG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm2015/lib/models/common.js b/npm/ng-packs/dist/core/esm2015/lib/models/common.js index b636460473..93e41737de 100644 --- a/npm/ng-packs/dist/core/esm2015/lib/models/common.js +++ b/npm/ng-packs/dist/core/esm2015/lib/models/common.js @@ -88,4 +88,4 @@ export var ABP; BasicItem.prototype.name; } })(ABP || (ABP = {})); -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL21vZGVscy9jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUdBLE1BQU0sS0FBVyxHQUFHLENBMENuQjtBQTFDRCxXQUFpQixHQUFHOzs7O0lBQ2xCLG1CQUdDOzs7O1FBRkMsMkJBQXlDOztRQUN6Qyw0QkFBa0M7Ozs7OztJQU9wQyxpQ0FFQzs7OztRQURDLG1DQUFXOzs7OztJQUdiLDhCQUtDOzs7O1FBSkMsaUNBQWdCOztRQUNoQixrQ0FBaUI7O1FBQ2pCLG9DQUFtQjs7UUFDbkIseUNBQXdCOzs7OztJQUcxQixvQkFVQzs7OztRQVRDLHlCQUFtQjs7UUFDbkIsMEJBQW9COztRQUNwQix1QkFBcUI7O1FBQ3JCLHFCQUFhOztRQUNiLHNCQUFlOztRQUNmLDJCQUFvQjs7UUFDcEIscUJBQWE7O1FBQ2IsK0JBQXdCOztRQUN4QiwwQkFBbUI7Ozs7O0lBR3JCLHdCQUdDOzs7O1FBRkMsd0JBQWE7O1FBQ2IsNEJBQWtCOzs7OztJQUdwQix3QkFHQzs7OztRQUZDLHVCQUFXOztRQUNYLHlCQUFhOztBQUVqQixDQUFDLEVBMUNnQixHQUFHLEtBQUgsR0FBRyxRQTBDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25maWcgfSBmcm9tICcuL2NvbmZpZyc7XG5pbXBvcnQgeyBlTGF5b3V0VHlwZSB9IGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IG5hbWVzcGFjZSBBQlAge1xuICBleHBvcnQgaW50ZXJmYWNlIFJvb3Qge1xuICAgIGVudmlyb25tZW50OiBQYXJ0aWFsPENvbmZpZy5FbnZpcm9ubWVudD47XG4gICAgcmVxdWlyZW1lbnRzOiBDb25maWcuUmVxdWlyZW1lbnRzO1xuICB9XG5cbiAgZXhwb3J0IHR5cGUgUGFnZWRSZXNwb25zZTxUPiA9IHtcbiAgICB0b3RhbENvdW50OiBudW1iZXI7XG4gIH0gJiBQYWdlZEl0ZW1zUmVzcG9uc2U8VD47XG5cbiAgZXhwb3J0IGludGVyZmFjZSBQYWdlZEl0ZW1zUmVzcG9uc2U8VD4ge1xuICAgIGl0ZW1zOiBUW107XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIFBhZ2VRdWVyeVBhcmFtcyB7XG4gICAgZmlsdGVyPzogc3RyaW5nO1xuICAgIHNvcnRpbmc/OiBzdHJpbmc7XG4gICAgc2tpcENvdW50PzogbnVtYmVyO1xuICAgIG1heFJlc3VsdENvdW50PzogbnVtYmVyO1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBSb3V0ZSB7XG4gICAgY2hpbGRyZW4/OiBSb3V0ZVtdO1xuICAgIGludmlzaWJsZT86IGJvb2xlYW47XG4gICAgbGF5b3V0PzogZUxheW91dFR5cGU7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIG9yZGVyPzogbnVtYmVyO1xuICAgIHBhcmVudE5hbWU/OiBzdHJpbmc7XG4gICAgcGF0aDogc3RyaW5nO1xuICAgIHJlcXVpcmVkUG9saWN5Pzogc3RyaW5nO1xuICAgIGljb25DbGFzcz86IHN0cmluZztcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgRnVsbFJvdXRlIGV4dGVuZHMgUm91dGUge1xuICAgIHVybD86IHN0cmluZztcbiAgICB3cmFwcGVyPzogYm9vbGVhbjtcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgQmFzaWNJdGVtIHtcbiAgICBpZDogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgfVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL21vZGVscy9jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUdBLE1BQU0sS0FBVyxHQUFHLENBMENuQjtBQTFDRCxXQUFpQixHQUFHOzs7O0lBQ2xCLG1CQUdDOzs7O1FBRkMsMkJBQXlDOztRQUN6Qyw0QkFBa0M7Ozs7OztJQU9wQyxpQ0FFQzs7OztRQURDLG1DQUFXOzs7OztJQUdiLDhCQUtDOzs7O1FBSkMsaUNBQWdCOztRQUNoQixrQ0FBaUI7O1FBQ2pCLG9DQUFtQjs7UUFDbkIseUNBQXdCOzs7OztJQUcxQixvQkFVQzs7OztRQVRDLHlCQUFtQjs7UUFDbkIsMEJBQW9COztRQUNwQix1QkFBcUI7O1FBQ3JCLHFCQUFhOztRQUNiLHNCQUFlOztRQUNmLDJCQUFvQjs7UUFDcEIscUJBQWE7O1FBQ2IsK0JBQXdCOztRQUN4QiwwQkFBbUI7Ozs7O0lBR3JCLHdCQUdDOzs7O1FBRkMsd0JBQWE7O1FBQ2IsNEJBQWtCOzs7OztJQUdwQix3QkFHQzs7OztRQUZDLHVCQUFXOztRQUNYLHlCQUFhOztBQUVqQixDQUFDLEVBMUNnQixHQUFHLEtBQUgsR0FBRyxRQTBDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25maWcgfSBmcm9tICcuL2NvbmZpZyc7XG5pbXBvcnQgeyBlTGF5b3V0VHlwZSB9IGZyb20gJy4uL2VudW1zL2NvbW1vbic7XG5cbmV4cG9ydCBuYW1lc3BhY2UgQUJQIHtcbiAgZXhwb3J0IGludGVyZmFjZSBSb290IHtcbiAgICBlbnZpcm9ubWVudDogUGFydGlhbDxDb25maWcuRW52aXJvbm1lbnQ+O1xuICAgIHJlcXVpcmVtZW50czogQ29uZmlnLlJlcXVpcmVtZW50cztcbiAgfVxuXG4gIGV4cG9ydCB0eXBlIFBhZ2VkUmVzcG9uc2U8VD4gPSB7XG4gICAgdG90YWxDb3VudDogbnVtYmVyO1xuICB9ICYgUGFnZWRJdGVtc1Jlc3BvbnNlPFQ+O1xuXG4gIGV4cG9ydCBpbnRlcmZhY2UgUGFnZWRJdGVtc1Jlc3BvbnNlPFQ+IHtcbiAgICBpdGVtczogVFtdO1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBQYWdlUXVlcnlQYXJhbXMge1xuICAgIGZpbHRlcj86IHN0cmluZztcbiAgICBzb3J0aW5nPzogc3RyaW5nO1xuICAgIHNraXBDb3VudD86IG51bWJlcjtcbiAgICBtYXhSZXN1bHRDb3VudD86IG51bWJlcjtcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgUm91dGUge1xuICAgIGNoaWxkcmVuPzogUm91dGVbXTtcbiAgICBpbnZpc2libGU/OiBib29sZWFuO1xuICAgIGxheW91dD86IGVMYXlvdXRUeXBlO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBvcmRlcj86IG51bWJlcjtcbiAgICBwYXJlbnROYW1lPzogc3RyaW5nO1xuICAgIHBhdGg6IHN0cmluZztcbiAgICByZXF1aXJlZFBvbGljeT86IHN0cmluZztcbiAgICBpY29uQ2xhc3M/OiBzdHJpbmc7XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIEZ1bGxSb3V0ZSBleHRlbmRzIFJvdXRlIHtcbiAgICB1cmw/OiBzdHJpbmc7XG4gICAgd3JhcHBlcj86IGJvb2xlYW47XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIEJhc2ljSXRlbSB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm2015/lib/models/config.js b/npm/ng-packs/dist/core/esm2015/lib/models/config.js index 40d9fa406b..01cd2c8a7b 100644 --- a/npm/ng-packs/dist/core/esm2015/lib/models/config.js +++ b/npm/ng-packs/dist/core/esm2015/lib/models/config.js @@ -4,11 +4,6 @@ */ export var Config; (function (Config) { - /** - * @record - */ - function State() { } - Config.State = State; /** * @record */ @@ -23,6 +18,8 @@ export var Config; Environment.prototype.oAuthConfig; /** @type {?} */ Environment.prototype.apis; + /** @type {?} */ + Environment.prototype.localization; } /** * @record @@ -50,4 +47,4 @@ export var Config; Requirements.prototype.layouts; } })(Config || (Config = {})); -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL21vZGVscy9jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUdBLE1BQU0sS0FBVyxNQUFNLENBd0J0QjtBQXhCRCxXQUFpQixNQUFNOzs7O0lBQ3JCLG9CQUVDOzs7OztJQUVELDBCQUtDOzs7O1FBSkMsa0NBQXlCOztRQUN6QixpQ0FBb0I7O1FBQ3BCLGtDQUF3Qjs7UUFDeEIsMkJBQVc7Ozs7O0lBR2IsMEJBR0M7Ozs7UUFGQywyQkFBYTs7UUFDYiw4QkFBaUI7Ozs7O0lBR25CLG1CQUVDOzs7OztJQUVELDJCQUVDOzs7O1FBREMsK0JBQXFCOztBQUV6QixDQUFDLEVBeEJnQixNQUFNLEtBQU4sTUFBTSxRQXdCdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdXRoQ29uZmlnIH0gZnJvbSAnYW5ndWxhci1vYXV0aDItb2lkYyc7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBuYW1lc3BhY2UgQ29uZmlnIHtcbiAgZXhwb3J0IGludGVyZmFjZSBTdGF0ZSB7XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBFbnZpcm9ubWVudCB7XG4gICAgYXBwbGljYXRpb246IEFwcGxpY2F0aW9uO1xuICAgIHByb2R1Y3Rpb246IGJvb2xlYW47XG4gICAgb0F1dGhDb25maWc6IEF1dGhDb25maWc7XG4gICAgYXBpczogQXBpcztcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgQXBwbGljYXRpb24ge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBsb2dvVXJsPzogc3RyaW5nO1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBBcGlzIHtcbiAgICBba2V5OiBzdHJpbmddOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBSZXF1aXJlbWVudHMge1xuICAgIGxheW91dHM6IFR5cGU8YW55PltdO1xuICB9XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL21vZGVscy9jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUtBLE1BQU0sS0FBVyxNQUFNLENBMkJ0QjtBQTNCRCxXQUFpQixNQUFNOzs7O0lBT3JCLDBCQU1DOzs7O1FBTEMsa0NBQXlCOztRQUN6QixpQ0FBb0I7O1FBQ3BCLGtDQUF3Qjs7UUFDeEIsMkJBQVc7O1FBQ1gsbUNBQThDOzs7OztJQUdoRCwwQkFHQzs7OztRQUZDLDJCQUFhOztRQUNiLDhCQUFpQjs7Ozs7SUFHbkIsbUJBRUM7Ozs7O0lBRUQsMkJBRUM7Ozs7UUFEQywrQkFBcUI7O0FBRXpCLENBQUMsRUEzQmdCLE1BQU0sS0FBTixNQUFNLFFBMkJ0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF1dGhDb25maWcgfSBmcm9tICdhbmd1bGFyLW9hdXRoMi1vaWRjJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vYXBwbGljYXRpb24tY29uZmlndXJhdGlvbic7XG5pbXBvcnQgeyBBQlAgfSBmcm9tICcuL2NvbW1vbic7XG5cbmV4cG9ydCBuYW1lc3BhY2UgQ29uZmlnIHtcbiAgZXhwb3J0IHR5cGUgU3RhdGUgPSBBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb24uUmVzcG9uc2UgJlxuICAgIEFCUC5Sb290ICYgeyBlbnZpcm9ubWVudDogRW52aXJvbm1lbnQgfSAmIHtcbiAgICAgIHJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdO1xuICAgICAgZmxhdHRlZFJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdO1xuICAgIH07XG5cbiAgZXhwb3J0IGludGVyZmFjZSBFbnZpcm9ubWVudCB7XG4gICAgYXBwbGljYXRpb246IEFwcGxpY2F0aW9uO1xuICAgIHByb2R1Y3Rpb246IGJvb2xlYW47XG4gICAgb0F1dGhDb25maWc6IEF1dGhDb25maWc7XG4gICAgYXBpczogQXBpcztcbiAgICBsb2NhbGl6YXRpb246IHsgZGVmYXVsdFJlc291cmNlTmFtZTogc3RyaW5nIH07XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIEFwcGxpY2F0aW9uIHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgbG9nb1VybD86IHN0cmluZztcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgQXBpcyB7XG4gICAgW2tleTogc3RyaW5nXTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgUmVxdWlyZW1lbnRzIHtcbiAgICBsYXlvdXRzOiBUeXBlPGFueT5bXTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm2015/lib/plugins/config/config.plugin.js b/npm/ng-packs/dist/core/esm2015/lib/plugins/config/config.plugin.js index c108438ed6..0662643f75 100644 --- a/npm/ng-packs/dist/core/esm2015/lib/plugins/config/config.plugin.js +++ b/npm/ng-packs/dist/core/esm2015/lib/plugins/config/config.plugin.js @@ -7,6 +7,7 @@ import { Router } from '@angular/router'; import { actionMatcher, InitState, setValue, UpdateState } from '@ngxs/store'; import snq from 'snq'; import { organizeRoutes } from '../../utils/route-utils'; +import clone from 'just-clone'; /** @type {?} */ export const NGXS_CONFIG_PLUGIN_OPTIONS = new InjectionToken('NGXS_CONFIG_PLUGIN_OPTIONS'); export class ConfigPlugin { @@ -34,7 +35,10 @@ export class ConfigPlugin { if (isInitAction && !this.initialized) { let { routes, wrappers } = transformRoutes(this.router.config); routes = organizeRoutes(routes, wrappers); - state = setValue(state, 'ConfigState', Object.assign({}, (state.ConfigState && Object.assign({}, state.ConfigState)), this.options, { routes })); + /** @type {?} */ + const flattedRoutes = flatRoutes(clone(routes)); + state = setValue(state, 'ConfigState', Object.assign({}, (state.ConfigState && Object.assign({}, state.ConfigState)), this.options, { routes, + flattedRoutes })); this.initialized = true; } return next(state, event); @@ -159,4 +163,33 @@ function setUrls(routes, parentUrl) { children: setUrls(route.children, `/${route.path}`), }))))); } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuY29yZS8iLCJzb3VyY2VzIjpbImxpYi9wbHVnaW5zL2NvbmZpZy9jb25maWcucGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLE1BQU0sRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFnQyxRQUFRLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVHLE9BQU8sR0FBRyxNQUFNLEtBQUssQ0FBQztBQUV0QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBRXpELE1BQU0sT0FBTywwQkFBMEIsR0FBRyxJQUFJLGNBQWMsQ0FBQyw0QkFBNEIsQ0FBQztBQUcxRixNQUFNLE9BQU8sWUFBWTs7Ozs7SUFHdkIsWUFBd0QsT0FBaUIsRUFBVSxNQUFjO1FBQXpDLFlBQU8sR0FBUCxPQUFPLENBQVU7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBRnpGLGdCQUFXLEdBQVksS0FBSyxDQUFDO0lBRStELENBQUM7Ozs7Ozs7SUFFckcsTUFBTSxDQUFDLEtBQVUsRUFBRSxLQUFVLEVBQUUsSUFBc0I7O2NBQzdDLE9BQU8sR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDOztjQUM5QixZQUFZLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxXQUFXLENBQUM7UUFFL0QsNkdBQTZHO1FBQzdHLElBQUksWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDakMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO1lBQzlELE1BQU0sR0FBRyxjQUFjLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBRTFDLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxFQUFFLGFBQWEsb0JBQ2hDLENBQUMsS0FBSyxDQUFDLFdBQVcsc0JBQVMsS0FBSyxDQUFDLFdBQVcsQ0FBRSxDQUFDLEVBQy9DLElBQUksQ0FBQyxPQUFPLElBQ2YsTUFBTSxJQUNOLENBQUM7WUFFSCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztTQUN6QjtRQUVELE9BQU8sSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDOzs7WUF6QkYsVUFBVTs7Ozs0Q0FJSSxNQUFNLFNBQUMsMEJBQTBCO1lBWnZDLE1BQU07Ozs7Ozs7SUFVYixtQ0FBcUM7Ozs7O0lBRXpCLCtCQUE2RDs7Ozs7SUFBRSw4QkFBc0I7Ozs7Ozs7QUF3Qm5HLFNBQVMsZUFBZSxDQUFDLFNBQWlCLEVBQUUsRUFBRSxXQUE0QixFQUFFOztVQUNwRSxTQUFTLEdBQW9CLE1BQU07U0FDdEMsTUFBTTs7OztJQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ2QsT0FBTyxHQUFHOzs7UUFBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSTs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSSxFQUFDLEdBQUUsS0FBSyxDQUFDLENBQUM7SUFDckYsQ0FBQyxFQUFDO1NBQ0QsTUFBTTs7Ozs7SUFBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxHQUFHLEVBQUUsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRSxFQUFFLENBQUM7SUFFaEUsUUFBUSxHQUFHLFNBQVMsQ0FBQyxNQUFNOzs7O0lBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFDLENBQUM7O1VBQ3hDLFdBQVcsR0FBRyxtQkFBQSxFQUFFLEVBQW1CO0lBQ3pDLE1BQU07U0FDSCxNQUFNOzs7O0lBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLEVBQUM7U0FDckYsT0FBTzs7OztJQUFDLEtBQUssQ0FBQyxFQUFFOztjQUNULFVBQVUsR0FBRyxTQUFTLENBQUMsSUFBSTs7OztRQUMvQixHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxHQUFHOzs7UUFBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFFLEtBQUssQ0FBQyxFQUNoSDtjQUNLLEVBQUUsTUFBTSxFQUFFLEdBQUcsV0FBVztRQUU5QixJQUFJLFVBQVUsRUFBRTtZQUNkLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDOUI7UUFFRCxJQUFJLFdBQVcsQ0FBQyxNQUFNLEtBQUssTUFBTSxFQUFFO1lBQ2pDLFdBQVcsQ0FBQyxJQUFJLENBQUMscUNBQ1osS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLElBQ3BCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxFQUNoQixJQUFJLEVBQUUsR0FBRzs7O2dCQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRSxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQ25ELFFBQVEsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLElBQUksRUFBRSxLQUMxQixDQUFDLENBQUM7U0FDckI7SUFDSCxDQUFDLEVBQUMsQ0FBQztJQUVMLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDO0FBQ3BELENBQUM7Ozs7OztBQUVELFNBQVMsT0FBTyxDQUFDLE1BQXVCLEVBQUUsU0FBa0I7SUFDMUQsSUFBSSxTQUFTLEVBQUU7UUFDYiw4Q0FBOEM7UUFFOUMsT0FBTyxNQUFNLENBQUMsR0FBRzs7OztRQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsbUJBQ3RCLEtBQUssSUFDUixHQUFHLEVBQUUsR0FBRyxTQUFTLElBQUksS0FBSyxDQUFDLElBQUksRUFBRSxJQUM5QixDQUFDLEtBQUssQ0FBQyxRQUFRO1lBQ2hCLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxJQUFJO1lBQ3ZCLFFBQVEsRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxHQUFHLFNBQVMsSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDaEUsQ0FBQyxFQUNKLEVBQUMsQ0FBQztLQUNMO0lBRUQsT0FBTyxNQUFNLENBQUMsR0FBRzs7OztJQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsbUJBQ3RCLEtBQUssSUFDUixHQUFHLEVBQUUsSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLElBQ2xCLENBQUMsS0FBSyxDQUFDLFFBQVE7UUFDaEIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLElBQUk7UUFDdkIsUUFBUSxFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLElBQUksS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0tBQ3BELENBQUMsRUFDSixFQUFDLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyLCBSb3V0ZXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgYWN0aW9uTWF0Y2hlciwgSW5pdFN0YXRlLCBOZ3hzTmV4dFBsdWdpbkZuLCBOZ3hzUGx1Z2luLCBzZXRWYWx1ZSwgVXBkYXRlU3RhdGUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgc25xIGZyb20gJ3NucSc7XG5pbXBvcnQgeyBBQlAgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgb3JnYW5pemVSb3V0ZXMgfSBmcm9tICcuLi8uLi91dGlscy9yb3V0ZS11dGlscyc7XG5cbmV4cG9ydCBjb25zdCBOR1hTX0NPTkZJR19QTFVHSU5fT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbignTkdYU19DT05GSUdfUExVR0lOX09QVElPTlMnKTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbmZpZ1BsdWdpbiBpbXBsZW1lbnRzIE5neHNQbHVnaW4ge1xuICBwcml2YXRlIGluaXRpYWxpemVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChOR1hTX0NPTkZJR19QTFVHSU5fT1BUSU9OUykgcHJpdmF0ZSBvcHRpb25zOiBBQlAuUm9vdCwgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikge31cblxuICBoYW5kbGUoc3RhdGU6IGFueSwgZXZlbnQ6IGFueSwgbmV4dDogTmd4c05leHRQbHVnaW5Gbikge1xuICAgIGNvbnN0IG1hdGNoZXMgPSBhY3Rpb25NYXRjaGVyKGV2ZW50KTtcbiAgICBjb25zdCBpc0luaXRBY3Rpb24gPSBtYXRjaGVzKEluaXRTdGF0ZSkgfHwgbWF0Y2hlcyhVcGRhdGVTdGF0ZSk7XG5cbiAgICAvLyBjb25zdCBsYXlvdXRzID0gc25xKCgpID0+IHRoaXMub3B0aW9ucy5yZXF1aXJlbWVudHMubGF5b3V0cy5maWx0ZXIobGF5b3V0ID0+IGxheW91dCBpbnN0YW5jZW9mIFR5cGUpLCBbXSk7XG4gICAgaWYgKGlzSW5pdEFjdGlvbiAmJiAhdGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgbGV0IHsgcm91dGVzLCB3cmFwcGVycyB9ID0gdHJhbnNmb3JtUm91dGVzKHRoaXMucm91dGVyLmNvbmZpZyk7XG4gICAgICByb3V0ZXMgPSBvcmdhbml6ZVJvdXRlcyhyb3V0ZXMsIHdyYXBwZXJzKTtcblxuICAgICAgc3RhdGUgPSBzZXRWYWx1ZShzdGF0ZSwgJ0NvbmZpZ1N0YXRlJywge1xuICAgICAgICAuLi4oc3RhdGUuQ29uZmlnU3RhdGUgJiYgeyAuLi5zdGF0ZS5Db25maWdTdGF0ZSB9KSxcbiAgICAgICAgLi4udGhpcy5vcHRpb25zLFxuICAgICAgICByb3V0ZXMsXG4gICAgICB9KTtcblxuICAgICAgdGhpcy5pbml0aWFsaXplZCA9IHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5leHQoc3RhdGUsIGV2ZW50KTtcbiAgfVxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1Sb3V0ZXMocm91dGVzOiBSb3V0ZXMgPSBbXSwgd3JhcHBlcnM6IEFCUC5GdWxsUm91dGVbXSA9IFtdKTogYW55IHtcbiAgY29uc3QgYWJwUm91dGVzOiBBQlAuRnVsbFJvdXRlW10gPSByb3V0ZXNcbiAgICAuZmlsdGVyKHJvdXRlID0+IHtcbiAgICAgIHJldHVybiBzbnEoKCkgPT4gcm91dGUuZGF0YS5yb3V0ZXMucm91dGVzLmZpbmQociA9PiByLnBhdGggPT09IHJvdXRlLnBhdGgpLCBmYWxzZSk7XG4gICAgfSlcbiAgICAucmVkdWNlKChhY2MsIHZhbCkgPT4gWy4uLmFjYywgLi4udmFsLmRhdGEucm91dGVzLnJvdXRlc10sIFtdKTtcblxuICB3cmFwcGVycyA9IGFicFJvdXRlcy5maWx0ZXIoYXIgPT4gYXIud3JhcHBlcik7XG4gIGNvbnN0IHRyYW5zZm9ybWVkID0gW10gYXMgQUJQLkZ1bGxSb3V0ZVtdO1xuICByb3V0ZXNcbiAgICAuZmlsdGVyKHJvdXRlID0+IChyb3V0ZS5kYXRhIHx8IHt9KS5yb3V0ZXMgJiYgKHJvdXRlLmNvbXBvbmVudCB8fCByb3V0ZS5sb2FkQ2hpbGRyZW4pKVxuICAgIC5mb3JFYWNoKHJvdXRlID0+IHtcbiAgICAgIGNvbnN0IGFicFBhY2thZ2UgPSBhYnBSb3V0ZXMuZmluZChcbiAgICAgICAgYWJwID0+IGFicC5wYXRoLnRvTG93ZXJDYXNlKCkgPT09IHJvdXRlLnBhdGgudG9Mb3dlckNhc2UoKSAmJiBzbnEoKCkgPT4gcm91dGUuZGF0YS5yb3V0ZXMucm91dGVzLmxlbmd0aCwgZmFsc2UpLFxuICAgICAgKTtcbiAgICAgIGNvbnN0IHsgbGVuZ3RoIH0gPSB0cmFuc2Zvcm1lZDtcblxuICAgICAgaWYgKGFicFBhY2thZ2UpIHtcbiAgICAgICAgdHJhbnNmb3JtZWQucHVzaChhYnBQYWNrYWdlKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRyYW5zZm9ybWVkLmxlbmd0aCA9PT0gbGVuZ3RoKSB7XG4gICAgICAgIHRyYW5zZm9ybWVkLnB1c2goe1xuICAgICAgICAgIC4uLnJvdXRlLmRhdGEucm91dGVzLFxuICAgICAgICAgIHBhdGg6IHJvdXRlLnBhdGgsXG4gICAgICAgICAgbmFtZTogc25xKCgpID0+IHJvdXRlLmRhdGEucm91dGVzLm5hbWUsIHJvdXRlLnBhdGgpLFxuICAgICAgICAgIGNoaWxkcmVuOiByb3V0ZS5kYXRhLnJvdXRlcy5jaGlsZHJlbiB8fCBbXSxcbiAgICAgICAgfSBhcyBBQlAuRnVsbFJvdXRlKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICByZXR1cm4geyByb3V0ZXM6IHNldFVybHModHJhbnNmb3JtZWQpLCB3cmFwcGVycyB9O1xufVxuXG5mdW5jdGlvbiBzZXRVcmxzKHJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdLCBwYXJlbnRVcmw/OiBzdHJpbmcpOiBBQlAuRnVsbFJvdXRlW10ge1xuICBpZiAocGFyZW50VXJsKSB7XG4gICAgLy8gdGhpcyBpZiBibG9jayB1c2luZyBmb3Igb25seSByZWN1cnNpdmUgY2FsbFxuXG4gICAgcmV0dXJuIHJvdXRlcy5tYXAocm91dGUgPT4gKHtcbiAgICAgIC4uLnJvdXRlLFxuICAgICAgdXJsOiBgJHtwYXJlbnRVcmx9LyR7cm91dGUucGF0aH1gLFxuICAgICAgLi4uKHJvdXRlLmNoaWxkcmVuICYmXG4gICAgICAgIHJvdXRlLmNoaWxkcmVuLmxlbmd0aCAmJiB7XG4gICAgICAgICAgY2hpbGRyZW46IHNldFVybHMocm91dGUuY2hpbGRyZW4sIGAke3BhcmVudFVybH0vJHtyb3V0ZS5wYXRofWApLFxuICAgICAgICB9KSxcbiAgICB9KSk7XG4gIH1cblxuICByZXR1cm4gcm91dGVzLm1hcChyb3V0ZSA9PiAoe1xuICAgIC4uLnJvdXRlLFxuICAgIHVybDogYC8ke3JvdXRlLnBhdGh9YCxcbiAgICAuLi4ocm91dGUuY2hpbGRyZW4gJiZcbiAgICAgIHJvdXRlLmNoaWxkcmVuLmxlbmd0aCAmJiB7XG4gICAgICAgIGNoaWxkcmVuOiBzZXRVcmxzKHJvdXRlLmNoaWxkcmVuLCBgLyR7cm91dGUucGF0aH1gKSxcbiAgICAgIH0pLFxuICB9KSk7XG59XG4iXX0= \ No newline at end of file +/** + * @param {?} routes + * @return {?} + */ +function flatRoutes(routes) { + /** @type {?} */ + const flat = (/** + * @param {?} r + * @return {?} + */ + (r) => { + return r.reduce((/** + * @param {?} acc + * @param {?} val + * @return {?} + */ + (acc, val) => { + /** @type {?} */ + let value = [val]; + if (val.children) { + const { children } = val; + delete val.children; + value = [val, ...flat(children)]; + } + return [...acc, ...value]; + }), []); + }); + return flat(routes); +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuY29yZS8iLCJzb3VyY2VzIjpbImxpYi9wbHVnaW5zL2NvbmZpZy9jb25maWcucGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLE1BQU0sRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFnQyxRQUFRLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVHLE9BQU8sR0FBRyxNQUFNLEtBQUssQ0FBQztBQUV0QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxLQUFLLE1BQU0sWUFBWSxDQUFDOztBQUUvQixNQUFNLE9BQU8sMEJBQTBCLEdBQUcsSUFBSSxjQUFjLENBQUMsNEJBQTRCLENBQUM7QUFHMUYsTUFBTSxPQUFPLFlBQVk7Ozs7O0lBR3ZCLFlBQXdELE9BQWlCLEVBQVUsTUFBYztRQUF6QyxZQUFPLEdBQVAsT0FBTyxDQUFVO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUZ6RixnQkFBVyxHQUFZLEtBQUssQ0FBQztJQUUrRCxDQUFDOzs7Ozs7O0lBRXJHLE1BQU0sQ0FBQyxLQUFVLEVBQUUsS0FBVSxFQUFFLElBQXNCOztjQUM3QyxPQUFPLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQzs7Y0FDOUIsWUFBWSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxPQUFPLENBQUMsV0FBVyxDQUFDO1FBRS9ELDZHQUE2RztRQUM3RyxJQUFJLFlBQVksSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQ2pDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFD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QUcsRUFBRSxFQUFFOztnQkFDdkIsS0FBSyxHQUFvQixDQUFDLEdBQUcsQ0FBQztZQUNsQyxJQUFJLEdBQUcsQ0FBQyxRQUFRLEVBQUU7c0JBQ1YsRUFBRSxRQUFRLEVBQUUsR0FBRyxHQUFHO2dCQUN4QixPQUFPLEdBQUcsQ0FBQyxRQUFRLENBQUM7Z0JBQ3BCLEtBQUssR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO2FBQ2xDO1lBRUQsT0FBTyxDQUFDLEdBQUcsR0FBRyxFQUFFLEdBQUcsS0FBSyxDQUFDLENBQUM7UUFDNUIsQ0FBQyxHQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsQ0FBQyxDQUFBO0lBRUQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDdEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciwgUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGFjdGlvbk1hdGNoZXIsIEluaXRTdGF0ZSwgTmd4c05leHRQbHVnaW5GbiwgTmd4c1BsdWdpbiwgc2V0VmFsdWUsIFVwZGF0ZVN0YXRlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHNucSBmcm9tICdzbnEnO1xuaW1wb3J0IHsgQUJQIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IG9yZ2FuaXplUm91dGVzIH0gZnJvbSAnLi4vLi4vdXRpbHMvcm91dGUtdXRpbHMnO1xuaW1wb3J0IGNsb25lIGZyb20gJ2p1c3QtY2xvbmUnO1xuXG5leHBvcnQgY29uc3QgTkdYU19DT05GSUdfUExVR0lOX09QVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW4oJ05HWFNfQ09ORklHX1BMVUdJTl9PUFRJT05TJyk7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDb25maWdQbHVnaW4gaW1wbGVtZW50cyBOZ3hzUGx1Z2luIHtcbiAgcHJpdmF0ZSBpbml0aWFsaXplZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoTkdYU19DT05GSUdfUExVR0lOX09QVElPTlMpIHByaXZhdGUgb3B0aW9uczogQUJQLlJvb3QsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHt9XG5cbiAgaGFuZGxlKHN0YXRlOiBhbnksIGV2ZW50OiBhbnksIG5leHQ6IE5neHNOZXh0UGx1Z2luRm4pIHtcbiAgICBjb25zdCBtYXRjaGVzID0gYWN0aW9uTWF0Y2hlcihldmVudCk7XG4gICAgY29uc3QgaXNJbml0QWN0aW9uID0gbWF0Y2hlcyhJbml0U3RhdGUpIHx8IG1hdGNoZXMoVXBkYXRlU3RhdGUpO1xuXG4gICAgLy8gY29uc3QgbGF5b3V0cyA9IHNucSgoKSA9PiB0aGlzLm9wdGlvbnMucmVxdWlyZW1lbnRzLmxheW91dHMuZmlsdGVyKGxheW91dCA9PiBsYXlvdXQgaW5zdGFuY2VvZiBUeXBlKSwgW10pO1xuICAgIGlmIChpc0luaXRBY3Rpb24gJiYgIXRoaXMuaW5pdGlhbGl6ZWQpIHtcbiAgICAgIGxldCB7IHJvdXRlcywgd3JhcHBlcnMgfSA9IHRyYW5zZm9ybVJvdXRlcyh0aGlzLnJvdXRlci5jb25maWcpO1xuICAgICAgcm91dGVzID0gb3JnYW5pemVSb3V0ZXMocm91dGVzLCB3cmFwcGVycyk7XG4gICAgICBjb25zdCBmbGF0dGVkUm91dGVzID0gZmxhdFJvdXRlcyhjbG9uZShyb3V0ZXMpKTtcbiAgICAgIHN0YXRlID0gc2V0VmFsdWUoc3RhdGUsICdDb25maWdTdGF0ZScsIHtcbiAgICAgICAgLi4uKHN0YXRlLkNvbmZpZ1N0YXRlICYmIHsgLi4uc3RhdGUuQ29uZmlnU3RhdGUgfSksXG4gICAgICAgIC4uLnRoaXMub3B0aW9ucyxcbiAgICAgICAgcm91dGVzLFxuICAgICAgICBmbGF0dGVkUm91dGVzLFxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybiBuZXh0KHN0YXRlLCBldmVudCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtUm91dGVzKHJvdXRlczogUm91dGVzID0gW10sIHdyYXBwZXJzOiBBQlAuRnVsbFJvdXRlW10gPSBbXSk6IGFueSB7XG4gIGNvbnN0IGFicFJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdID0gcm91dGVzXG4gICAgLmZpbHRlcihyb3V0ZSA9PiB7XG4gICAgICByZXR1cm4gc25xKCgpID0+IHJvdXRlLmRhdGEucm91dGVzLnJvdXRlcy5maW5kKHIgPT4gci5wYXRoID09PSByb3V0ZS5wYXRoKSwgZmFsc2UpO1xuICAgIH0pXG4gICAgLnJlZHVjZSgoYWNjLCB2YWwpID0+IFsuLi5hY2MsIC4uLnZhbC5kYXRhLnJvdXRlcy5yb3V0ZXNdLCBbXSk7XG5cbiAgd3JhcHBlcnMgPSBhYnBSb3V0ZXMuZmlsdGVyKGFyID0+IGFyLndyYXBwZXIpO1xuICBjb25zdCB0cmFuc2Zvcm1lZCA9IFtdIGFzIEFCUC5GdWxsUm91dGVbXTtcbiAgcm91dGVzXG4gICAgLmZpbHRlcihyb3V0ZSA9PiAocm91dGUuZGF0YSB8fCB7fSkucm91dGVzICYmIChyb3V0ZS5jb21wb25lbnQgfHwgcm91dGUubG9hZENoaWxkcmVuKSlcbiAgICAuZm9yRWFjaChyb3V0ZSA9PiB7XG4gICAgICBjb25zdCBhYnBQYWNrYWdlID0gYWJwUm91dGVzLmZpbmQoXG4gICAgICAgIGFicCA9PiBhYnAucGF0aC50b0xvd2VyQ2FzZSgpID09PSByb3V0ZS5wYXRoLnRvTG93ZXJDYXNlKCkgJiYgc25xKCgpID0+IHJvdXRlLmRhdGEucm91dGVzLnJvdXRlcy5sZW5ndGgsIGZhbHNlKSxcbiAgICAgICk7XG4gICAgICBjb25zdCB7IGxlbmd0aCB9ID0gdHJhbnNmb3JtZWQ7XG5cbiAgICAgIGlmIChhYnBQYWNrYWdlKSB7XG4gICAgICAgIHRyYW5zZm9ybWVkLnB1c2goYWJwUGFja2FnZSk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0cmFuc2Zvcm1lZC5sZW5ndGggPT09IGxlbmd0aCkge1xuICAgICAgICB0cmFuc2Zvcm1lZC5wdXNoKHtcbiAgICAgICAgICAuLi5yb3V0ZS5kYXRhLnJvdXRlcyxcbiAgICAgICAgICBwYXRoOiByb3V0ZS5wYXRoLFxuICAgICAgICAgIG5hbWU6IHNucSgoKSA9PiByb3V0ZS5kYXRhLnJvdXRlcy5uYW1lLCByb3V0ZS5wYXRoKSxcbiAgICAgICAgICBjaGlsZHJlbjogcm91dGUuZGF0YS5yb3V0ZXMuY2hpbGRyZW4gfHwgW10sXG4gICAgICAgIH0gYXMgQUJQLkZ1bGxSb3V0ZSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgcmV0dXJuIHsgcm91dGVzOiBzZXRVcmxzKHRyYW5zZm9ybWVkKSwgd3JhcHBlcnMgfTtcbn1cblxuZnVuY3Rpb24gc2V0VXJscyhyb3V0ZXM6IEFCUC5GdWxsUm91dGVbXSwgcGFyZW50VXJsPzogc3RyaW5nKTogQUJQLkZ1bGxSb3V0ZVtdIHtcbiAgaWYgKHBhcmVudFVybCkge1xuICAgIC8vIHRoaXMgaWYgYmxvY2sgdXNpbmcgZm9yIG9ubHkgcmVjdXJzaXZlIGNhbGxcblxuICAgIHJldHVybiByb3V0ZXMubWFwKHJvdXRlID0+ICh7XG4gICAgICAuLi5yb3V0ZSxcbiAgICAgIHVybDogYCR7cGFyZW50VXJsfS8ke3JvdXRlLnBhdGh9YCxcbiAgICAgIC4uLihyb3V0ZS5jaGlsZHJlbiAmJlxuICAgICAgICByb3V0ZS5jaGlsZHJlbi5sZW5ndGggJiYge1xuICAgICAgICAgIGNoaWxkcmVuOiBzZXRVcmxzKHJvdXRlLmNoaWxkcmVuLCBgJHtwYXJlbnRVcmx9LyR7cm91dGUucGF0aH1gKSxcbiAgICAgICAgfSksXG4gICAgfSkpO1xuICB9XG5cbiAgcmV0dXJuIHJvdXRlcy5tYXAocm91dGUgPT4gKHtcbiAgICAuLi5yb3V0ZSxcbiAgICB1cmw6IGAvJHtyb3V0ZS5wYXRofWAsXG4gICAgLi4uKHJvdXRlLmNoaWxkcmVuICYmXG4gICAgICByb3V0ZS5jaGlsZHJlbi5sZW5ndGggJiYge1xuICAgICAgICBjaGlsZHJlbjogc2V0VXJscyhyb3V0ZS5jaGlsZHJlbiwgYC8ke3JvdXRlLnBhdGh9YCksXG4gICAgICB9KSxcbiAgfSkpO1xufVxuXG5mdW5jdGlvbiBmbGF0Um91dGVzKHJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdKTogQUJQLkZ1bGxSb3V0ZVtdIHtcbiAgY29uc3QgZmxhdCA9IChyOiBBQlAuRnVsbFJvdXRlW10pID0+IHtcbiAgICByZXR1cm4gci5yZWR1Y2UoKGFjYywgdmFsKSA9PiB7XG4gICAgICBsZXQgdmFsdWU6IEFCUC5GdWxsUm91dGVbXSA9IFt2YWxdO1xuICAgICAgaWYgKHZhbC5jaGlsZHJlbikge1xuICAgICAgICBjb25zdCB7IGNoaWxkcmVuIH0gPSB2YWw7XG4gICAgICAgIGRlbGV0ZSB2YWwuY2hpbGRyZW47XG4gICAgICAgIHZhbHVlID0gW3ZhbCwgLi4uZmxhdChjaGlsZHJlbildO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gWy4uLmFjYywgLi4udmFsdWVdO1xuICAgIH0sIFtdKTtcbiAgfTtcblxuICByZXR1cm4gZmxhdChyb3V0ZXMpO1xufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm2015/lib/states/config.state.js b/npm/ng-packs/dist/core/esm2015/lib/states/config.state.js index 240690d429..a96eaaff13 100644 --- a/npm/ng-packs/dist/core/esm2015/lib/states/config.state.js +++ b/npm/ng-packs/dist/core/esm2015/lib/states/config.state.js @@ -94,7 +94,19 @@ let ConfigState = ConfigState_1 = class ConfigState { * @return {?} */ function (state) { - return findRoute(state.routes, path, name); + const { flattedRoutes } = state; + return ((/** @type {?} */ (flattedRoutes))).find((/** + * @param {?} route + * @return {?} + */ + route => { + if (path && route.path === path) { + return route; + } + else if (name && route.name === name) { + return route; + } + })); })); return selector; } @@ -132,50 +144,22 @@ let ConfigState = ConfigState_1 = class ConfigState { return selector; } /** - * @param {?=} condition + * @param {?} key * @return {?} */ - static getGrantedPolicy(condition = '') { - /** @type {?} */ - const keys = condition - .replace(/\(|\)|\!|\s/g, '') - .split(/\|\||&&/) - .filter((/** - * @param {?} key - * @return {?} - */ - key => key)); + static getGrantedPolicy(key) { /** @type {?} */ const selector = createSelector([ConfigState_1], (/** * @param {?} state * @return {?} */ function (state) { - if (!keys.length) + if (!key) return true; - /** @type {?} */ - const getPolicy = (/** - * @param {?} key - * @return {?} - */ - key => snq((/** + return snq((/** * @return {?} */ - () => state.auth.grantedPolicies[key]), false)); - if (keys.length > 1) { - keys.forEach((/** - * @param {?} key - * @return {?} - */ - key => { - /** @type {?} */ - const value = getPolicy(key); - condition = condition.replace(key, value); - })); - // tslint:disable-next-line: no-eval - return eval(`!!${condition}`); - } - return getPolicy(condition); + () => state.auth.grantedPolicies[key]), false); })); return selector; } @@ -214,7 +198,7 @@ let ConfigState = ConfigState_1 = class ConfigState { () => defaultResourceName)); } /** @type {?} */ - let copy = keys.reduce((/** + let copy = ((/** @type {?} */ (keys))).reduce((/** * @param {?} acc * @param {?} val * @return {?} @@ -366,34 +350,4 @@ function patchRouteDeep(routes, name, newValue, parentUrl = null) { } return organizeRoutes(routes); } -/** - * @param {?} routes - * @param {?=} path - * @param {?=} name - * @return {?} - */ -function findRoute(routes, path, name) { - /** @type {?} */ - let foundRoute; - routes.forEach((/** - * @param {?} route - * @return {?} - */ - route => { - if (foundRoute) - return; - if (path && route.path === path) { - foundRoute = route; - } - else if (name && route.name === name) { - foundRoute = route; - return; - } - else if (route.children && route.children.length) { - foundRoute = findRoute(route.children, path, name); - return; - } - })); - return foundRoute; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnN0YXRlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL3N0YXRlcy9jb25maWcuc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBZ0IsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTNGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxHQUFHLE1BQU0sS0FBSyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUIsT0FBTyxFQUE2QixjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztJQU1wRSxXQUFXLHlCQUFYLFdBQVc7Ozs7O0lBNkp0QixZQUFvQix1QkFBd0QsRUFBVSxLQUFZO1FBQTlFLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBaUM7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFPO0lBQUcsQ0FBQzs7Ozs7SUEzSnRHLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBbUI7UUFDL0IsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzs7OztJQUdELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxLQUFtQjtRQUMzQyxPQUFPLEtBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztJQUM3QyxDQUFDOzs7OztJQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FB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QWEsRUFBRSxJQUFhOztRQUNsRSxVQUFVO0lBQ2QsTUFBTSxDQUFDLE9BQU87Ozs7SUFBQyxLQUFLLENBQUMsRUFBRTtRQUNyQixJQUFJLFVBQVU7WUFBRSxPQUFPO1FBRXZCLElBQUksSUFBSSxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFFO1lBQy9CLFVBQVUsR0FBRyxLQUFLLENBQUM7U0FDcEI7YUFBTSxJQUFJLElBQUksSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRTtZQUN0QyxVQUFVLEdBQUcsS0FBSyxDQUFDO1lBQ25CLE9BQU87U0FDUjthQUFNLElBQUksS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRTtZQUNsRCxVQUFVLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ25ELE9BQU87U0FDUjtJQUNILENBQUMsRUFBQyxDQUFDO0lBRUgsT0FBTyxVQUFVLENBQUM7QUFDcEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0YXRlLCBTZWxlY3RvciwgY3JlYXRlU2VsZWN0b3IsIEFjdGlvbiwgU3RhdGVDb250ZXh0LCBTdG9yZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IENvbmZpZywgQUJQIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7IEdldEFwcENvbmZpZ3VyYXRpb24sIFBhdGNoUm91dGVCeU5hbWUgfSBmcm9tICcuLi9hY3Rpb25zL2NvbmZpZy5hY3Rpb25zJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvblNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hcHBsaWNhdGlvbi1jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgdGFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgc25xIGZyb20gJ3NucSc7XG5pbXBvcnQgeyBTZXRMYW5ndWFnZSB9IGZyb20gJy4uL2FjdGlvbnMnO1xuaW1wb3J0IHsgU2Vzc2lvblN0YXRlIH0gZnJvbSAnLi9zZXNzaW9uLnN0YXRlJztcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzZXRDaGlsZFJvdXRlLCBzb3J0Um91dGVzLCBvcmdhbml6ZVJvdXRlcyB9IGZyb20gJy4uL3V0aWxzL3JvdXRlLXV0aWxzJztcblxuQFN0YXRlPENvbmZpZy5TdGF0ZT4oe1xuICBuYW1lOiAnQ29uZmlnU3RhdGUnLFxuICBkZWZhdWx0czoge30gYXMgQ29uZmlnLlN0YXRlLFxufSlcbmV4cG9ydCBjbGFzcyBDb25maWdTdGF0ZSB7XG4gIEBTZWxlY3RvcigpXG4gIHN0YXRpYyBnZXRBbGwoc3RhdGU6IENvbmZpZy5TdGF0ZSkge1xuICAgIHJldHVybiBzdGF0ZTtcbiAgfVxuXG4gIEBTZWxlY3RvcigpXG4gIHN0YXRpYyBnZXRBcHBsaWNhdGlvbkluZm8oc3RhdGU6IENvbmZpZy5TdGF0ZSkge1xuICAgIHJldHVybiBzdGF0ZS5lbnZpcm9ubWVudC5hcHBsaWNhdGlvbiB8fCB7fTtcbiAgfVxuXG4gIHN0YXRpYyBnZXRPbmUoa2V5OiBzdHJpbmcpIHtcbiAgICBjb25zdCBzZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgW0NvbmZpZ1N0YXRlXSxcbiAgICAgIGZ1bmN0aW9uKHN0YXRlOiBDb25maWcuU3RhdGUpIHtcbiAgICAgICAgcmV0dXJuIHN0YXRlW2tleV07XG4gICAgICB9LFxuICAgICk7XG5cbiAgICByZXR1cm4gc2VsZWN0b3I7XG4gIH1cblxuICBzdGF0aWMgZ2V0RGVlcChrZXlzOiBzdHJpbmdbXSB8IHN0cmluZykge1xuICAgIGlmICh0eXBlb2Yga2V5cyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGtleXMgPSBrZXlzLnNwbGl0KCcuJyk7XG4gICAgfVxuXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KGtleXMpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBhcmd1bWVudCBtdXN0IGJlIGEgZG90IHN0cmluZyBvciBhbiBzdHJpbmcgYXJyYXkuJyk7XG4gICAgfVxuXG4gICAgY29uc3Qgc2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIFtDb25maWdTdGF0ZV0sXG4gICAgICBmdW5jdGlvbihzdGF0ZTogQ29uZmlnLlN0YXRlKSB7XG4gICAgICAgIHJldHVybiAoa2V5cyBhcyBzdHJpbmdbXSkucmVkdWNlKChhY2MsIHZhbCkgPT4ge1xuICAgICAgICAgIGlmIChhY2MpIHtcbiAgICAgICAgICAgIHJldHVybiBhY2NbdmFsXTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9LCBzdGF0ZSk7XG4gICAgICB9LFxuICAgICk7XG5cbiAgICByZXR1cm4gc2VsZWN0b3I7XG4gIH1cblxuICBzdGF0aWMgZ2V0Um91dGUocGF0aD86IHN0cmluZywgbmFtZT86IHN0cmluZykge1xuICAgIGNvbnN0IHNlbGVjdG9yID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgICBbQ29uZmlnU3RhdGVdLFxuICAgICAgZnVuY3Rpb24oc3RhdGU6IENvbmZpZy5TdGF0ZSkge1xuICAgICAgICByZXR1cm4gZmluZFJvdXRlKHN0YXRlLnJvdXRlcywgcGF0aCwgbmFtZSk7XG4gICAgICB9LFxuICAgICk7XG5cbiAgICByZXR1cm4gc2VsZWN0b3I7XG4gIH1cblxuICBzdGF0aWMgZ2V0QXBpVXJsKGtleT86IHN0cmluZykge1xuICAgIGNvbnN0IHNlbGVjdG9yID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgICBbQ29uZmlnU3RhdGVdLFxuICAgICAgZnVuY3Rpb24oc3RhdGU6IENvbmZpZy5TdGF0ZSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBzdGF0ZS5lbnZpcm9ubWVudC5hcGlzW2tleSB8fCAnZGVmYXVsdCddLnVybDtcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHJldHVybiBzZWxlY3RvcjtcbiAgfVxuXG4gIHN0YXRpYyBnZXRTZXR0aW5nKGtleTogc3RyaW5nKSB7XG4gICAgY29uc3Qgc2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIFtDb25maWdTdGF0ZV0sXG4gICAgICBmdW5jdGlvbihzdGF0ZTogQ29uZmlnLlN0YXRlKSB7XG4gICAgICAgIHJldHVybiBzbnEoKCkgPT4gc3RhdGUuc2V0dGluZy52YWx1ZXNba2V5XSk7XG4gICAgICB9LFxuICAgICk7XG5cbiAgICByZXR1cm4gc2VsZWN0b3I7XG4gIH1cblxuICBzdGF0aWMgZ2V0R3JhbnRlZFBvbGljeShjb25kaXRpb246IHN0cmluZyA9ICcnKSB7XG4gICAgY29uc3Qga2V5cyA9IGNvbmRpdGlvblxuICAgICAgLnJlcGxhY2UoL1xcKHxcXCl8XFwhfFxccy9nLCAnJylcbiAgICAgIC5zcGxpdCgvXFx8XFx8fCYmLylcbiAgICAgIC5maWx0ZXIoa2V5ID0+IGtleSk7XG5cbiAgICBjb25zdCBzZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgW0NvbmZpZ1N0YXRlXSxcbiAgICAgIGZ1bmN0aW9uKHN0YXRlOiBDb25maWcuU3RhdGUpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCFrZXlzLmxlbmd0aCkgcmV0dXJuIHRydWU7XG5cbiAgICAgICAgY29uc3QgZ2V0UG9saWN5ID0ga2V5ID0+IHNucSgoKSA9PiBzdGF0ZS5hdXRoLmdyYW50ZWRQb2xpY2llc1trZXldLCBmYWxzZSk7XG4gICAgICAgIGlmIChrZXlzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICBrZXlzLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gZ2V0UG9saWN5KGtleSk7XG4gICAgICAgICAgICBjb25kaXRpb24gPSBjb25kaXRpb24ucmVwbGFjZShrZXksIHZhbHVlKTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tZXZhbFxuICAgICAgICAgIHJldHVybiBldmFsKGAhISR7Y29uZGl0aW9ufWApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGdldFBvbGljeShjb25kaXRpb24pO1xuICAgICAgfSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHNlbGVjdG9yO1xuICB9XG5cbiAgc3RhdGljIGdldENvcHkoa2V5OiBzdHJpbmcsIC4uLmludGVycG9sYXRlUGFyYW1zOiBzdHJpbmdbXSkge1xuICAgIGlmICgha2V5KSBrZXkgPSAnJztcblxuICAgIGNvbnN0IGtleXMgPSBrZXkuc3BsaXQoJzo6JykgYXMgc3RyaW5nW107XG4gICAgY29uc3Qgc2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIFtDb25maWdTdGF0ZV0sXG4gICAgICBmdW5jdGlvbihzdGF0ZTogQ29uZmlnLlN0YXRlKSB7XG4gICAgICAgIGlmICghc3RhdGUubG9jYWxpemF0aW9uKSByZXR1cm4ga2V5O1xuXG4gICAgICAgIGNvbnN0IHsgZGVmYXVsdFJlc291cmNlTmFtZSB9ID0gc3RhdGUuZW52aXJvbm1lbnQubG9jYWxpemF0aW9uO1xuICAgICAgICBpZiAoa2V5c1swXSA9PT0gJycpIHtcbiAgICAgICAgICBpZiAoIWRlZmF1bHRSZXNvdXJjZU5hbWUpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgYFBsZWFzZSBjaGVjayB5b3VyIGVudmlyb25tZW50LiBNYXkgeW91IGZvcmdldCBzZXQgZGVmYXVsdFJlc291cmNlTmFtZT8gXG4gICAgICAgICAgICAgIEhlcmUgaXMgdGhlIGV4YW1wbGU6XG4gICAgICAgICAgICAgICB7IHByb2R1Y3Rpb246IGZhbHNlLFxuICAgICAgICAgICAgICAgICBsb2NhbGl6YXRpb246IHtcbiAgICAgICAgICAgICAgICAgICBkZWZhdWx0UmVzb3VyY2VOYW1lOiAnTXlQcm9qZWN0TmFtZSdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIH1gLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBrZXlzWzBdID0gc25xKCgpID0+IGRlZmF1bHRSZXNvdXJjZU5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGNvcHkgPSBrZXlzLnJlZHVjZSgoYWNjLCB2YWwpID0+IHtcbiAgICAgICAgICBpZiAoYWNjKSB7XG4gICAgICAgICAgICByZXR1cm4gYWNjW3ZhbF07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfSwgc3RhdGUubG9jYWxpemF0aW9uLnZhbHVlcyk7XG5cbiAgICAgICAgaW50ZXJwb2xhdGVQYXJhbXMgPSBpbnRlcnBvbGF0ZVBhcmFtcy5maWx0ZXIocGFyYW1zID0+IHBhcmFtcyAhPSBudWxsKTtcbiAgICAgICAgaWYgKGNvcHkgJiYgaW50ZXJwb2xhdGVQYXJhbXMgJiYgaW50ZXJwb2xhdGVQYXJhbXMubGVuZ3RoKSB7XG4gICAgICAgICAgaW50ZXJwb2xhdGVQYXJhbXMuZm9yRWFjaChwYXJhbSA9PiB7XG4gICAgICAgICAgICBjb3B5ID0gY29weS5yZXBsYWNlKC9bXFwnXFxcIl0/XFx7W1xcZF0rXFx9W1xcJ1xcXCJdPy8sIHBhcmFtKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb3B5IHx8IGtleTtcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHJldHVybiBzZWxlY3RvcjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBwQ29uZmlndXJhdGlvblNlcnZpY2U6IEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvblNlcnZpY2UsIHByaXZhdGUgc3RvcmU6IFN0b3JlKSB7fVxuXG4gIEBBY3Rpb24oR2V0QXBwQ29uZmlndXJhdGlvbilcbiAgYWRkRGF0YSh7IHBhdGNoU3RhdGUsIGRpc3BhdGNoIH06IFN0YXRlQ29udGV4dDxDb25maWcuU3RhdGU+KSB7XG4gICAgcmV0dXJuIHRoaXMuYXBwQ29uZmlndXJhdGlvblNlcnZpY2UuZ2V0Q29uZmlndXJhdGlvbigpLnBpcGUoXG4gICAgICB0YXAoY29uZmlndXJhdGlvbiA9PlxuICAgICAgICBwYXRjaFN0YXRlKHtcbiAgICAgICAgICAuLi5jb25maWd1cmF0aW9uLFxuICAgICAgICB9KSxcbiAgICAgICksXG4gICAgICBzd2l0Y2hNYXAoY29uZmlndXJhdGlvbiA9PiB7XG4gICAgICAgIGxldCBkZWZhdWx0TGFuZzogc3RyaW5nID0gY29uZmlndXJhdGlvbi5zZXR0aW5nLnZhbHVlc1snQWJwLkxvY2FsaXphdGlvbi5EZWZhdWx0TGFuZ3VhZ2UnXTtcblxuICAgICAgICBpZiAoZGVmYXVsdExhbmcuaW5jbHVkZXMoJzsnKSkge1xuICAgICAgICAgIGRlZmF1bHRMYW5nID0gZGVmYXVsdExhbmcuc3BsaXQoJzsnKVswXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JlLnNlbGVjdFNuYXBzaG90KFNlc3Npb25TdGF0ZS5nZXRMYW5ndWFnZSkgPyBvZihudWxsKSA6IGRpc3BhdGNoKG5ldyBTZXRMYW5ndWFnZShkZWZhdWx0TGFuZykpO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIEBBY3Rpb24oUGF0Y2hSb3V0ZUJ5TmFtZSlcbiAgcGF0Y2hSb3V0ZSh7IHBhdGNoU3RhdGUsIGdldFN0YXRlIH06IFN0YXRlQ29udGV4dDxDb25maWcuU3RhdGU+LCB7IG5hbWUsIG5ld1ZhbHVlIH06IFBhdGNoUm91dGVCeU5hbWUpIHtcbiAgICBsZXQgcm91dGVzOiBBQlAuRnVsbFJvdXRlW10gPSBnZXRTdGF0ZSgpLnJvdXRlcztcblxuICAgIGNvbnN0IGluZGV4ID0gcm91dGVzLmZpbmRJbmRleChyb3V0ZSA9PiByb3V0ZS5uYW1lID09PSBuYW1lKTtcblxuICAgIHJvdXRlcyA9IHBhdGNoUm91dGVEZWVwKHJvdXRlcywgbmFtZSwgbmV3VmFsdWUpO1xuXG4gICAgcmV0dXJuIHBhdGNoU3RhdGUoe1xuICAgICAgcm91dGVzLFxuICAgIH0pO1xuICB9XG59XG5cbmZ1bmN0aW9uIHBhdGNoUm91dGVEZWVwKFxuICByb3V0ZXM6IEFCUC5GdWxsUm91dGVbXSxcbiAgbmFtZTogc3RyaW5nLFxuICBuZXdWYWx1ZTogUGFydGlhbDxBQlAuRnVsbFJvdXRlPixcbiAgcGFyZW50VXJsOiBzdHJpbmcgPSBudWxsLFxuKTogQUJQLkZ1bGxSb3V0ZVtdIHtcbiAgcm91dGVzID0gcm91dGVzLm1hcChyb3V0ZSA9PiB7XG4gICAgaWYgKHJvdXRlLm5hbWUgPT09IG5hbWUpIHtcbiAgICAgIGlmIChuZXdWYWx1ZS5wYXRoKSB7XG4gICAgICAgIG5ld1ZhbHVlLnVybCA9IGAke3BhcmVudFVybH0vJHtuZXdWYWx1ZS5wYXRofWA7XG4gICAgICB9XG5cbiAgICAgIGlmIChuZXdWYWx1ZS5jaGlsZHJlbiAmJiBuZXdWYWx1ZS5jaGlsZHJlbi5sZW5ndGgpIHtcbiAgICAgICAgbmV3VmFsdWUuY2hpbGRyZW4gPSBuZXdWYWx1ZS5jaGlsZHJlbi5tYXAoY2hpbGQgPT4gKHtcbiAgICAgICAgICAuLi5jaGlsZCxcbiAgICAgICAgICB1cmw6IGAke3BhcmVudFVybH0vJHtyb3V0ZS5wYXRofS8ke2NoaWxkLnBhdGh9YCxcbiAgICAgICAgfSkpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4geyAuLi5yb3V0ZSwgLi4ubmV3VmFsdWUgfTtcbiAgICB9IGVsc2UgaWYgKHJvdXRlLmNoaWxkcmVuICYmIHJvdXRlLmNoaWxkcmVuLmxlbmd0aCkge1xuICAgICAgcm91dGUuY2hpbGRyZW4gPSBwYXRjaFJvdXRlRGVlcChyb3V0ZS5jaGlsZHJlbiwgbmFtZSwgbmV3VmFsdWUsIChwYXJlbnRVcmwgfHwgJy8nKSArIHJvdXRlLnBhdGgpO1xuICAgIH1cblxuICAgIHJldHVybiByb3V0ZTtcbiAgfSk7XG5cbiAgaWYgKHBhcmVudFVybCkge1xuICAgIC8vIHJlY3Vyc2l2ZSBibG9ja1xuICAgIHJldHVybiByb3V0ZXM7XG4gIH1cblxuICByZXR1cm4gb3JnYW5pemVSb3V0ZXMocm91dGVzKTtcbn1cblxuZnVuY3Rpb24gZmluZFJvdXRlKHJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdLCBwYXRoPzogc3RyaW5nLCBuYW1lPzogc3RyaW5nKSB7XG4gIGxldCBmb3VuZFJvdXRlO1xuICByb3V0ZXMuZm9yRWFjaChyb3V0ZSA9PiB7XG4gICAgaWYgKGZvdW5kUm91dGUpIHJldHVybjtcblxuICAgIGlmIChwYXRoICYmIHJvdXRlLnBhdGggPT09IHBhdGgpIHtcbiAgICAgIGZvdW5kUm91dGUgPSByb3V0ZTtcbiAgICB9IGVsc2UgaWYgKG5hbWUgJiYgcm91dGUubmFtZSA9PT0gbmFtZSkge1xuICAgICAgZm91bmRSb3V0ZSA9IHJvdXRlO1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSBpZiAocm91dGUuY2hpbGRyZW4gJiYgcm91dGUuY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICBmb3VuZFJvdXRlID0gZmluZFJvdXRlKHJvdXRlLmNoaWxkcmVuLCBwYXRoLCBuYW1lKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gIH0pO1xuXG4gIHJldHVybiBmb3VuZFJvdXRlO1xufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnN0YXRlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL3N0YXRlcy9jb25maWcuc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBZ0IsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRTNGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEQsT0FBTyxHQUFHLE1BQU0sS0FBSyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUIsT0FBTyxFQUE2QixjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztJQU1wRSxXQUFXLHlCQUFYLFdBQVc7Ozs7O0lBbUp0QixZQUFvQix1QkFBd0QsRUFBVSxLQUFZO1FBQTlFLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBaUM7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFPO0lBQUcsQ0FBQzs7Ozs7SUFqSnRHLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBbUI7UUFDL0IsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzs7OztJQUdELE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxLQUFtQjtRQUMzQyxPQUFPLEtBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztJQUM3QyxDQUFDOzs7OztJQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FB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QVEsQ0FBQyxRQUFRLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUU7Z0JBQ2pELFFBQVEsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxHQUFHOzs7O2dCQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsbUJBQzlDLEtBQUssSUFDUixHQUFHLEVBQUUsR0FBRyxTQUFTLElBQUksS0FBSyxDQUFDLElBQUksSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLElBQy9DLEVBQUMsQ0FBQzthQUNMO1lBRUQseUJBQVksS0FBSyxFQUFLLFFBQVEsRUFBRztTQUNsQzthQUFNLElBQUksS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRTtZQUNsRCxLQUFLLENBQUMsUUFBUSxHQUFHLGNBQWMsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQyxTQUFTLElBQUksR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ2xHO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDLEVBQUMsQ0FBQztJQUVILElBQUksU0FBUyxFQUFFO1FBQ2Isa0JBQWtCO1FBQ2xCLE9BQU8sTUFBTSxDQUFDO0tBQ2Y7SUFFRCxPQUFPLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUNoQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RhdGUsIFNlbGVjdG9yLCBjcmVhdGVTZWxlY3RvciwgQWN0aW9uLCBTdGF0ZUNvbnRleHQsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgQ29uZmlnLCBBQlAgfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgR2V0QXBwQ29uZmlndXJhdGlvbiwgUGF0Y2hSb3V0ZUJ5TmFtZSB9IGZyb20gJy4uL2FjdGlvbnMvY29uZmlnLmFjdGlvbnMnO1xuaW1wb3J0IHsgQXBwbGljYXRpb25Db25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FwcGxpY2F0aW9uLWNvbmZpZ3VyYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyB0YXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCBzbnEgZnJvbSAnc25xJztcbmltcG9ydCB7IFNldExhbmd1YWdlIH0gZnJvbSAnLi4vYWN0aW9ucyc7XG5pbXBvcnQgeyBTZXNzaW9uU3RhdGUgfSBmcm9tICcuL3Nlc3Npb24uc3RhdGUnO1xuaW1wb3J0IHsgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHNldENoaWxkUm91dGUsIHNvcnRSb3V0ZXMsIG9yZ2FuaXplUm91dGVzIH0gZnJvbSAnLi4vdXRpbHMvcm91dGUtdXRpbHMnO1xuXG5AU3RhdGU8Q29uZmlnLlN0YXRlPih7XG4gIG5hbWU6ICdDb25maWdTdGF0ZScsXG4gIGRlZmF1bHRzOiB7fSBhcyBDb25maWcuU3RhdGUsXG59KVxuZXhwb3J0IGNsYXNzIENvbmZpZ1N0YXRlIHtcbiAgQFNlbGVjdG9yKClcbiAgc3RhdGljIGdldEFsbChzdGF0ZTogQ29uZmlnLlN0YXRlKSB7XG4gICAgcmV0dXJuIHN0YXRlO1xuICB9XG5cbiAgQFNlbGVjdG9yKClcbiAgc3RhdGljIGdldEFwcGxpY2F0aW9uSW5mbyhzdGF0ZTogQ29uZmlnLlN0YXRlKSB7XG4gICAgcmV0dXJuIHN0YXRlLmVudmlyb25tZW50LmFwcGxpY2F0aW9uIHx8IHt9O1xuICB9XG5cbiAgc3RhdGljIGdldE9uZShrZXk6IHN0cmluZykge1xuICAgIGNvbnN0IHNlbGVjdG9yID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgICBbQ29uZmlnU3RhdGVdLFxuICAgICAgZnVuY3Rpb24oc3RhdGU6IENvbmZpZy5TdGF0ZSkge1xuICAgICAgICByZXR1cm4gc3RhdGVba2V5XTtcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHJldHVybiBzZWxlY3RvcjtcbiAgfVxuXG4gIHN0YXRpYyBnZXREZWVwKGtleXM6IHN0cmluZ1tdIHwgc3RyaW5nKSB7XG4gICAgaWYgKHR5cGVvZiBrZXlzID09PSAnc3RyaW5nJykge1xuICAgICAga2V5cyA9IGtleXMuc3BsaXQoJy4nKTtcbiAgICB9XG5cbiAgICBpZiAoIUFycmF5LmlzQXJyYXkoa2V5cykpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIGFyZ3VtZW50IG11c3QgYmUgYSBkb3Qgc3RyaW5nIG9yIGFuIHN0cmluZyBhcnJheS4nKTtcbiAgICB9XG5cbiAgICBjb25zdCBzZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgW0NvbmZpZ1N0YXRlXSxcbiAgICAgIGZ1bmN0aW9uKHN0YXRlOiBDb25maWcuU3RhdGUpIHtcbiAgICAgICAgcmV0dXJuIChrZXlzIGFzIHN0cmluZ1tdKS5yZWR1Y2UoKGFjYywgdmFsKSA9PiB7XG4gICAgICAgICAgaWYgKGFjYykge1xuICAgICAgICAgICAgcmV0dXJuIGFjY1t2YWxdO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH0sIHN0YXRlKTtcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHJldHVybiBzZWxlY3RvcjtcbiAgfVxuXG4gIHN0YXRpYyBnZXRSb3V0ZShwYXRoPzogc3RyaW5nLCBuYW1lPzogc3RyaW5nKSB7XG4gICAgY29uc3Qgc2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIFtDb25maWdTdGF0ZV0sXG4gICAgICBmdW5jdGlvbihzdGF0ZTogQ29uZmlnLlN0YXRlKSB7XG4gICAgICAgIGNvbnN0IHsgZmxhdHRlZFJvdXRlcyB9ID0gc3RhdGU7XG4gICAgICAgIHJldHVybiAoZmxhdHRlZFJvdXRlcyBhcyBBQlAuRnVsbFJvdXRlW10pLmZpbmQocm91dGUgPT4ge1xuICAgICAgICAgIGlmIChwYXRoICYmIHJvdXRlLnBhdGggPT09IHBhdGgpIHtcbiAgICAgICAgICAgIHJldHVybiByb3V0ZTtcbiAgICAgICAgICB9IGVsc2UgaWYgKG5hbWUgJiYgcm91dGUubmFtZSA9PT0gbmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHJvdXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgICk7XG5cbiAgICByZXR1cm4gc2VsZWN0b3I7XG4gIH1cblxuICBzdGF0aWMgZ2V0QXBpVXJsKGtleT86IHN0cmluZykge1xuICAgIGNvbnN0IHNlbGVjdG9yID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgICBbQ29uZmlnU3RhdGVdLFxuICAgICAgZnVuY3Rpb24oc3RhdGU6IENvbmZpZy5TdGF0ZSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBzdGF0ZS5lbnZpcm9ubWVudC5hcGlzW2tleSB8fCAnZGVmYXVsdCddLnVybDtcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHJldHVybiBzZWxlY3RvcjtcbiAgfVxuXG4gIHN0YXRpYyBnZXRTZXR0aW5nKGtleTogc3RyaW5nKSB7XG4gICAgY29uc3Qgc2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIFtDb25maWdTdGF0ZV0sXG4gICAgICBmdW5jdGlvbihzdGF0ZTogQ29uZmlnLlN0YXRlKSB7XG4gICAgICAgIHJldHVybiBzbnEoKCkgPT4gc3RhdGUuc2V0dGluZy52YWx1ZXNba2V5XSk7XG4gICAgICB9LFxuICAgICk7XG5cbiAgICByZXR1cm4gc2VsZWN0b3I7XG4gIH1cblxuICBzdGF0aWMgZ2V0R3JhbnRlZFBvbGljeShrZXk6IHN0cmluZykge1xuICAgIGNvbnN0IHNlbGVjdG9yID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgICBbQ29uZmlnU3RhdGVdLFxuICAgICAgZnVuY3Rpb24oc3RhdGU6IENvbmZpZy5TdGF0ZSk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIWtleSkgcmV0dXJuIHRydWU7XG4gICAgICAgIHJldHVybiBzbnEoKCkgPT4gc3RhdGUuYXV0aC5ncmFudGVkUG9saWNpZXNba2V5XSwgZmFsc2UpO1xuICAgICAgfSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHNlbGVjdG9yO1xuICB9XG5cbiAgc3RhdGljIGdldENvcHkoa2V5OiBzdHJpbmcsIC4uLmludGVycG9sYXRlUGFyYW1zOiBzdHJpbmdbXSkge1xuICAgIGlmICgha2V5KSBrZXkgPSAnJztcblxuICAgIGNvbnN0IGtleXMgPSBrZXkuc3BsaXQoJzo6JykgYXMgc3RyaW5nW107XG4gICAgY29uc3Qgc2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIFtDb25maWdTdGF0ZV0sXG4gICAgICBmdW5jdGlvbihzdGF0ZTogQ29uZmlnLlN0YXRlKSB7XG4gICAgICAgIGlmICghc3RhdGUubG9jYWxpemF0aW9uKSByZXR1cm4ga2V5O1xuXG4gICAgICAgIGNvbnN0IHsgZGVmYXVsdFJlc291cmNlTmFtZSB9ID0gc3RhdGUuZW52aXJvbm1lbnQubG9jYWxpemF0aW9uO1xuICAgICAgICBpZiAoa2V5c1swXSA9PT0gJycpIHtcbiAgICAgICAgICBpZiAoIWRlZmF1bHRSZXNvdXJjZU5hbWUpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgYFBsZWFzZSBjaGVjayB5b3VyIGVudmlyb25tZW50LiBNYXkgeW91IGZvcmdldCBzZXQgZGVmYXVsdFJlc291cmNlTmFtZT8gXG4gICAgICAgICAgICAgIEhlcmUgaXMgdGhlIGV4YW1wbGU6XG4gICAgICAgICAgICAgICB7IHByb2R1Y3Rpb246IGZhbHNlLFxuICAgICAgICAgICAgICAgICBsb2NhbGl6YXRpb246IHtcbiAgICAgICAgICAgICAgICAgICBkZWZhdWx0UmVzb3VyY2VOYW1lOiAnTXlQcm9qZWN0TmFtZSdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIH1gLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBrZXlzWzBdID0gc25xKCgpID0+IGRlZmF1bHRSZXNvdXJjZU5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGNvcHkgPSAoa2V5cyBhcyBhbnkpLnJlZHVjZSgoYWNjLCB2YWwpID0+IHtcbiAgICAgICAgICBpZiAoYWNjKSB7XG4gICAgICAgICAgICByZXR1cm4gYWNjW3ZhbF07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfSwgc3RhdGUubG9jYWxpemF0aW9uLnZhbHVlcyk7XG5cbiAgICAgICAgaW50ZXJwb2xhdGVQYXJhbXMgPSBpbnRlcnBvbGF0ZVBhcmFtcy5maWx0ZXIocGFyYW1zID0+IHBhcmFtcyAhPSBudWxsKTtcbiAgICAgICAgaWYgKGNvcHkgJiYgaW50ZXJwb2xhdGVQYXJhbXMgJiYgaW50ZXJwb2xhdGVQYXJhbXMubGVuZ3RoKSB7XG4gICAgICAgICAgaW50ZXJwb2xhdGVQYXJhbXMuZm9yRWFjaChwYXJhbSA9PiB7XG4gICAgICAgICAgICBjb3B5ID0gY29weS5yZXBsYWNlKC9bXFwnXFxcIl0/XFx7W1xcZF0rXFx9W1xcJ1xcXCJdPy8sIHBhcmFtKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb3B5IHx8IGtleTtcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHJldHVybiBzZWxlY3RvcjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBwQ29uZmlndXJhdGlvblNlcnZpY2U6IEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvblNlcnZpY2UsIHByaXZhdGUgc3RvcmU6IFN0b3JlKSB7fVxuXG4gIEBBY3Rpb24oR2V0QXBwQ29uZmlndXJhdGlvbilcbiAgYWRkRGF0YSh7IHBhdGNoU3RhdGUsIGRpc3BhdGNoIH06IFN0YXRlQ29udGV4dDxDb25maWcuU3RhdGU+KSB7XG4gICAgcmV0dXJuIHRoaXMuYXBwQ29uZmlndXJhdGlvblNlcnZpY2UuZ2V0Q29uZmlndXJhdGlvbigpLnBpcGUoXG4gICAgICB0YXAoY29uZmlndXJhdGlvbiA9PlxuICAgICAgICBwYXRjaFN0YXRlKHtcbiAgICAgICAgICAuLi5jb25maWd1cmF0aW9uLFxuICAgICAgICB9KSxcbiAgICAgICksXG4gICAgICBzd2l0Y2hNYXAoY29uZmlndXJhdGlvbiA9PiB7XG4gICAgICAgIGxldCBkZWZhdWx0TGFuZzogc3RyaW5nID0gY29uZmlndXJhdGlvbi5zZXR0aW5nLnZhbHVlc1snQWJwLkxvY2FsaXphdGlvbi5EZWZhdWx0TGFuZ3VhZ2UnXTtcblxuICAgICAgICBpZiAoZGVmYXVsdExhbmcuaW5jbHVkZXMoJzsnKSkge1xuICAgICAgICAgIGRlZmF1bHRMYW5nID0gZGVmYXVsdExhbmcuc3BsaXQoJzsnKVswXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JlLnNlbGVjdFNuYXBzaG90KFNlc3Npb25TdGF0ZS5nZXRMYW5ndWFnZSkgPyBvZihudWxsKSA6IGRpc3BhdGNoKG5ldyBTZXRMYW5ndWFnZShkZWZhdWx0TGFuZykpO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIEBBY3Rpb24oUGF0Y2hSb3V0ZUJ5TmFtZSlcbiAgcGF0Y2hSb3V0ZSh7IHBhdGNoU3RhdGUsIGdldFN0YXRlIH06IFN0YXRlQ29udGV4dDxDb25maWcuU3RhdGU+LCB7IG5hbWUsIG5ld1ZhbHVlIH06IFBhdGNoUm91dGVCeU5hbWUpIHtcbiAgICBsZXQgcm91dGVzOiBBQlAuRnVsbFJvdXRlW10gPSBnZXRTdGF0ZSgpLnJvdXRlcztcblxuICAgIGNvbnN0IGluZGV4ID0gcm91dGVzLmZpbmRJbmRleChyb3V0ZSA9PiByb3V0ZS5uYW1lID09PSBuYW1lKTtcblxuICAgIHJvdXRlcyA9IHBhdGNoUm91dGVEZWVwKHJvdXRlcywgbmFtZSwgbmV3VmFsdWUpO1xuXG4gICAgcmV0dXJuIHBhdGNoU3RhdGUoe1xuICAgICAgcm91dGVzLFxuICAgIH0pO1xuICB9XG59XG5cbmZ1bmN0aW9uIHBhdGNoUm91dGVEZWVwKFxuICByb3V0ZXM6IEFCUC5GdWxsUm91dGVbXSxcbiAgbmFtZTogc3RyaW5nLFxuICBuZXdWYWx1ZTogUGFydGlhbDxBQlAuRnVsbFJvdXRlPixcbiAgcGFyZW50VXJsOiBzdHJpbmcgPSBudWxsLFxuKTogQUJQLkZ1bGxSb3V0ZVtdIHtcbiAgcm91dGVzID0gcm91dGVzLm1hcChyb3V0ZSA9PiB7XG4gICAgaWYgKHJvdXRlLm5hbWUgPT09IG5hbWUpIHtcbiAgICAgIGlmIChuZXdWYWx1ZS5wYXRoKSB7XG4gICAgICAgIG5ld1ZhbHVlLnVybCA9IGAke3BhcmVudFVybH0vJHtuZXdWYWx1ZS5wYXRofWA7XG4gICAgICB9XG5cbiAgICAgIGlmIChuZXdWYWx1ZS5jaGlsZHJlbiAmJiBuZXdWYWx1ZS5jaGlsZHJlbi5sZW5ndGgpIHtcbiAgICAgICAgbmV3VmFsdWUuY2hpbGRyZW4gPSBuZXdWYWx1ZS5jaGlsZHJlbi5tYXAoY2hpbGQgPT4gKHtcbiAgICAgICAgICAuLi5jaGlsZCxcbiAgICAgICAgICB1cmw6IGAke3BhcmVudFVybH0vJHtyb3V0ZS5wYXRofS8ke2NoaWxkLnBhdGh9YCxcbiAgICAgICAgfSkpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4geyAuLi5yb3V0ZSwgLi4ubmV3VmFsdWUgfTtcbiAgICB9IGVsc2UgaWYgKHJvdXRlLmNoaWxkcmVuICYmIHJvdXRlLmNoaWxkcmVuLmxlbmd0aCkge1xuICAgICAgcm91dGUuY2hpbGRyZW4gPSBwYXRjaFJvdXRlRGVlcChyb3V0ZS5jaGlsZHJlbiwgbmFtZSwgbmV3VmFsdWUsIChwYXJlbnRVcmwgfHwgJy8nKSArIHJvdXRlLnBhdGgpO1xuICAgIH1cblxuICAgIHJldHVybiByb3V0ZTtcbiAgfSk7XG5cbiAgaWYgKHBhcmVudFVybCkge1xuICAgIC8vIHJlY3Vyc2l2ZSBibG9ja1xuICAgIHJldHVybiByb3V0ZXM7XG4gIH1cblxuICByZXR1cm4gb3JnYW5pemVSb3V0ZXMocm91dGVzKTtcbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm2015/public-api.js b/npm/ng-packs/dist/core/esm2015/public-api.js index c6a48c31c5..4579287e4b 100644 --- a/npm/ng-packs/dist/core/esm2015/public-api.js +++ b/npm/ng-packs/dist/core/esm2015/public-api.js @@ -9,7 +9,7 @@ export { PatchRouteByName, GetAppConfiguration, StartLoader, StopLoader, GetProfile, UpdateProfile, ChangePassword, RestOccurError, SetLanguage, SetTenant } from './lib/actions'; export { DynamicLayoutComponent, RouterOutletComponent } from './lib/components'; export {} from './lib/constants'; -export { AutofocusDirective, EllipsisDirective, FormSubmitDirective, PermissionDirective, VisibilityDirective } from './lib/directives'; +export { AutofocusDirective, EllipsisDirective, ForDirective, FormSubmitDirective, PermissionDirective, VisibilityDirective } from './lib/directives'; export {} from './lib/enums'; export { AuthGuard, PermissionGuard } from './lib/guards'; export { ApiInterceptor } from './lib/interceptors'; @@ -20,4 +20,4 @@ export { ProfileState, ConfigState, SessionState } from './lib/states'; export { environmentFactory, configFactory, ENVIRONMENT, CONFIG } from './lib/tokens'; export { noop, uuid, getInitialData, localeInitializer, registerLocale, organizeRoutes, setChildRoute, sortRoutes, takeUntilDestroy } from './lib/utils'; export { CoreModule } from './lib/core.module'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuY29yZS8iLCJzb3VyY2VzIjpbInB1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFLQSxrS0FBYyxlQUFlLENBQUM7QUFDOUIsOERBQWMsa0JBQWtCLENBQUM7QUFDakMsZUFBYyxpQkFBaUIsQ0FBQztBQUNoQyxxSEFBYyxrQkFBa0IsQ0FBQztBQUNqQyxlQUFjLGFBQWEsQ0FBQztBQUM1QiwyQ0FBYyxjQUFjLENBQUM7QUFDN0IsK0JBQWMsb0JBQW9CLENBQUM7QUFDbkMscUJBQWMsY0FBYyxDQUFDO0FBQzdCLHlEQUFjLGVBQWUsQ0FBQztBQUM5QixrSUFBYyxnQkFBZ0IsQ0FBQztBQUMvQix3REFBYyxjQUFjLENBQUM7QUFDN0IsdUVBQWMsY0FBYyxDQUFDO0FBQzdCLDJJQUFjLGFBQWEsQ0FBQztBQUU1QiwyQkFBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgY29yZVxuICovXG5cbi8vIGV4cG9ydCAqIGZyb20gJy4vbGliL2hhbmRsZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbnVtcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ndWFyZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJjZXB0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wbHVnaW5zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXRlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90b2tlbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXRpbHMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlLm1vZHVsZSc7XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuY29yZS8iLCJzb3VyY2VzIjpbInB1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFLQSxrS0FBYyxlQUFlLENBQUM7QUFDOUIsOERBQWMsa0JBQWtCLENBQUM7QUFDakMsZUFBYyxpQkFBaUIsQ0FBQztBQUNoQyxtSUFBYyxrQkFBa0IsQ0FBQztBQUNqQyxlQUFjLGFBQWEsQ0FBQztBQUM1QiwyQ0FBYyxjQUFjLENBQUM7QUFDN0IsK0JBQWMsb0JBQW9CLENBQUM7QUFDbkMscUJBQWMsY0FBYyxDQUFDO0FBQzdCLHlEQUFjLGVBQWUsQ0FBQztBQUM5QixrSUFBYyxnQkFBZ0IsQ0FBQztBQUMvQix3REFBYyxjQUFjLENBQUM7QUFDN0IsdUVBQWMsY0FBYyxDQUFDO0FBQzdCLDJJQUFjLGFBQWEsQ0FBQztBQUU1QiwyQkFBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgY29yZVxuICovXG5cbi8vIGV4cG9ydCAqIGZyb20gJy4vbGliL2hhbmRsZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbnVtcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ndWFyZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJjZXB0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wbHVnaW5zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXRlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90b2tlbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXRpbHMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlLm1vZHVsZSc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm5/abp-ng.core.js b/npm/ng-packs/dist/core/esm5/abp-ng.core.js index bb50ae9be4..25e8c19332 100644 --- a/npm/ng-packs/dist/core/esm5/abp-ng.core.js +++ b/npm/ng-packs/dist/core/esm5/abp-ng.core.js @@ -5,15 +5,16 @@ /** * Generated bundle index. Do not edit. */ -export { PatchRouteByName, GetAppConfiguration, StartLoader, StopLoader, GetProfile, UpdateProfile, ChangePassword, RestOccurError, SetLanguage, SetTenant, DynamicLayoutComponent, RouterOutletComponent, AutofocusDirective, EllipsisDirective, FormSubmitDirective, PermissionDirective, VisibilityDirective, AuthGuard, PermissionGuard, ApiInterceptor, Rest, NGXS_CONFIG_PLUGIN_OPTIONS, ConfigPlugin, ApplicationConfigurationService, ConfigService, LazyLoadService, LocalizationService, ProfileService, RestService, ProfileState, ConfigState, SessionState, environmentFactory, configFactory, ENVIRONMENT, CONFIG, noop, uuid, getInitialData, localeInitializer, registerLocale, organizeRoutes, setChildRoute, sortRoutes, takeUntilDestroy, CoreModule } from './public-api'; +export { PatchRouteByName, GetAppConfiguration, StartLoader, StopLoader, GetProfile, UpdateProfile, ChangePassword, RestOccurError, SetLanguage, SetTenant, DynamicLayoutComponent, RouterOutletComponent, AutofocusDirective, EllipsisDirective, ForDirective, FormSubmitDirective, PermissionDirective, VisibilityDirective, AuthGuard, PermissionGuard, ApiInterceptor, Rest, NGXS_CONFIG_PLUGIN_OPTIONS, ConfigPlugin, ApplicationConfigurationService, ConfigService, LazyLoadService, LocalizationService, ProfileService, RestService, ProfileState, ConfigState, SessionState, environmentFactory, configFactory, ENVIRONMENT, CONFIG, noop, uuid, getInitialData, localeInitializer, registerLocale, organizeRoutes, setChildRoute, sortRoutes, takeUntilDestroy, CoreModule } from './public-api'; export { GetAppConfiguration as ɵp, PatchRouteByName as ɵo } from './lib/actions/config.actions'; export { ChangePassword as ɵf, GetProfile as ɵd, UpdateProfile as ɵe } from './lib/actions/profile.actions'; export { SetLanguage as ɵj, SetTenant as ɵk } from './lib/actions/session.actions'; export { DynamicLayoutComponent as ɵr } from './lib/components/dynamic-layout.component'; export { RouterOutletComponent as ɵq } from './lib/components/router-outlet.component'; -export { AutofocusDirective as ɵt } from './lib/directives/autofocus.directive'; +export { AutofocusDirective as ɵs } from './lib/directives/autofocus.directive'; export { InputEventDebounceDirective as ɵz } from './lib/directives/debounce.directive'; -export { EllipsisDirective as ɵu } from './lib/directives/ellipsis.directive'; +export { EllipsisDirective as ɵt } from './lib/directives/ellipsis.directive'; +export { ForDirective as ɵu } from './lib/directives/for.directive'; export { FormSubmitDirective as ɵv } from './lib/directives/form-submit.directive'; export { PermissionDirective as ɵx } from './lib/directives/permission.directive'; export { ClickEventStopPropagationDirective as ɵba } from './lib/directives/stop-propagation.directive'; @@ -26,9 +27,8 @@ export { ApplicationConfigurationService as ɵn } from './lib/services/applicati export { LocalizationService as ɵi } from './lib/services/localization.service'; export { ProfileService as ɵb } from './lib/services/profile.service'; export { RestService as ɵc } from './lib/services/rest.service'; -export { ConfigState as ɵs } from './lib/states'; export { ConfigState as ɵm } from './lib/states/config.state'; export { ProfileState as ɵa } from './lib/states/profile.state'; export { SessionState as ɵh } from './lib/states/session.state'; export { getInitialData as ɵbg, localeInitializer as ɵbh } from './lib/utils/initial-utils'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmNvcmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmNvcmUvIiwic291cmNlcyI6WyJhYnAtbmcuY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsK3VCQUFjLGNBQWMsQ0FBQztBQUU3QixPQUFPLEVBQUMsbUJBQW1CLElBQUksRUFBRSxFQUFDLGdCQUFnQixJQUFJLEVBQUUsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzlGLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLFVBQVUsSUFBSSxFQUFFLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ3hHLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLFNBQVMsSUFBSSxFQUFFLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRixPQUFPLEVBQUMsc0JBQXNCLElBQUksRUFBRSxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDdkYsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUM5RSxPQUFPLEVBQUMsMkJBQTJCLElBQUksRUFBRSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEYsT0FBTyxFQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUNqRixPQUFPLEVBQUMsbUJBQW1CLElBQUksRUFBRSxFQUFDLE1BQU0sdUNBQXVDLENBQUM7QUFDaEYsT0FBTyxFQUFDLGtDQUFrQyxJQUFJLEdBQUcsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQ3RHLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUNoRixPQUFPLEVBQUMsY0FBYyxJQUFJLEdBQUcsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBRXpFLE9BQU8sRUFBQyxnQkFBZ0IsSUFBSSxFQUFFLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUNyRSxPQUFPLEVBQUMsWUFBWSxJQUFJLEdBQUcsRUFBQywwQkFBMEIsSUFBSSxHQUFHLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RyxPQUFPLEVBQUMsUUFBUSxJQUFJLEdBQUcsRUFBQyxjQUFjLElBQUksR0FBRyxFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDdEYsT0FBTyxFQUFDLCtCQUErQixJQUFJLEVBQUUsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQ3ZHLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BFLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDOUQsT0FBTyxFQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDL0MsT0FBTyxFQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFDLGNBQWMsSUFBSSxHQUFHLEVBQUMsaUJBQWlCLElBQUksR0FBRyxFQUFDLE1BQU0sMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7R2V0QXBwQ29uZmlndXJhdGlvbiBhcyDJtXAsUGF0Y2hSb3V0ZUJ5TmFtZSBhcyDJtW99IGZyb20gJy4vbGliL2FjdGlvbnMvY29uZmlnLmFjdGlvbnMnO1xuZXhwb3J0IHtDaGFuZ2VQYXNzd29yZCBhcyDJtWYsR2V0UHJvZmlsZSBhcyDJtWQsVXBkYXRlUHJvZmlsZSBhcyDJtWV9IGZyb20gJy4vbGliL2FjdGlvbnMvcHJvZmlsZS5hY3Rpb25zJztcbmV4cG9ydCB7U2V0TGFuZ3VhZ2UgYXMgybVqLFNldFRlbmFudCBhcyDJtWt9IGZyb20gJy4vbGliL2FjdGlvbnMvc2Vzc2lvbi5hY3Rpb25zJztcbmV4cG9ydCB7RHluYW1pY0xheW91dENvbXBvbmVudCBhcyDJtXJ9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvZHluYW1pYy1sYXlvdXQuY29tcG9uZW50JztcbmV4cG9ydCB7Um91dGVyT3V0bGV0Q29tcG9uZW50IGFzIMm1cX0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9yb3V0ZXItb3V0bGV0LmNvbXBvbmVudCc7XG5leHBvcnQge0F1dG9mb2N1c0RpcmVjdGl2ZSBhcyDJtXR9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvYXV0b2ZvY3VzLmRpcmVjdGl2ZSc7XG5leHBvcnQge0lucHV0RXZlbnREZWJvdW5jZURpcmVjdGl2ZSBhcyDJtXp9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvZGVib3VuY2UuZGlyZWN0aXZlJztcbmV4cG9ydCB7RWxsaXBzaXNEaXJlY3RpdmUgYXMgybV1fSBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2VsbGlwc2lzLmRpcmVjdGl2ZSc7XG5leHBvcnQge0Zvcm1TdWJtaXREaXJlY3RpdmUgYXMgybV2fSBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2Zvcm0tc3VibWl0LmRpcmVjdGl2ZSc7XG5leHBvcnQge1Blcm1pc3Npb25EaXJlY3RpdmUgYXMgybV4fSBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3Blcm1pc3Npb24uZGlyZWN0aXZlJztcbmV4cG9ydCB7Q2xpY2tFdmVudFN0b3BQcm9wYWdhdGlvbkRpcmVjdGl2ZSBhcyDJtWJhfSBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3N0b3AtcHJvcGFnYXRpb24uZGlyZWN0aXZlJztcbmV4cG9ydCB7VmlzaWJpbGl0eURpcmVjdGl2ZSBhcyDJtXl9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvdmlzaWJpbGl0eS5kaXJlY3RpdmUnO1xuZXhwb3J0IHtBcGlJbnRlcmNlcHRvciBhcyDJtWJmfSBmcm9tICcuL2xpYi9pbnRlcmNlcHRvcnMvYXBpLmludGVyY2VwdG9yJztcbmV4cG9ydCB7QUJQIGFzIMm1bCxQcm9maWxlIGFzIMm1Z30gZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCB7TG9jYWxpemF0aW9uUGlwZSBhcyDJtXd9IGZyb20gJy4vbGliL3BpcGVzL2xvY2FsaXphdGlvbi5waXBlJztcbmV4cG9ydCB7Q29uZmlnUGx1Z2luIGFzIMm1YmUsTkdYU19DT05GSUdfUExVR0lOX09QVElPTlMgYXMgybViZH0gZnJvbSAnLi9saWIvcGx1Z2lucy9jb25maWcvY29uZmlnLnBsdWdpbic7XG5leHBvcnQge0xvY2FsZUlkIGFzIMm1YmIsTG9jYWxlUHJvdmlkZXIgYXMgybViY30gZnJvbSAnLi9saWIvcHJvdmlkZXJzL2xvY2FsZS5wcm92aWRlcic7XG5leHBvcnQge0FwcGxpY2F0aW9uQ29uZmlndXJhdGlvblNlcnZpY2UgYXMgybVufSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9hcHBsaWNhdGlvbi1jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHtMb2NhbGl6YXRpb25TZXJ2aWNlIGFzIMm1aX0gZnJvbSAnLi9saWIvc2VydmljZXMvbG9jYWxpemF0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHtQcm9maWxlU2VydmljZSBhcyDJtWJ9IGZyb20gJy4vbGliL3NlcnZpY2VzL3Byb2ZpbGUuc2VydmljZSc7XG5leHBvcnQge1Jlc3RTZXJ2aWNlIGFzIMm1Y30gZnJvbSAnLi9saWIvc2VydmljZXMvcmVzdC5zZXJ2aWNlJztcbmV4cG9ydCB7Q29uZmlnU3RhdGUgYXMgybVzfSBmcm9tICcuL2xpYi9zdGF0ZXMnO1xuZXhwb3J0IHtDb25maWdTdGF0ZSBhcyDJtW19IGZyb20gJy4vbGliL3N0YXRlcy9jb25maWcuc3RhdGUnO1xuZXhwb3J0IHtQcm9maWxlU3RhdGUgYXMgybVhfSBmcm9tICcuL2xpYi9zdGF0ZXMvcHJvZmlsZS5zdGF0ZSc7XG5leHBvcnQge1Nlc3Npb25TdGF0ZSBhcyDJtWh9IGZyb20gJy4vbGliL3N0YXRlcy9zZXNzaW9uLnN0YXRlJztcbmV4cG9ydCB7Z2V0SW5pdGlhbERhdGEgYXMgybViZyxsb2NhbGVJbml0aWFsaXplciBhcyDJtWJofSBmcm9tICcuL2xpYi91dGlscy9pbml0aWFsLXV0aWxzJzsiXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmNvcmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmNvcmUvIiwic291cmNlcyI6WyJhYnAtbmcuY29yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsNnZCQUFjLGNBQWMsQ0FBQztBQUU3QixPQUFPLEVBQUMsbUJBQW1CLElBQUksRUFBRSxFQUFDLGdCQUFnQixJQUFJLEVBQUUsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQzlGLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLFVBQVUsSUFBSSxFQUFFLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ3hHLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLFNBQVMsSUFBSSxFQUFFLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRixPQUFPLEVBQUMsc0JBQXNCLElBQUksRUFBRSxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDdkYsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUM5RSxPQUFPLEVBQUMsMkJBQTJCLElBQUksRUFBRSxFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEYsT0FBTyxFQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUNoRixPQUFPLEVBQUMsa0NBQWtDLElBQUksR0FBRyxFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDdEcsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxjQUFjLElBQUksR0FBRyxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFFekUsT0FBTyxFQUFDLGdCQUFnQixJQUFJLEVBQUUsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ3JFLE9BQU8sRUFBQyxZQUFZLElBQUksR0FBRyxFQUFDLDBCQUEwQixJQUFJLEdBQUcsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pHLE9BQU8sRUFBQyxRQUFRLElBQUksR0FBRyxFQUFDLGNBQWMsSUFBSSxHQUFHLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RixPQUFPLEVBQUMsK0JBQStCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDdkcsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFDLFdBQVcsSUFBSSxFQUFFLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsV0FBVyxJQUFJLEVBQUUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFDLFlBQVksSUFBSSxFQUFFLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsY0FBYyxJQUFJLEdBQUcsRUFBQyxpQkFBaUIsSUFBSSxHQUFHLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcblxuZXhwb3J0IHtHZXRBcHBDb25maWd1cmF0aW9uIGFzIMm1cCxQYXRjaFJvdXRlQnlOYW1lIGFzIMm1b30gZnJvbSAnLi9saWIvYWN0aW9ucy9jb25maWcuYWN0aW9ucyc7XG5leHBvcnQge0NoYW5nZVBhc3N3b3JkIGFzIMm1ZixHZXRQcm9maWxlIGFzIMm1ZCxVcGRhdGVQcm9maWxlIGFzIMm1ZX0gZnJvbSAnLi9saWIvYWN0aW9ucy9wcm9maWxlLmFjdGlvbnMnO1xuZXhwb3J0IHtTZXRMYW5ndWFnZSBhcyDJtWosU2V0VGVuYW50IGFzIMm1a30gZnJvbSAnLi9saWIvYWN0aW9ucy9zZXNzaW9uLmFjdGlvbnMnO1xuZXhwb3J0IHtEeW5hbWljTGF5b3V0Q29tcG9uZW50IGFzIMm1cn0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9keW5hbWljLWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtSb3V0ZXJPdXRsZXRDb21wb25lbnQgYXMgybVxfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3JvdXRlci1vdXRsZXQuY29tcG9uZW50JztcbmV4cG9ydCB7QXV0b2ZvY3VzRGlyZWN0aXZlIGFzIMm1c30gZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9hdXRvZm9jdXMuZGlyZWN0aXZlJztcbmV4cG9ydCB7SW5wdXRFdmVudERlYm91bmNlRGlyZWN0aXZlIGFzIMm1en0gZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9kZWJvdW5jZS5kaXJlY3RpdmUnO1xuZXhwb3J0IHtFbGxpcHNpc0RpcmVjdGl2ZSBhcyDJtXR9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvZWxsaXBzaXMuZGlyZWN0aXZlJztcbmV4cG9ydCB7Rm9yRGlyZWN0aXZlIGFzIMm1dX0gZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9mb3IuZGlyZWN0aXZlJztcbmV4cG9ydCB7Rm9ybVN1Ym1pdERpcmVjdGl2ZSBhcyDJtXZ9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvZm9ybS1zdWJtaXQuZGlyZWN0aXZlJztcbmV4cG9ydCB7UGVybWlzc2lvbkRpcmVjdGl2ZSBhcyDJtXh9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvcGVybWlzc2lvbi5kaXJlY3RpdmUnO1xuZXhwb3J0IHtDbGlja0V2ZW50U3RvcFByb3BhZ2F0aW9uRGlyZWN0aXZlIGFzIMm1YmF9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvc3RvcC1wcm9wYWdhdGlvbi5kaXJlY3RpdmUnO1xuZXhwb3J0IHtWaXNpYmlsaXR5RGlyZWN0aXZlIGFzIMm1eX0gZnJvbSAnLi9saWIvZGlyZWN0aXZlcy92aXNpYmlsaXR5LmRpcmVjdGl2ZSc7XG5leHBvcnQge0FwaUludGVyY2VwdG9yIGFzIMm1YmZ9IGZyb20gJy4vbGliL2ludGVyY2VwdG9ycy9hcGkuaW50ZXJjZXB0b3InO1xuZXhwb3J0IHtBQlAgYXMgybVsLFByb2ZpbGUgYXMgybVnfSBmcm9tICcuL2xpYi9tb2RlbHMnO1xuZXhwb3J0IHtMb2NhbGl6YXRpb25QaXBlIGFzIMm1d30gZnJvbSAnLi9saWIvcGlwZXMvbG9jYWxpemF0aW9uLnBpcGUnO1xuZXhwb3J0IHtDb25maWdQbHVnaW4gYXMgybViZSxOR1hTX0NPTkZJR19QTFVHSU5fT1BUSU9OUyBhcyDJtWJkfSBmcm9tICcuL2xpYi9wbHVnaW5zL2NvbmZpZy9jb25maWcucGx1Z2luJztcbmV4cG9ydCB7TG9jYWxlSWQgYXMgybViYixMb2NhbGVQcm92aWRlciBhcyDJtWJjfSBmcm9tICcuL2xpYi9wcm92aWRlcnMvbG9jYWxlLnByb3ZpZGVyJztcbmV4cG9ydCB7QXBwbGljYXRpb25Db25maWd1cmF0aW9uU2VydmljZSBhcyDJtW59IGZyb20gJy4vbGliL3NlcnZpY2VzL2FwcGxpY2F0aW9uLWNvbmZpZ3VyYXRpb24uc2VydmljZSc7XG5leHBvcnQge0xvY2FsaXphdGlvblNlcnZpY2UgYXMgybVpfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9sb2NhbGl6YXRpb24uc2VydmljZSc7XG5leHBvcnQge1Byb2ZpbGVTZXJ2aWNlIGFzIMm1Yn0gZnJvbSAnLi9saWIvc2VydmljZXMvcHJvZmlsZS5zZXJ2aWNlJztcbmV4cG9ydCB7UmVzdFNlcnZpY2UgYXMgybVjfSBmcm9tICcuL2xpYi9zZXJ2aWNlcy9yZXN0LnNlcnZpY2UnO1xuZXhwb3J0IHtDb25maWdTdGF0ZSBhcyDJtW19IGZyb20gJy4vbGliL3N0YXRlcy9jb25maWcuc3RhdGUnO1xuZXhwb3J0IHtQcm9maWxlU3RhdGUgYXMgybVhfSBmcm9tICcuL2xpYi9zdGF0ZXMvcHJvZmlsZS5zdGF0ZSc7XG5leHBvcnQge1Nlc3Npb25TdGF0ZSBhcyDJtWh9IGZyb20gJy4vbGliL3N0YXRlcy9zZXNzaW9uLnN0YXRlJztcbmV4cG9ydCB7Z2V0SW5pdGlhbERhdGEgYXMgybViZyxsb2NhbGVJbml0aWFsaXplciBhcyDJtWJofSBmcm9tICcuL2xpYi91dGlscy9pbml0aWFsLXV0aWxzJzsiXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm5/lib/components/dynamic-layout.component.js b/npm/ng-packs/dist/core/esm5/lib/components/dynamic-layout.component.js index 473eeaf8a5..8e9f93d6e5 100644 --- a/npm/ng-packs/dist/core/esm5/lib/components/dynamic-layout.component.js +++ b/npm/ng-packs/dist/core/esm5/lib/components/dynamic-layout.component.js @@ -4,17 +4,35 @@ */ import * as tslib_1 from "tslib"; import { Component } from '@angular/core'; -import { NavigationEnd, Router } from '@angular/router'; +import { ActivatedRoute, NavigationEnd, Router } from '@angular/router'; import { Select, Store } from '@ngxs/store'; import { Observable } from 'rxjs'; -import { ConfigState } from '../states'; -import { takeUntilDestroy } from '../utils'; import snq from 'snq'; +import { ConfigState } from '../states/config.state'; +import { takeUntilDestroy } from '../utils/rxjs-utils'; var DynamicLayoutComponent = /** @class */ (function () { - function DynamicLayoutComponent(router, store) { + function DynamicLayoutComponent(router, route, store) { var _this = this; this.router = router; + this.route = route; this.store = store; + var _a = this.store.selectSnapshot(ConfigState.getAll), layouts = _a.requirements.layouts, routes = _a.routes; + if ((this.route.snapshot.data || {}).layout) { + this.layout = layouts + .filter((/** + * @param {?} l + * @return {?} + */ + function (l) { return !!l; })) + .find((/** + * @param {?} l + * @return {?} + */ + function (l) { return snq((/** + * @return {?} + */ + function () { return l.type.toLowerCase().indexOf(_this.route.snapshot.data.layout); }), -1) > -1; })); + } this.router.events.pipe(takeUntilDestroy(this)).subscribe((/** * @param {?} event * @return {?} @@ -22,14 +40,15 @@ var DynamicLayoutComponent = /** @class */ (function () { function (event) { if (event instanceof NavigationEnd) { var segments = _this.router.parseUrl(event.url).root.children.primary.segments; - var _a = _this.store.selectSnapshot(ConfigState.getAll), layouts = _a.requirements.layouts, routes = _a.routes; /** @type {?} */ - var layout_1 = findLayout(segments, routes); - _this.layout = layouts.filter((/** + var layout_1 = (_this.route.snapshot.data || {}).layout || findLayout(segments, routes); + _this.layout = layouts + .filter((/** * @param {?} l * @return {?} */ - function (l) { return !!l; })).find((/** + function (l) { return !!l; })) + .find((/** * @param {?} l * @return {?} */ @@ -56,6 +75,7 @@ var DynamicLayoutComponent = /** @class */ (function () { /** @nocollapse */ DynamicLayoutComponent.ctorParameters = function () { return [ { type: Router }, + { type: ActivatedRoute }, { type: Store } ]; }; tslib_1.__decorate([ @@ -75,6 +95,11 @@ if (false) { * @private */ DynamicLayoutComponent.prototype.router; + /** + * @type {?} + * @private + */ + DynamicLayoutComponent.prototype.route; /** * @type {?} * @private @@ -120,4 +145,4 @@ function findLayout(segments, routes) { } return layout; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvZHluYW1pYy1sYXlvdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBbUIsTUFBTSxlQUFlLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQWMsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR2xDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDeEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzVDLE9BQU8sR0FBRyxNQUFNLEtBQUssQ0FBQztBQUV0QjtJQWVFLGdDQUFvQixNQUFjLEVBQVUsS0FBWTtRQUF4RCxpQkFjQztRQWRtQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUN0RCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTOzs7O1FBQUMsVUFBQSxLQUFLO1lBQzdELElBQUksS0FBSyxZQUFZLGFBQWEsRUFBRTtnQkFDMUIsSUFBQSwwRUFBUTtnQkFDVixJQUFBLG1EQUcyQyxFQUYvQixpQ0FBTyxFQUN2QixrQkFDK0M7O29CQUUzQyxRQUFNLEdBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUM7Z0JBRTNDLEtBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU07Ozs7Z0JBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLENBQUMsQ0FBQyxFQUFILENBQUcsRUFBQyxDQUFDLElBQUk7Ozs7Z0JBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxHQUFHOzs7Z0JBQUMsY0FBTSxPQUFBLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLFFBQU0sQ0FBQyxFQUFwQyxDQUFvQyxHQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQXhELENBQXdELEVBQUMsQ0FBQzthQUM1RztRQUNILENBQUMsRUFBQyxDQUFDO0lBQ0wsQ0FBQzs7OztJQUVELDRDQUFXOzs7SUFBWCxjQUFlLENBQUM7O2dCQS9CakIsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFFBQVEsRUFBRSxvU0FLVDtpQkFDRjs7OztnQkFqQnVCLE1BQU07Z0JBQ2IsS0FBSzs7SUFtQnBCO1FBREMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7MENBQzVCLFVBQVU7aUVBQXNCO0lBcUJqRCw2QkFBQztDQUFBLEFBaENELElBZ0NDO1NBdkJZLHNCQUFzQjs7O0lBQ2pDLCtDQUMrQzs7SUFFL0Msd0NBQWtCOzs7OztJQUVOLHdDQUFzQjs7Ozs7SUFBRSx1Q0FBb0I7Ozs7Ozs7QUFtQjFELFNBQVMsVUFBVSxDQUFDLFFBQXNCLEVBQUUsTUFBdUI7O1FBQzdELE1BQU0sc0JBQW9COztRQUV4QixLQUFLLEdBQUcsTUFBTTtTQUNqQixNQUFNOzs7OztJQUFDLFVBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSyxPQUFBLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLGtCQUFLLEdBQUcsRUFBSyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsa0JBQUssR0FBRyxHQUFFLEdBQUcsRUFBQyxDQUFDLEVBQXpELENBQXlELEdBQUUsRUFBRSxDQUFDO1NBQ25GLElBQUk7Ozs7SUFBQyxVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBM0IsQ0FBMkIsRUFBQztJQUV6QyxJQUFJLEtBQUssRUFBRTtRQUNULElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRTtZQUNoQixNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztTQUN2QjtRQUVELElBQUksS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sSUFBSSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTs7Z0JBQzVELEtBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUk7Ozs7WUFBQyxVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBM0IsQ0FBMkIsRUFBQztZQUVuRSxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFO2dCQUN6QixNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQzthQUN2QjtTQUNGO0tBQ0Y7SUFFRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlciwgVXJsU2VnbWVudCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZUxheW91dFR5cGUgfSBmcm9tICcuLi9lbnVtcyc7XG5pbXBvcnQgeyBBQlAsIENvbmZpZyB9IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgeyBDb25maWdTdGF0ZSB9IGZyb20gJy4uL3N0YXRlcyc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95IH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHNucSBmcm9tICdzbnEnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtZHluYW1pYy1sYXlvdXQnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsYXlvdXQgPyBjb21wb25lbnRPdXRsZXQgOiByb3V0ZXJPdXRsZXRcIj48L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjcm91dGVyT3V0bGV0Pjxyb3V0ZXItb3V0bGV0Pjwvcm91dGVyLW91dGxldD48L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSAjY29tcG9uZW50T3V0bGV0PjxuZy1jb250YWluZXIgKm5nQ29tcG9uZW50T3V0bGV0PVwibGF5b3V0XCI+PC9uZy1jb250YWluZXI+PC9uZy10ZW1wbGF0ZT5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgRHluYW1pY0xheW91dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIEBTZWxlY3QoQ29uZmlnU3RhdGUuZ2V0T25lKCdyZXF1aXJlbWVudHMnKSlcbiAgcmVxdWlyZW1lbnRzJDogT2JzZXJ2YWJsZTxDb25maWcuUmVxdWlyZW1lbnRzPjtcblxuICBsYXlvdXQ6IFR5cGU8YW55PjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLCBwcml2YXRlIHN0b3JlOiBTdG9yZSkge1xuICAgIHRoaXMucm91dGVyLmV2ZW50cy5waXBlKHRha2VVbnRpbERlc3Ryb3kodGhpcykpLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSB7XG4gICAgICAgIGNvbnN0IHsgc2VnbWVudHMgfSA9IHRoaXMucm91dGVyLnBhcnNlVXJsKGV2ZW50LnVybCkucm9vdC5jaGlsZHJlbi5wcmltYXJ5O1xuICAgICAgICBjb25zdCB7XG4gICAgICAgICAgcmVxdWlyZW1lbnRzOiB7IGxheW91dHMgfSxcbiAgICAgICAgICByb3V0ZXMsXG4gICAgICAgIH0gPSB0aGlzLnN0b3JlLnNlbGVjdFNuYXBzaG90KENvbmZpZ1N0YXRlLmdldEFsbCk7XG5cbiAgICAgICAgY29uc3QgbGF5b3V0ID0gZmluZExheW91dChzZWdtZW50cywgcm91dGVzKTtcblxuICAgICAgICB0aGlzLmxheW91dCA9IGxheW91dHMuZmlsdGVyKGwgPT4gISFsKS5maW5kKGwgPT4gc25xKCgpID0+IGwudHlwZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YobGF5b3V0KSwgLTEpID4gLTEpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7fVxufVxuXG5mdW5jdGlvbiBmaW5kTGF5b3V0KHNlZ21lbnRzOiBVcmxTZWdtZW50W10sIHJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdKTogZUxheW91dFR5cGUge1xuICBsZXQgbGF5b3V0ID0gZUxheW91dFR5cGUuZW1wdHk7XG5cbiAgY29uc3Qgcm91dGUgPSByb3V0ZXNcbiAgICAucmVkdWNlKChhY2MsIHZhbCkgPT4gKHZhbC53cmFwcGVyID8gWy4uLmFjYywgLi4udmFsLmNoaWxkcmVuXSA6IFsuLi5hY2MsIHZhbF0pLCBbXSlcbiAgICAuZmluZChyID0+IHIucGF0aCA9PT0gc2VnbWVudHNbMF0ucGF0aCk7XG5cbiAgaWYgKHJvdXRlKSB7XG4gICAgaWYgKHJvdXRlLmxheW91dCkge1xuICAgICAgbGF5b3V0ID0gcm91dGUubGF5b3V0O1xuICAgIH1cblxuICAgIGlmIChyb3V0ZS5jaGlsZHJlbiAmJiByb3V0ZS5jaGlsZHJlbi5sZW5ndGggJiYgc2VnbWVudHMubGVuZ3RoID4gMSkge1xuICAgICAgY29uc3QgY2hpbGQgPSByb3V0ZS5jaGlsZHJlbi5maW5kKGMgPT4gYy5wYXRoID09PSBzZWdtZW50c1sxXS5wYXRoKTtcblxuICAgICAgaWYgKGNoaWxkICYmIGNoaWxkLmxheW91dCkge1xuICAgICAgICBsYXlvdXQgPSBjaGlsZC5sYXlvdXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGxheW91dDtcbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvZHluYW1pYy1sYXlvdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBMEIsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFjLE1BQU0saUJBQWlCLENBQUM7QUFDcEYsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDNUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7QUFJdEIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXZEO0lBZUUsZ0NBQW9CLE1BQWMsRUFBVSxLQUFxQixFQUFVLEtBQVk7UUFBdkYsaUJBdUJDO1FBdkJtQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQy9FLElBQUEsa0RBRzJDLEVBRi9CLGlDQUFPLEVBQ3ZCLGtCQUMrQztRQUVqRCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtZQUMzQyxJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU87aUJBQ2xCLE1BQU07Ozs7WUFBQyxVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxDQUFDLEVBQUgsQ0FBRyxFQUFDO2lCQUNoQixJQUFJOzs7O1lBQUMsVUFBQyxDQUFNLElBQUssT0FBQSxHQUFHOzs7WUFBQyxjQUFN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QUVuRSxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFO2dCQUN6QixNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQzthQUN2QjtTQUNGO0tBQ0Y7SUFFRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95LCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgTmF2aWdhdGlvbkVuZCwgUm91dGVyLCBVcmxTZWdtZW50IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFNlbGVjdCwgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgc25xIGZyb20gJ3NucSc7XG5pbXBvcnQgeyBlTGF5b3V0VHlwZSB9IGZyb20gJy4uL2VudW1zL2NvbW1vbic7XG5pbXBvcnQgeyBDb25maWcgfSBmcm9tICcuLi9tb2RlbHMvY29uZmlnJztcbmltcG9ydCB7IEFCUCB9IGZyb20gJy4uL21vZGVscy9jb21tb24nO1xuaW1wb3J0IHsgQ29uZmlnU3RhdGUgfSBmcm9tICcuLi9zdGF0ZXMvY29uZmlnLnN0YXRlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3kgfSBmcm9tICcuLi91dGlscy9yeGpzLXV0aWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWR5bmFtaWMtbGF5b3V0JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibGF5b3V0ID8gY29tcG9uZW50T3V0bGV0IDogcm91dGVyT3V0bGV0XCI+PC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctdGVtcGxhdGUgI3JvdXRlck91dGxldD48cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+PC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI2NvbXBvbmVudE91dGxldD48bmctY29udGFpbmVyICpuZ0NvbXBvbmVudE91dGxldD1cImxheW91dFwiPjwvbmctY29udGFpbmVyPjwvbmctdGVtcGxhdGU+XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIER5bmFtaWNMYXlvdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBAU2VsZWN0KENvbmZpZ1N0YXRlLmdldE9uZSgncmVxdWlyZW1lbnRzJykpXG4gIHJlcXVpcmVtZW50cyQ6IE9ic2VydmFibGU8Q29uZmlnLlJlcXVpcmVtZW50cz47XG5cbiAgbGF5b3V0OiBUeXBlPGFueT47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsIHByaXZhdGUgc3RvcmU6IFN0b3JlKSB7XG4gICAgY29uc3Qge1xuICAgICAgcmVxdWlyZW1lbnRzOiB7IGxheW91dHMgfSxcbiAgICAgIHJvdXRlcyxcbiAgICB9ID0gdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChDb25maWdTdGF0ZS5nZXRBbGwpO1xuXG4gICAgaWYgKCh0aGlzLnJvdXRlLnNuYXBzaG90LmRhdGEgfHwge30pLmxheW91dCkge1xuICAgICAgdGhpcy5sYXlvdXQgPSBsYXlvdXRzXG4gICAgICAgIC5maWx0ZXIobCA9PiAhIWwpXG4gICAgICAgIC5maW5kKChsOiBhbnkpID0+IHNucSgoKSA9PiBsLnR5cGUudG9Mb3dlckNhc2UoKS5pbmRleE9mKHRoaXMucm91dGUuc25hcHNob3QuZGF0YS5sYXlvdXQpLCAtMSkgPiAtMSk7XG4gICAgfVxuXG4gICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUodGFrZVVudGlsRGVzdHJveSh0aGlzKSkuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcbiAgICAgICAgY29uc3QgeyBzZWdtZW50cyB9ID0gdGhpcy5yb3V0ZXIucGFyc2VVcmwoZXZlbnQudXJsKS5yb290LmNoaWxkcmVuLnByaW1hcnk7XG5cbiAgICAgICAgY29uc3QgbGF5b3V0ID0gKHRoaXMucm91dGUuc25hcHNob3QuZGF0YSB8fCB7fSkubGF5b3V0IHx8IGZpbmRMYXlvdXQoc2VnbWVudHMsIHJvdXRlcyk7XG5cbiAgICAgICAgdGhpcy5sYXlvdXQgPSBsYXlvdXRzXG4gICAgICAgICAgLmZpbHRlcihsID0+ICEhbClcbiAgICAgICAgICAuZmluZCgobDogYW55KSA9PiBzbnEoKCkgPT4gbC50eXBlLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihsYXlvdXQpLCAtMSkgPiAtMSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHt9XG59XG5cbmZ1bmN0aW9uIGZpbmRMYXlvdXQoc2VnbWVudHM6IFVybFNlZ21lbnRbXSwgcm91dGVzOiBBQlAuRnVsbFJvdXRlW10pOiBlTGF5b3V0VHlwZSB7XG4gIGxldCBsYXlvdXQgPSBlTGF5b3V0VHlwZS5lbXB0eTtcblxuICBjb25zdCByb3V0ZSA9IHJvdXRlc1xuICAgIC5yZWR1Y2UoKGFjYywgdmFsKSA9PiAodmFsLndyYXBwZXIgPyBbLi4uYWNjLCAuLi52YWwuY2hpbGRyZW5dIDogWy4uLmFjYywgdmFsXSksIFtdKVxuICAgIC5maW5kKHIgPT4gci5wYXRoID09PSBzZWdtZW50c1swXS5wYXRoKTtcblxuICBpZiAocm91dGUpIHtcbiAgICBpZiAocm91dGUubGF5b3V0KSB7XG4gICAgICBsYXlvdXQgPSByb3V0ZS5sYXlvdXQ7XG4gICAgfVxuXG4gICAgaWYgKHJvdXRlLmNoaWxkcmVuICYmIHJvdXRlLmNoaWxkcmVuLmxlbmd0aCAmJiBzZWdtZW50cy5sZW5ndGggPiAxKSB7XG4gICAgICBjb25zdCBjaGlsZCA9IHJvdXRlLmNoaWxkcmVuLmZpbmQoYyA9PiBjLnBhdGggPT09IHNlZ21lbnRzWzFdLnBhdGgpO1xuXG4gICAgICBpZiAoY2hpbGQgJiYgY2hpbGQubGF5b3V0KSB7XG4gICAgICAgIGxheW91dCA9IGNoaWxkLmxheW91dDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gbGF5b3V0O1xufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm5/lib/core.module.js b/npm/ng-packs/dist/core/esm5/lib/core.module.js index 6dbc7ab22d..ea617d568c 100644 --- a/npm/ng-packs/dist/core/esm5/lib/core.module.js +++ b/npm/ng-packs/dist/core/esm5/lib/core.module.js @@ -27,6 +27,7 @@ import { ProfileState } from './states/profile.state'; import { SessionState } from './states/session.state'; import { getInitialData, localeInitializer } from './utils/initial-utils'; import { ConfigPlugin, NGXS_CONFIG_PLUGIN_OPTIONS } from './plugins/config/config.plugin'; +import { ForDirective } from './directives/for.directive'; var CoreModule = /** @class */ (function () { function CoreModule() { } @@ -90,6 +91,7 @@ var CoreModule = /** @class */ (function () { DynamicLayoutComponent, AutofocusDirective, EllipsisDirective, + ForDirective, FormSubmitDirective, LocalizationPipe, PermissionDirective, @@ -107,6 +109,7 @@ var CoreModule = /** @class */ (function () { DynamicLayoutComponent, AutofocusDirective, EllipsisDirective, + ForDirective, FormSubmitDirective, LocalizationPipe, PermissionDirective, @@ -122,4 +125,4 @@ var CoreModule = /** @class */ (function () { return CoreModule; }()); export { CoreModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmNvcmUvIiwic291cmNlcyI6WyJsaWIvY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDN0YsT0FB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cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEh0dHBDbGllbnRNb2R1bGUsIEhUVFBfSU5URVJDRVBUT1JTIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSLCBJbmplY3RvciwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE5neHNSb3V0ZXJQbHVnaW5Nb2R1bGUgfSBmcm9tICdAbmd4cy9yb3V0ZXItcGx1Z2luJztcbmltcG9ydCB7IE5neHNTdG9yYWdlUGx1Z2luTW9kdWxlIH0gZnJvbSAnQG5neHMvc3RvcmFnZS1wbHVnaW4nO1xuaW1wb3J0IHsgTmd4c01vZHVsZSwgTkdYU19QTFVHSU5TIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgRHluYW1pY0xheW91dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9keW5hbWljLWxheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUm91dGVyT3V0bGV0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JvdXRlci1vdXRsZXQuY29tcG9uZW50JztcbmltcG9ydCB7IEF1dG9mb2N1c0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9hdXRvZm9jdXMuZGlyZWN0aXZlJztcbmltcG9ydCB7IElucHV0RXZlbnREZWJvdW5jZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9kZWJvdW5jZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWxsaXBzaXNEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZWxsaXBzaXMuZGlyZWN0aXZlJztcbmltcG9ydCB7IEZvcm1TdWJtaXREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZm9ybS1zdWJtaXQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFBlcm1pc3Npb25EaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvcGVybWlzc2lvbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ2xpY2tFdmVudFN0b3BQcm9wYWdhdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9zdG9wLXByb3BhZ2F0aW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBWaXNpYmlsaXR5RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3Zpc2liaWxpdHkuZGlyZWN0aXZlJztcbmltcG9ydCB7IEFwaUludGVyY2VwdG9yIH0gZnJvbSAnLi9pbnRlcmNlcHRvcnMvYXBpLmludGVyY2VwdG9yJztcbmltcG9ydCB7IEFCUCB9IGZyb20gJy4vbW9kZWxzL2NvbW1vbic7XG5pbXBvcnQgeyBMb2NhbGl6YXRpb25QaXBlIH0gZnJvbSAnLi9waXBlcy9sb2NhbGl6YXRpb24ucGlwZSc7XG5pbXBvcnQgeyBMb2NhbGVQcm92aWRlciB9IGZyb20gJy4vcHJvdmlkZXJzL2xvY2FsZS5wcm92aWRlcic7XG5pbXBvcnQgeyBDb25maWdTdGF0ZSB9IGZyb20gJy4vc3RhdGVzL2NvbmZpZy5zdGF0ZSc7XG5pbXBvcnQgeyBQcm9maWxlU3RhdGUgfSBmcm9tICcuL3N0YXRlcy9wcm9maWxlLnN0YXRlJztcbmltcG9ydCB7IFNlc3Npb25TdGF0ZSB9IGZyb20gJy4vc3RhdGVzL3Nlc3Npb24uc3RhdGUnO1xuaW1wb3J0IHsgZ2V0SW5pdGlhbERhdGEsIGxvY2FsZUluaXRpYWxpemVyIH0gZnJvbSAnLi91dGlscy9pbml0aWFsLXV0aWxzJztcbmltcG9ydCB7IENvbmZpZ1BsdWdpbiwgTkdYU19DT05GSUdfUExVR0lOX09QVElPTlMgfSBmcm9tICcuL3BsdWdpbnMvY29uZmlnL2NvbmZpZy5wbHVnaW4nO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgTmd4c01vZHVsZS5mb3JGZWF0dXJlKFtQcm9maWxlU3RhdGUsIFNlc3Npb25TdGF0ZSwgQ29uZmlnU3RhdGVdKSxcbiAgICBOZ3hzU3RvcmFnZVBsdWdpbk1vZHVsZS5mb3JSb290KHsga2V5OiAnU2Vzc2lvblN0YXRlJyB9KSxcbiAgICBOZ3hzUm91dGVyUGx1Z2luTW9kdWxlLmZvclJvb3QoKSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSHR0cENsaWVudE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgUm91dGVyT3V0bGV0Q29tcG9uZW50LFxuICAgIER5bmFtaWNMYXlvdXRDb21wb25lbnQsXG4gICAgQXV0b2ZvY3VzRGlyZWN0aXZlLFxuICAgIEVsbGlwc2lzRGlyZWN0aXZlLFxuICAgIEZvcm1TdWJtaXREaXJlY3RpdmUsXG4gICAgTG9jYWxpemF0aW9uUGlwZSxcbiAgICBQZXJtaXNzaW9uRGlyZWN0aXZlLFxuICAgIFZpc2liaWxpdHlEaXJlY3RpdmUsXG4gICAgSW5wdXRFdmVudERlYm91bmNlRGlyZWN0aXZlLFxuICAgIENsaWNrRXZlbnRTdG9wUHJvcGFnYXRpb25EaXJlY3RpdmUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSHR0cENsaWVudE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBSb3V0ZXJPdXRsZXRDb21wb25lbnQsXG4gICAgRHluYW1pY0xheW91dENvbXBvbmVudCxcbiAgICBBdXRvZm9jdXNEaXJlY3RpdmUsXG4gICAgRWxsaXBzaXNEaXJlY3RpdmUsXG4gICAgRm9ybVN1Ym1pdERpcmVjdGl2ZSxcbiAgICBMb2NhbGl6YXRpb25QaXBlLFxuICAgIFBlcm1pc3Npb25EaXJlY3RpdmUsXG4gICAgVmlzaWJpbGl0eURpcmVjdGl2ZSxcbiAgICBJbnB1dEV2ZW50RGVib3VuY2VEaXJlY3RpdmUsXG4gICAgTG9jYWxpemF0aW9uUGlwZSxcbiAgICBDbGlja0V2ZW50U3RvcFByb3BhZ2F0aW9uRGlyZWN0aXZlLFxuICBdLFxuICBwcm92aWRlcnM6IFtMb2NhbGl6YXRpb25QaXBlXSxcbiAgZW50cnlDb21wb25lbnRzOiBbUm91dGVyT3V0bGV0Q29tcG9uZW50LCBEeW5hbWljTGF5b3V0Q29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgQ29yZU1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KG9wdGlvbnMgPSB7fSBhcyBBQlAuUm9vdCk6IE1vZHVsZVdpdGhQcm92aWRlcnMge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogQ29yZU1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICBMb2NhbGVQcm92aWRlcixcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IE5HWFNfUExVR0lOUyxcbiAgICAgICAgICB1c2VDbGFzczogQ29uZmlnUGx1Z2luLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogTkdYU19DT05GSUdfUExVR0lOX09QVElPTlMsXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnMsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBIVFRQX0lOVEVSQ0VQVE9SUyxcbiAgICAgICAgICB1c2VDbGFzczogQXBpSW50ZXJjZXB0b3IsXG4gICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgZGVwczogW0luamVjdG9yXSxcbiAgICAgICAgICB1c2VGYWN0b3J5OiBnZXRJbml0aWFsRGF0YSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgICBkZXBzOiBbSW5qZWN0b3JdLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IGxvY2FsZUluaXRpYWxpemVyLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICB9XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmNvcmUvIiwic291cmNlcyI6WyJsaWIvY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDN0YsT0FB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c0JBQXNCLENBQUM7aUJBQ2pFOztJQW9DRCxpQkFBQztDQUFBLEFBakZELElBaUZDO1NBbkNZLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSwgSFRUUF9JTlRFUkNFUFRPUlMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBBUFBfSU5JVElBTElaRVIsIEluamVjdG9yLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTmd4c1JvdXRlclBsdWdpbk1vZHVsZSB9IGZyb20gJ0BuZ3hzL3JvdXRlci1wbHVnaW4nO1xuaW1wb3J0IHsgTmd4c1N0b3JhZ2VQbHVnaW5Nb2R1bGUgfSBmcm9tICdAbmd4cy9zdG9yYWdlLXBsdWdpbic7XG5pbXBvcnQgeyBOZ3hzTW9kdWxlLCBOR1hTX1BMVUdJTlMgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBEeW5hbWljTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2R5bmFtaWMtbGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSb3V0ZXJPdXRsZXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcm91dGVyLW91dGxldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXV0b2ZvY3VzRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2F1dG9mb2N1cy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSW5wdXRFdmVudERlYm91bmNlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2RlYm91bmNlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFbGxpcHNpc0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9lbGxpcHNpcy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRm9ybVN1Ym1pdERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9mb3JtLXN1Ym1pdC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUGVybWlzc2lvbkRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9wZXJtaXNzaW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDbGlja0V2ZW50U3RvcFByb3BhZ2F0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3N0b3AtcHJvcGFnYXRpb24uZGlyZWN0aXZlJztcbmltcG9ydCB7IFZpc2liaWxpdHlEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvdmlzaWJpbGl0eS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQXBpSW50ZXJjZXB0b3IgfSBmcm9tICcuL2ludGVyY2VwdG9ycy9hcGkuaW50ZXJjZXB0b3InO1xuaW1wb3J0IHsgQUJQIH0gZnJvbSAnLi9tb2RlbHMvY29tbW9uJztcbmltcG9ydCB7IExvY2FsaXphdGlvblBpcGUgfSBmcm9tICcuL3BpcGVzL2xvY2FsaXphdGlvbi5waXBlJztcbmltcG9ydCB7IExvY2FsZVByb3ZpZGVyIH0gZnJvbSAnLi9wcm92aWRlcnMvbG9jYWxlLnByb3ZpZGVyJztcbmltcG9ydCB7IENvbmZpZ1N0YXRlIH0gZnJvbSAnLi9zdGF0ZXMvY29uZmlnLnN0YXRlJztcbmltcG9ydCB7IFByb2ZpbGVTdGF0ZSB9IGZyb20gJy4vc3RhdGVzL3Byb2ZpbGUuc3RhdGUnO1xuaW1wb3J0IHsgU2Vzc2lvblN0YXRlIH0gZnJvbSAnLi9zdGF0ZXMvc2Vzc2lvbi5zdGF0ZSc7XG5pbXBvcnQgeyBnZXRJbml0aWFsRGF0YSwgbG9jYWxlSW5pdGlhbGl6ZXIgfSBmcm9tICcuL3V0aWxzL2luaXRpYWwtdXRpbHMnO1xuaW1wb3J0IHsgQ29uZmlnUGx1Z2luLCBOR1hTX0NPTkZJR19QTFVHSU5fT1BUSU9OUyB9IGZyb20gJy4vcGx1Z2lucy9jb25maWcvY29uZmlnLnBsdWdpbic7XG5pbXBvcnQgeyBGb3JEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZm9yLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBOZ3hzTW9kdWxlLmZvckZlYXR1cmUoW1Byb2ZpbGVTdGF0ZSwgU2Vzc2lvblN0YXRlLCBDb25maWdTdGF0ZV0pLFxuICAgIE5neHNTdG9yYWdlUGx1Z2luTW9kdWxlLmZvclJvb3QoeyBrZXk6ICdTZXNzaW9uU3RhdGUnIH0pLFxuICAgIE5neHNSb3V0ZXJQbHVnaW5Nb2R1bGUuZm9yUm9vdCgpLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBIdHRwQ2xpZW50TW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBSb3V0ZXJPdXRsZXRDb21wb25lbnQsXG4gICAgRHluYW1pY0xheW91dENvbXBvbmVudCxcbiAgICBBdXRvZm9jdXNEaXJlY3RpdmUsXG4gICAgRWxsaXBzaXNEaXJlY3RpdmUsXG4gICAgRm9yRGlyZWN0aXZlLFxuICAgIEZvcm1TdWJtaXREaXJlY3RpdmUsXG4gICAgTG9jYWxpemF0aW9uUGlwZSxcbiAgICBQZXJtaXNzaW9uRGlyZWN0aXZlLFxuICAgIFZpc2liaWxpdHlEaXJlY3RpdmUsXG4gICAgSW5wdXRFdmVudERlYm91bmNlRGlyZWN0aXZlLFxuICAgIENsaWNrRXZlbnRTdG9wUHJvcGFnYXRpb25EaXJlY3RpdmUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSHR0cENsaWVudE1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBSb3V0ZXJPdXRsZXRDb21wb25lbnQsXG4gICAgRHluYW1pY0xheW91dENvbXBvbmVudCxcbiAgICBBdXRvZm9jdXNEaXJlY3RpdmUsXG4gICAgRWxsaXBzaXNEaXJlY3RpdmUsXG4gICAgRm9yRGlyZWN0aXZlLFxuICAgIEZvcm1TdWJtaXREaXJlY3RpdmUsXG4gICAgTG9jYWxpemF0aW9uUGlwZSxcbiAgICBQZXJtaXNzaW9uRGlyZWN0aXZlLFxuICAgIFZpc2liaWxpdHlEaXJlY3RpdmUsXG4gICAgSW5wdXRFdmVudERlYm91bmNlRGlyZWN0aXZlLFxuICAgIExvY2FsaXphdGlvblBpcGUsXG4gICAgQ2xpY2tFdmVudFN0b3BQcm9wYWdhdGlvbkRpcmVjdGl2ZSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbTG9jYWxpemF0aW9uUGlwZV0sXG4gIGVudHJ5Q29tcG9uZW50czogW1JvdXRlck91dGxldENvbXBvbmVudCwgRHluYW1pY0xheW91dENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIENvcmVNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChvcHRpb25zID0ge30gYXMgQUJQLlJvb3QpOiBNb2R1bGVXaXRoUHJvdmlkZXJzIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IENvcmVNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgTG9jYWxlUHJvdmlkZXIsXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBOR1hTX1BMVUdJTlMsXG4gICAgICAgICAgdXNlQ2xhc3M6IENvbmZpZ1BsdWdpbixcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IE5HWFNfQ09ORklHX1BMVUdJTl9PUFRJT05TLFxuICAgICAgICAgIHVzZVZhbHVlOiBvcHRpb25zLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogSFRUUF9JTlRFUkNFUFRPUlMsXG4gICAgICAgICAgdXNlQ2xhc3M6IEFwaUludGVyY2VwdG9yLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICAgIGRlcHM6IFtJbmplY3Rvcl0sXG4gICAgICAgICAgdXNlRmFjdG9yeTogZ2V0SW5pdGlhbERhdGEsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgZGVwczogW0luamVjdG9yXSxcbiAgICAgICAgICB1c2VGYWN0b3J5OiBsb2NhbGVJbml0aWFsaXplcixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm5/lib/directives/for.directive.js b/npm/ng-packs/dist/core/esm5/lib/directives/for.directive.js new file mode 100644 index 0000000000..6b5818a9ab --- /dev/null +++ b/npm/ng-packs/dist/core/esm5/lib/directives/for.directive.js @@ -0,0 +1,298 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Directive, Input, IterableDiffers, TemplateRef, ViewContainerRef, } from '@angular/core'; +import compare from 'just-compare'; +import clone from 'just-clone'; +var AbpForContext = /** @class */ (function () { + function AbpForContext($implicit, index, count, list) { + this.$implicit = $implicit; + this.index = index; + this.count = count; + this.list = list; + } + return AbpForContext; +}()); +if (false) { + /** @type {?} */ + AbpForContext.prototype.$implicit; + /** @type {?} */ + AbpForContext.prototype.index; + /** @type {?} */ + AbpForContext.prototype.count; + /** @type {?} */ + AbpForContext.prototype.list; +} +var RecordView = /** @class */ (function () { + function RecordView(record, view) { + this.record = record; + this.view = view; + } + return RecordView; +}()); +if (false) { + /** @type {?} */ + RecordView.prototype.record; + /** @type {?} */ + RecordView.prototype.view; +} +var ForDirective = /** @class */ (function () { + function ForDirective(tempRef, vcRef, differs) { + this.tempRef = tempRef; + this.vcRef = vcRef; + this.differs = differs; + } + Object.defineProperty(ForDirective.prototype, "compareFn", { + get: /** + * @return {?} + */ + function () { + return this.compareBy || compare; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ForDirective.prototype, "trackByFn", { + get: /** + * @return {?} + */ + function () { + return this.trackBy || ((/** + * @param {?} index + * @param {?} item + * @return {?} + */ + function (index, item) { return ((/** @type {?} */ (item))).id || index; })); + }, + enumerable: true, + configurable: true + }); + /** + * @private + * @param {?} changes + * @return {?} + */ + ForDirective.prototype.iterateOverAppliedOperations = /** + * @private + * @param {?} changes + * @return {?} + */ + function (changes) { + var _this = this; + /** @type {?} */ + var rw = []; + changes.forEachOperation((/** + * @param {?} record + * @param {?} previousIndex + * @param {?} currentIndex + * @return {?} + */ + function (record, previousIndex, currentIndex) { + if (record.previousIndex == null) { + /** @type {?} */ + var view = _this.vcRef.createEmbeddedView(_this.tempRef, new AbpForContext(null, -1, -1, _this.items), currentIndex); + rw.push(new RecordView(record, view)); + } + else if (currentIndex == null) { + _this.vcRef.remove(previousIndex); + } + else { + /** @type {?} */ + var view = _this.vcRef.get(previousIndex); + _this.vcRef.move(view, currentIndex); + rw.push(new RecordView(record, (/** @type {?} */ (view)))); + } + })); + for (var i = 0, l = rw.length; i < l; i++) { + rw[i].view.context.$implicit = rw[i].record.item; + } + }; + /** + * @private + * @param {?} changes + * @return {?} + */ + ForDirective.prototype.iterateOverAttachedViews = /** + * @private + * @param {?} changes + * @return {?} + */ + function (changes) { + var _this = this; + for (var i = 0, l = this.vcRef.length; i < l; i++) { + /** @type {?} */ + var viewRef = (/** @type {?} */ (this.vcRef.get(i))); + viewRef.context.index = i; + viewRef.context.count = l; + viewRef.context.list = this.items; + } + changes.forEachIdentityChange((/** + * @param {?} record + * @return {?} + */ + function (record) { + /** @type {?} */ + var viewRef = (/** @type {?} */ (_this.vcRef.get(record.currentIndex))); + viewRef.context.$implicit = record.item; + })); + }; + /** + * @private + * @param {?} items + * @return {?} + */ + ForDirective.prototype.projectItems = /** + * @private + * @param {?} items + * @return {?} + */ + function (items) { + if (!items.length && this.emptyRef) { + this.vcRef.createEmbeddedView(this.emptyRef).rootNodes; + this.isShowEmptyRef = true; + return; + } + if (this.emptyRef && this.isShowEmptyRef) { + this.vcRef.clear(); + this.isShowEmptyRef = false; + } + if (!this.differ && items) { + this.differ = this.differs.find(items).create(this.trackByFn); + } + if (this.differ) { + /** @type {?} */ + var changes = this.differ.diff(items); + if (changes) { + this.iterateOverAppliedOperations(changes); + this.iterateOverAttachedViews(changes); + } + } + }; + /** + * @private + * @param {?} items + * @return {?} + */ + ForDirective.prototype.sortItems = /** + * @private + * @param {?} items + * @return {?} + */ + function (items) { + var _this = this; + if (this.orderBy) { + items.sort((/** + * @param {?} a + * @param {?} b + * @return {?} + */ + function (a, b) { return (a[_this.orderBy] > b[_this.orderBy] ? 1 : a[_this.orderBy] < b[_this.orderBy] ? -1 : 0); })); + } + else { + items.sort(); + } + }; + /** + * @return {?} + */ + ForDirective.prototype.ngOnChanges = /** + * @return {?} + */ + function () { + var _this = this; + /** @type {?} */ + var items = (/** @type {?} */ (clone(this.items))); + if (!Array.isArray(items)) + return; + /** @type {?} */ + var compareFn = this.compareFn; + if (typeof this.filterBy !== 'undefined') { + items = items.filter((/** + * @param {?} item + * @return {?} + */ + function (item) { return compareFn(item[_this.filterBy], _this.filterVal); })); + } + switch (this.orderDir) { + case 'ASC': + this.sortItems(items); + this.projectItems(items); + break; + case 'DESC': + this.sortItems(items); + items.reverse(); + this.projectItems(items); + break; + default: + this.projectItems(items); + } + }; + ForDirective.decorators = [ + { type: Directive, args: [{ + selector: '[abpFor]', + },] } + ]; + /** @nocollapse */ + ForDirective.ctorParameters = function () { return [ + { type: TemplateRef }, + { type: ViewContainerRef }, + { type: IterableDiffers } + ]; }; + ForDirective.propDecorators = { + items: [{ type: Input, args: ['abpForOf',] }], + orderBy: [{ type: Input, args: ['abpForOrderBy',] }], + orderDir: [{ type: Input, args: ['abpForOrderDir',] }], + filterBy: [{ type: Input, args: ['abpForFilterBy',] }], + filterVal: [{ type: Input, args: ['abpForFilterVal',] }], + trackBy: [{ type: Input, args: ['abpForTrackBy',] }], + compareBy: [{ type: Input, args: ['abpForCompareBy',] }], + emptyRef: [{ type: Input, args: ['abpForEmptyRef',] }] + }; + return ForDirective; +}()); +export { ForDirective }; +if (false) { + /** @type {?} */ + ForDirective.prototype.items; + /** @type {?} */ + ForDirective.prototype.orderBy; + /** @type {?} */ + ForDirective.prototype.orderDir; + /** @type {?} */ + ForDirective.prototype.filterBy; + /** @type {?} */ + ForDirective.prototype.filterVal; + /** @type {?} */ + ForDirective.prototype.trackBy; + /** @type {?} */ + ForDirective.prototype.compareBy; + /** @type {?} */ + ForDirective.prototype.emptyRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.differ; + /** + * @type {?} + * @private + */ + ForDirective.prototype.isShowEmptyRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.tempRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.vcRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.differs; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuY29yZS8iLCJzb3VyY2VzIjpbImxpYi9kaXJlY3RpdmVzL2Zvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxFQUlMLGVBQWUsRUFFZixXQUFXLEVBRVgsZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sT0FBTyxNQUFNLGNBQWMsQ0FBQztBQUNuQyxPQUFPLEtBQUssTUFBTSxZQUFZLENBQUM7QUFJL0I7SUFDRSx1QkFBbUIsU0FBYyxFQUFTLEtBQWEsRUFBUyxLQUFhLEVBQVMsSUFBVztRQUE5RSxjQUFTLEdBQVQsU0FBUyxDQUFLO1FBQVMsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUFTLFVBQUssR0FBTCxLQUFLLENBQVE7UUFBUyxTQUFJLEdBQUosSUFBSSxDQUFPO0lBQUcsQ0FBQztJQUN2RyxvQkFBQztBQUFELENBQUMsQUFGRCxJQUVDOzs7SUFEYSxrQ0FBcUI7O0lBQUUsOEJBQW9COztJQUFFLDhCQUFvQjs7SUFBRSw2QkFBa0I7O0FBR25HO0lBQ0Usb0JBQW1CLE1BQWlDLEVBQVMsSUFBb0M7UUFBOUUsV0FBTSxHQUFOLE1BQU0sQ0FBMkI7UUFBUyxTQUFJLEdBQUosSUFBSSxDQUFnQztJQUFHLENBQUM7SUFDdkcsaUJBQUM7QUFBRCxDQUFDLEFBRkQsSUFFQzs7O0lBRGEsNEJBQXdDOztJQUFFLDBCQUEyQzs7QUFHbkc7SUF3Q0Usc0JBQ1UsT0FBbUMsRUFDbkMsS0FBdUIsRUFDdkIsT0FBd0I7UUFGeEIsWUFBTyxHQUFQLE9BQU8sQ0FBNEI7UUFDbkMsVUFBSyxHQUFMLEtBQUssQ0FBa0I7UUFDdkIsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7SUFDL0IsQ0FBQztJQVpKLHNCQUFJLG1DQUFTOzs7O1FBQWI7WUFDRSxPQUFPLElBQUksQ0FBQyxTQUFTLElBQUksT0FBTyxD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QUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM1QjtJQUNILENBQUM7O2dCQW5KRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLFVBQVU7aUJBQ3JCOzs7O2dCQW5CQyxXQUFXO2dCQUVYLGdCQUFnQjtnQkFKaEIsZUFBZTs7O3dCQXVCZCxLQUFLLFNBQUMsVUFBVTswQkFHaEIsS0FBSyxTQUFDLGVBQWU7MkJBR3JCLEtBQUssU0FBQyxnQkFBZ0I7MkJBR3RCLEtBQUssU0FBQyxnQkFBZ0I7NEJBR3RCLEtBQUssU0FBQyxpQkFBaUI7MEJBR3ZCLEtBQUssU0FBQyxlQUFlOzRCQUdyQixLQUFLLFNBQUMsaUJBQWlCOzJCQUd2QixLQUFLLFNBQUMsZ0JBQWdCOztJQTJIekIsbUJBQUM7Q0FBQSxBQXBKRCxJQW9KQztTQWpKWSxZQUFZOzs7SUFDdkIsNkJBQ2E7O0lBRWIsK0JBQ2dCOztJQUVoQixnQ0FDeUI7O0lBRXpCLGdDQUNpQjs7SUFFakIsaUNBQ2U7O0lBRWYsK0JBQ1E7O0lBRVIsaUNBQ3FCOztJQUVyQixnQ0FDMkI7Ozs7O0lBRTNCLDhCQUFvQzs7Ozs7SUFFcEMsc0NBQWdDOzs7OztJQVc5QiwrQkFBMkM7Ozs7O0lBQzNDLDZCQUErQjs7Ozs7SUFDL0IsK0JBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFbWJlZGRlZFZpZXdSZWYsXG4gIElucHV0LFxuICBJdGVyYWJsZUNoYW5nZVJlY29yZCxcbiAgSXRlcmFibGVDaGFuZ2VzLFxuICBJdGVyYWJsZURpZmZlcixcbiAgSXRlcmFibGVEaWZmZXJzLFxuICBPbkNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBUcmFja0J5RnVuY3Rpb24sXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IGNvbXBhcmUgZnJvbSAnanVzdC1jb21wYXJlJztcbmltcG9ydCBjbG9uZSBmcm9tICdqdXN0LWNsb25lJztcblxuZXhwb3J0IHR5cGUgQ29tcGFyZUZuPFQgPSBhbnk+ID0gKHZhbHVlOiBULCBjb21wYXJpc29uOiBUKSA9PiBib29sZWFuO1xuXG5jbGFzcyBBYnBGb3JDb250ZXh0IHtcbiAgY29uc3RydWN0b3IocHVibGljICRpbXBsaWNpdDogYW55LCBwdWJsaWMgaW5kZXg6IG51bWJlciwgcHVibGljIGNvdW50OiBudW1iZXIsIHB1YmxpYyBsaXN0OiBhbnlbXSkge31cbn1cblxuY2xhc3MgUmVjb3JkVmlldyB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWNvcmQ6IEl0ZXJhYmxlQ2hhbmdlUmVjb3JkPGFueT4sIHB1YmxpYyB2aWV3OiBFbWJlZGRlZFZpZXdSZWY8QWJwRm9yQ29udGV4dD4pIHt9XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1thYnBGb3JdJyxcbn0pXG5leHBvcnQgY2xhc3MgRm9yRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCdhYnBGb3JPZicpXG4gIGl0ZW1zOiBhbnlbXTtcblxuICBASW5wdXQoJ2FicEZvck9yZGVyQnknKVxuICBvcmRlckJ5OiBzdHJpbmc7XG5cbiAgQElucHV0KCdhYnBGb3JPcmRlckRpcicpXG4gIG9yZGVyRGlyOiAnQVNDJyB8ICdERVNDJztcblxuICBASW5wdXQoJ2FicEZvckZpbHRlckJ5JylcbiAgZmlsdGVyQnk6IHN0cmluZztcblxuICBASW5wdXQoJ2FicEZvckZpbHRlclZhbCcpXG4gIGZpbHRlclZhbDogYW55O1xuXG4gIEBJbnB1dCgnYWJwRm9yVHJhY2tCeScpXG4gIHRyYWNrQnk7XG5cbiAgQElucHV0KCdhYnBGb3JDb21wYXJlQnknKVxuICBjb21wYXJlQnk6IENvbXBhcmVGbjtcblxuICBASW5wdXQoJ2FicEZvckVtcHR5UmVmJylcbiAgZW1wdHlSZWY6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgcHJpdmF0ZSBkaWZmZXI6IEl0ZXJhYmxlRGlmZmVyPGFueT47XG5cbiAgcHJpdmF0ZSBpc1Nob3dFbXB0eVJlZjogYm9vbGVhbjtcblxuICBnZXQgY29tcGFyZUZuKCk6IENvbXBhcmVGbiB7XG4gICAgcmV0dXJuIHRoaXMuY29tcGFyZUJ5IHx8IGNvbXBhcmU7XG4gIH1cblxuICBnZXQgdHJhY2tCeUZuKCk6IFRyYWNrQnlGdW5jdGlvbjxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy50cmFja0J5IHx8ICgoaW5kZXg6IG51bWJlciwgaXRlbTogYW55KSA9PiAoaXRlbSBhcyBhbnkpLmlkIHx8IGluZGV4KTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdGVtcFJlZjogVGVtcGxhdGVSZWY8QWJwRm9yQ29udGV4dD4sXG4gICAgcHJpdmF0ZSB2Y1JlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcml2YXRlIGRpZmZlcnM6IEl0ZXJhYmxlRGlmZmVycyxcbiAgKSB7fVxuXG4gIHByaXZhdGUgaXRlcmF0ZU92ZXJBcHBsaWVkT3BlcmF0aW9ucyhjaGFuZ2VzOiBJdGVyYWJsZUNoYW5nZXM8YW55Pikge1xuICAgIGNvbnN0IHJ3OiBSZWNvcmRWaWV3W10gPSBbXTtcblxuICAgIGNoYW5nZXMuZm9yRWFjaE9wZXJhdGlvbigocmVjb3JkOiBJdGVyYWJsZUNoYW5nZVJlY29yZDxhbnk+LCBwcmV2aW91c0luZGV4OiBudW1iZXIsIGN1cnJlbnRJbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICBpZiAocmVjb3JkLnByZXZpb3VzSW5kZXggPT0gbnVsbCkge1xuICAgICAgICBjb25zdCB2aWV3ID0gdGhpcy52Y1JlZi5jcmVhdGVFbWJlZGRlZFZpZXcoXG4gICAgICAgICAgdGhpcy50ZW1wUmVmLFxuICAgICAgICAgIG5ldyBBYnBGb3JDb250ZXh0KG51bGwsIC0xLCAtMSwgdGhpcy5pdGVtcyksXG4gICAgICAgICAgY3VycmVudEluZGV4LFxuICAgICAgICApO1xuXG4gICAgICAgIHJ3LnB1c2gobmV3IFJlY29yZFZpZXcocmVjb3JkLCB2aWV3KSk7XG4gICAgICB9IGVsc2UgaWYgKGN1cnJlbnRJbmRleCA9PSBudWxsKSB7XG4gICAgICAgIHRoaXMudmNSZWYucmVtb3ZlKHByZXZpb3VzSW5kZXgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgdmlldyA9IHRoaXMudmNSZWYuZ2V0KHByZXZpb3VzSW5kZXgpO1xuICAgICAgICB0aGlzLnZjUmVmLm1vdmUodmlldywgY3VycmVudEluZGV4KTtcblxuICAgICAgICBydy5wdXNoKG5ldyBSZWNvcmRWaWV3KHJlY29yZCwgdmlldyBhcyBFbWJlZGRlZFZpZXdSZWY8QWJwRm9yQ29udGV4dD4pKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGZvciAobGV0IGkgPSAwLCBsID0gcncubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICByd1tpXS52aWV3LmNvbnRleHQuJGltcGxpY2l0ID0gcndbaV0ucmVjb3JkLml0ZW07XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpdGVyYXRlT3ZlckF0dGFjaGVkVmlld3MoY2hhbmdlczogSXRlcmFibGVDaGFuZ2VzPGFueT4pIHtcbiAgICBmb3IgKGxldCBpID0gMCwgbCA9IHRoaXMudmNSZWYubGVuZ3RoOyBpIDwgbDsgaSsrKSB7XG4gICAgICBjb25zdCB2aWV3UmVmID0gdGhpcy52Y1JlZi5nZXQoaSkgYXMgRW1iZWRkZWRWaWV3UmVmPEFicEZvckNvbnRleHQ+O1xuICAgICAgdmlld1JlZi5jb250ZXh0LmluZGV4ID0gaTtcbiAgICAgIHZpZXdSZWYuY29udGV4dC5jb3VudCA9IGw7XG4gICAgICB2aWV3UmVmLmNvbnRleHQubGlzdCA9IHRoaXMuaXRlbXM7XG4gICAgfVxuXG4gICAgY2hhbmdlcy5mb3JFYWNoSWRlbnRpdHlDaGFuZ2UoKHJlY29yZDogSXRlcmFibGVDaGFuZ2VSZWNvcmQ8YW55PikgPT4ge1xuICAgICAgY29uc3Qgdmlld1JlZiA9IHRoaXMudmNSZWYuZ2V0KHJlY29yZC5jdXJyZW50SW5kZXgpIGFzIEVtYmVkZGVkVmlld1JlZjxBYnBGb3JDb250ZXh0PjtcbiAgICAgIHZpZXdSZWYuY29udGV4dC4kaW1wbGljaXQgPSByZWNvcmQuaXRlbTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcHJvamVjdEl0ZW1zKGl0ZW1zOiBhbnlbXSk6IHZvaWQge1xuICAgIGlmICghaXRlbXMubGVuZ3RoICYmIHRoaXMuZW1wdHlSZWYpIHtcbiAgICAgIHRoaXMudmNSZWYuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMuZW1wdHlSZWYpLnJvb3ROb2RlcztcbiAgICAgIHRoaXMuaXNTaG93RW1wdHlSZWYgPSB0cnVlO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZW1wdHlSZWYgJiYgdGhpcy5pc1Nob3dFbXB0eVJlZikge1xuICAgICAgdGhpcy52Y1JlZi5jbGVhcigpO1xuICAgICAgdGhpcy5pc1Nob3dFbXB0eVJlZiA9IGZhbHNlO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5kaWZmZXIgJiYgaXRlbXMpIHtcbiAgICAgIHRoaXMuZGlmZmVyID0gdGhpcy5kaWZmZXJzLmZpbmQoaXRlbXMpLmNyZWF0ZSh0aGlzLnRyYWNrQnlGbik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZGlmZmVyKSB7XG4gICAgICBjb25zdCBjaGFuZ2VzID0gdGhpcy5kaWZmZXIuZGlmZihpdGVtcyk7XG5cbiAgICAgIGlmIChjaGFuZ2VzKSB7XG4gICAgICAgIHRoaXMuaXRlcmF0ZU92ZXJBcHBsaWVkT3BlcmF0aW9ucyhjaGFuZ2VzKTtcbiAgICAgICAgdGhpcy5pdGVyYXRlT3ZlckF0dGFjaGVkVmlld3MoY2hhbmdlcyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzb3J0SXRlbXMoaXRlbXM6IGFueVtdKSB7XG4gICAgaWYgKHRoaXMub3JkZXJCeSkge1xuICAgICAgaXRlbXMuc29ydCgoYSwgYikgPT4gKGFbdGhpcy5vcmRlckJ5XSA+IGJbdGhpcy5vcmRlckJ5XSA/IDEgOiBhW3RoaXMub3JkZXJCeV0gPCBiW3RoaXMub3JkZXJCeV0gPyAtMSA6IDApKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaXRlbXMuc29ydCgpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIGxldCBpdGVtcyA9IGNsb25lKHRoaXMuaXRlbXMpIGFzIGFueVtdO1xuICAgIGlmICghQXJyYXkuaXNBcnJheShpdGVtcykpIHJldHVybjtcblxuICAgIGNvbnN0IGNvbXBhcmVGbiA9IHRoaXMuY29tcGFyZUZuO1xuXG4gICAgaWYgKHR5cGVvZiB0aGlzLmZpbHRlckJ5ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgaXRlbXMgPSBpdGVtcy5maWx0ZXIoaXRlbSA9PiBjb21wYXJlRm4oaXRlbVt0aGlzLmZpbHRlckJ5XSwgdGhpcy5maWx0ZXJWYWwpKTtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKHRoaXMub3JkZXJEaXIpIHtcbiAgICAgIGNhc2UgJ0FTQyc6XG4gICAgICAgIHRoaXMuc29ydEl0ZW1zKGl0ZW1zKTtcbiAgICAgICAgdGhpcy5wcm9qZWN0SXRlbXMoaXRlbXMpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnREVTQyc6XG4gICAgICAgIHRoaXMuc29ydEl0ZW1zKGl0ZW1zKTtcbiAgICAgICAgaXRlbXMucmV2ZXJzZSgpO1xuICAgICAgICB0aGlzLnByb2plY3RJdGVtcyhpdGVtcyk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aGlzLnByb2plY3RJdGVtcyhpdGVtcyk7XG4gICAgfVxuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm5/lib/directives/index.js b/npm/ng-packs/dist/core/esm5/lib/directives/index.js index a90d5a4597..80dcedb82e 100644 --- a/npm/ng-packs/dist/core/esm5/lib/directives/index.js +++ b/npm/ng-packs/dist/core/esm5/lib/directives/index.js @@ -4,7 +4,8 @@ */ export { AutofocusDirective } from './autofocus.directive'; export { EllipsisDirective } from './ellipsis.directive'; +export { ForDirective } from './for.directive'; export { FormSubmitDirective } from './form-submit.directive'; export { PermissionDirective } from './permission.directive'; export { VisibilityDirective } from './visibility.directive'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmNvcmUvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsbUNBQWMsdUJBQXVCLENBQUM7QUFDdEMsa0NBQWMsc0JBQXNCLENBQUM7QUFDckMsb0NBQWMseUJBQXlCLENBQUM7QUFDeEMsb0NBQWMsd0JBQXdCLENBQUM7QUFDdkMsb0NBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dG9mb2N1cy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9lbGxpcHNpcy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtLXN1Ym1pdC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9wZXJtaXNzaW9uLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3Zpc2liaWxpdHkuZGlyZWN0aXZlJztcbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmNvcmUvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsbUNBQWMsdUJBQXVCLENBQUM7QUFDdEMsa0NBQWMsc0JBQXNCLENBQUM7QUFDckMsNkJBQWMsaUJBQWlCLENBQUM7QUFDaEMsb0NBQWMseUJBQXlCLENBQUM7QUFDeEMsb0NBQWMsd0JBQXdCLENBQUM7QUFDdkMsb0NBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dG9mb2N1cy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9lbGxpcHNpcy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3IuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS1zdWJtaXQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vcGVybWlzc2lvbi5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi92aXNpYmlsaXR5LmRpcmVjdGl2ZSc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm5/lib/enums/common.js b/npm/ng-packs/dist/core/esm5/lib/enums/common.js index 0d3c14b333..27b646f576 100644 --- a/npm/ng-packs/dist/core/esm5/lib/enums/common.js +++ b/npm/ng-packs/dist/core/esm5/lib/enums/common.js @@ -7,6 +7,7 @@ var eLayoutType = { account: 'account', application: 'application', empty: 'empty', + setting: 'setting', }; export { eLayoutType }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL2VudW1zL2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7SUFDRSxTQUFVLFNBQVM7SUFDbkIsYUFBYyxhQUFhO0lBQzNCLE9BQVEsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBlbnVtIGVMYXlvdXRUeXBlIHtcbiAgYWNjb3VudCA9ICdhY2NvdW50JyxcbiAgYXBwbGljYXRpb24gPSAnYXBwbGljYXRpb24nLFxuICBlbXB0eSA9ICdlbXB0eScsXG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL2VudW1zL2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7SUFDRSxTQUFVLFNBQVM7SUFDbkIsYUFBYyxhQUFhO0lBQzNCLE9BQVEsT0FBTztJQUNmLFNBQVUsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBlbnVtIGVMYXlvdXRUeXBlIHtcbiAgYWNjb3VudCA9ICdhY2NvdW50JyxcbiAgYXBwbGljYXRpb24gPSAnYXBwbGljYXRpb24nLFxuICBlbXB0eSA9ICdlbXB0eScsXG4gIHNldHRpbmcgPSAnc2V0dGluZycsXG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm5/lib/models/common.js b/npm/ng-packs/dist/core/esm5/lib/models/common.js index b636460473..93e41737de 100644 --- a/npm/ng-packs/dist/core/esm5/lib/models/common.js +++ b/npm/ng-packs/dist/core/esm5/lib/models/common.js @@ -88,4 +88,4 @@ export var ABP; BasicItem.prototype.name; } })(ABP || (ABP = {})); -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL21vZGVscy9jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUdBLE1BQU0sS0FBVyxHQUFHLENBMENuQjtBQTFDRCxXQUFpQixHQUFHOzs7O0lBQ2xCLG1CQUdDOzs7O1FBRkMsMkJBQXlDOztRQUN6Qyw0QkFBa0M7Ozs7OztJQU9wQyxpQ0FFQzs7OztRQURDLG1DQUFXOzs7OztJQUdiLDhCQUtDOzs7O1FBSkMsaUNBQWdCOztRQUNoQixrQ0FBaUI7O1FBQ2pCLG9DQUFtQjs7UUFDbkIseUNBQXdCOzs7OztJQUcxQixvQkFVQzs7OztRQVRDLHlCQUFtQjs7UUFDbkIsMEJBQW9COztRQUNwQix1QkFBcUI7O1FBQ3JCLHFCQUFhOztRQUNiLHNCQUFlOztRQUNmLDJCQUFvQjs7UUFDcEIscUJBQWE7O1FBQ2IsK0JBQXdCOztRQUN4QiwwQkFBbUI7Ozs7O0lBR3JCLHdCQUdDOzs7O1FBRkMsd0JBQWE7O1FBQ2IsNEJBQWtCOzs7OztJQUdwQix3QkFHQzs7OztRQUZDLHVCQUFXOztRQUNYLHlCQUFhOztBQUVqQixDQUFDLEVBMUNnQixHQUFHLEtBQUgsR0FBRyxRQTBDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25maWcgfSBmcm9tICcuL2NvbmZpZyc7XG5pbXBvcnQgeyBlTGF5b3V0VHlwZSB9IGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IG5hbWVzcGFjZSBBQlAge1xuICBleHBvcnQgaW50ZXJmYWNlIFJvb3Qge1xuICAgIGVudmlyb25tZW50OiBQYXJ0aWFsPENvbmZpZy5FbnZpcm9ubWVudD47XG4gICAgcmVxdWlyZW1lbnRzOiBDb25maWcuUmVxdWlyZW1lbnRzO1xuICB9XG5cbiAgZXhwb3J0IHR5cGUgUGFnZWRSZXNwb25zZTxUPiA9IHtcbiAgICB0b3RhbENvdW50OiBudW1iZXI7XG4gIH0gJiBQYWdlZEl0ZW1zUmVzcG9uc2U8VD47XG5cbiAgZXhwb3J0IGludGVyZmFjZSBQYWdlZEl0ZW1zUmVzcG9uc2U8VD4ge1xuICAgIGl0ZW1zOiBUW107XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIFBhZ2VRdWVyeVBhcmFtcyB7XG4gICAgZmlsdGVyPzogc3RyaW5nO1xuICAgIHNvcnRpbmc/OiBzdHJpbmc7XG4gICAgc2tpcENvdW50PzogbnVtYmVyO1xuICAgIG1heFJlc3VsdENvdW50PzogbnVtYmVyO1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBSb3V0ZSB7XG4gICAgY2hpbGRyZW4/OiBSb3V0ZVtdO1xuICAgIGludmlzaWJsZT86IGJvb2xlYW47XG4gICAgbGF5b3V0PzogZUxheW91dFR5cGU7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIG9yZGVyPzogbnVtYmVyO1xuICAgIHBhcmVudE5hbWU/OiBzdHJpbmc7XG4gICAgcGF0aDogc3RyaW5nO1xuICAgIHJlcXVpcmVkUG9saWN5Pzogc3RyaW5nO1xuICAgIGljb25DbGFzcz86IHN0cmluZztcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgRnVsbFJvdXRlIGV4dGVuZHMgUm91dGUge1xuICAgIHVybD86IHN0cmluZztcbiAgICB3cmFwcGVyPzogYm9vbGVhbjtcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgQmFzaWNJdGVtIHtcbiAgICBpZDogc3RyaW5nO1xuICAgIG5hbWU6IHN0cmluZztcbiAgfVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL21vZGVscy9jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUdBLE1BQU0sS0FBVyxHQUFHLENBMENuQjtBQTFDRCxXQUFpQixHQUFHOzs7O0lBQ2xCLG1CQUdDOzs7O1FBRkMsMkJBQXlDOztRQUN6Qyw0QkFBa0M7Ozs7OztJQU9wQyxpQ0FFQzs7OztRQURDLG1DQUFXOzs7OztJQUdiLDhCQUtDOzs7O1FBSkMsaUNBQWdCOztRQUNoQixrQ0FBaUI7O1FBQ2pCLG9DQUFtQjs7UUFDbkIseUNBQXdCOzs7OztJQUcxQixvQkFVQzs7OztRQVRDLHlCQUFtQjs7UUFDbkIsMEJBQW9COztRQUNwQix1QkFBcUI7O1FBQ3JCLHFCQUFhOztRQUNiLHNCQUFlOztRQUNmLDJCQUFvQjs7UUFDcEIscUJBQWE7O1FBQ2IsK0JBQXdCOztRQUN4QiwwQkFBbUI7Ozs7O0lBR3JCLHdCQUdDOzs7O1FBRkMsd0JBQWE7O1FBQ2IsNEJBQWtCOzs7OztJQUdwQix3QkFHQzs7OztRQUZDLHVCQUFXOztRQUNYLHlCQUFhOztBQUVqQixDQUFDLEVBMUNnQixHQUFHLEtBQUgsR0FBRyxRQTBDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25maWcgfSBmcm9tICcuL2NvbmZpZyc7XG5pbXBvcnQgeyBlTGF5b3V0VHlwZSB9IGZyb20gJy4uL2VudW1zL2NvbW1vbic7XG5cbmV4cG9ydCBuYW1lc3BhY2UgQUJQIHtcbiAgZXhwb3J0IGludGVyZmFjZSBSb290IHtcbiAgICBlbnZpcm9ubWVudDogUGFydGlhbDxDb25maWcuRW52aXJvbm1lbnQ+O1xuICAgIHJlcXVpcmVtZW50czogQ29uZmlnLlJlcXVpcmVtZW50cztcbiAgfVxuXG4gIGV4cG9ydCB0eXBlIFBhZ2VkUmVzcG9uc2U8VD4gPSB7XG4gICAgdG90YWxDb3VudDogbnVtYmVyO1xuICB9ICYgUGFnZWRJdGVtc1Jlc3BvbnNlPFQ+O1xuXG4gIGV4cG9ydCBpbnRlcmZhY2UgUGFnZWRJdGVtc1Jlc3BvbnNlPFQ+IHtcbiAgICBpdGVtczogVFtdO1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBQYWdlUXVlcnlQYXJhbXMge1xuICAgIGZpbHRlcj86IHN0cmluZztcbiAgICBzb3J0aW5nPzogc3RyaW5nO1xuICAgIHNraXBDb3VudD86IG51bWJlcjtcbiAgICBtYXhSZXN1bHRDb3VudD86IG51bWJlcjtcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgUm91dGUge1xuICAgIGNoaWxkcmVuPzogUm91dGVbXTtcbiAgICBpbnZpc2libGU/OiBib29sZWFuO1xuICAgIGxheW91dD86IGVMYXlvdXRUeXBlO1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBvcmRlcj86IG51bWJlcjtcbiAgICBwYXJlbnROYW1lPzogc3RyaW5nO1xuICAgIHBhdGg6IHN0cmluZztcbiAgICByZXF1aXJlZFBvbGljeT86IHN0cmluZztcbiAgICBpY29uQ2xhc3M/OiBzdHJpbmc7XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIEZ1bGxSb3V0ZSBleHRlbmRzIFJvdXRlIHtcbiAgICB1cmw/OiBzdHJpbmc7XG4gICAgd3JhcHBlcj86IGJvb2xlYW47XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIEJhc2ljSXRlbSB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm5/lib/models/config.js b/npm/ng-packs/dist/core/esm5/lib/models/config.js index 40d9fa406b..01cd2c8a7b 100644 --- a/npm/ng-packs/dist/core/esm5/lib/models/config.js +++ b/npm/ng-packs/dist/core/esm5/lib/models/config.js @@ -4,11 +4,6 @@ */ export var Config; (function (Config) { - /** - * @record - */ - function State() { } - Config.State = State; /** * @record */ @@ -23,6 +18,8 @@ export var Config; Environment.prototype.oAuthConfig; /** @type {?} */ Environment.prototype.apis; + /** @type {?} */ + Environment.prototype.localization; } /** * @record @@ -50,4 +47,4 @@ export var Config; Requirements.prototype.layouts; } })(Config || (Config = {})); -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL21vZGVscy9jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUdBLE1BQU0sS0FBVyxNQUFNLENBd0J0QjtBQXhCRCxXQUFpQixNQUFNOzs7O0lBQ3JCLG9CQUVDOzs7OztJQUVELDBCQUtDOzs7O1FBSkMsa0NBQXlCOztRQUN6QixpQ0FBb0I7O1FBQ3BCLGtDQUF3Qjs7UUFDeEIsMkJBQVc7Ozs7O0lBR2IsMEJBR0M7Ozs7UUFGQywyQkFBYTs7UUFDYiw4QkFBaUI7Ozs7O0lBR25CLG1CQUVDOzs7OztJQUVELDJCQUVDOzs7O1FBREMsK0JBQXFCOztBQUV6QixDQUFDLEVBeEJnQixNQUFNLEtBQU4sTUFBTSxRQXdCdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdXRoQ29uZmlnIH0gZnJvbSAnYW5ndWxhci1vYXV0aDItb2lkYyc7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBuYW1lc3BhY2UgQ29uZmlnIHtcbiAgZXhwb3J0IGludGVyZmFjZSBTdGF0ZSB7XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBFbnZpcm9ubWVudCB7XG4gICAgYXBwbGljYXRpb246IEFwcGxpY2F0aW9uO1xuICAgIHByb2R1Y3Rpb246IGJvb2xlYW47XG4gICAgb0F1dGhDb25maWc6IEF1dGhDb25maWc7XG4gICAgYXBpczogQXBpcztcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgQXBwbGljYXRpb24ge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBsb2dvVXJsPzogc3RyaW5nO1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBBcGlzIHtcbiAgICBba2V5OiBzdHJpbmddOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBSZXF1aXJlbWVudHMge1xuICAgIGxheW91dHM6IFR5cGU8YW55PltdO1xuICB9XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL21vZGVscy9jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUtBLE1BQU0sS0FBVyxNQUFNLENBMkJ0QjtBQTNCRCxXQUFpQixNQUFNOzs7O0lBT3JCLDBCQU1DOzs7O1FBTEMsa0NBQXlCOztRQUN6QixpQ0FBb0I7O1FBQ3BCLGtDQUF3Qjs7UUFDeEIsMkJBQVc7O1FBQ1gsbUNBQThDOzs7OztJQUdoRCwwQkFHQzs7OztRQUZDLDJCQUFhOztRQUNiLDhCQUFpQjs7Ozs7SUFHbkIsbUJBRUM7Ozs7O0lBRUQsMkJBRUM7Ozs7UUFEQywrQkFBcUI7O0FBRXpCLENBQUMsRUEzQmdCLE1BQU0sS0FBTixNQUFNLFFBMkJ0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF1dGhDb25maWcgfSBmcm9tICdhbmd1bGFyLW9hdXRoMi1vaWRjJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vYXBwbGljYXRpb24tY29uZmlndXJhdGlvbic7XG5pbXBvcnQgeyBBQlAgfSBmcm9tICcuL2NvbW1vbic7XG5cbmV4cG9ydCBuYW1lc3BhY2UgQ29uZmlnIHtcbiAgZXhwb3J0IHR5cGUgU3RhdGUgPSBBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb24uUmVzcG9uc2UgJlxuICAgIEFCUC5Sb290ICYgeyBlbnZpcm9ubWVudDogRW52aXJvbm1lbnQgfSAmIHtcbiAgICAgIHJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdO1xuICAgICAgZmxhdHRlZFJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdO1xuICAgIH07XG5cbiAgZXhwb3J0IGludGVyZmFjZSBFbnZpcm9ubWVudCB7XG4gICAgYXBwbGljYXRpb246IEFwcGxpY2F0aW9uO1xuICAgIHByb2R1Y3Rpb246IGJvb2xlYW47XG4gICAgb0F1dGhDb25maWc6IEF1dGhDb25maWc7XG4gICAgYXBpczogQXBpcztcbiAgICBsb2NhbGl6YXRpb246IHsgZGVmYXVsdFJlc291cmNlTmFtZTogc3RyaW5nIH07XG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIEFwcGxpY2F0aW9uIHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgbG9nb1VybD86IHN0cmluZztcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgQXBpcyB7XG4gICAgW2tleTogc3RyaW5nXTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgUmVxdWlyZW1lbnRzIHtcbiAgICBsYXlvdXRzOiBUeXBlPGFueT5bXTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm5/lib/plugins/config/config.plugin.js b/npm/ng-packs/dist/core/esm5/lib/plugins/config/config.plugin.js index fc8daea656..f8b60343bb 100644 --- a/npm/ng-packs/dist/core/esm5/lib/plugins/config/config.plugin.js +++ b/npm/ng-packs/dist/core/esm5/lib/plugins/config/config.plugin.js @@ -8,6 +8,7 @@ import { Router } from '@angular/router'; import { actionMatcher, InitState, setValue, UpdateState } from '@ngxs/store'; import snq from 'snq'; import { organizeRoutes } from '../../utils/route-utils'; +import clone from 'just-clone'; /** @type {?} */ export var NGXS_CONFIG_PLUGIN_OPTIONS = new InjectionToken('NGXS_CONFIG_PLUGIN_OPTIONS'); var ConfigPlugin = /** @class */ (function () { @@ -37,7 +38,10 @@ var ConfigPlugin = /** @class */ (function () { if (isInitAction && !this.initialized) { var _a = transformRoutes(this.router.config), routes = _a.routes, wrappers = _a.wrappers; routes = organizeRoutes(routes, wrappers); - state = setValue(state, 'ConfigState', tslib_1.__assign({}, (state.ConfigState && tslib_1.__assign({}, state.ConfigState)), this.options, { routes: routes })); + /** @type {?} */ + var flattedRoutes = flatRoutes(clone(routes)); + state = setValue(state, 'ConfigState', tslib_1.__assign({}, (state.ConfigState && tslib_1.__assign({}, state.ConfigState)), this.options, { routes: routes, + flattedRoutes: flattedRoutes })); this.initialized = true; } return next(state, event); @@ -166,4 +170,33 @@ function setUrls(routes, parentUrl) { children: setUrls(route.children, "/" + route.path), }))); })); } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuY29yZS8iLCJzb3VyY2VzIjpbImxpYi9wbHVnaW5zL2NvbmZpZy9jb25maWcucGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxNQUFNLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBZ0MsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1RyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7QUFFdEIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQUV6RCxNQUFNLEtBQU8sMEJBQTBCLEdBQUcsSUFBSSxjQUFjLENBQUMsNEJBQTRCLENBQUM7QUFFMUY7SUFJRSxzQkFBd0QsT0FBaUIsRUFBVSxNQUFjO1FBQXpDLFlBQU8sR0FBUCxPQUFPLENBQVU7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBRnpGLGdCQUFXLEdBQVksS0FBSyxDQUFDO0lBRStELENBQUM7Ozs7Ozs7SUFFckcsNkJBQU07Ozs7OztJQUFOLFVBQU8sS0FBVSxFQUFFLEtBQVUsRUFBRSxJQUFzQjs7WUFDN0MsT0FBTyxHQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUM7O1lBQzlCLFlBQVksR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksT0FBTyxDQUFDLFdBQVcsQ0FBQztRQUUvRCw2R0FBNkc7UUFDN0csSUFBSSxZQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2pDLElBQUEsd0NBQTBELEVBQXhELGtCQUFNLEVBQUUsc0JBQWdEO1lBQzlELE1BQU0sR0FBRyxjQUFjLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBRTFDLEtBQUss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O1NBQ3JCO0lBQ0gsQ0FBQyxFQUFDLENBQUM7SUFFTCxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxRQUFRLFVBQUEsRUFBRSxDQUFDO0FBQ3BELENBQUM7Ozs7OztBQUVELFNBQVMsT0FBTyxDQUFDLE1BQXVCLEVBQUUsU0FBa0I7SUFDMUQsSUFBSSxTQUFTLEVBQUU7UUFDYiw4Q0FBOEM7UUFFOUMsT0FBTyxNQUFNLENBQUMsR0FBRzs7OztRQUFDLFVBQUEsS0FBSyxJQUFJLE9BQUEsc0JBQ3RCLEtBQUssSUFDUixHQUFHLEVBQUssU0FBUyxTQUFJLEtBQUssQ0FBQyxJQUFNLElBQzlCLENBQUMsS0FBSyxDQUFDLFFBQVE7WUFDaEIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLElBQUk7WUFDdkIsUUFBUSxFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFLLFNBQVMsU0FBSSxLQUFLLENBQUMsSUFBTSxDQUFDO1NBQ2hFLENBQUMsRUFDSixFQVB5QixDQU96QixFQUFDLENBQUM7S0FDTDtJQUVELE9BQU8sTUFBTSxDQUFDLEdBQUc7Ozs7SUFBQyxVQUFBLEtBQUssSUFBSSxPQUFBLHNCQUN0QixLQUFLLElBQ1IsR0FBRyxFQUFFLE1BQUksS0FBSyxDQUFDLElBQU0sSUFDbEIsQ0FBQyxLQUFLLENBQUMsUUFBUTtRQUNoQixLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sSUFBSTtRQUN2QixRQUFRLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsTUFBSSxLQUFLLENBQUMsSUFBTSxDQUFDO0tBQ3BELENBQUMsRUFDSixFQVB5QixDQU96QixFQUFDLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyLCBSb3V0ZXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgYWN0aW9uTWF0Y2hlciwgSW5pdFN0YXRlLCBOZ3hzTmV4dFBsdWdpbkZuLCBOZ3hzUGx1Z2luLCBzZXRWYWx1ZSwgVXBkYXRlU3RhdGUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgc25xIGZyb20gJ3NucSc7XG5pbXBvcnQgeyBBQlAgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgb3JnYW5pemVSb3V0ZXMgfSBmcm9tICcuLi8uLi91dGlscy9yb3V0ZS11dGlscyc7XG5cbmV4cG9ydCBjb25zdCBOR1hTX0NPTkZJR19QTFVHSU5fT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbignTkdYU19DT05GSUdfUExVR0lOX09QVElPTlMnKTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvbmZpZ1BsdWdpbiBpbXBsZW1lbnRzIE5neHNQbHVnaW4ge1xuICBwcml2YXRlIGluaXRpYWxpemVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChOR1hTX0NPTkZJR19QTFVHSU5fT1BUSU9OUykgcHJpdmF0ZSBvcHRpb25zOiBBQlAuUm9vdCwgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikge31cblxuICBoYW5kbGUoc3RhdGU6IGFueSwgZXZlbnQ6IGFueSwgbmV4dDogTmd4c05leHRQbHVnaW5Gbikge1xuICAgIGNvbnN0IG1hdGNoZXMgPSBhY3Rpb25NYXRjaGVyKGV2ZW50KTtcbiAgICBjb25zdCBpc0luaXRBY3Rpb24gPSBtYXRjaGVzKEluaXRTdGF0ZSkgfHwgbWF0Y2hlcyhVcGRhdGVTdGF0ZSk7XG5cbiAgICAvLyBjb25zdCBsYXlvdXRzID0gc25xKCgpID0+IHRoaXMub3B0aW9ucy5yZXF1aXJlbWVudHMubGF5b3V0cy5maWx0ZXIobGF5b3V0ID0+IGxheW91dCBpbnN0YW5jZW9mIFR5cGUpLCBbXSk7XG4gICAgaWYgKGlzSW5pdEFjdGlvbiAmJiAhdGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgbGV0IHsgcm91dGVzLCB3cmFwcGVycyB9ID0gdHJhbnNmb3JtUm91dGVzKHRoaXMucm91dGVyLmNvbmZpZyk7XG4gICAgICByb3V0ZXMgPSBvcmdhbml6ZVJvdXRlcyhyb3V0ZXMsIHdyYXBwZXJzKTtcblxuICAgICAgc3RhdGUgPSBzZXRWYWx1ZShzdGF0ZSwgJ0NvbmZpZ1N0YXRlJywge1xuICAgICAgICAuLi4oc3RhdGUuQ29uZmlnU3RhdGUgJiYgeyAuLi5zdGF0ZS5Db25maWdTdGF0ZSB9KSxcbiAgICAgICAgLi4udGhpcy5vcHRpb25zLFxuICAgICAgICByb3V0ZXMsXG4gICAgICB9KTtcblxuICAgICAgdGhpcy5pbml0aWFsaXplZCA9IHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5leHQoc3RhdGUsIGV2ZW50KTtcbiAgfVxufVxuXG5mdW5jdGlvbiB0cmFuc2Zvcm1Sb3V0ZXMocm91dGVzOiBSb3V0ZXMgPSBbXSwgd3JhcHBlcnM6IEFCUC5GdWxsUm91dGVbXSA9IFtdKTogYW55IHtcbiAgY29uc3QgYWJwUm91dGVzOiBBQlAuRnVsbFJvdXRlW10gPSByb3V0ZXNcbiAgICAuZmlsdGVyKHJvdXRlID0+IHtcbiAgICAgIHJldHVybiBzbnEoKCkgPT4gcm91dGUuZGF0YS5yb3V0ZXMucm91dGVzLmZpbmQociA9PiByLnBhdGggPT09IHJvdXRlLnBhdGgpLCBmYWxzZSk7XG4gICAgfSlcbiAgICAucmVkdWNlKChhY2MsIHZhbCkgPT4gWy4uLmFjYywgLi4udmFsLmRhdGEucm91dGVzLnJvdXRlc10sIFtdKTtcblxuICB3cmFwcGVycyA9IGFicFJvdXRlcy5maWx0ZXIoYXIgPT4gYXIud3JhcHBlcik7XG4gIGNvbnN0IHRyYW5zZm9ybWVkID0gW10gYXMgQUJQLkZ1bGxSb3V0ZVtdO1xuICByb3V0ZXNcbiAgICAuZmlsdGVyKHJvdXRlID0+IChyb3V0ZS5kYXRhIHx8IHt9KS5yb3V0ZXMgJiYgKHJvdXRlLmNvbXBvbmVudCB8fCByb3V0ZS5sb2FkQ2hpbGRyZW4pKVxuICAgIC5mb3JFYWNoKHJvdXRlID0+IHtcbiAgICAgIGNvbnN0IGFicFBhY2thZ2UgPSBhYnBSb3V0ZXMuZmluZChcbiAgICAgICAgYWJwID0+IGFicC5wYXRoLnRvTG93ZXJDYXNlKCkgPT09IHJvdXRlLnBhdGgudG9Mb3dlckNhc2UoKSAmJiBzbnEoKCkgPT4gcm91dGUuZGF0YS5yb3V0ZXMucm91dGVzLmxlbmd0aCwgZmFsc2UpLFxuICAgICAgKTtcbiAgICAgIGNvbnN0IHsgbGVuZ3RoIH0gPSB0cmFuc2Zvcm1lZDtcblxuICAgICAgaWYgKGFicFBhY2thZ2UpIHtcbiAgICAgICAgdHJhbnNmb3JtZWQucHVzaChhYnBQYWNrYWdlKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRyYW5zZm9ybWVkLmxlbmd0aCA9PT0gbGVuZ3RoKSB7XG4gICAgICAgIHRyYW5zZm9ybWVkLnB1c2goe1xuICAgICAgICAgIC4uLnJvdXRlLmRhdGEucm91dGVzLFxuICAgICAgICAgIHBhdGg6IHJvdXRlLnBhdGgsXG4gICAgICAgICAgbmFtZTogc25xKCgpID0+IHJvdXRlLmRhdGEucm91dGVzLm5hbWUsIHJvdXRlLnBhdGgpLFxuICAgICAgICAgIGNoaWxkcmVuOiByb3V0ZS5kYXRhLnJvdXRlcy5jaGlsZHJlbiB8fCBbXSxcbiAgICAgICAgfSBhcyBBQlAuRnVsbFJvdXRlKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICByZXR1cm4geyByb3V0ZXM6IHNldFVybHModHJhbnNmb3JtZWQpLCB3cmFwcGVycyB9O1xufVxuXG5mdW5jdGlvbiBzZXRVcmxzKHJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdLCBwYXJlbnRVcmw/OiBzdHJpbmcpOiBBQlAuRnVsbFJvdXRlW10ge1xuICBpZiAocGFyZW50VXJsKSB7XG4gICAgLy8gdGhpcyBpZiBibG9jayB1c2luZyBmb3Igb25seSByZWN1cnNpdmUgY2FsbFxuXG4gICAgcmV0dXJuIHJvdXRlcy5tYXAocm91dGUgPT4gKHtcbiAgICAgIC4uLnJvdXRlLFxuICAgICAgdXJsOiBgJHtwYXJlbnRVcmx9LyR7cm91dGUucGF0aH1gLFxuICAgICAgLi4uKHJvdXRlLmNoaWxkcmVuICYmXG4gICAgICAgIHJvdXRlLmNoaWxkcmVuLmxlbmd0aCAmJiB7XG4gICAgICAgICAgY2hpbGRyZW46IHNldFVybHMocm91dGUuY2hpbGRyZW4sIGAke3BhcmVudFVybH0vJHtyb3V0ZS5wYXRofWApLFxuICAgICAgICB9KSxcbiAgICB9KSk7XG4gIH1cblxuICByZXR1cm4gcm91dGVzLm1hcChyb3V0ZSA9PiAoe1xuICAgIC4uLnJvdXRlLFxuICAgIHVybDogYC8ke3JvdXRlLnBhdGh9YCxcbiAgICAuLi4ocm91dGUuY2hpbGRyZW4gJiZcbiAgICAgIHJvdXRlLmNoaWxkcmVuLmxlbmd0aCAmJiB7XG4gICAgICAgIGNoaWxkcmVuOiBzZXRVcmxzKHJvdXRlLmNoaWxkcmVuLCBgLyR7cm91dGUucGF0aH1gKSxcbiAgICAgIH0pLFxuICB9KSk7XG59XG4iXX0= \ No newline at end of file +/** + * @param {?} routes + * @return {?} + */ +function flatRoutes(routes) { + /** @type {?} */ + var flat = (/** + * @param {?} r + * @return {?} + */ + function (r) { + return r.reduce((/** + * @param {?} acc + * @param {?} val + * @return {?} + */ + function (acc, val) { + /** @type {?} */ + var value = [val]; + if (val.children) { + var children = val.children; + delete val.children; + value = tslib_1.__spread([val], flat(children)); + } + return tslib_1.__spread(acc, value); + }), []); + }); + return flat(routes); +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuY29yZS8iLCJzb3VyY2VzIjpbImxpYi9wbHVnaW5zL2NvbmZpZy9jb25maWcucGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxNQUFNLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBZ0MsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1RyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7QUFFdEIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sS0FBSyxNQUFNLFlBQVksQ0FBQzs7QUFFL0IsTUFBTSxLQUFPLDBCQUEwQixHQUFHLElBQUksY0FBYyxDQUFDLDRCQUE0QixDQUFDO0FBRTFGO0lBSUUsc0JBQXdELE9BQWlCLEVBQVUsTUFBYztRQUF6QyxZQUFPLEdBQVAsT0FBTyxDQUFVO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUZ6RixnQkFBVyxHQUFZLEtBQUssQ0FBQztJQUUrRCxDQUFDOzs7Ozs7O0lBRXJHLDZCQUFNOzs7Ozs7SUFBTixVQUFPLEtBQVUsRUFBRSxLQUFVLEVBQUUsSUFBc0I7O1lBQzdDLE9BQU8sR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDOztZQUM5QixZQUFZLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxXQUFXLENBQUM7UUFFL0QsNkdBQTZHO1FBQzdHLElBQUksWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNqQyxJQUFBLHdDQUEwRCxFQUF4RCxrQkFBTSxFQUFFLHNCQUFnRDtZQUM5RCxNQUFNLEdBQUcsY0FBYyxDQUFDLE1BQU0s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LFVBQUMsQ0FBa0I7UUFDOUIsT0FBTyxDQUFDLENBQUMsTUFBTTs7Ozs7UUFBQyxVQUFDLEdBQUcsRUFBRSxHQUFHOztnQkFDbkIsS0FBSyxHQUFvQixDQUFDLEdBQUcsQ0FBQztZQUNsQyxJQUFJLEdBQUcsQ0FBQyxRQUFRLEVBQUU7Z0JBQ1IsSUFBQSx1QkFBUTtnQkFDaEIsT0FBTyxHQUFHLENBQUMsUUFBUSxDQUFDO2dCQUNwQixLQUFLLHFCQUFJLEdBQUcsR0FBSyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQzthQUNsQztZQUVELHdCQUFXLEdBQUcsRUFBSyxLQUFLLEVBQUU7UUFDNUIsQ0FBQyxHQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsQ0FBQyxDQUFBO0lBRUQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDdEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciwgUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGFjdGlvbk1hdGNoZXIsIEluaXRTdGF0ZSwgTmd4c05leHRQbHVnaW5GbiwgTmd4c1BsdWdpbiwgc2V0VmFsdWUsIFVwZGF0ZVN0YXRlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHNucSBmcm9tICdzbnEnO1xuaW1wb3J0IHsgQUJQIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IG9yZ2FuaXplUm91dGVzIH0gZnJvbSAnLi4vLi4vdXRpbHMvcm91dGUtdXRpbHMnO1xuaW1wb3J0IGNsb25lIGZyb20gJ2p1c3QtY2xvbmUnO1xuXG5leHBvcnQgY29uc3QgTkdYU19DT05GSUdfUExVR0lOX09QVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW4oJ05HWFNfQ09ORklHX1BMVUdJTl9PUFRJT05TJyk7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDb25maWdQbHVnaW4gaW1wbGVtZW50cyBOZ3hzUGx1Z2luIHtcbiAgcHJpdmF0ZSBpbml0aWFsaXplZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoTkdYU19DT05GSUdfUExVR0lOX09QVElPTlMpIHByaXZhdGUgb3B0aW9uczogQUJQLlJvb3QsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHt9XG5cbiAgaGFuZGxlKHN0YXRlOiBhbnksIGV2ZW50OiBhbnksIG5leHQ6IE5neHNOZXh0UGx1Z2luRm4pIHtcbiAgICBjb25zdCBtYXRjaGVzID0gYWN0aW9uTWF0Y2hlcihldmVudCk7XG4gICAgY29uc3QgaXNJbml0QWN0aW9uID0gbWF0Y2hlcyhJbml0U3RhdGUpIHx8IG1hdGNoZXMoVXBkYXRlU3RhdGUpO1xuXG4gICAgLy8gY29uc3QgbGF5b3V0cyA9IHNucSgoKSA9PiB0aGlzLm9wdGlvbnMucmVxdWlyZW1lbnRzLmxheW91dHMuZmlsdGVyKGxheW91dCA9PiBsYXlvdXQgaW5zdGFuY2VvZiBUeXBlKSwgW10pO1xuICAgIGlmIChpc0luaXRBY3Rpb24gJiYgIXRoaXMuaW5pdGlhbGl6ZWQpIHtcbiAgICAgIGxldCB7IHJvdXRlcywgd3JhcHBlcnMgfSA9IHRyYW5zZm9ybVJvdXRlcyh0aGlzLnJvdXRlci5jb25maWcpO1xuICAgICAgcm91dGVzID0gb3JnYW5pemVSb3V0ZXMocm91dGVzLCB3cmFwcGVycyk7XG4gICAgICBjb25zdCBmbGF0dGVkUm91dGVzID0gZmxhdFJvdXRlcyhjbG9uZShyb3V0ZXMpKTtcbiAgICAgIHN0YXRlID0gc2V0VmFsdWUoc3RhdGUsICdDb25maWdTdGF0ZScsIHtcbiAgICAgICAgLi4uKHN0YXRlLkNvbmZpZ1N0YXRlICYmIHsgLi4uc3RhdGUuQ29uZmlnU3RhdGUgfSksXG4gICAgICAgIC4uLnRoaXMub3B0aW9ucyxcbiAgICAgICAgcm91dGVzLFxuICAgICAgICBmbGF0dGVkUm91dGVzLFxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybiBuZXh0KHN0YXRlLCBldmVudCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gdHJhbnNmb3JtUm91dGVzKHJvdXRlczogUm91dGVzID0gW10sIHdyYXBwZXJzOiBBQlAuRnVsbFJvdXRlW10gPSBbXSk6IGFueSB7XG4gIGNvbnN0IGFicFJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdID0gcm91dGVzXG4gICAgLmZpbHRlcihyb3V0ZSA9PiB7XG4gICAgICByZXR1cm4gc25xKCgpID0+IHJvdXRlLmRhdGEucm91dGVzLnJvdXRlcy5maW5kKHIgPT4gci5wYXRoID09PSByb3V0ZS5wYXRoKSwgZmFsc2UpO1xuICAgIH0pXG4gICAgLnJlZHVjZSgoYWNjLCB2YWwpID0+IFsuLi5hY2MsIC4uLnZhbC5kYXRhLnJvdXRlcy5yb3V0ZXNdLCBbXSk7XG5cbiAgd3JhcHBlcnMgPSBhYnBSb3V0ZXMuZmlsdGVyKGFyID0+IGFyLndyYXBwZXIpO1xuICBjb25zdCB0cmFuc2Zvcm1lZCA9IFtdIGFzIEFCUC5GdWxsUm91dGVbXTtcbiAgcm91dGVzXG4gICAgLmZpbHRlcihyb3V0ZSA9PiAocm91dGUuZGF0YSB8fCB7fSkucm91dGVzICYmIChyb3V0ZS5jb21wb25lbnQgfHwgcm91dGUubG9hZENoaWxkcmVuKSlcbiAgICAuZm9yRWFjaChyb3V0ZSA9PiB7XG4gICAgICBjb25zdCBhYnBQYWNrYWdlID0gYWJwUm91dGVzLmZpbmQoXG4gICAgICAgIGFicCA9PiBhYnAucGF0aC50b0xvd2VyQ2FzZSgpID09PSByb3V0ZS5wYXRoLnRvTG93ZXJDYXNlKCkgJiYgc25xKCgpID0+IHJvdXRlLmRhdGEucm91dGVzLnJvdXRlcy5sZW5ndGgsIGZhbHNlKSxcbiAgICAgICk7XG4gICAgICBjb25zdCB7IGxlbmd0aCB9ID0gdHJhbnNmb3JtZWQ7XG5cbiAgICAgIGlmIChhYnBQYWNrYWdlKSB7XG4gICAgICAgIHRyYW5zZm9ybWVkLnB1c2goYWJwUGFja2FnZSk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0cmFuc2Zvcm1lZC5sZW5ndGggPT09IGxlbmd0aCkge1xuICAgICAgICB0cmFuc2Zvcm1lZC5wdXNoKHtcbiAgICAgICAgICAuLi5yb3V0ZS5kYXRhLnJvdXRlcyxcbiAgICAgICAgICBwYXRoOiByb3V0ZS5wYXRoLFxuICAgICAgICAgIG5hbWU6IHNucSgoKSA9PiByb3V0ZS5kYXRhLnJvdXRlcy5uYW1lLCByb3V0ZS5wYXRoKSxcbiAgICAgICAgICBjaGlsZHJlbjogcm91dGUuZGF0YS5yb3V0ZXMuY2hpbGRyZW4gfHwgW10sXG4gICAgICAgIH0gYXMgQUJQLkZ1bGxSb3V0ZSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgcmV0dXJuIHsgcm91dGVzOiBzZXRVcmxzKHRyYW5zZm9ybWVkKSwgd3JhcHBlcnMgfTtcbn1cblxuZnVuY3Rpb24gc2V0VXJscyhyb3V0ZXM6IEFCUC5GdWxsUm91dGVbXSwgcGFyZW50VXJsPzogc3RyaW5nKTogQUJQLkZ1bGxSb3V0ZVtdIHtcbiAgaWYgKHBhcmVudFVybCkge1xuICAgIC8vIHRoaXMgaWYgYmxvY2sgdXNpbmcgZm9yIG9ubHkgcmVjdXJzaXZlIGNhbGxcblxuICAgIHJldHVybiByb3V0ZXMubWFwKHJvdXRlID0+ICh7XG4gICAgICAuLi5yb3V0ZSxcbiAgICAgIHVybDogYCR7cGFyZW50VXJsfS8ke3JvdXRlLnBhdGh9YCxcbiAgICAgIC4uLihyb3V0ZS5jaGlsZHJlbiAmJlxuICAgICAgICByb3V0ZS5jaGlsZHJlbi5sZW5ndGggJiYge1xuICAgICAgICAgIGNoaWxkcmVuOiBzZXRVcmxzKHJvdXRlLmNoaWxkcmVuLCBgJHtwYXJlbnRVcmx9LyR7cm91dGUucGF0aH1gKSxcbiAgICAgICAgfSksXG4gICAgfSkpO1xuICB9XG5cbiAgcmV0dXJuIHJvdXRlcy5tYXAocm91dGUgPT4gKHtcbiAgICAuLi5yb3V0ZSxcbiAgICB1cmw6IGAvJHtyb3V0ZS5wYXRofWAsXG4gICAgLi4uKHJvdXRlLmNoaWxkcmVuICYmXG4gICAgICByb3V0ZS5jaGlsZHJlbi5sZW5ndGggJiYge1xuICAgICAgICBjaGlsZHJlbjogc2V0VXJscyhyb3V0ZS5jaGlsZHJlbiwgYC8ke3JvdXRlLnBhdGh9YCksXG4gICAgICB9KSxcbiAgfSkpO1xufVxuXG5mdW5jdGlvbiBmbGF0Um91dGVzKHJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdKTogQUJQLkZ1bGxSb3V0ZVtdIHtcbiAgY29uc3QgZmxhdCA9IChyOiBBQlAuRnVsbFJvdXRlW10pID0+IHtcbiAgICByZXR1cm4gci5yZWR1Y2UoKGFjYywgdmFsKSA9PiB7XG4gICAgICBsZXQgdmFsdWU6IEFCUC5GdWxsUm91dGVbXSA9IFt2YWxdO1xuICAgICAgaWYgKHZhbC5jaGlsZHJlbikge1xuICAgICAgICBjb25zdCB7IGNoaWxkcmVuIH0gPSB2YWw7XG4gICAgICAgIGRlbGV0ZSB2YWwuY2hpbGRyZW47XG4gICAgICAgIHZhbHVlID0gW3ZhbCwgLi4uZmxhdChjaGlsZHJlbildO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gWy4uLmFjYywgLi4udmFsdWVdO1xuICAgIH0sIFtdKTtcbiAgfTtcblxuICByZXR1cm4gZmxhdChyb3V0ZXMpO1xufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm5/lib/states/config.state.js b/npm/ng-packs/dist/core/esm5/lib/states/config.state.js index 9ebf5f5f17..5108db7982 100644 --- a/npm/ng-packs/dist/core/esm5/lib/states/config.state.js +++ b/npm/ng-packs/dist/core/esm5/lib/states/config.state.js @@ -111,7 +111,19 @@ var ConfigState = /** @class */ (function () { * @return {?} */ function (state) { - return findRoute(state.routes, path, name); + var flattedRoutes = state.flattedRoutes; + return ((/** @type {?} */ (flattedRoutes))).find((/** + * @param {?} route + * @return {?} + */ + function (route) { + if (path && route.path === path) { + return route; + } + else if (name && route.name === name) { + return route; + } + })); })); return selector; }; @@ -157,55 +169,26 @@ var ConfigState = /** @class */ (function () { return selector; }; /** - * @param {?=} condition + * @param {?} key * @return {?} */ ConfigState.getGrantedPolicy = /** - * @param {?=} condition + * @param {?} key * @return {?} */ - function (condition) { - if (condition === void 0) { condition = ''; } - /** @type {?} */ - var keys = condition - .replace(/\(|\)|\!|\s/g, '') - .split(/\|\||&&/) - .filter((/** - * @param {?} key - * @return {?} - */ - function (key) { return key; })); + function (key) { /** @type {?} */ var selector = createSelector([ConfigState_1], (/** * @param {?} state * @return {?} */ function (state) { - if (!keys.length) + if (!key) return true; - /** @type {?} */ - var getPolicy = (/** - * @param {?} key - * @return {?} - */ - function (key) { return snq((/** + return snq((/** * @return {?} */ - function () { return state.auth.grantedPolicies[key]; }), false); }); - if (keys.length > 1) { - keys.forEach((/** - * @param {?} key - * @return {?} - */ - function (key) { - /** @type {?} */ - var value = getPolicy(key); - condition = condition.replace(key, value); - })); - // tslint:disable-next-line: no-eval - return eval("!!" + condition); - } - return getPolicy(condition); + function () { return state.auth.grantedPolicies[key]; }), false); })); return selector; }; @@ -247,7 +230,7 @@ var ConfigState = /** @class */ (function () { function () { return defaultResourceName; })); } /** @type {?} */ - var copy = keys.reduce((/** + var copy = ((/** @type {?} */ (keys))).reduce((/** * @param {?} acc * @param {?} val * @return {?} @@ -417,34 +400,4 @@ function patchRouteDeep(routes, name, newValue, parentUrl) { } return organizeRoutes(routes); } -/** - * @param {?} routes - * @param {?=} path - * @param {?=} name - * @return {?} - */ -function findRoute(routes, path, name) { - /** @type {?} */ - var foundRoute; - routes.forEach((/** - * @param {?} route - * @return {?} - */ - function (route) { - if (foundRoute) - return; - if (path && route.path === path) { - foundRoute = route; - } - else if (name && route.name === name) { - foundRoute = route; - return; - } - else if (route.children && route.children.length) { - foundRoute = findRoute(route.children, path, name); - return; - } - })); - return foundRoute; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnN0YXRlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL3N0YXRlcy9jb25maWcuc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFnQixLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFM0YsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEYsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDaEcsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7QUFDdEIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQTZCLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztJQW1LL0UscUJBQW9CLHVCQUF3RCxFQUFVLEtBQVk7UUFBOUUsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFpQztRQUFVLFVBQUssR0FBTCxLQUFLLENBQU87SUFBRyxDQUFDO29CQTdKM0YsV0FBVzs7Ozs7SUFFZixrQkFBTTs7OztJQUFiLFVBQWMsS0FBbUI7UUFDL0IsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzs7OztJQUdNLDhCQUFrQjs7OztJQUF6QixVQUEwQixLQUFtQjtRQUMzQyxPQUFPLEtBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztJQUM3QyxDQUFDOzs7OztJQUVNLGtCQUFNOzs7O0lBQWIsVUFBYyxHQUFXOztZQUNqQixRQUFRLEdB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LE9BQU8sTUFBTSxDQUFDO0tBQ2Y7SUFFRCxPQUFPLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUNoQyxDQUFDOzs7Ozs7O0FBRUQsU0FBUyxTQUFTLENBQUMsTUFBdUIsRUFBRSxJQUFhLEVBQUUsSUFBYTs7UUFDbEUsVUFBVTtJQUNkLE1BQU0sQ0FBQyxPQUFPOzs7O0lBQUMsVUFBQSxLQUFLO1FBQ2xCLElBQUksVUFBVTtZQUFFLE9BQU87UUFFdkIsSUFBSSxJQUFJLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUU7WUFDL0IsVUFBVSxHQUFHLEtBQUssQ0FBQztTQUNwQjthQUFNLElBQUksSUFBSSxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFFO1lBQ3RDLFVBQVUsR0FBRyxLQUFLLENBQUM7WUFDbkIsT0FBTztTQUNSO2FBQU0sSUFBSSxLQUFLLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFO1lBQ2xELFVBQVUsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbkQsT0FBTztTQUNSO0lBQ0gsQ0FBQyxFQUFDLENBQUM7SUFFSCxPQUFPLFVBQVUsQ0FBQztBQUNwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3RhdGUsIFNlbGVjdG9yLCBjcmVhdGVTZWxlY3RvciwgQWN0aW9uLCBTdGF0ZUNvbnRleHQsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgQ29uZmlnLCBBQlAgfSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgR2V0QXBwQ29uZmlndXJhdGlvbiwgUGF0Y2hSb3V0ZUJ5TmFtZSB9IGZyb20gJy4uL2FjdGlvbnMvY29uZmlnLmFjdGlvbnMnO1xuaW1wb3J0IHsgQXBwbGljYXRpb25Db25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2FwcGxpY2F0aW9uLWNvbmZpZ3VyYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyB0YXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCBzbnEgZnJvbSAnc25xJztcbmltcG9ydCB7IFNldExhbmd1YWdlIH0gZnJvbSAnLi4vYWN0aW9ucyc7XG5pbXBvcnQgeyBTZXNzaW9uU3RhdGUgfSBmcm9tICcuL3Nlc3Npb24uc3RhdGUnO1xuaW1wb3J0IHsgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHNldENoaWxkUm91dGUsIHNvcnRSb3V0ZXMsIG9yZ2FuaXplUm91dGVzIH0gZnJvbSAnLi4vdXRpbHMvcm91dGUtdXRpbHMnO1xuXG5AU3RhdGU8Q29uZmlnLlN0YXRlPih7XG4gIG5hbWU6ICdDb25maWdTdGF0ZScsXG4gIGRlZmF1bHRzOiB7fSBhcyBDb25maWcuU3RhdGUsXG59KVxuZXhwb3J0IGNsYXNzIENvbmZpZ1N0YXRlIHtcbiAgQFNlbGVjdG9yKClcbiAgc3RhdGljIGdldEFsbChzdGF0ZTogQ29uZmlnLlN0YXRlKSB7XG4gICAgcmV0dXJuIHN0YXRlO1xuICB9XG5cbiAgQFNlbGVjdG9yKClcbiAgc3RhdGljIGdldEFwcGxpY2F0aW9uSW5mbyhzdGF0ZTogQ29uZmlnLlN0YXRlKSB7XG4gICAgcmV0dXJuIHN0YXRlLmVudmlyb25tZW50LmFwcGxpY2F0aW9uIHx8IHt9O1xuICB9XG5cbiAgc3RhdGljIGdldE9uZShrZXk6IHN0cmluZykge1xuICAgIGNvbnN0IHNlbGVjdG9yID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgICBbQ29uZmlnU3RhdGVdLFxuICAgICAgZnVuY3Rpb24oc3RhdGU6IENvbmZpZy5TdGF0ZSkge1xuICAgICAgICByZXR1cm4gc3RhdGVba2V5XTtcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHJldHVybiBzZWxlY3RvcjtcbiAgfVxuXG4gIHN0YXRpYyBnZXREZWVwKGtleXM6IHN0cmluZ1tdIHwgc3RyaW5nKSB7XG4gICAgaWYgKHR5cGVvZiBrZXlzID09PSAnc3RyaW5nJykge1xuICAgICAga2V5cyA9IGtleXMuc3BsaXQoJy4nKTtcbiAgICB9XG5cbiAgICBpZiAoIUFycmF5LmlzQXJyYXkoa2V5cykpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIGFyZ3VtZW50IG11c3QgYmUgYSBkb3Qgc3RyaW5nIG9yIGFuIHN0cmluZyBhcnJheS4nKTtcbiAgICB9XG5cbiAgICBjb25zdCBzZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgW0NvbmZpZ1N0YXRlXSxcbiAgICAgIGZ1bmN0aW9uKHN0YXRlOiBDb25maWcuU3RhdGUpIHtcbiAgICAgICAgcmV0dXJuIChrZXlzIGFzIHN0cmluZ1tdKS5yZWR1Y2UoKGFjYywgdmFsKSA9PiB7XG4gICAgICAgICAgaWYgKGFjYykge1xuICAgICAgICAgICAgcmV0dXJuIGFjY1t2YWxdO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH0sIHN0YXRlKTtcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHJldHVybiBzZWxlY3RvcjtcbiAgfVxuXG4gIHN0YXRpYyBnZXRSb3V0ZShwYXRoPzogc3RyaW5nLCBuYW1lPzogc3RyaW5nKSB7XG4gICAgY29uc3Qgc2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIFtDb25maWdTdGF0ZV0sXG4gICAgICBmdW5jdGlvbihzdGF0ZTogQ29uZmlnLlN0YXRlKSB7XG4gICAgICAgIHJldHVybiBmaW5kUm91dGUoc3RhdGUucm91dGVzLCBwYXRoLCBuYW1lKTtcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHJldHVybiBzZWxlY3RvcjtcbiAgfVxuXG4gIHN0YXRpYyBnZXRBcGlVcmwoa2V5Pzogc3RyaW5nKSB7XG4gICAgY29uc3Qgc2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIFtDb25maWdTdGF0ZV0sXG4gICAgICBmdW5jdGlvbihzdGF0ZTogQ29uZmlnLlN0YXRlKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHN0YXRlLmVudmlyb25tZW50LmFwaXNba2V5IHx8ICdkZWZhdWx0J10udXJsO1xuICAgICAgfSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHNlbGVjdG9yO1xuICB9XG5cbiAgc3RhdGljIGdldFNldHRpbmcoa2V5OiBzdHJpbmcpIHtcbiAgICBjb25zdCBzZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgW0NvbmZpZ1N0YXRlXSxcbiAgICAgIGZ1bmN0aW9uKHN0YXRlOiBDb25maWcuU3RhdGUpIHtcbiAgICAgICAgcmV0dXJuIHNucSgoKSA9PiBzdGF0ZS5zZXR0aW5nLnZhbHVlc1trZXldKTtcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHJldHVybiBzZWxlY3RvcjtcbiAgfVxuXG4gIHN0YXRpYyBnZXRHcmFudGVkUG9saWN5KGNvbmRpdGlvbjogc3RyaW5nID0gJycpIHtcbiAgICBjb25zdCBrZXlzID0gY29uZGl0aW9uXG4gICAgICAucmVwbGFjZSgvXFwofFxcKXxcXCF8XFxzL2csICcnKVxuICAgICAgLnNwbGl0KC9cXHxcXHx8JiYvKVxuICAgICAgLmZpbHRlcihrZXkgPT4ga2V5KTtcblxuICAgIGNvbnN0IHNlbGVjdG9yID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgICBbQ29uZmlnU3RhdGVdLFxuICAgICAgZnVuY3Rpb24oc3RhdGU6IENvbmZpZy5TdGF0ZSk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIWtleXMubGVuZ3RoKSByZXR1cm4gdHJ1ZTtcblxuICAgICAgICBjb25zdCBnZXRQb2xpY3kgPSBrZXkgPT4gc25xKCgpID0+IHN0YXRlLmF1dGguZ3JhbnRlZFBvbGljaWVzW2tleV0sIGZhbHNlKTtcbiAgICAgICAgaWYgKGtleXMubGVuZ3RoID4gMSkge1xuICAgICAgICAgIGtleXMuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBnZXRQb2xpY3koa2V5KTtcbiAgICAgICAgICAgIGNvbmRpdGlvbiA9IGNvbmRpdGlvbi5yZXBsYWNlKGtleSwgdmFsdWUpO1xuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1ldmFsXG4gICAgICAgICAgcmV0dXJuIGV2YWwoYCEhJHtjb25kaXRpb259YCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZ2V0UG9saWN5KGNvbmRpdGlvbik7XG4gICAgICB9LFxuICAgICk7XG5cbiAgICByZXR1cm4gc2VsZWN0b3I7XG4gIH1cblxuICBzdGF0aWMgZ2V0Q29weShrZXk6IHN0cmluZywgLi4uaW50ZXJwb2xhdGVQYXJhbXM6IHN0cmluZ1tdKSB7XG4gICAgaWYgKCFrZXkpIGtleSA9ICcnO1xuXG4gICAgY29uc3Qga2V5cyA9IGtleS5zcGxpdCgnOjonKSBhcyBzdHJpbmdbXTtcbiAgICBjb25zdCBzZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgW0NvbmZpZ1N0YXRlXSxcbiAgICAgIGZ1bmN0aW9uKHN0YXRlOiBDb25maWcuU3RhdGUpIHtcbiAgICAgICAgaWYgKCFzdGF0ZS5sb2NhbGl6YXRpb24pIHJldHVybiBrZXk7XG5cbiAgICAgICAgY29uc3QgeyBkZWZhdWx0UmVzb3VyY2VOYW1lIH0gPSBzdGF0ZS5lbnZpcm9ubWVudC5sb2NhbGl6YXRpb247XG4gICAgICAgIGlmIChrZXlzWzBdID09PSAnJykge1xuICAgICAgICAgIGlmICghZGVmYXVsdFJlc291cmNlTmFtZSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICBgUGxlYXNlIGNoZWNrIHlvdXIgZW52aXJvbm1lbnQuIE1heSB5b3UgZm9yZ2V0IHNldCBkZWZhdWx0UmVzb3VyY2VOYW1lPyBcbiAgICAgICAgICAgICAgSGVyZSBpcyB0aGUgZXhhbXBsZTpcbiAgICAgICAgICAgICAgIHsgcHJvZHVjdGlvbjogZmFsc2UsXG4gICAgICAgICAgICAgICAgIGxvY2FsaXphdGlvbjoge1xuICAgICAgICAgICAgICAgICAgIGRlZmF1bHRSZXNvdXJjZU5hbWU6ICdNeVByb2plY3ROYW1lJ1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgfWAsXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGtleXNbMF0gPSBzbnEoKCkgPT4gZGVmYXVsdFJlc291cmNlTmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgY29weSA9IGtleXMucmVkdWNlKChhY2MsIHZhbCkgPT4ge1xuICAgICAgICAgIGlmIChhY2MpIHtcbiAgICAgICAgICAgIHJldHVybiBhY2NbdmFsXTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9LCBzdGF0ZS5sb2NhbGl6YXRpb24udmFsdWVzKTtcblxuICAgICAgICBpbnRlcnBvbGF0ZVBhcmFtcyA9IGludGVycG9sYXRlUGFyYW1zLmZpbHRlcihwYXJhbXMgPT4gcGFyYW1zICE9IG51bGwpO1xuICAgICAgICBpZiAoY29weSAmJiBpbnRlcnBvbGF0ZVBhcmFtcyAmJiBpbnRlcnBvbGF0ZVBhcmFtcy5sZW5ndGgpIHtcbiAgICAgICAgICBpbnRlcnBvbGF0ZVBhcmFtcy5mb3JFYWNoKHBhcmFtID0+IHtcbiAgICAgICAgICAgIGNvcHkgPSBjb3B5LnJlcGxhY2UoL1tcXCdcXFwiXT9cXHtbXFxkXStcXH1bXFwnXFxcIl0/LywgcGFyYW0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvcHkgfHwga2V5O1xuICAgICAgfSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHNlbGVjdG9yO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhcHBDb25maWd1cmF0aW9uU2VydmljZTogQXBwbGljYXRpb25Db25maWd1cmF0aW9uU2VydmljZSwgcHJpdmF0ZSBzdG9yZTogU3RvcmUpIHt9XG5cbiAgQEFjdGlvbihHZXRBcHBDb25maWd1cmF0aW9uKVxuICBhZGREYXRhKHsgcGF0Y2hTdGF0ZSwgZGlzcGF0Y2ggfTogU3RhdGVDb250ZXh0PENvbmZpZy5TdGF0ZT4pIHtcbiAgICByZXR1cm4gdGhpcy5hcHBDb25maWd1cmF0aW9uU2VydmljZS5nZXRDb25maWd1cmF0aW9uKCkucGlwZShcbiAgICAgIHRhcChjb25maWd1cmF0aW9uID0+XG4gICAgICAgIHBhdGNoU3RhdGUoe1xuICAgICAgICAgIC4uLmNvbmZpZ3VyYXRpb24sXG4gICAgICAgIH0pLFxuICAgICAgKSxcbiAgICAgIHN3aXRjaE1hcChjb25maWd1cmF0aW9uID0+IHtcbiAgICAgICAgbGV0IGRlZmF1bHRMYW5nOiBzdHJpbmcgPSBjb25maWd1cmF0aW9uLnNldHRpbmcudmFsdWVzWydBYnAuTG9jYWxpemF0aW9uLkRlZmF1bHRMYW5ndWFnZSddO1xuXG4gICAgICAgIGlmIChkZWZhdWx0TGFuZy5pbmNsdWRlcygnOycpKSB7XG4gICAgICAgICAgZGVmYXVsdExhbmcgPSBkZWZhdWx0TGFuZy5zcGxpdCgnOycpWzBdO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoU2Vzc2lvblN0YXRlLmdldExhbmd1YWdlKSA/IG9mKG51bGwpIDogZGlzcGF0Y2gobmV3IFNldExhbmd1YWdlKGRlZmF1bHRMYW5nKSk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgQEFjdGlvbihQYXRjaFJvdXRlQnlOYW1lKVxuICBwYXRjaFJvdXRlKHsgcGF0Y2hTdGF0ZSwgZ2V0U3RhdGUgfTogU3RhdGVDb250ZXh0PENvbmZpZy5TdGF0ZT4sIHsgbmFtZSwgbmV3VmFsdWUgfTogUGF0Y2hSb3V0ZUJ5TmFtZSkge1xuICAgIGxldCByb3V0ZXM6IEFCUC5GdWxsUm91dGVbXSA9IGdldFN0YXRlKCkucm91dGVzO1xuXG4gICAgY29uc3QgaW5kZXggPSByb3V0ZXMuZmluZEluZGV4KHJvdXRlID0+IHJvdXRlLm5hbWUgPT09IG5hbWUpO1xuXG4gICAgcm91dGVzID0gcGF0Y2hSb3V0ZURlZXAocm91dGVzLCBuYW1lLCBuZXdWYWx1ZSk7XG5cbiAgICByZXR1cm4gcGF0Y2hTdGF0ZSh7XG4gICAgICByb3V0ZXMsXG4gICAgfSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gcGF0Y2hSb3V0ZURlZXAoXG4gIHJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdLFxuICBuYW1lOiBzdHJpbmcsXG4gIG5ld1ZhbHVlOiBQYXJ0aWFsPEFCUC5GdWxsUm91dGU+LFxuICBwYXJlbnRVcmw6IHN0cmluZyA9IG51bGwsXG4pOiBBQlAuRnVsbFJvdXRlW10ge1xuICByb3V0ZXMgPSByb3V0ZXMubWFwKHJvdXRlID0+IHtcbiAgICBpZiAocm91dGUubmFtZSA9PT0gbmFtZSkge1xuICAgICAgaWYgKG5ld1ZhbHVlLnBhdGgpIHtcbiAgICAgICAgbmV3VmFsdWUudXJsID0gYCR7cGFyZW50VXJsfS8ke25ld1ZhbHVlLnBhdGh9YDtcbiAgICAgIH1cblxuICAgICAgaWYgKG5ld1ZhbHVlLmNoaWxkcmVuICYmIG5ld1ZhbHVlLmNoaWxkcmVuLmxlbmd0aCkge1xuICAgICAgICBuZXdWYWx1ZS5jaGlsZHJlbiA9IG5ld1ZhbHVlLmNoaWxkcmVuLm1hcChjaGlsZCA9PiAoe1xuICAgICAgICAgIC4uLmNoaWxkLFxuICAgICAgICAgIHVybDogYCR7cGFyZW50VXJsfS8ke3JvdXRlLnBhdGh9LyR7Y2hpbGQucGF0aH1gLFxuICAgICAgICB9KSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7IC4uLnJvdXRlLCAuLi5uZXdWYWx1ZSB9O1xuICAgIH0gZWxzZSBpZiAocm91dGUuY2hpbGRyZW4gJiYgcm91dGUuY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICByb3V0ZS5jaGlsZHJlbiA9IHBhdGNoUm91dGVEZWVwKHJvdXRlLmNoaWxkcmVuLCBuYW1lLCBuZXdWYWx1ZSwgKHBhcmVudFVybCB8fCAnLycpICsgcm91dGUucGF0aCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJvdXRlO1xuICB9KTtcblxuICBpZiAocGFyZW50VXJsKSB7XG4gICAgLy8gcmVjdXJzaXZlIGJsb2NrXG4gICAgcmV0dXJuIHJvdXRlcztcbiAgfVxuXG4gIHJldHVybiBvcmdhbml6ZVJvdXRlcyhyb3V0ZXMpO1xufVxuXG5mdW5jdGlvbiBmaW5kUm91dGUocm91dGVzOiBBQlAuRnVsbFJvdXRlW10sIHBhdGg/OiBzdHJpbmcsIG5hbWU/OiBzdHJpbmcpIHtcbiAgbGV0IGZvdW5kUm91dGU7XG4gIHJvdXRlcy5mb3JFYWNoKHJvdXRlID0+IHtcbiAgICBpZiAoZm91bmRSb3V0ZSkgcmV0dXJuO1xuXG4gICAgaWYgKHBhdGggJiYgcm91dGUucGF0aCA9PT0gcGF0aCkge1xuICAgICAgZm91bmRSb3V0ZSA9IHJvdXRlO1xuICAgIH0gZWxzZSBpZiAobmFtZSAmJiByb3V0ZS5uYW1lID09PSBuYW1lKSB7XG4gICAgICBmb3VuZFJvdXRlID0gcm91dGU7XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIGlmIChyb3V0ZS5jaGlsZHJlbiAmJiByb3V0ZS5jaGlsZHJlbi5sZW5ndGgpIHtcbiAgICAgIGZvdW5kUm91dGUgPSBmaW5kUm91dGUocm91dGUuY2hpbGRyZW4sIHBhdGgsIG5hbWUpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIGZvdW5kUm91dGU7XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnN0YXRlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5jb3JlLyIsInNvdXJjZXMiOlsibGliL3N0YXRlcy9jb25maWcuc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFnQixLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFM0YsT0FBTyxFQUFFLG1CQUFtQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbEYsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDaEcsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7QUFDdEIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQixPQUFPLEVBQTZCLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztJQXlKL0UscUJBQW9CLHVCQUF3RCxFQUFVLEtBQVk7UUFBOUUsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFpQztRQUFVLFVBQUssR0FBTCxLQUFLLENBQU87SUFBRyxDQUFDO29CQW5KM0YsV0FBVzs7Ozs7SUFFZixrQkFBTTs7OztJQUFiLFVBQWMsS0FBbUI7UUFDL0IsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzs7OztJQUdNLDhCQUFrQjs7OztJQUF6QixVQUEwQixLQUFtQjtRQUMzQyxPQUFPLEtBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztJQUM3QyxDQUFDOzs7OztJQUVNLGtCQUFNOzs7O0lBQWIsVUFBYyxHQUFXOztZQUNqQixRQUFRLEdB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LEdBQU0sU0FBUyxTQUFJLFFBQVEsQ0FBQyxJQUFNLENBQUM7YUFDaEQ7WUFFRCxJQUFJLFFBQVEsQ0FBQyxRQUFRLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUU7Z0JBQ2pELFFBQVEsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxHQUFHOzs7O2dCQUFDLFVBQUEsS0FBSyxJQUFJLE9BQUEsc0JBQzlDLEtBQUssSUFDUixHQUFHLEVBQUssU0FBUyxTQUFJLEtBQUssQ0FBQyxJQUFJLFNBQUksS0FBSyxDQUFDLElBQU0sSUFDL0MsRUFIaUQsQ0FHakQsRUFBQyxDQUFDO2FBQ0w7WUFFRCw0QkFBWSxLQUFLLEVBQUssUUFBUSxFQUFHO1NBQ2xDO2FBQU0sSUFBSSxLQUFLLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFO1lBQ2xELEtBQUssQ0FBQyxRQUFRLEdBQUcsY0FBYyxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDLFNBQVMsSUFBSSxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDbEc7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUMsRUFBQyxDQUFDO0lBRUgsSUFBSSxTQUFTLEVBQUU7UUFDYixrQkFBa0I7UUFDbEIsT0FBTyxNQUFNLENBQUM7S0FDZjtJQUVELE9BQU8sY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ2hDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdGF0ZSwgU2VsZWN0b3IsIGNyZWF0ZVNlbGVjdG9yLCBBY3Rpb24sIFN0YXRlQ29udGV4dCwgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBDb25maWcsIEFCUCB9IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgeyBHZXRBcHBDb25maWd1cmF0aW9uLCBQYXRjaFJvdXRlQnlOYW1lIH0gZnJvbSAnLi4vYWN0aW9ucy9jb25maWcuYWN0aW9ucyc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXBwbGljYXRpb24tY29uZmlndXJhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IHRhcCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHNucSBmcm9tICdzbnEnO1xuaW1wb3J0IHsgU2V0TGFuZ3VhZ2UgfSBmcm9tICcuLi9hY3Rpb25zJztcbmltcG9ydCB7IFNlc3Npb25TdGF0ZSB9IGZyb20gJy4vc2Vzc2lvbi5zdGF0ZSc7XG5pbXBvcnQgeyBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgc2V0Q2hpbGRSb3V0ZSwgc29ydFJvdXRlcywgb3JnYW5pemVSb3V0ZXMgfSBmcm9tICcuLi91dGlscy9yb3V0ZS11dGlscyc7XG5cbkBTdGF0ZTxDb25maWcuU3RhdGU+KHtcbiAgbmFtZTogJ0NvbmZpZ1N0YXRlJyxcbiAgZGVmYXVsdHM6IHt9IGFzIENvbmZpZy5TdGF0ZSxcbn0pXG5leHBvcnQgY2xhc3MgQ29uZmlnU3RhdGUge1xuICBAU2VsZWN0b3IoKVxuICBzdGF0aWMgZ2V0QWxsKHN0YXRlOiBDb25maWcuU3RhdGUpIHtcbiAgICByZXR1cm4gc3RhdGU7XG4gIH1cblxuICBAU2VsZWN0b3IoKVxuICBzdGF0aWMgZ2V0QXBwbGljYXRpb25JbmZvKHN0YXRlOiBDb25maWcuU3RhdGUpIHtcbiAgICByZXR1cm4gc3RhdGUuZW52aXJvbm1lbnQuYXBwbGljYXRpb24gfHwge307XG4gIH1cblxuICBzdGF0aWMgZ2V0T25lKGtleTogc3RyaW5nKSB7XG4gICAgY29uc3Qgc2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIFtDb25maWdTdGF0ZV0sXG4gICAgICBmdW5jdGlvbihzdGF0ZTogQ29uZmlnLlN0YXRlKSB7XG4gICAgICAgIHJldHVybiBzdGF0ZVtrZXldO1xuICAgICAgfSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHNlbGVjdG9yO1xuICB9XG5cbiAgc3RhdGljIGdldERlZXAoa2V5czogc3RyaW5nW10gfCBzdHJpbmcpIHtcbiAgICBpZiAodHlwZW9mIGtleXMgPT09ICdzdHJpbmcnKSB7XG4gICAgICBrZXlzID0ga2V5cy5zcGxpdCgnLicpO1xuICAgIH1cblxuICAgIGlmICghQXJyYXkuaXNBcnJheShrZXlzKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgYXJndW1lbnQgbXVzdCBiZSBhIGRvdCBzdHJpbmcgb3IgYW4gc3RyaW5nIGFycmF5LicpO1xuICAgIH1cblxuICAgIGNvbnN0IHNlbGVjdG9yID0gY3JlYXRlU2VsZWN0b3IoXG4gICAgICBbQ29uZmlnU3RhdGVdLFxuICAgICAgZnVuY3Rpb24oc3RhdGU6IENvbmZpZy5TdGF0ZSkge1xuICAgICAgICByZXR1cm4gKGtleXMgYXMgc3RyaW5nW10pLnJlZHVjZSgoYWNjLCB2YWwpID0+IHtcbiAgICAgICAgICBpZiAoYWNjKSB7XG4gICAgICAgICAgICByZXR1cm4gYWNjW3ZhbF07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfSwgc3RhdGUpO1xuICAgICAgfSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHNlbGVjdG9yO1xuICB9XG5cbiAgc3RhdGljIGdldFJvdXRlKHBhdGg/OiBzdHJpbmcsIG5hbWU/OiBzdHJpbmcpIHtcbiAgICBjb25zdCBzZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgW0NvbmZpZ1N0YXRlXSxcbiAgICAgIGZ1bmN0aW9uKHN0YXRlOiBDb25maWcuU3RhdGUpIHtcbiAgICAgICAgY29uc3QgeyBmbGF0dGVkUm91dGVzIH0gPSBzdGF0ZTtcbiAgICAgICAgcmV0dXJuIChmbGF0dGVkUm91dGVzIGFzIEFCUC5GdWxsUm91dGVbXSkuZmluZChyb3V0ZSA9PiB7XG4gICAgICAgICAgaWYgKHBhdGggJiYgcm91dGUucGF0aCA9PT0gcGF0aCkge1xuICAgICAgICAgICAgcmV0dXJuIHJvdXRlO1xuICAgICAgICAgIH0gZWxzZSBpZiAobmFtZSAmJiByb3V0ZS5uYW1lID09PSBuYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gcm91dGU7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHJldHVybiBzZWxlY3RvcjtcbiAgfVxuXG4gIHN0YXRpYyBnZXRBcGlVcmwoa2V5Pzogc3RyaW5nKSB7XG4gICAgY29uc3Qgc2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIFtDb25maWdTdGF0ZV0sXG4gICAgICBmdW5jdGlvbihzdGF0ZTogQ29uZmlnLlN0YXRlKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHN0YXRlLmVudmlyb25tZW50LmFwaXNba2V5IHx8ICdkZWZhdWx0J10udXJsO1xuICAgICAgfSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHNlbGVjdG9yO1xuICB9XG5cbiAgc3RhdGljIGdldFNldHRpbmcoa2V5OiBzdHJpbmcpIHtcbiAgICBjb25zdCBzZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgW0NvbmZpZ1N0YXRlXSxcbiAgICAgIGZ1bmN0aW9uKHN0YXRlOiBDb25maWcuU3RhdGUpIHtcbiAgICAgICAgcmV0dXJuIHNucSgoKSA9PiBzdGF0ZS5zZXR0aW5nLnZhbHVlc1trZXldKTtcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHJldHVybiBzZWxlY3RvcjtcbiAgfVxuXG4gIHN0YXRpYyBnZXRHcmFudGVkUG9saWN5KGtleTogc3RyaW5nKSB7XG4gICAgY29uc3Qgc2VsZWN0b3IgPSBjcmVhdGVTZWxlY3RvcihcbiAgICAgIFtDb25maWdTdGF0ZV0sXG4gICAgICBmdW5jdGlvbihzdGF0ZTogQ29uZmlnLlN0YXRlKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICgha2V5KSByZXR1cm4gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIHNucSgoKSA9PiBzdGF0ZS5hdXRoLmdyYW50ZWRQb2xpY2llc1trZXldLCBmYWxzZSk7XG4gICAgICB9LFxuICAgICk7XG5cbiAgICByZXR1cm4gc2VsZWN0b3I7XG4gIH1cblxuICBzdGF0aWMgZ2V0Q29weShrZXk6IHN0cmluZywgLi4uaW50ZXJwb2xhdGVQYXJhbXM6IHN0cmluZ1tdKSB7XG4gICAgaWYgKCFrZXkpIGtleSA9ICcnO1xuXG4gICAgY29uc3Qga2V5cyA9IGtleS5zcGxpdCgnOjonKSBhcyBzdHJpbmdbXTtcbiAgICBjb25zdCBzZWxlY3RvciA9IGNyZWF0ZVNlbGVjdG9yKFxuICAgICAgW0NvbmZpZ1N0YXRlXSxcbiAgICAgIGZ1bmN0aW9uKHN0YXRlOiBDb25maWcuU3RhdGUpIHtcbiAgICAgICAgaWYgKCFzdGF0ZS5sb2NhbGl6YXRpb24pIHJldHVybiBrZXk7XG5cbiAgICAgICAgY29uc3QgeyBkZWZhdWx0UmVzb3VyY2VOYW1lIH0gPSBzdGF0ZS5lbnZpcm9ubWVudC5sb2NhbGl6YXRpb247XG4gICAgICAgIGlmIChrZXlzWzBdID09PSAnJykge1xuICAgICAgICAgIGlmICghZGVmYXVsdFJlc291cmNlTmFtZSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICBgUGxlYXNlIGNoZWNrIHlvdXIgZW52aXJvbm1lbnQuIE1heSB5b3UgZm9yZ2V0IHNldCBkZWZhdWx0UmVzb3VyY2VOYW1lPyBcbiAgICAgICAgICAgICAgSGVyZSBpcyB0aGUgZXhhbXBsZTpcbiAgICAgICAgICAgICAgIHsgcHJvZHVjdGlvbjogZmFsc2UsXG4gICAgICAgICAgICAgICAgIGxvY2FsaXphdGlvbjoge1xuICAgICAgICAgICAgICAgICAgIGRlZmF1bHRSZXNvdXJjZU5hbWU6ICdNeVByb2plY3ROYW1lJ1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgfWAsXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGtleXNbMF0gPSBzbnEoKCkgPT4gZGVmYXVsdFJlc291cmNlTmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgY29weSA9IChrZXlzIGFzIGFueSkucmVkdWNlKChhY2MsIHZhbCkgPT4ge1xuICAgICAgICAgIGlmIChhY2MpIHtcbiAgICAgICAgICAgIHJldHVybiBhY2NbdmFsXTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9LCBzdGF0ZS5sb2NhbGl6YXRpb24udmFsdWVzKTtcblxuICAgICAgICBpbnRlcnBvbGF0ZVBhcmFtcyA9IGludGVycG9sYXRlUGFyYW1zLmZpbHRlcihwYXJhbXMgPT4gcGFyYW1zICE9IG51bGwpO1xuICAgICAgICBpZiAoY29weSAmJiBpbnRlcnBvbGF0ZVBhcmFtcyAmJiBpbnRlcnBvbGF0ZVBhcmFtcy5sZW5ndGgpIHtcbiAgICAgICAgICBpbnRlcnBvbGF0ZVBhcmFtcy5mb3JFYWNoKHBhcmFtID0+IHtcbiAgICAgICAgICAgIGNvcHkgPSBjb3B5LnJlcGxhY2UoL1tcXCdcXFwiXT9cXHtbXFxkXStcXH1bXFwnXFxcIl0/LywgcGFyYW0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNvcHkgfHwga2V5O1xuICAgICAgfSxcbiAgICApO1xuXG4gICAgcmV0dXJuIHNlbGVjdG9yO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhcHBDb25maWd1cmF0aW9uU2VydmljZTogQXBwbGljYXRpb25Db25maWd1cmF0aW9uU2VydmljZSwgcHJpdmF0ZSBzdG9yZTogU3RvcmUpIHt9XG5cbiAgQEFjdGlvbihHZXRBcHBDb25maWd1cmF0aW9uKVxuICBhZGREYXRhKHsgcGF0Y2hTdGF0ZSwgZGlzcGF0Y2ggfTogU3RhdGVDb250ZXh0PENvbmZpZy5TdGF0ZT4pIHtcbiAgICByZXR1cm4gdGhpcy5hcHBDb25maWd1cmF0aW9uU2VydmljZS5nZXRDb25maWd1cmF0aW9uKCkucGlwZShcbiAgICAgIHRhcChjb25maWd1cmF0aW9uID0+XG4gICAgICAgIHBhdGNoU3RhdGUoe1xuICAgICAgICAgIC4uLmNvbmZpZ3VyYXRpb24sXG4gICAgICAgIH0pLFxuICAgICAgKSxcbiAgICAgIHN3aXRjaE1hcChjb25maWd1cmF0aW9uID0+IHtcbiAgICAgICAgbGV0IGRlZmF1bHRMYW5nOiBzdHJpbmcgPSBjb25maWd1cmF0aW9uLnNldHRpbmcudmFsdWVzWydBYnAuTG9jYWxpemF0aW9uLkRlZmF1bHRMYW5ndWFnZSddO1xuXG4gICAgICAgIGlmIChkZWZhdWx0TGFuZy5pbmNsdWRlcygnOycpKSB7XG4gICAgICAgICAgZGVmYXVsdExhbmcgPSBkZWZhdWx0TGFuZy5zcGxpdCgnOycpWzBdO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoU2Vzc2lvblN0YXRlLmdldExhbmd1YWdlKSA/IG9mKG51bGwpIDogZGlzcGF0Y2gobmV3IFNldExhbmd1YWdlKGRlZmF1bHRMYW5nKSk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgQEFjdGlvbihQYXRjaFJvdXRlQnlOYW1lKVxuICBwYXRjaFJvdXRlKHsgcGF0Y2hTdGF0ZSwgZ2V0U3RhdGUgfTogU3RhdGVDb250ZXh0PENvbmZpZy5TdGF0ZT4sIHsgbmFtZSwgbmV3VmFsdWUgfTogUGF0Y2hSb3V0ZUJ5TmFtZSkge1xuICAgIGxldCByb3V0ZXM6IEFCUC5GdWxsUm91dGVbXSA9IGdldFN0YXRlKCkucm91dGVzO1xuXG4gICAgY29uc3QgaW5kZXggPSByb3V0ZXMuZmluZEluZGV4KHJvdXRlID0+IHJvdXRlLm5hbWUgPT09IG5hbWUpO1xuXG4gICAgcm91dGVzID0gcGF0Y2hSb3V0ZURlZXAocm91dGVzLCBuYW1lLCBuZXdWYWx1ZSk7XG5cbiAgICByZXR1cm4gcGF0Y2hTdGF0ZSh7XG4gICAgICByb3V0ZXMsXG4gICAgfSk7XG4gIH1cbn1cblxuZnVuY3Rpb24gcGF0Y2hSb3V0ZURlZXAoXG4gIHJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdLFxuICBuYW1lOiBzdHJpbmcsXG4gIG5ld1ZhbHVlOiBQYXJ0aWFsPEFCUC5GdWxsUm91dGU+LFxuICBwYXJlbnRVcmw6IHN0cmluZyA9IG51bGwsXG4pOiBBQlAuRnVsbFJvdXRlW10ge1xuICByb3V0ZXMgPSByb3V0ZXMubWFwKHJvdXRlID0+IHtcbiAgICBpZiAocm91dGUubmFtZSA9PT0gbmFtZSkge1xuICAgICAgaWYgKG5ld1ZhbHVlLnBhdGgpIHtcbiAgICAgICAgbmV3VmFsdWUudXJsID0gYCR7cGFyZW50VXJsfS8ke25ld1ZhbHVlLnBhdGh9YDtcbiAgICAgIH1cblxuICAgICAgaWYgKG5ld1ZhbHVlLmNoaWxkcmVuICYmIG5ld1ZhbHVlLmNoaWxkcmVuLmxlbmd0aCkge1xuICAgICAgICBuZXdWYWx1ZS5jaGlsZHJlbiA9IG5ld1ZhbHVlLmNoaWxkcmVuLm1hcChjaGlsZCA9PiAoe1xuICAgICAgICAgIC4uLmNoaWxkLFxuICAgICAgICAgIHVybDogYCR7cGFyZW50VXJsfS8ke3JvdXRlLnBhdGh9LyR7Y2hpbGQucGF0aH1gLFxuICAgICAgICB9KSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB7IC4uLnJvdXRlLCAuLi5uZXdWYWx1ZSB9O1xuICAgIH0gZWxzZSBpZiAocm91dGUuY2hpbGRyZW4gJiYgcm91dGUuY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICByb3V0ZS5jaGlsZHJlbiA9IHBhdGNoUm91dGVEZWVwKHJvdXRlLmNoaWxkcmVuLCBuYW1lLCBuZXdWYWx1ZSwgKHBhcmVudFVybCB8fCAnLycpICsgcm91dGUucGF0aCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJvdXRlO1xuICB9KTtcblxuICBpZiAocGFyZW50VXJsKSB7XG4gICAgLy8gcmVjdXJzaXZlIGJsb2NrXG4gICAgcmV0dXJuIHJvdXRlcztcbiAgfVxuXG4gIHJldHVybiBvcmdhbml6ZVJvdXRlcyhyb3V0ZXMpO1xufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/core/esm5/public-api.js b/npm/ng-packs/dist/core/esm5/public-api.js index c6a48c31c5..4579287e4b 100644 --- a/npm/ng-packs/dist/core/esm5/public-api.js +++ b/npm/ng-packs/dist/core/esm5/public-api.js @@ -9,7 +9,7 @@ export { PatchRouteByName, GetAppConfiguration, StartLoader, StopLoader, GetProfile, UpdateProfile, ChangePassword, RestOccurError, SetLanguage, SetTenant } from './lib/actions'; export { DynamicLayoutComponent, RouterOutletComponent } from './lib/components'; export {} from './lib/constants'; -export { AutofocusDirective, EllipsisDirective, FormSubmitDirective, PermissionDirective, VisibilityDirective } from './lib/directives'; +export { AutofocusDirective, EllipsisDirective, ForDirective, FormSubmitDirective, PermissionDirective, VisibilityDirective } from './lib/directives'; export {} from './lib/enums'; export { AuthGuard, PermissionGuard } from './lib/guards'; export { ApiInterceptor } from './lib/interceptors'; @@ -20,4 +20,4 @@ export { ProfileState, ConfigState, SessionState } from './lib/states'; export { environmentFactory, configFactory, ENVIRONMENT, CONFIG } from './lib/tokens'; export { noop, uuid, getInitialData, localeInitializer, registerLocale, organizeRoutes, setChildRoute, sortRoutes, takeUntilDestroy } from './lib/utils'; export { CoreModule } from './lib/core.module'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuY29yZS8iLCJzb3VyY2VzIjpbInB1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFLQSxrS0FBYyxlQUFlLENBQUM7QUFDOUIsOERBQWMsa0JBQWtCLENBQUM7QUFDakMsZUFBYyxpQkFBaUIsQ0FBQztBQUNoQyxxSEFBYyxrQkFBa0IsQ0FBQztBQUNqQyxlQUFjLGFBQWEsQ0FBQztBQUM1QiwyQ0FBYyxjQUFjLENBQUM7QUFDN0IsK0JBQWMsb0JBQW9CLENBQUM7QUFDbkMscUJBQWMsY0FBYyxDQUFDO0FBQzdCLHlEQUFjLGVBQWUsQ0FBQztBQUM5QixrSUFBYyxnQkFBZ0IsQ0FBQztBQUMvQix3REFBYyxjQUFjLENBQUM7QUFDN0IsdUVBQWMsY0FBYyxDQUFDO0FBQzdCLDJJQUFjLGFBQWEsQ0FBQztBQUU1QiwyQkFBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgY29yZVxuICovXG5cbi8vIGV4cG9ydCAqIGZyb20gJy4vbGliL2hhbmRsZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbnVtcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ndWFyZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJjZXB0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wbHVnaW5zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXRlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90b2tlbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXRpbHMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlLm1vZHVsZSc7XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuY29yZS8iLCJzb3VyY2VzIjpbInB1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFLQSxrS0FBYyxlQUFlLENBQUM7QUFDOUIsOERBQWMsa0JBQWtCLENBQUM7QUFDakMsZUFBYyxpQkFBaUIsQ0FBQztBQUNoQyxtSUFBYyxrQkFBa0IsQ0FBQztBQUNqQyxlQUFjLGFBQWEsQ0FBQztBQUM1QiwyQ0FBYyxjQUFjLENBQUM7QUFDN0IsK0JBQWMsb0JBQW9CLENBQUM7QUFDbkMscUJBQWMsY0FBYyxDQUFDO0FBQzdCLHlEQUFjLGVBQWUsQ0FBQztBQUM5QixrSUFBYyxnQkFBZ0IsQ0FBQztBQUMvQix3REFBYyxjQUFjLENBQUM7QUFDN0IsdUVBQWMsY0FBYyxDQUFDO0FBQzdCLDJJQUFjLGFBQWEsQ0FBQztBQUU1QiwyQkFBYyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgY29yZVxuICovXG5cbi8vIGV4cG9ydCAqIGZyb20gJy4vbGliL2hhbmRsZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9lbnVtcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ndWFyZHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJjZXB0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wbHVnaW5zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXRlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90b2tlbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXRpbHMnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlLm1vZHVsZSc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/core/fesm2015/abp-ng.core.js b/npm/ng-packs/dist/core/fesm2015/abp-ng.core.js index 249358f969..fe7bbeb15a 100644 --- a/npm/ng-packs/dist/core/fesm2015/abp-ng.core.js +++ b/npm/ng-packs/dist/core/fesm2015/abp-ng.core.js @@ -1,12 +1,14 @@ -import { __rest, __decorate, __metadata, __awaiter } from 'tslib'; -import { Injectable, ɵɵdefineInjectable, ɵɵinject, Optional, SkipSelf, Component, Directive, ElementRef, Input, ChangeDetectorRef, HostBinding, EventEmitter, Self, Output, Renderer2, InjectionToken, Inject, Pipe, LOCALE_ID, APP_INITIALIZER, Injector, NgModule } from '@angular/core'; -import { Router, NavigationEnd, RouterModule } from '@angular/router'; -import { Store, Action, Selector, State, Actions, createSelector, Select, actionMatcher, InitState, UpdateState, setValue, NGXS_PLUGINS, NgxsModule } from '@ngxs/store'; -import { throwError, noop as noop$1, combineLatest, from, of, Subject, Observable, fromEvent, ReplaySubject } from 'rxjs'; -import { HttpClient, HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http'; -import { take, catchError, tap, switchMap, takeUntil, debounceTime, filter, finalize, distinctUntilChanged } from 'rxjs/operators'; +import { __decorate, __metadata, __awaiter, __rest } from 'tslib'; +import { Injectable, ɵɵdefineInjectable, ɵɵinject, Optional, SkipSelf, Component, Directive, ElementRef, Input, ChangeDetectorRef, HostBinding, TemplateRef, ViewContainerRef, IterableDiffers, EventEmitter, Self, Output, Renderer2, InjectionToken, Inject, Pipe, LOCALE_ID, APP_INITIALIZER, Injector, NgModule } from '@angular/core'; +import { Router, NavigationEnd, ActivatedRoute, RouterModule } from '@angular/router'; +import { Action, Selector, State, Store, Actions, createSelector, Select, actionMatcher, InitState, UpdateState, setValue, NGXS_PLUGINS, NgxsModule } from '@ngxs/store'; +import { noop as noop$1, combineLatest, from, throwError, of, Subject, Observable, fromEvent, ReplaySubject } from 'rxjs'; import snq from 'snq'; +import { HttpClient, HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http'; +import { tap, take, catchError, switchMap, takeUntil, debounceTime, filter, finalize, distinctUntilChanged } from 'rxjs/operators'; import { registerLocaleData, CommonModule } from '@angular/common'; +import compare from 'just-compare'; +import clone from 'just-clone'; import { FormGroupDirective, FormsModule, ReactiveFormsModule } from '@angular/forms'; import { OAuthService } from 'angular-oauth2-oidc'; import { Navigate, NgxsRouterPluginModule } from '@ngxs/router-plugin'; @@ -181,76 +183,6 @@ if (false) { * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class RestService { - /** - * @param {?} http - * @param {?} store - */ - constructor(http, store) { - this.http = http; - this.store = store; - } - /** - * @param {?} err - * @return {?} - */ - handleError(err) { - this.store.dispatch(new RestOccurError(err)); - console.error(err); - return throwError(err); - } - /** - * @template T, R - * @param {?} request - * @param {?=} config - * @param {?=} api - * @return {?} - */ - request(request, config = {}, api) { - const { observe = "body" /* Body */, skipHandleError } = config; - /** @type {?} */ - const url = api || this.store.selectSnapshot(ConfigState.getApiUrl()) + request.url; - const { method } = request, options = __rest(request, ["method"]); - return this.http.request(method, url, (/** @type {?} */ (Object.assign({ observe }, options)))).pipe(observe === "body" /* Body */ ? take(1) : null, catchError((/** - * @param {?} err - * @return {?} - */ - err => { - if (skipHandleError) { - return throwError(err); - } - return this.handleError(err); - }))); - } -} -RestService.decorators = [ - { type: Injectable, args: [{ - providedIn: 'root', - },] } -]; -/** @nocollapse */ -RestService.ctorParameters = () => [ - { type: HttpClient }, - { type: Store } -]; -/** @nocollapse */ RestService.ngInjectableDef = ɵɵdefineInjectable({ factory: function RestService_Factory() { return new RestService(ɵɵinject(HttpClient), ɵɵinject(Store)); }, token: RestService, providedIn: "root" }); -if (false) { - /** - * @type {?} - * @private - */ - RestService.prototype.http; - /** - * @type {?} - * @private - */ - RestService.prototype.store; -} - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -412,47 +344,6 @@ if (false) { ProfileState.prototype.profileService; } -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class ApplicationConfigurationService { - /** - * @param {?} rest - */ - constructor(rest) { - this.rest = rest; - } - /** - * @return {?} - */ - getConfiguration() { - /** @type {?} */ - const request = { - method: 'GET', - url: '/api/abp/application-configuration', - }; - return this.rest.request(request); - } -} -ApplicationConfigurationService.decorators = [ - { type: Injectable, args: [{ - providedIn: 'root', - },] } -]; -/** @nocollapse */ -ApplicationConfigurationService.ctorParameters = () => [ - { type: RestService } -]; -/** @nocollapse */ ApplicationConfigurationService.ngInjectableDef = ɵɵdefineInjectable({ factory: function ApplicationConfigurationService_Factory() { return new ApplicationConfigurationService(ɵɵinject(RestService)); }, token: ApplicationConfigurationService, providedIn: "root" }); -if (false) { - /** - * @type {?} - * @private - */ - ApplicationConfigurationService.prototype.rest; -} - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -737,6 +628,122 @@ if (false) { SessionState.prototype.localizationService; } +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +class RestService { + /** + * @param {?} http + * @param {?} store + */ + constructor(http, store) { + this.http = http; + this.store = store; + } + /** + * @param {?} err + * @return {?} + */ + handleError(err) { + this.store.dispatch(new RestOccurError(err)); + console.error(err); + return throwError(err); + } + /** + * @template T, R + * @param {?} request + * @param {?=} config + * @param {?=} api + * @return {?} + */ + request(request, config = {}, api) { + const { observe = "body" /* Body */, skipHandleError } = config; + /** @type {?} */ + const url = api || this.store.selectSnapshot(ConfigState.getApiUrl()) + request.url; + const { method } = request, options = __rest(request, ["method"]); + return this.http.request(method, url, (/** @type {?} */ (Object.assign({ observe }, options)))).pipe(observe === "body" /* Body */ ? take(1) : null, catchError((/** + * @param {?} err + * @return {?} + */ + err => { + if (skipHandleError) { + return throwError(err); + } + return this.handleError(err); + }))); + } +} +RestService.decorators = [ + { type: Injectable, args: [{ + providedIn: 'root', + },] } +]; +/** @nocollapse */ +RestService.ctorParameters = () => [ + { type: HttpClient }, + { type: Store } +]; +/** @nocollapse */ RestService.ngInjectableDef = ɵɵdefineInjectable({ factory: function RestService_Factory() { return new RestService(ɵɵinject(HttpClient), ɵɵinject(Store)); }, token: RestService, providedIn: "root" }); +if (false) { + /** + * @type {?} + * @private + */ + RestService.prototype.http; + /** + * @type {?} + * @private + */ + RestService.prototype.store; +} + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +class ApplicationConfigurationService { + /** + * @param {?} rest + */ + constructor(rest) { + this.rest = rest; + } + /** + * @return {?} + */ + getConfiguration() { + /** @type {?} */ + const request = { + method: 'GET', + url: '/api/abp/application-configuration', + }; + return this.rest.request(request); + } +} +ApplicationConfigurationService.decorators = [ + { type: Injectable, args: [{ + providedIn: 'root', + },] } +]; +/** @nocollapse */ +ApplicationConfigurationService.ctorParameters = () => [ + { type: RestService } +]; +/** @nocollapse */ ApplicationConfigurationService.ngInjectableDef = ɵɵdefineInjectable({ factory: function ApplicationConfigurationService_Factory() { return new ApplicationConfigurationService(ɵɵinject(RestService)); }, token: ApplicationConfigurationService, providedIn: "root" }); +if (false) { + /** + * @type {?} + * @private + */ + ApplicationConfigurationService.prototype.rest; +} + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -909,7 +916,19 @@ let ConfigState = ConfigState_1 = class ConfigState { * @return {?} */ function (state) { - return findRoute(state.routes, path, name); + const { flattedRoutes } = state; + return ((/** @type {?} */ (flattedRoutes))).find((/** + * @param {?} route + * @return {?} + */ + route => { + if (path && route.path === path) { + return route; + } + else if (name && route.name === name) { + return route; + } + })); })); return selector; } @@ -947,50 +966,22 @@ let ConfigState = ConfigState_1 = class ConfigState { return selector; } /** - * @param {?=} condition + * @param {?} key * @return {?} */ - static getGrantedPolicy(condition = '') { - /** @type {?} */ - const keys = condition - .replace(/\(|\)|\!|\s/g, '') - .split(/\|\||&&/) - .filter((/** - * @param {?} key - * @return {?} - */ - key => key)); + static getGrantedPolicy(key) { /** @type {?} */ const selector = createSelector([ConfigState_1], (/** * @param {?} state * @return {?} */ function (state) { - if (!keys.length) + if (!key) return true; - /** @type {?} */ - const getPolicy = (/** - * @param {?} key - * @return {?} - */ - key => snq((/** + return snq((/** * @return {?} */ - () => state.auth.grantedPolicies[key]), false)); - if (keys.length > 1) { - keys.forEach((/** - * @param {?} key - * @return {?} - */ - key => { - /** @type {?} */ - const value = getPolicy(key); - condition = condition.replace(key, value); - })); - // tslint:disable-next-line: no-eval - return eval(`!!${condition}`); - } - return getPolicy(condition); + () => state.auth.grantedPolicies[key]), false); })); return selector; } @@ -1029,7 +1020,7 @@ let ConfigState = ConfigState_1 = class ConfigState { () => defaultResourceName)); } /** @type {?} */ - let copy = keys.reduce((/** + let copy = ((/** @type {?} */ (keys))).reduce((/** * @param {?} acc * @param {?} val * @return {?} @@ -1180,71 +1171,6 @@ function patchRouteDeep(routes, name, newValue, parentUrl = null) { } return organizeRoutes(routes); } -/** - * @param {?} routes - * @param {?=} path - * @param {?=} name - * @return {?} - */ -function findRoute(routes, path, name) { - /** @type {?} */ - let foundRoute; - routes.forEach((/** - * @param {?} route - * @return {?} - */ - route => { - if (foundRoute) - return; - if (path && route.path === path) { - foundRoute = route; - } - else if (name && route.name === name) { - foundRoute = route; - return; - } - else if (route.children && route.children.length) { - foundRoute = findRoute(route.children, path, name); - return; - } - })); - return foundRoute; -} - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -/** - * @return {?} - */ -function noop() { - /** @type {?} */ - const fn = (/** - * @return {?} - */ - function () { }); - return fn; -} - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -/** - * @param {?=} a - * @return {?} - */ -function uuid(a) { - return a - ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16) - : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid); -} /** * @fileoverview added by tsickle @@ -1288,11 +1214,6 @@ const takeUntilDestroy = (/** return source.pipe(takeUntil(componentInstance['__takeUntilDestroy'])); })); -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -1300,11 +1221,30 @@ const takeUntilDestroy = (/** class DynamicLayoutComponent { /** * @param {?} router + * @param {?} route * @param {?} store */ - constructor(router, store) { + constructor(router, route, store) { this.router = router; + this.route = route; this.store = store; + const { requirements: { layouts }, routes, } = this.store.selectSnapshot(ConfigState.getAll); + if ((this.route.snapshot.data || {}).layout) { + this.layout = layouts + .filter((/** + * @param {?} l + * @return {?} + */ + l => !!l)) + .find((/** + * @param {?} l + * @return {?} + */ + (l) => snq((/** + * @return {?} + */ + () => l.type.toLowerCase().indexOf(this.route.snapshot.data.layout)), -1) > -1)); + } this.router.events.pipe(takeUntilDestroy(this)).subscribe((/** * @param {?} event * @return {?} @@ -1312,18 +1252,19 @@ class DynamicLayoutComponent { event => { if (event instanceof NavigationEnd) { const { segments } = this.router.parseUrl(event.url).root.children.primary; - const { requirements: { layouts }, routes, } = this.store.selectSnapshot(ConfigState.getAll); /** @type {?} */ - const layout = findLayout(segments, routes); - this.layout = layouts.filter((/** + const layout = (this.route.snapshot.data || {}).layout || findLayout(segments, routes); + this.layout = layouts + .filter((/** * @param {?} l * @return {?} */ - l => !!l)).find((/** + l => !!l)) + .find((/** * @param {?} l * @return {?} */ - l => snq((/** + (l) => snq((/** * @return {?} */ () => l.type.toLowerCase().indexOf(layout)), -1) > -1)); @@ -1349,6 +1290,7 @@ DynamicLayoutComponent.decorators = [ /** @nocollapse */ DynamicLayoutComponent.ctorParameters = () => [ { type: Router }, + { type: ActivatedRoute }, { type: Store } ]; __decorate([ @@ -1365,6 +1307,11 @@ if (false) { * @private */ DynamicLayoutComponent.prototype.router; + /** + * @type {?} + * @private + */ + DynamicLayoutComponent.prototype.route; /** * @type {?} * @private @@ -1566,6 +1513,312 @@ if (false) { EllipsisDirective.prototype.elRef; } +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +class AbpForContext { + /** + * @param {?} $implicit + * @param {?} index + * @param {?} count + * @param {?} list + */ + constructor($implicit, index, count, list) { + this.$implicit = $implicit; + this.index = index; + this.count = count; + this.list = list; + } +} +if (false) { + /** @type {?} */ + AbpForContext.prototype.$implicit; + /** @type {?} */ + AbpForContext.prototype.index; + /** @type {?} */ + AbpForContext.prototype.count; + /** @type {?} */ + AbpForContext.prototype.list; +} +class RecordView { + /** + * @param {?} record + * @param {?} view + */ + constructor(record, view) { + this.record = record; + this.view = view; + } +} +if (false) { + /** @type {?} */ + RecordView.prototype.record; + /** @type {?} */ + RecordView.prototype.view; +} +class ForDirective { + /** + * @param {?} tempRef + * @param {?} vcRef + * @param {?} differs + */ + constructor(tempRef, vcRef, differs) { + this.tempRef = tempRef; + this.vcRef = vcRef; + this.differs = differs; + } + /** + * @return {?} + */ + get compareFn() { + return this.compareBy || compare; + } + /** + * @return {?} + */ + get trackByFn() { + return this.trackBy || ((/** + * @param {?} index + * @param {?} item + * @return {?} + */ + (index, item) => ((/** @type {?} */ (item))).id || index)); + } + /** + * @private + * @param {?} changes + * @return {?} + */ + iterateOverAppliedOperations(changes) { + /** @type {?} */ + const rw = []; + changes.forEachOperation((/** + * @param {?} record + * @param {?} previousIndex + * @param {?} currentIndex + * @return {?} + */ + (record, previousIndex, currentIndex) => { + if (record.previousIndex == null) { + /** @type {?} */ + const view = this.vcRef.createEmbeddedView(this.tempRef, new AbpForContext(null, -1, -1, this.items), currentIndex); + rw.push(new RecordView(record, view)); + } + else if (currentIndex == null) { + this.vcRef.remove(previousIndex); + } + else { + /** @type {?} */ + const view = this.vcRef.get(previousIndex); + this.vcRef.move(view, currentIndex); + rw.push(new RecordView(record, (/** @type {?} */ (view)))); + } + })); + for (let i = 0, l = rw.length; i < l; i++) { + rw[i].view.context.$implicit = rw[i].record.item; + } + } + /** + * @private + * @param {?} changes + * @return {?} + */ + iterateOverAttachedViews(changes) { + for (let i = 0, l = this.vcRef.length; i < l; i++) { + /** @type {?} */ + const viewRef = (/** @type {?} */ (this.vcRef.get(i))); + viewRef.context.index = i; + viewRef.context.count = l; + viewRef.context.list = this.items; + } + changes.forEachIdentityChange((/** + * @param {?} record + * @return {?} + */ + (record) => { + /** @type {?} */ + const viewRef = (/** @type {?} */ (this.vcRef.get(record.currentIndex))); + viewRef.context.$implicit = record.item; + })); + } + /** + * @private + * @param {?} items + * @return {?} + */ + projectItems(items) { + if (!items.length && this.emptyRef) { + this.vcRef.createEmbeddedView(this.emptyRef).rootNodes; + this.isShowEmptyRef = true; + return; + } + if (this.emptyRef && this.isShowEmptyRef) { + this.vcRef.clear(); + this.isShowEmptyRef = false; + } + if (!this.differ && items) { + this.differ = this.differs.find(items).create(this.trackByFn); + } + if (this.differ) { + /** @type {?} */ + const changes = this.differ.diff(items); + if (changes) { + this.iterateOverAppliedOperations(changes); + this.iterateOverAttachedViews(changes); + } + } + } + /** + * @private + * @param {?} items + * @return {?} + */ + sortItems(items) { + if (this.orderBy) { + items.sort((/** + * @param {?} a + * @param {?} b + * @return {?} + */ + (a, b) => (a[this.orderBy] > b[this.orderBy] ? 1 : a[this.orderBy] < b[this.orderBy] ? -1 : 0))); + } + else { + items.sort(); + } + } + /** + * @return {?} + */ + ngOnChanges() { + /** @type {?} */ + let items = (/** @type {?} */ (clone(this.items))); + if (!Array.isArray(items)) + return; + /** @type {?} */ + const compareFn = this.compareFn; + if (typeof this.filterBy !== 'undefined') { + items = items.filter((/** + * @param {?} item + * @return {?} + */ + item => compareFn(item[this.filterBy], this.filterVal))); + } + switch (this.orderDir) { + case 'ASC': + this.sortItems(items); + this.projectItems(items); + break; + case 'DESC': + this.sortItems(items); + items.reverse(); + this.projectItems(items); + break; + default: + this.projectItems(items); + } + } +} +ForDirective.decorators = [ + { type: Directive, args: [{ + selector: '[abpFor]', + },] } +]; +/** @nocollapse */ +ForDirective.ctorParameters = () => [ + { type: TemplateRef }, + { type: ViewContainerRef }, + { type: IterableDiffers } +]; +ForDirective.propDecorators = { + items: [{ type: Input, args: ['abpForOf',] }], + orderBy: [{ type: Input, args: ['abpForOrderBy',] }], + orderDir: [{ type: Input, args: ['abpForOrderDir',] }], + filterBy: [{ type: Input, args: ['abpForFilterBy',] }], + filterVal: [{ type: Input, args: ['abpForFilterVal',] }], + trackBy: [{ type: Input, args: ['abpForTrackBy',] }], + compareBy: [{ type: Input, args: ['abpForCompareBy',] }], + emptyRef: [{ type: Input, args: ['abpForEmptyRef',] }] +}; +if (false) { + /** @type {?} */ + ForDirective.prototype.items; + /** @type {?} */ + ForDirective.prototype.orderBy; + /** @type {?} */ + ForDirective.prototype.orderDir; + /** @type {?} */ + ForDirective.prototype.filterBy; + /** @type {?} */ + ForDirective.prototype.filterVal; + /** @type {?} */ + ForDirective.prototype.trackBy; + /** @type {?} */ + ForDirective.prototype.compareBy; + /** @type {?} */ + ForDirective.prototype.emptyRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.differ; + /** + * @type {?} + * @private + */ + ForDirective.prototype.isShowEmptyRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.tempRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.vcRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.differs; +} + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +/** + * @return {?} + */ +function noop() { + /** @type {?} */ + const fn = (/** + * @return {?} + */ + function () { }); + return fn; +} + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +/** + * @param {?=} a + * @return {?} + */ +function uuid(a) { + return a + ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16) + : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid); +} + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -1887,6 +2140,7 @@ const eLayoutType = { account: 'account', application: 'application', empty: 'empty', + setting: 'setting', }; /** @@ -2273,11 +2527,6 @@ var ABP; */ var Config; (function (Config) { - /** - * @record - */ - function State() { } - Config.State = State; /** * @record */ @@ -2292,6 +2541,8 @@ var Config; Environment.prototype.oAuthConfig; /** @type {?} */ Environment.prototype.apis; + /** @type {?} */ + Environment.prototype.localization; } /** * @record @@ -2463,7 +2714,10 @@ class ConfigPlugin { if (isInitAction && !this.initialized) { let { routes, wrappers } = transformRoutes(this.router.config); routes = organizeRoutes(routes, wrappers); - state = setValue(state, 'ConfigState', Object.assign({}, (state.ConfigState && Object.assign({}, state.ConfigState)), this.options, { routes })); + /** @type {?} */ + const flattedRoutes = flatRoutes(clone(routes)); + state = setValue(state, 'ConfigState', Object.assign({}, (state.ConfigState && Object.assign({}, state.ConfigState)), this.options, { routes, + flattedRoutes })); this.initialized = true; } return next(state, event); @@ -2588,6 +2842,35 @@ function setUrls(routes, parentUrl) { children: setUrls(route.children, `/${route.path}`), }))))); } +/** + * @param {?} routes + * @return {?} + */ +function flatRoutes(routes) { + /** @type {?} */ + const flat = (/** + * @param {?} r + * @return {?} + */ + (r) => { + return r.reduce((/** + * @param {?} acc + * @param {?} val + * @return {?} + */ + (acc, val) => { + /** @type {?} */ + let value = [val]; + if (val.children) { + const { children } = val; + delete val.children; + value = [val, ...flat(children)]; + } + return [...acc, ...value]; + }), []); + }); + return flat(routes); +} /** * @fileoverview added by tsickle @@ -3040,6 +3323,7 @@ CoreModule.decorators = [ DynamicLayoutComponent, AutofocusDirective, EllipsisDirective, + ForDirective, FormSubmitDirective, LocalizationPipe, PermissionDirective, @@ -3057,6 +3341,7 @@ CoreModule.decorators = [ DynamicLayoutComponent, AutofocusDirective, EllipsisDirective, + ForDirective, FormSubmitDirective, LocalizationPipe, PermissionDirective, @@ -3080,5 +3365,5 @@ CoreModule.decorators = [ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { ApiInterceptor, ApplicationConfigurationService, AuthGuard, AutofocusDirective, CONFIG, ChangePassword, ConfigPlugin, ConfigService, ConfigState, CoreModule, DynamicLayoutComponent, ENVIRONMENT, EllipsisDirective, FormSubmitDirective, GetAppConfiguration, GetProfile, LazyLoadService, LocalizationService, NGXS_CONFIG_PLUGIN_OPTIONS, PatchRouteByName, PermissionDirective, PermissionGuard, ProfileService, ProfileState, Rest, RestOccurError, RestService, RouterOutletComponent, SessionState, SetLanguage, SetTenant, StartLoader, StopLoader, UpdateProfile, VisibilityDirective, configFactory, environmentFactory, getInitialData, localeInitializer, noop, organizeRoutes, registerLocale, setChildRoute, sortRoutes, takeUntilDestroy, uuid, ProfileState as ɵa, ProfileService as ɵb, ClickEventStopPropagationDirective as ɵba, LocaleId as ɵbb, LocaleProvider as ɵbc, NGXS_CONFIG_PLUGIN_OPTIONS as ɵbd, ConfigPlugin as ɵbe, ApiInterceptor as ɵbf, getInitialData as ɵbg, localeInitializer as ɵbh, RestService as ɵc, GetProfile as ɵd, UpdateProfile as ɵe, ChangePassword as ɵf, SessionState as ɵh, LocalizationService as ɵi, SetLanguage as ɵj, SetTenant as ɵk, ConfigState as ɵm, ApplicationConfigurationService as ɵn, PatchRouteByName as ɵo, GetAppConfiguration as ɵp, RouterOutletComponent as ɵq, DynamicLayoutComponent as ɵr, ConfigState as ɵs, AutofocusDirective as ɵt, EllipsisDirective as ɵu, FormSubmitDirective as ɵv, LocalizationPipe as ɵw, PermissionDirective as ɵx, VisibilityDirective as ɵy, InputEventDebounceDirective as ɵz }; +export { ApiInterceptor, ApplicationConfigurationService, AuthGuard, AutofocusDirective, CONFIG, ChangePassword, ConfigPlugin, ConfigService, ConfigState, CoreModule, DynamicLayoutComponent, ENVIRONMENT, EllipsisDirective, ForDirective, FormSubmitDirective, GetAppConfiguration, GetProfile, LazyLoadService, LocalizationService, NGXS_CONFIG_PLUGIN_OPTIONS, PatchRouteByName, PermissionDirective, PermissionGuard, ProfileService, ProfileState, Rest, RestOccurError, RestService, RouterOutletComponent, SessionState, SetLanguage, SetTenant, StartLoader, StopLoader, UpdateProfile, VisibilityDirective, configFactory, environmentFactory, getInitialData, localeInitializer, noop, organizeRoutes, registerLocale, setChildRoute, sortRoutes, takeUntilDestroy, uuid, ProfileState as ɵa, ProfileService as ɵb, ClickEventStopPropagationDirective as ɵba, LocaleId as ɵbb, LocaleProvider as ɵbc, NGXS_CONFIG_PLUGIN_OPTIONS as ɵbd, ConfigPlugin as ɵbe, ApiInterceptor as ɵbf, getInitialData as ɵbg, localeInitializer as ɵbh, RestService as ɵc, GetProfile as ɵd, UpdateProfile as ɵe, ChangePassword as ɵf, SessionState as ɵh, LocalizationService as ɵi, SetLanguage as ɵj, SetTenant as ɵk, ConfigState as ɵm, ApplicationConfigurationService as ɵn, PatchRouteByName as ɵo, GetAppConfiguration as ɵp, RouterOutletComponent as ɵq, DynamicLayoutComponent as ɵr, AutofocusDirective as ɵs, EllipsisDirective as ɵt, ForDirective as ɵu, FormSubmitDirective as ɵv, LocalizationPipe as ɵw, PermissionDirective as ɵx, VisibilityDirective as ɵy, InputEventDebounceDirective as ɵz }; //# sourceMappingURL=abp-ng.core.js.map diff --git a/npm/ng-packs/dist/core/fesm2015/abp-ng.core.js.map b/npm/ng-packs/dist/core/fesm2015/abp-ng.core.js.map index d4f2ea659b..3a83f4b27d 100644 --- a/npm/ng-packs/dist/core/fesm2015/abp-ng.core.js.map +++ b/npm/ng-packs/dist/core/fesm2015/abp-ng.core.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.core.js","sources":["ng://@abp/ng.core/lib/actions/config.actions.ts","ng://@abp/ng.core/lib/actions/loader.actions.ts","ng://@abp/ng.core/lib/actions/profile.actions.ts","ng://@abp/ng.core/lib/actions/rest.actions.ts","ng://@abp/ng.core/lib/actions/session.actions.ts","ng://@abp/ng.core/lib/services/rest.service.ts","ng://@abp/ng.core/lib/services/profile.service.ts","ng://@abp/ng.core/lib/states/profile.state.ts","ng://@abp/ng.core/lib/services/application-configuration.service.ts","ng://@abp/ng.core/lib/constants/different-locales.ts","ng://@abp/ng.core/lib/utils/initial-utils.ts","ng://@abp/ng.core/lib/services/localization.service.ts","ng://@abp/ng.core/lib/states/session.state.ts","ng://@abp/ng.core/lib/utils/route-utils.ts","ng://@abp/ng.core/lib/states/config.state.ts","ng://@abp/ng.core/lib/utils/common-utils.ts","ng://@abp/ng.core/lib/utils/generator-utils.ts","ng://@abp/ng.core/lib/utils/rxjs-utils.ts","ng://@abp/ng.core/lib/components/dynamic-layout.component.ts","ng://@abp/ng.core/lib/components/router-outlet.component.ts","ng://@abp/ng.core/lib/directives/autofocus.directive.ts","ng://@abp/ng.core/lib/directives/ellipsis.directive.ts","ng://@abp/ng.core/lib/directives/form-submit.directive.ts","ng://@abp/ng.core/lib/directives/permission.directive.ts","ng://@abp/ng.core/lib/directives/visibility.directive.ts","ng://@abp/ng.core/lib/enums/common.ts","ng://@abp/ng.core/lib/guards/auth.guard.ts","ng://@abp/ng.core/lib/guards/permission.guard.ts","ng://@abp/ng.core/lib/interceptors/api.interceptor.ts","ng://@abp/ng.core/lib/models/application-configuration.ts","ng://@abp/ng.core/lib/models/common.ts","ng://@abp/ng.core/lib/models/config.ts","ng://@abp/ng.core/lib/models/rest.ts","ng://@abp/ng.core/lib/models/session.ts","ng://@abp/ng.core/lib/models/profile.ts","ng://@abp/ng.core/lib/plugins/config/config.plugin.ts","ng://@abp/ng.core/lib/services/config.service.ts","ng://@abp/ng.core/lib/services/lazy-load.service.ts","ng://@abp/ng.core/lib/tokens/common.token.ts","ng://@abp/ng.core/lib/directives/debounce.directive.ts","ng://@abp/ng.core/lib/directives/stop-propagation.directive.ts","ng://@abp/ng.core/lib/pipes/localization.pipe.ts","ng://@abp/ng.core/lib/providers/locale.provider.ts","ng://@abp/ng.core/lib/core.module.ts"],"sourcesContent":["import { ABP } from '../models';\n\nexport class PatchRouteByName {\n static readonly type = '[Config] Patch Route By Name';\n constructor(public name: string, public newValue: Partial) {}\n}\n\nexport class GetAppConfiguration {\n static readonly type = '[Config] Get App Configuration';\n}\n","import { HttpRequest } from '@angular/common/http';\n\nexport class StartLoader {\n static readonly type = '[Loader] Start';\n constructor(public payload: HttpRequest) {}\n}\n\nexport class StopLoader {\n static readonly type = '[Loader] Stop';\n constructor(public payload: HttpRequest) {}\n}\n","import { Profile } from '../models';\n\nexport class GetProfile {\n static readonly type = '[Profile] Get';\n}\n\nexport class UpdateProfile {\n static readonly type = '[Profile] Update';\n constructor(public payload: Profile.Response) {}\n}\n\nexport class ChangePassword {\n static readonly type = '[Profile] Change Password';\n constructor(public payload: Profile.ChangePasswordRequest) {}\n}\n","import { HttpErrorResponse } from '@angular/common/http';\n\nexport class RestOccurError {\n static readonly type = '[Rest] Error';\n constructor(public payload: HttpErrorResponse | any) {}\n}\n","import { ABP } from '../models';\n\nexport class SetLanguage {\n static readonly type = '[Session] Set Language';\n constructor(public payload: string) {}\n}\nexport class SetTenant {\n static readonly type = '[Session] Set Tenant';\n constructor(public payload: ABP.BasicItem) {}\n}\n","import { HttpClient, HttpRequest } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { NEVER, Observable, throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport { Rest } from '../models/rest';\nimport { ConfigState } from '../states';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RestService {\n constructor(private http: HttpClient, private store: Store) {}\n\n handleError(err: any): Observable {\n this.store.dispatch(new RestOccurError(err));\n console.error(err);\n return throwError(err);\n }\n\n request(request: HttpRequest | Rest.Request, config: Rest.Config = {}, api?: string): Observable {\n const { observe = Rest.Observe.Body, skipHandleError } = config;\n const url = api || this.store.selectSnapshot(ConfigState.getApiUrl()) + request.url;\n const { method, ...options } = request;\n return this.http.request(method, url, { observe, ...options } as any).pipe(\n observe === Rest.Observe.Body ? take(1) : null,\n catchError(err => {\n if (skipHandleError) {\n return throwError(err);\n }\n\n return this.handleError(err);\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService } from './rest.service';\nimport { Profile, Rest } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ProfileService {\n constructor(private rest: RestService) {}\n\n get(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/my-profile',\n };\n\n return this.rest.request(request);\n }\n\n update(body: Profile.Response): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/identity/my-profile',\n body,\n };\n\n return this.rest.request(request);\n }\n\n changePassword(body: Profile.ChangePasswordRequest, skipHandleError: boolean = false): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/my-profile/change-password',\n body,\n };\n\n return this.rest.request(request, { skipHandleError });\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetProfile, ChangePassword, UpdateProfile } from '../actions/profile.actions';\nimport { Profile } from '../models/profile';\nimport { ProfileService } from '../services/profile.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'ProfileState',\n defaults: {} as Profile.State,\n})\nexport class ProfileState {\n @Selector()\n static getProfile({ profile }: Profile.State): Profile.Response {\n return profile;\n }\n\n constructor(private profileService: ProfileService) {}\n\n @Action(GetProfile)\n profileGet({ patchState }: StateContext) {\n return this.profileService.get().pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(UpdateProfile)\n profileUpdate({ patchState }: StateContext, { payload }: UpdateProfile) {\n return this.profileService.update(payload).pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(ChangePassword)\n changePassword(_, { payload }: ChangePassword) {\n return this.profileService.changePassword(payload, true);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ApplicationConfiguration, Rest } from '../models';\nimport { RestService } from './rest.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ApplicationConfigurationService {\n constructor(private rest: RestService) {}\n\n getConfiguration(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/application-configuration',\n };\n\n return this.rest.request(request);\n }\n}\n","// Different locales from .NET\n// Key is .NET locale, value is Angular locale\n\nexport default {\n 'ar-sa': 'ar-SA',\n 'ca-ES-valencia': 'ca-ES-VALENCIA',\n 'de-de': 'de',\n 'es-ES': 'es',\n 'en-US': 'en',\n 'fil-Latn': 'en',\n 'ku-Arab': 'en',\n 'ky-Cyrl': 'en',\n 'mi-Latn': 'en',\n 'prs-Arab': 'en',\n 'qut-Latn': 'en',\n nso: 'en',\n quz: 'en',\n 'fr-FR': 'fr',\n 'gd-Latn': 'gd',\n 'ha-Latn': 'ha',\n 'ig-Latn': 'ig',\n 'it-it': 'it',\n 'mn-Cyrl': 'mn',\n 'pt-BR': 'pt',\n 'sd-Arab': 'pa-Arab',\n 'sr-Cyrl-RS': 'sr-Cyrl',\n 'sr-Latn-RS': 'sr-Latn',\n 'tg-Cyrl': 'tg',\n 'tk-Latn': 'tk',\n 'tt-Cyrl': 'tt',\n 'ug-Arab': 'ug',\n 'yo-Latn': 'yo',\n};\n","import { registerLocaleData } from '@angular/common';\nimport { Injector } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport differentLocales from '../constants/different-locales';\nimport { SessionState } from '../states/session.state';\n\nexport function getInitialData(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n return store.dispatch(new GetAppConfiguration()).toPromise();\n };\n\n return fn;\n}\n\nexport function localeInitializer(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n const lang = store.selectSnapshot(SessionState.getLanguage) || 'en';\n\n return new Promise((resolve, reject) => {\n registerLocale(lang).then(() => resolve(), reject);\n });\n };\n\n return fn;\n}\n\nexport function registerLocale(locale: string) {\n return import(\n /* webpackInclude: /(af|am|ar-SA|as|az-Latn|be|bg|bn-BD|bn-IN|bs|ca|ca-ES-VALENCIA|cs|cy|da|de|de|el|en-GB|en|es|en|es-US|es-MX|et|eu|fa|fi|en|fr|fr|fr-CA|ga|gd|gl|gu|ha|he|hi|hr|hu|hy|id|ig|is|it|it|ja|ka|kk|km|kn|ko|kok|en|en|lb|lt|lv|en|mk|ml|mn|mr|ms|mt|nb|ne|nl|nl-BE|nn|en|or|pa|pa-Arab|pl|en|pt|pt-PT|en|en|ro|ru|rw|pa-Arab|si|sk|sl|sq|sr-Cyrl-BA|sr-Cyrl|sr-Latn|sv|sw|ta|te|tg|th|ti|tk|tn|tr|tt|ug|uk|ur|uz-Latn|vi|wo|xh|yo|zh-Hans|zh-Hant|zu)\\.js$/ */\n `@angular/common/locales/${differentLocales[locale] || locale}.js`\n ).then(module => {\n registerLocaleData(module.default);\n });\n}\n","import { Injectable, Optional, SkipSelf } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router } from '@angular/router';\nimport { Actions, Store } from '@ngxs/store';\nimport { noop, Observable } from 'rxjs';\nimport { ConfigState } from '../states/config.state';\nimport { SessionState } from '../states/session.state';\nimport { registerLocale } from '../utils/initial-utils';\n\ntype ShouldReuseRoute = (future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot) => boolean;\n\n@Injectable({ providedIn: 'root' })\nexport class LocalizationService {\n get currentLang(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n constructor(\n private store: Store,\n private router: Router,\n private actions: Actions,\n @Optional()\n @SkipSelf()\n otherInstance: LocalizationService,\n ) {\n if (otherInstance) throw new Error('LocaleService should have only one instance.');\n }\n\n private setRouteReuse(reuse: ShouldReuseRoute) {\n this.router.routeReuseStrategy.shouldReuseRoute = reuse;\n }\n\n registerLocale(locale: string) {\n const { shouldReuseRoute } = this.router.routeReuseStrategy;\n\n this.setRouteReuse(() => false);\n this.router.navigated = false;\n\n return registerLocale(locale).then(async () => {\n await this.router.navigateByUrl(this.router.url).catch(noop);\n this.setRouteReuse(shouldReuseRoute);\n });\n }\n\n get(keys: string, ...interpolateParams: string[]): Observable {\n return this.store.select(ConfigState.getCopy(keys, ...interpolateParams));\n }\n\n instant(keys: string, ...interpolateParams: string[]): string {\n return this.store.selectSnapshot(ConfigState.getCopy(keys, ...interpolateParams));\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { SetLanguage, SetTenant } from '../actions/session.actions';\nimport { ABP, Session } from '../models';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport { LocalizationService } from '../services/localization.service';\nimport { from, combineLatest } from 'rxjs';\n\n@State({\n name: 'SessionState',\n defaults: {} as Session.State,\n})\nexport class SessionState {\n @Selector()\n static getLanguage({ language }: Session.State): string {\n return language;\n }\n\n @Selector()\n static getTenant({ tenant }: Session.State): ABP.BasicItem {\n return tenant;\n }\n\n constructor(private localizationService: LocalizationService) {}\n\n @Action(SetLanguage)\n setLanguage({ patchState, dispatch }: StateContext, { payload }: SetLanguage) {\n patchState({\n language: payload,\n });\n\n return combineLatest([dispatch(new GetAppConfiguration()), from(this.localizationService.registerLocale(payload))]);\n }\n\n @Action(SetTenant)\n setTenantId({ patchState }: StateContext, { payload }: SetTenant) {\n patchState({\n tenant: payload,\n });\n }\n}\n","import { ABP } from '../models';\n\nexport function organizeRoutes(\n routes: ABP.FullRoute[],\n wrappers: ABP.FullRoute[] = [],\n parentNameArr = [] as ABP.FullRoute[],\n parentName: string = null,\n): ABP.FullRoute[] {\n const filter = route => {\n if (route.children && route.children.length) {\n route.children = organizeRoutes(route.children, wrappers, parentNameArr, route.name);\n }\n\n if (route.parentName && route.parentName !== parentName) {\n parentNameArr.push(route);\n return false;\n }\n\n return true;\n };\n\n if (parentName) {\n // recursive block\n return routes.filter(filter);\n }\n\n const filteredRoutes = routes.filter(filter);\n\n if (parentNameArr.length) {\n return sortRoutes(setChildRoute([...filteredRoutes, ...wrappers], parentNameArr));\n }\n\n return filteredRoutes;\n}\n\nexport function setChildRoute(routes: ABP.FullRoute[], parentNameArr: ABP.FullRoute[]): ABP.FullRoute[] {\n return routes.map(route => {\n if (route.children && route.children.length) {\n route.children = setChildRoute(route.children, parentNameArr);\n }\n\n const foundedChildren = parentNameArr.filter(parent => parent.parentName === route.name);\n if (foundedChildren && foundedChildren.length) {\n route.children = [...(route.children || []), ...foundedChildren];\n }\n\n return route;\n });\n}\n\nexport function sortRoutes(routes: ABP.FullRoute[] = []): ABP.FullRoute[] {\n if (!routes.length) return [];\n return routes\n .sort((a, b) => a.order - b.order)\n .map(route => {\n if (route.children && route.children.length) {\n route.children = sortRoutes(route.children);\n }\n\n return route;\n });\n}\n","import { State, Selector, createSelector, Action, StateContext, Store } from '@ngxs/store';\nimport { Config, ABP } from '../models';\nimport { GetAppConfiguration, PatchRouteByName } from '../actions/config.actions';\nimport { ApplicationConfigurationService } from '../services/application-configuration.service';\nimport { tap, switchMap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { SetLanguage } from '../actions';\nimport { SessionState } from './session.state';\nimport { of } from 'rxjs';\nimport { setChildRoute, sortRoutes, organizeRoutes } from '../utils/route-utils';\n\n@State({\n name: 'ConfigState',\n defaults: {} as Config.State,\n})\nexport class ConfigState {\n @Selector()\n static getAll(state: Config.State) {\n return state;\n }\n\n @Selector()\n static getApplicationInfo(state: Config.State) {\n return state.environment.application || {};\n }\n\n static getOne(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return state[key];\n },\n );\n\n return selector;\n }\n\n static getDeep(keys: string[] | string) {\n if (typeof keys === 'string') {\n keys = keys.split('.');\n }\n\n if (!Array.isArray(keys)) {\n throw new Error('The argument must be a dot string or an string array.');\n }\n\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return (keys as string[]).reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state);\n },\n );\n\n return selector;\n }\n\n static getRoute(path?: string, name?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return findRoute(state.routes, path, name);\n },\n );\n\n return selector;\n }\n\n static getApiUrl(key?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): string {\n return state.environment.apis[key || 'default'].url;\n },\n );\n\n return selector;\n }\n\n static getSetting(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return snq(() => state.setting.values[key]);\n },\n );\n\n return selector;\n }\n\n static getGrantedPolicy(condition: string = '') {\n const keys = condition\n .replace(/\\(|\\)|\\!|\\s/g, '')\n .split(/\\|\\||&&/)\n .filter(key => key);\n\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): boolean {\n if (!keys.length) return true;\n\n const getPolicy = key => snq(() => state.auth.grantedPolicies[key], false);\n if (keys.length > 1) {\n keys.forEach(key => {\n const value = getPolicy(key);\n condition = condition.replace(key, value);\n });\n\n // tslint:disable-next-line: no-eval\n return eval(`!!${condition}`);\n }\n\n return getPolicy(condition);\n },\n );\n\n return selector;\n }\n\n static getCopy(key: string, ...interpolateParams: string[]) {\n if (!key) key = '';\n\n const keys = key.split('::') as string[];\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n if (!state.localization) return key;\n\n const { defaultResourceName } = state.environment.localization;\n if (keys[0] === '') {\n if (!defaultResourceName) {\n throw new Error(\n `Please check your environment. May you forget set defaultResourceName? \n Here is the example:\n { production: false,\n localization: {\n defaultResourceName: 'MyProjectName'\n }\n }`,\n );\n }\n\n keys[0] = snq(() => defaultResourceName);\n }\n\n let copy = keys.reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state.localization.values);\n\n interpolateParams = interpolateParams.filter(params => params != null);\n if (copy && interpolateParams && interpolateParams.length) {\n interpolateParams.forEach(param => {\n copy = copy.replace(/[\\'\\\"]?\\{[\\d]+\\}[\\'\\\"]?/, param);\n });\n }\n\n return copy || key;\n },\n );\n\n return selector;\n }\n\n constructor(private appConfigurationService: ApplicationConfigurationService, private store: Store) {}\n\n @Action(GetAppConfiguration)\n addData({ patchState, dispatch }: StateContext) {\n return this.appConfigurationService.getConfiguration().pipe(\n tap(configuration =>\n patchState({\n ...configuration,\n }),\n ),\n switchMap(configuration => {\n let defaultLang: string = configuration.setting.values['Abp.Localization.DefaultLanguage'];\n\n if (defaultLang.includes(';')) {\n defaultLang = defaultLang.split(';')[0];\n }\n\n return this.store.selectSnapshot(SessionState.getLanguage) ? of(null) : dispatch(new SetLanguage(defaultLang));\n }),\n );\n }\n\n @Action(PatchRouteByName)\n patchRoute({ patchState, getState }: StateContext, { name, newValue }: PatchRouteByName) {\n let routes: ABP.FullRoute[] = getState().routes;\n\n const index = routes.findIndex(route => route.name === name);\n\n routes = patchRouteDeep(routes, name, newValue);\n\n return patchState({\n routes,\n });\n }\n}\n\nfunction patchRouteDeep(\n routes: ABP.FullRoute[],\n name: string,\n newValue: Partial,\n parentUrl: string = null,\n): ABP.FullRoute[] {\n routes = routes.map(route => {\n if (route.name === name) {\n if (newValue.path) {\n newValue.url = `${parentUrl}/${newValue.path}`;\n }\n\n if (newValue.children && newValue.children.length) {\n newValue.children = newValue.children.map(child => ({\n ...child,\n url: `${parentUrl}/${route.path}/${child.path}`,\n }));\n }\n\n return { ...route, ...newValue };\n } else if (route.children && route.children.length) {\n route.children = patchRouteDeep(route.children, name, newValue, (parentUrl || '/') + route.path);\n }\n\n return route;\n });\n\n if (parentUrl) {\n // recursive block\n return routes;\n }\n\n return organizeRoutes(routes);\n}\n\nfunction findRoute(routes: ABP.FullRoute[], path?: string, name?: string) {\n let foundRoute;\n routes.forEach(route => {\n if (foundRoute) return;\n\n if (path && route.path === path) {\n foundRoute = route;\n } else if (name && route.name === name) {\n foundRoute = route;\n return;\n } else if (route.children && route.children.length) {\n foundRoute = findRoute(route.children, path, name);\n return;\n }\n });\n\n return foundRoute;\n}\n","export function noop() {\n const fn = function() {};\n return fn;\n}\n","export function uuid(a?: any): string {\n return a\n ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16)\n : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid);\n}\n","import { Observable, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nexport const takeUntilDestroy = (componentInstance, destroyMethodName = 'ngOnDestroy') => (\n source: Observable,\n) => {\n const originalDestroy = componentInstance[destroyMethodName];\n if (isFunction(originalDestroy) === false) {\n throw new Error(\n `${componentInstance.constructor.name} is using untilDestroyed but doesn't implement ${destroyMethodName}`,\n );\n }\n if (!componentInstance['__takeUntilDestroy']) {\n componentInstance['__takeUntilDestroy'] = new Subject();\n\n componentInstance[destroyMethodName] = function() {\n isFunction(originalDestroy) && originalDestroy.apply(this, arguments);\n componentInstance['__takeUntilDestroy'].next(true);\n componentInstance['__takeUntilDestroy'].complete();\n };\n }\n return source.pipe(takeUntil(componentInstance['__takeUntilDestroy']));\n};\n","import { Component, OnDestroy, Type } from '@angular/core';\nimport { NavigationEnd, Router, UrlSegment } from '@angular/router';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { eLayoutType } from '../enums';\nimport { ABP, Config } from '../models';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\nimport snq from 'snq';\n\n@Component({\n selector: 'abp-dynamic-layout',\n template: `\n \n\n \n \n `,\n})\nexport class DynamicLayoutComponent implements OnDestroy {\n @Select(ConfigState.getOne('requirements'))\n requirements$: Observable;\n\n layout: Type;\n\n constructor(private router: Router, private store: Store) {\n this.router.events.pipe(takeUntilDestroy(this)).subscribe(event => {\n if (event instanceof NavigationEnd) {\n const { segments } = this.router.parseUrl(event.url).root.children.primary;\n const {\n requirements: { layouts },\n routes,\n } = this.store.selectSnapshot(ConfigState.getAll);\n\n const layout = findLayout(segments, routes);\n\n this.layout = layouts.filter(l => !!l).find(l => snq(() => l.type.toLowerCase().indexOf(layout), -1) > -1);\n }\n });\n }\n\n ngOnDestroy() {}\n}\n\nfunction findLayout(segments: UrlSegment[], routes: ABP.FullRoute[]): eLayoutType {\n let layout = eLayoutType.empty;\n\n const route = routes\n .reduce((acc, val) => (val.wrapper ? [...acc, ...val.children] : [...acc, val]), [])\n .find(r => r.path === segments[0].path);\n\n if (route) {\n if (route.layout) {\n layout = route.layout;\n }\n\n if (route.children && route.children.length && segments.length > 1) {\n const child = route.children.find(c => c.path === segments[1].path);\n\n if (child && child.layout) {\n layout = child.layout;\n }\n }\n }\n\n return layout;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-router-outlet',\n template: `\n \n `,\n})\nexport class RouterOutletComponent {}\n","import { Directive, ElementRef, Input, AfterViewInit } from '@angular/core';\n\n@Directive({\n selector: '[autofocus]',\n})\nexport class AutofocusDirective implements AfterViewInit {\n @Input('autofocus')\n delay: number = 0;\n\n constructor(private elRef: ElementRef) {}\n\n ngAfterViewInit(): void {\n setTimeout(() => this.elRef.nativeElement.focus(), this.delay);\n }\n}\n","import { AfterContentInit, ChangeDetectorRef, Directive, ElementRef, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[abpEllipsis]',\n})\nexport class EllipsisDirective implements AfterContentInit {\n @Input('abpEllipsis')\n width: string;\n\n @HostBinding('title')\n @Input()\n title: string;\n\n @Input('abpEllipsisEnabled')\n enabled = true;\n\n @HostBinding('class.abp-ellipsis-inline')\n get inlineClass() {\n return this.enabled && this.width;\n }\n\n @HostBinding('class.abp-ellipsis')\n get class() {\n return this.enabled && !this.width;\n }\n\n @HostBinding('style.max-width')\n get maxWidth() {\n return this.enabled && this.width ? this.width || '170px' : undefined;\n }\n\n constructor(private cdRef: ChangeDetectorRef, private elRef: ElementRef) {}\n\n ngAfterContentInit() {\n setTimeout(() => {\n const title = this.title;\n this.title = title || (this.elRef.nativeElement as HTMLElement).innerText;\n\n if (this.title !== title) {\n this.cdRef.detectChanges();\n }\n }, 0);\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n Self,\n} from '@angular/core';\nimport { FormControl, FormGroup, FormGroupDirective } from '@angular/forms';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime, filter } from 'rxjs/operators';\nimport { takeUntilDestroy } from '../utils';\n\ntype Controls = { [key: string]: FormControl } | FormGroup[];\n\n@Directive({\n selector: 'form[ngSubmit][formGroup]',\n})\nexport class FormSubmitDirective implements OnInit, OnDestroy {\n @Input()\n notValidateOnSubmit: string | boolean;\n\n @Output()\n ngSubmit = new EventEmitter();\n\n executedNgSubmit: boolean = false;\n\n constructor(\n @Self() private formGroupDirective: FormGroupDirective,\n private host: ElementRef,\n private cdRef: ChangeDetectorRef,\n ) {}\n\n ngOnInit() {\n this.formGroupDirective.ngSubmit.pipe(takeUntilDestroy(this)).subscribe(() => {\n this.markAsDirty();\n this.executedNgSubmit = true;\n });\n\n fromEvent(this.host.nativeElement as HTMLElement, 'keyup')\n .pipe(\n debounceTime(200),\n filter((key: KeyboardEvent) => key && key.key === 'Enter'),\n takeUntilDestroy(this),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.host.nativeElement.dispatchEvent(new Event('submit', { bubbles: true, cancelable: true }));\n }\n\n this.executedNgSubmit = false;\n });\n\n fromEvent(this.host.nativeElement, 'submit')\n .pipe(\n takeUntilDestroy(this),\n filter(() => !this.notValidateOnSubmit && typeof this.notValidateOnSubmit !== 'string'),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.markAsDirty();\n }\n });\n }\n\n ngOnDestroy(): void {}\n\n markAsDirty() {\n const { form } = this.formGroupDirective;\n\n setDirty(form.controls as { [key: string]: FormControl });\n form.markAsDirty();\n\n this.cdRef.detectChanges();\n }\n}\n\nfunction setDirty(controls: Controls) {\n if (Array.isArray(controls)) {\n controls.forEach(group => {\n setDirty(group.controls as { [key: string]: FormControl });\n });\n return;\n }\n\n Object.keys(controls).forEach(key => {\n controls[key].markAsDirty();\n controls[key].updateValueAndValidity();\n });\n}\n","import { Directive, ElementRef, Input, OnDestroy, OnInit, Optional, Renderer2 } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\n\n@Directive({\n selector: '[abpPermission]',\n})\nexport class PermissionDirective implements OnInit, OnDestroy {\n @Input('abpPermission') condition: string;\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2, private store: Store) {}\n\n ngOnInit() {\n if (this.condition) {\n this.store\n .select(ConfigState.getGrantedPolicy(this.condition))\n .pipe(takeUntilDestroy(this))\n .subscribe(isGranted => {\n if (!isGranted) {\n this.renderer.removeChild(\n (this.elRef.nativeElement as HTMLElement).parentElement,\n this.elRef.nativeElement,\n );\n }\n });\n }\n }\n\n ngOnDestroy(): void {}\n}\n","import { Directive, Input, Optional, ElementRef, Renderer2, AfterViewInit } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport snq from 'snq';\n\n@Directive({\n selector: '[abpVisibility]',\n})\nexport class VisibilityDirective implements AfterViewInit {\n @Input('abpVisibility')\n focusedElement: HTMLElement;\n\n completed$ = new Subject();\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2) {}\n\n ngAfterViewInit() {\n const observer = new MutationObserver(mutations => {\n mutations.forEach(mutation => {\n if (!mutation.target) return;\n\n const htmlNodes = snq(\n () => Array.from(mutation.target.childNodes).filter(node => node instanceof HTMLElement),\n [],\n );\n\n if (!htmlNodes.length) {\n this.renderer.removeChild(this.elRef.nativeElement.parentElement, this.elRef.nativeElement);\n this.disconnect();\n } else {\n setTimeout(() => {\n this.disconnect();\n }, 0);\n }\n });\n });\n\n observer.observe(this.focusedElement, {\n childList: true,\n });\n\n this.completed$.subscribe(() => observer.disconnect());\n }\n\n disconnect() {\n this.completed$.next();\n this.completed$.complete();\n }\n}\n","export const enum eLayoutType {\n account = 'account',\n application = 'application',\n empty = 'empty',\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Observable } from 'rxjs';\nimport { Navigate } from '@ngxs/router-plugin';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthGuard implements CanActivate {\n constructor(private oauthService: OAuthService, private store: Store) {}\n canActivate(_: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | boolean | UrlTree {\n const hasValidAccessToken = this.oauthService.hasValidAccessToken();\n if (hasValidAccessToken) {\n return hasValidAccessToken;\n }\n\n this.store.dispatch(new Navigate(['/account/login'], null, { state: { redirectUrl: state.url } }));\n\n return false;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { ConfigState } from '../states';\nimport { tap } from 'rxjs/operators';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionGuard implements CanActivate {\n constructor(private store: Store) {}\n\n canActivate({ data }: ActivatedRouteSnapshot): Observable {\n const resource = data.requiredPolicy as string;\n return this.store.select(ConfigState.getGrantedPolicy(resource)).pipe(\n tap(access => {\n if (!access) {\n this.store.dispatch(new RestOccurError({ status: 403 }));\n }\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpInterceptor, HttpHandler, HttpRequest } from '@angular/common/http';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Store } from '@ngxs/store';\nimport { SessionState } from '../states';\nimport { StartLoader, StopLoader } from '../actions/loader.actions';\nimport { finalize } from 'rxjs/operators';\n\n@Injectable()\nexport class ApiInterceptor implements HttpInterceptor {\n constructor(private oAuthService: OAuthService, private store: Store) {}\n\n intercept(request: HttpRequest, next: HttpHandler) {\n this.store.dispatch(new StartLoader(request));\n\n const headers = {} as any;\n\n const token = this.oAuthService.getAccessToken();\n if (!request.headers.has('Authorization') && token) {\n headers['Authorization'] = `Bearer ${token}`;\n }\n\n const lang = this.store.selectSnapshot(SessionState.getLanguage);\n if (!request.headers.has('Accept-Language') && lang) {\n headers['Accept-Language'] = lang;\n }\n\n const tenant = this.store.selectSnapshot(SessionState.getTenant);\n if (!request.headers.has('__tenant') && tenant) {\n headers['__tenant'] = tenant.id;\n }\n\n return next\n .handle(\n request.clone({\n setHeaders: headers,\n }),\n )\n .pipe(finalize(() => this.store.dispatch(new StopLoader(request))));\n }\n}\n","export namespace ApplicationConfiguration {\n export interface Response {\n localization: Localization;\n auth: Auth;\n setting: Setting;\n currentUser: CurrentUser;\n features: Features;\n }\n\n export interface Localization {\n values: LocalizationValue;\n languages: Language[];\n }\n\n export interface LocalizationValue {\n [key: string]: { [key: string]: string };\n }\n\n export interface Language {\n cultureName: string;\n uiCultureName: string;\n displayName: string;\n flagIcon: string;\n }\n\n export interface Auth {\n policies: Policy;\n grantedPolicies: Policy;\n }\n\n export interface Policy {\n [key: string]: boolean;\n }\n\n export interface Setting {\n values: { [key: string]: 'Abp.Localization.DefaultLanguage' };\n }\n\n export interface CurrentUser {\n isAuthenticated: boolean;\n id: string;\n tenantId: string;\n userName: string;\n }\n\n export interface Features {\n values: Setting;\n }\n}\n","import { Config } from './config';\nimport { eLayoutType } from '../enums';\n\nexport namespace ABP {\n export interface Root {\n environment: Partial;\n requirements: Config.Requirements;\n }\n\n export type PagedResponse = {\n totalCount: number;\n } & PagedItemsResponse;\n\n export interface PagedItemsResponse {\n items: T[];\n }\n\n export interface PageQueryParams {\n filter?: string;\n sorting?: string;\n skipCount?: number;\n maxResultCount?: number;\n }\n\n export interface Route {\n children?: Route[];\n invisible?: boolean;\n layout?: eLayoutType;\n name: string;\n order?: number;\n parentName?: string;\n path: string;\n requiredPolicy?: string;\n iconClass?: string;\n }\n\n export interface FullRoute extends Route {\n url?: string;\n wrapper?: boolean;\n }\n\n export interface BasicItem {\n id: string;\n name: string;\n }\n}\n","import { AuthConfig } from 'angular-oauth2-oidc';\nimport { Type } from '@angular/core';\n\nexport namespace Config {\n export interface State {\n [key: string]: any;\n }\n\n export interface Environment {\n application: Application;\n production: boolean;\n oAuthConfig: AuthConfig;\n apis: Apis;\n }\n\n export interface Application {\n name: string;\n logoUrl?: string;\n }\n\n export interface Apis {\n [key: string]: { [key: string]: string };\n }\n\n export interface Requirements {\n layouts: Type[];\n }\n}\n","import { HttpHeaders, HttpParams } from '@angular/common/http';\n\nexport namespace Rest {\n export interface Config {\n skipHandleError?: boolean;\n observe?: Observe;\n }\n\n export const enum Observe {\n Body = 'body',\n Events = 'events',\n Response = 'response',\n }\n\n export const enum ResponseType {\n ArrayBuffer = 'arraybuffer',\n Blob = 'blob',\n JSON = 'json',\n Text = 'text',\n }\n\n export interface Request {\n body?: T;\n headers?:\n | HttpHeaders\n | {\n [header: string]: string | string[];\n };\n method: string;\n params?:\n | HttpParams\n | {\n [param: string]: any;\n };\n reportProgress?: boolean;\n responseType?: ResponseType;\n url: string;\n withCredentials?: boolean;\n }\n}\n","import { ABP } from '../models';\n\nexport namespace Session {\n export interface State {\n language: string;\n tenant: ABP.BasicItem;\n }\n}\n","export namespace Profile {\n export interface State {\n profile: Response;\n }\n\n export interface Response {\n userName: string;\n email: string;\n name: string;\n surname: string;\n phoneNumber: string;\n }\n\n export interface ChangePasswordRequest {\n currentPassword: string;\n newPassword: string;\n }\n}\n","import { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { Router, Routes } from '@angular/router';\nimport { actionMatcher, InitState, NgxsNextPluginFn, NgxsPlugin, setValue, UpdateState } from '@ngxs/store';\nimport snq from 'snq';\nimport { ABP } from '../../models';\nimport { organizeRoutes } from '../../utils/route-utils';\n\nexport const NGXS_CONFIG_PLUGIN_OPTIONS = new InjectionToken('NGXS_CONFIG_PLUGIN_OPTIONS');\n\n@Injectable()\nexport class ConfigPlugin implements NgxsPlugin {\n private initialized: boolean = false;\n\n constructor(@Inject(NGXS_CONFIG_PLUGIN_OPTIONS) private options: ABP.Root, private router: Router) {}\n\n handle(state: any, event: any, next: NgxsNextPluginFn) {\n const matches = actionMatcher(event);\n const isInitAction = matches(InitState) || matches(UpdateState);\n\n // const layouts = snq(() => this.options.requirements.layouts.filter(layout => layout instanceof Type), []);\n if (isInitAction && !this.initialized) {\n let { routes, wrappers } = transformRoutes(this.router.config);\n routes = organizeRoutes(routes, wrappers);\n\n state = setValue(state, 'ConfigState', {\n ...(state.ConfigState && { ...state.ConfigState }),\n ...this.options,\n routes,\n });\n\n this.initialized = true;\n }\n\n return next(state, event);\n }\n}\n\nfunction transformRoutes(routes: Routes = [], wrappers: ABP.FullRoute[] = []): any {\n const abpRoutes: ABP.FullRoute[] = routes\n .filter(route => {\n return snq(() => route.data.routes.routes.find(r => r.path === route.path), false);\n })\n .reduce((acc, val) => [...acc, ...val.data.routes.routes], []);\n\n wrappers = abpRoutes.filter(ar => ar.wrapper);\n const transformed = [] as ABP.FullRoute[];\n routes\n .filter(route => (route.data || {}).routes && (route.component || route.loadChildren))\n .forEach(route => {\n const abpPackage = abpRoutes.find(\n abp => abp.path.toLowerCase() === route.path.toLowerCase() && snq(() => route.data.routes.routes.length, false),\n );\n const { length } = transformed;\n\n if (abpPackage) {\n transformed.push(abpPackage);\n }\n\n if (transformed.length === length) {\n transformed.push({\n ...route.data.routes,\n path: route.path,\n name: snq(() => route.data.routes.name, route.path),\n children: route.data.routes.children || [],\n } as ABP.FullRoute);\n }\n });\n\n return { routes: setUrls(transformed), wrappers };\n}\n\nfunction setUrls(routes: ABP.FullRoute[], parentUrl?: string): ABP.FullRoute[] {\n if (parentUrl) {\n // this if block using for only recursive call\n\n return routes.map(route => ({\n ...route,\n url: `${parentUrl}/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `${parentUrl}/${route.path}`),\n }),\n }));\n }\n\n return routes.map(route => ({\n ...route,\n url: `/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `/${route.path}`),\n }),\n }));\n}\n","import { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConfigService {\n constructor(private store: Store) {}\n\n getAll() {\n return this.store.selectSnapshot(ConfigState.getAll);\n }\n\n getOne(key: string) {\n return this.store.selectSnapshot(ConfigState.getOne(key));\n }\n\n getDeep(keys: string[] | string) {\n return this.store.selectSnapshot(ConfigState.getDeep(keys));\n }\n\n getSetting(key: string) {\n return this.store.selectSnapshot(ConfigState.getSetting(key));\n }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { uuid } from '../utils';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LazyLoadService {\n loadedLibraries: { [url: string]: ReplaySubject } = {};\n\n load(\n url: string,\n type: 'script' | 'style',\n content: string = '',\n targetQuery: string = 'body',\n position: InsertPosition = 'afterend',\n ): Observable {\n if (!url && !content) return;\n const key = url ? url.slice(url.lastIndexOf('/') + 1) : uuid();\n\n if (this.loadedLibraries[key]) {\n return this.loadedLibraries[key].asObservable();\n }\n\n this.loadedLibraries[key] = new ReplaySubject();\n\n let library;\n if (type === 'script') {\n library = document.createElement('script');\n library.type = 'text/javascript';\n if (url) {\n (library as HTMLScriptElement).src = url;\n }\n\n (library as HTMLScriptElement).text = content;\n } else if (url) {\n library = document.createElement('link');\n library.type = 'text/css';\n (library as HTMLLinkElement).rel = 'stylesheet';\n\n if (url) {\n (library as HTMLLinkElement).href = url;\n }\n } else {\n library = document.createElement('style');\n (library as HTMLStyleElement).textContent = content;\n }\n\n library.onload = () => {\n this.loadedLibraries[key].next();\n this.loadedLibraries[key].complete();\n };\n\n document.querySelector(targetQuery).insertAdjacentElement(position, library);\n\n return this.loadedLibraries[key].asObservable();\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { Config } from '../models';\n\nexport function environmentFactory(environment: Config.Environment) {\n return {\n ...environment,\n };\n}\n\nexport function configFactory(config: Config.Requirements) {\n return {\n ...config,\n };\n}\n\nexport const ENVIRONMENT = new InjectionToken('ENVIRONMENT');\n\nexport const CONFIG = new InjectionToken('CONFIG');\n","import { Directive, Output, Renderer2, ElementRef, OnInit, EventEmitter, Input } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[input.debounce]',\n})\nexport class InputEventDebounceDirective implements OnInit {\n @Input() debounce: number = 300;\n\n @Output('input.debounce') debounceEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'input')\n .pipe(\n debounceTime(this.debounce),\n takeUntilDestroy(this),\n )\n .subscribe((event: Event) => {\n this.debounceEvent.emit(event);\n });\n }\n}\n","import { Directive, ElementRef, EventEmitter, OnInit, Output, Renderer2 } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[click.stop]',\n})\nexport class ClickEventStopPropagationDirective implements OnInit {\n @Output('click.stop') stopPropEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'click')\n .pipe(takeUntilDestroy(this))\n .subscribe((event: MouseEvent) => {\n event.stopPropagation();\n this.stopPropEvent.emit(event);\n });\n }\n}\n","import { Pipe, PipeTransform, OnDestroy } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\nimport { distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\n@Pipe({\n name: 'abpLocalization',\n pure: false, // required to update the value\n})\nexport class LocalizationPipe implements PipeTransform, OnDestroy {\n initialValue: string = '';\n\n value: string;\n\n destroy$ = new Subject();\n\n constructor(private store: Store) {}\n\n transform(value: string = '', ...interpolateParams: string[]): string {\n if (this.initialValue !== value) {\n this.initialValue = value;\n this.destroy$.next();\n\n this.store\n .select(\n ConfigState.getCopy(\n value,\n ...interpolateParams.reduce((acc, val) => (Array.isArray(val) ? [...acc, ...val] : [...acc, val]), []),\n ),\n )\n .pipe(\n takeUntil(this.destroy$),\n takeUntilDestroy(this),\n distinctUntilChanged(),\n )\n .subscribe(copy => (this.value = copy));\n }\n\n return this.value;\n }\n\n ngOnDestroy() {}\n}\n","import { LOCALE_ID, Provider } from '@angular/core';\nimport localesMapping from '../constants/different-locales';\nimport { LocalizationService } from '../services/localization.service';\n\nexport class LocaleId extends String {\n constructor(private localizationService: LocalizationService) {\n super();\n }\n\n toString(): string {\n const { currentLang } = this.localizationService;\n return localesMapping[currentLang] || currentLang;\n }\n\n valueOf(): string {\n return this.toString();\n }\n}\n\nexport const LocaleProvider: Provider = {\n provide: LOCALE_ID,\n useClass: LocaleId,\n deps: [LocalizationService],\n};\n","import { CommonModule } from '@angular/common';\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { NgxsRouterPluginModule } from '@ngxs/router-plugin';\nimport { NgxsStoragePluginModule } from '@ngxs/storage-plugin';\nimport { NgxsModule, NGXS_PLUGINS } from '@ngxs/store';\nimport { DynamicLayoutComponent } from './components/dynamic-layout.component';\nimport { RouterOutletComponent } from './components/router-outlet.component';\nimport { AutofocusDirective } from './directives/autofocus.directive';\nimport { InputEventDebounceDirective } from './directives/debounce.directive';\nimport { EllipsisDirective } from './directives/ellipsis.directive';\nimport { FormSubmitDirective } from './directives/form-submit.directive';\nimport { PermissionDirective } from './directives/permission.directive';\nimport { ClickEventStopPropagationDirective } from './directives/stop-propagation.directive';\nimport { VisibilityDirective } from './directives/visibility.directive';\nimport { ApiInterceptor } from './interceptors/api.interceptor';\nimport { ABP } from './models/common';\nimport { LocalizationPipe } from './pipes/localization.pipe';\nimport { LocaleProvider } from './providers/locale.provider';\nimport { ConfigState } from './states/config.state';\nimport { ProfileState } from './states/profile.state';\nimport { SessionState } from './states/session.state';\nimport { getInitialData, localeInitializer } from './utils/initial-utils';\nimport { ConfigPlugin, NGXS_CONFIG_PLUGIN_OPTIONS } from './plugins/config/config.plugin';\n\n@NgModule({\n imports: [\n NgxsModule.forFeature([ProfileState, SessionState, ConfigState]),\n NgxsStoragePluginModule.forRoot({ key: 'SessionState' }),\n NgxsRouterPluginModule.forRoot(),\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n ],\n declarations: [\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n ClickEventStopPropagationDirective,\n ],\n exports: [\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n LocalizationPipe,\n ClickEventStopPropagationDirective,\n ],\n providers: [LocalizationPipe],\n entryComponents: [RouterOutletComponent, DynamicLayoutComponent],\n})\nexport class CoreModule {\n static forRoot(options = {} as ABP.Root): ModuleWithProviders {\n return {\n ngModule: CoreModule,\n providers: [\n LocaleProvider,\n {\n provide: NGXS_PLUGINS,\n useClass: ConfigPlugin,\n multi: true,\n },\n {\n provide: NGXS_CONFIG_PLUGIN_OPTIONS,\n useValue: options,\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: ApiInterceptor,\n multi: true,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: getInitialData,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: localeInitializer,\n },\n ],\n };\n }\n}\n"],"names":["tslib_1.__decorate","differentLocales","noop","takeUntilDestroy"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.core.js","sources":["ng://@abp/ng.core/lib/actions/config.actions.ts","ng://@abp/ng.core/lib/actions/loader.actions.ts","ng://@abp/ng.core/lib/actions/profile.actions.ts","ng://@abp/ng.core/lib/actions/rest.actions.ts","ng://@abp/ng.core/lib/actions/session.actions.ts","ng://@abp/ng.core/lib/services/profile.service.ts","ng://@abp/ng.core/lib/states/profile.state.ts","ng://@abp/ng.core/lib/constants/different-locales.ts","ng://@abp/ng.core/lib/utils/initial-utils.ts","ng://@abp/ng.core/lib/services/localization.service.ts","ng://@abp/ng.core/lib/states/session.state.ts","ng://@abp/ng.core/lib/services/rest.service.ts","ng://@abp/ng.core/lib/services/application-configuration.service.ts","ng://@abp/ng.core/lib/utils/route-utils.ts","ng://@abp/ng.core/lib/states/config.state.ts","ng://@abp/ng.core/lib/utils/rxjs-utils.ts","ng://@abp/ng.core/lib/components/dynamic-layout.component.ts","ng://@abp/ng.core/lib/components/router-outlet.component.ts","ng://@abp/ng.core/lib/directives/autofocus.directive.ts","ng://@abp/ng.core/lib/directives/ellipsis.directive.ts","ng://@abp/ng.core/lib/directives/for.directive.ts","ng://@abp/ng.core/lib/utils/common-utils.ts","ng://@abp/ng.core/lib/utils/generator-utils.ts","ng://@abp/ng.core/lib/directives/form-submit.directive.ts","ng://@abp/ng.core/lib/directives/permission.directive.ts","ng://@abp/ng.core/lib/directives/visibility.directive.ts","ng://@abp/ng.core/lib/enums/common.ts","ng://@abp/ng.core/lib/guards/auth.guard.ts","ng://@abp/ng.core/lib/guards/permission.guard.ts","ng://@abp/ng.core/lib/interceptors/api.interceptor.ts","ng://@abp/ng.core/lib/models/application-configuration.ts","ng://@abp/ng.core/lib/models/common.ts","ng://@abp/ng.core/lib/models/config.ts","ng://@abp/ng.core/lib/models/rest.ts","ng://@abp/ng.core/lib/models/session.ts","ng://@abp/ng.core/lib/models/profile.ts","ng://@abp/ng.core/lib/plugins/config/config.plugin.ts","ng://@abp/ng.core/lib/services/config.service.ts","ng://@abp/ng.core/lib/services/lazy-load.service.ts","ng://@abp/ng.core/lib/tokens/common.token.ts","ng://@abp/ng.core/lib/directives/debounce.directive.ts","ng://@abp/ng.core/lib/directives/stop-propagation.directive.ts","ng://@abp/ng.core/lib/pipes/localization.pipe.ts","ng://@abp/ng.core/lib/providers/locale.provider.ts","ng://@abp/ng.core/lib/core.module.ts"],"sourcesContent":["import { ABP } from '../models';\n\nexport class PatchRouteByName {\n static readonly type = '[Config] Patch Route By Name';\n constructor(public name: string, public newValue: Partial) {}\n}\n\nexport class GetAppConfiguration {\n static readonly type = '[Config] Get App Configuration';\n}\n","import { HttpRequest } from '@angular/common/http';\n\nexport class StartLoader {\n static readonly type = '[Loader] Start';\n constructor(public payload: HttpRequest) {}\n}\n\nexport class StopLoader {\n static readonly type = '[Loader] Stop';\n constructor(public payload: HttpRequest) {}\n}\n","import { Profile } from '../models';\n\nexport class GetProfile {\n static readonly type = '[Profile] Get';\n}\n\nexport class UpdateProfile {\n static readonly type = '[Profile] Update';\n constructor(public payload: Profile.Response) {}\n}\n\nexport class ChangePassword {\n static readonly type = '[Profile] Change Password';\n constructor(public payload: Profile.ChangePasswordRequest) {}\n}\n","import { HttpErrorResponse } from '@angular/common/http';\n\nexport class RestOccurError {\n static readonly type = '[Rest] Error';\n constructor(public payload: HttpErrorResponse | any) {}\n}\n","import { ABP } from '../models';\n\nexport class SetLanguage {\n static readonly type = '[Session] Set Language';\n constructor(public payload: string) {}\n}\nexport class SetTenant {\n static readonly type = '[Session] Set Tenant';\n constructor(public payload: ABP.BasicItem) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService } from './rest.service';\nimport { Profile, Rest } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ProfileService {\n constructor(private rest: RestService) {}\n\n get(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/my-profile',\n };\n\n return this.rest.request(request);\n }\n\n update(body: Profile.Response): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/identity/my-profile',\n body,\n };\n\n return this.rest.request(request);\n }\n\n changePassword(body: Profile.ChangePasswordRequest, skipHandleError: boolean = false): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/my-profile/change-password',\n body,\n };\n\n return this.rest.request(request, { skipHandleError });\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetProfile, ChangePassword, UpdateProfile } from '../actions/profile.actions';\nimport { Profile } from '../models/profile';\nimport { ProfileService } from '../services/profile.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'ProfileState',\n defaults: {} as Profile.State,\n})\nexport class ProfileState {\n @Selector()\n static getProfile({ profile }: Profile.State): Profile.Response {\n return profile;\n }\n\n constructor(private profileService: ProfileService) {}\n\n @Action(GetProfile)\n profileGet({ patchState }: StateContext) {\n return this.profileService.get().pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(UpdateProfile)\n profileUpdate({ patchState }: StateContext, { payload }: UpdateProfile) {\n return this.profileService.update(payload).pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(ChangePassword)\n changePassword(_, { payload }: ChangePassword) {\n return this.profileService.changePassword(payload, true);\n }\n}\n","// Different locales from .NET\n// Key is .NET locale, value is Angular locale\n\nexport default {\n 'ar-sa': 'ar-SA',\n 'ca-ES-valencia': 'ca-ES-VALENCIA',\n 'de-de': 'de',\n 'es-ES': 'es',\n 'en-US': 'en',\n 'fil-Latn': 'en',\n 'ku-Arab': 'en',\n 'ky-Cyrl': 'en',\n 'mi-Latn': 'en',\n 'prs-Arab': 'en',\n 'qut-Latn': 'en',\n nso: 'en',\n quz: 'en',\n 'fr-FR': 'fr',\n 'gd-Latn': 'gd',\n 'ha-Latn': 'ha',\n 'ig-Latn': 'ig',\n 'it-it': 'it',\n 'mn-Cyrl': 'mn',\n 'pt-BR': 'pt',\n 'sd-Arab': 'pa-Arab',\n 'sr-Cyrl-RS': 'sr-Cyrl',\n 'sr-Latn-RS': 'sr-Latn',\n 'tg-Cyrl': 'tg',\n 'tk-Latn': 'tk',\n 'tt-Cyrl': 'tt',\n 'ug-Arab': 'ug',\n 'yo-Latn': 'yo',\n};\n","import { registerLocaleData } from '@angular/common';\nimport { Injector } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport differentLocales from '../constants/different-locales';\nimport { SessionState } from '../states/session.state';\n\nexport function getInitialData(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n return store.dispatch(new GetAppConfiguration()).toPromise();\n };\n\n return fn;\n}\n\nexport function localeInitializer(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n const lang = store.selectSnapshot(SessionState.getLanguage) || 'en';\n\n return new Promise((resolve, reject) => {\n registerLocale(lang).then(() => resolve(), reject);\n });\n };\n\n return fn;\n}\n\nexport function registerLocale(locale: string) {\n return import(\n /* webpackInclude: /(af|am|ar-SA|as|az-Latn|be|bg|bn-BD|bn-IN|bs|ca|ca-ES-VALENCIA|cs|cy|da|de|de|el|en-GB|en|es|en|es-US|es-MX|et|eu|fa|fi|en|fr|fr|fr-CA|ga|gd|gl|gu|ha|he|hi|hr|hu|hy|id|ig|is|it|it|ja|ka|kk|km|kn|ko|kok|en|en|lb|lt|lv|en|mk|ml|mn|mr|ms|mt|nb|ne|nl|nl-BE|nn|en|or|pa|pa-Arab|pl|en|pt|pt-PT|en|en|ro|ru|rw|pa-Arab|si|sk|sl|sq|sr-Cyrl-BA|sr-Cyrl|sr-Latn|sv|sw|ta|te|tg|th|ti|tk|tn|tr|tt|ug|uk|ur|uz-Latn|vi|wo|xh|yo|zh-Hans|zh-Hant|zu)\\.js$/ */\n `@angular/common/locales/${differentLocales[locale] || locale}.js`\n ).then(module => {\n registerLocaleData(module.default);\n });\n}\n","import { Injectable, Optional, SkipSelf } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router } from '@angular/router';\nimport { Actions, Store } from '@ngxs/store';\nimport { noop, Observable } from 'rxjs';\nimport { ConfigState } from '../states/config.state';\nimport { SessionState } from '../states/session.state';\nimport { registerLocale } from '../utils/initial-utils';\n\ntype ShouldReuseRoute = (future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot) => boolean;\n\n@Injectable({ providedIn: 'root' })\nexport class LocalizationService {\n get currentLang(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n constructor(\n private store: Store,\n private router: Router,\n private actions: Actions,\n @Optional()\n @SkipSelf()\n otherInstance: LocalizationService,\n ) {\n if (otherInstance) throw new Error('LocaleService should have only one instance.');\n }\n\n private setRouteReuse(reuse: ShouldReuseRoute) {\n this.router.routeReuseStrategy.shouldReuseRoute = reuse;\n }\n\n registerLocale(locale: string) {\n const { shouldReuseRoute } = this.router.routeReuseStrategy;\n\n this.setRouteReuse(() => false);\n this.router.navigated = false;\n\n return registerLocale(locale).then(async () => {\n await this.router.navigateByUrl(this.router.url).catch(noop);\n this.setRouteReuse(shouldReuseRoute);\n });\n }\n\n get(keys: string, ...interpolateParams: string[]): Observable {\n return this.store.select(ConfigState.getCopy(keys, ...interpolateParams));\n }\n\n instant(keys: string, ...interpolateParams: string[]): string {\n return this.store.selectSnapshot(ConfigState.getCopy(keys, ...interpolateParams));\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { SetLanguage, SetTenant } from '../actions/session.actions';\nimport { ABP, Session } from '../models';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport { LocalizationService } from '../services/localization.service';\nimport { from, combineLatest } from 'rxjs';\n\n@State({\n name: 'SessionState',\n defaults: {} as Session.State,\n})\nexport class SessionState {\n @Selector()\n static getLanguage({ language }: Session.State): string {\n return language;\n }\n\n @Selector()\n static getTenant({ tenant }: Session.State): ABP.BasicItem {\n return tenant;\n }\n\n constructor(private localizationService: LocalizationService) {}\n\n @Action(SetLanguage)\n setLanguage({ patchState, dispatch }: StateContext, { payload }: SetLanguage) {\n patchState({\n language: payload,\n });\n\n return combineLatest([dispatch(new GetAppConfiguration()), from(this.localizationService.registerLocale(payload))]);\n }\n\n @Action(SetTenant)\n setTenantId({ patchState }: StateContext, { payload }: SetTenant) {\n patchState({\n tenant: payload,\n });\n }\n}\n","import { HttpClient, HttpRequest } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { NEVER, Observable, throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport { Rest } from '../models/rest';\nimport { ConfigState } from '../states';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RestService {\n constructor(private http: HttpClient, private store: Store) {}\n\n handleError(err: any): Observable {\n this.store.dispatch(new RestOccurError(err));\n console.error(err);\n return throwError(err);\n }\n\n request(request: HttpRequest | Rest.Request, config: Rest.Config = {}, api?: string): Observable {\n const { observe = Rest.Observe.Body, skipHandleError } = config;\n const url = api || this.store.selectSnapshot(ConfigState.getApiUrl()) + request.url;\n const { method, ...options } = request;\n return this.http.request(method, url, { observe, ...options } as any).pipe(\n observe === Rest.Observe.Body ? take(1) : null,\n catchError(err => {\n if (skipHandleError) {\n return throwError(err);\n }\n\n return this.handleError(err);\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ApplicationConfiguration, Rest } from '../models';\nimport { RestService } from './rest.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ApplicationConfigurationService {\n constructor(private rest: RestService) {}\n\n getConfiguration(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/application-configuration',\n };\n\n return this.rest.request(request);\n }\n}\n","import { ABP } from '../models';\n\nexport function organizeRoutes(\n routes: ABP.FullRoute[],\n wrappers: ABP.FullRoute[] = [],\n parentNameArr = [] as ABP.FullRoute[],\n parentName: string = null,\n): ABP.FullRoute[] {\n const filter = route => {\n if (route.children && route.children.length) {\n route.children = organizeRoutes(route.children, wrappers, parentNameArr, route.name);\n }\n\n if (route.parentName && route.parentName !== parentName) {\n parentNameArr.push(route);\n return false;\n }\n\n return true;\n };\n\n if (parentName) {\n // recursive block\n return routes.filter(filter);\n }\n\n const filteredRoutes = routes.filter(filter);\n\n if (parentNameArr.length) {\n return sortRoutes(setChildRoute([...filteredRoutes, ...wrappers], parentNameArr));\n }\n\n return filteredRoutes;\n}\n\nexport function setChildRoute(routes: ABP.FullRoute[], parentNameArr: ABP.FullRoute[]): ABP.FullRoute[] {\n return routes.map(route => {\n if (route.children && route.children.length) {\n route.children = setChildRoute(route.children, parentNameArr);\n }\n\n const foundedChildren = parentNameArr.filter(parent => parent.parentName === route.name);\n if (foundedChildren && foundedChildren.length) {\n route.children = [...(route.children || []), ...foundedChildren];\n }\n\n return route;\n });\n}\n\nexport function sortRoutes(routes: ABP.FullRoute[] = []): ABP.FullRoute[] {\n if (!routes.length) return [];\n return routes\n .sort((a, b) => a.order - b.order)\n .map(route => {\n if (route.children && route.children.length) {\n route.children = sortRoutes(route.children);\n }\n\n return route;\n });\n}\n","import { State, Selector, createSelector, Action, StateContext, Store } from '@ngxs/store';\nimport { Config, ABP } from '../models';\nimport { GetAppConfiguration, PatchRouteByName } from '../actions/config.actions';\nimport { ApplicationConfigurationService } from '../services/application-configuration.service';\nimport { tap, switchMap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { SetLanguage } from '../actions';\nimport { SessionState } from './session.state';\nimport { of } from 'rxjs';\nimport { setChildRoute, sortRoutes, organizeRoutes } from '../utils/route-utils';\n\n@State({\n name: 'ConfigState',\n defaults: {} as Config.State,\n})\nexport class ConfigState {\n @Selector()\n static getAll(state: Config.State) {\n return state;\n }\n\n @Selector()\n static getApplicationInfo(state: Config.State) {\n return state.environment.application || {};\n }\n\n static getOne(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return state[key];\n },\n );\n\n return selector;\n }\n\n static getDeep(keys: string[] | string) {\n if (typeof keys === 'string') {\n keys = keys.split('.');\n }\n\n if (!Array.isArray(keys)) {\n throw new Error('The argument must be a dot string or an string array.');\n }\n\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return (keys as string[]).reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state);\n },\n );\n\n return selector;\n }\n\n static getRoute(path?: string, name?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n const { flattedRoutes } = state;\n return (flattedRoutes as ABP.FullRoute[]).find(route => {\n if (path && route.path === path) {\n return route;\n } else if (name && route.name === name) {\n return route;\n }\n });\n },\n );\n\n return selector;\n }\n\n static getApiUrl(key?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): string {\n return state.environment.apis[key || 'default'].url;\n },\n );\n\n return selector;\n }\n\n static getSetting(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return snq(() => state.setting.values[key]);\n },\n );\n\n return selector;\n }\n\n static getGrantedPolicy(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): boolean {\n if (!key) return true;\n return snq(() => state.auth.grantedPolicies[key], false);\n },\n );\n\n return selector;\n }\n\n static getCopy(key: string, ...interpolateParams: string[]) {\n if (!key) key = '';\n\n const keys = key.split('::') as string[];\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n if (!state.localization) return key;\n\n const { defaultResourceName } = state.environment.localization;\n if (keys[0] === '') {\n if (!defaultResourceName) {\n throw new Error(\n `Please check your environment. May you forget set defaultResourceName? \n Here is the example:\n { production: false,\n localization: {\n defaultResourceName: 'MyProjectName'\n }\n }`,\n );\n }\n\n keys[0] = snq(() => defaultResourceName);\n }\n\n let copy = (keys as any).reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state.localization.values);\n\n interpolateParams = interpolateParams.filter(params => params != null);\n if (copy && interpolateParams && interpolateParams.length) {\n interpolateParams.forEach(param => {\n copy = copy.replace(/[\\'\\\"]?\\{[\\d]+\\}[\\'\\\"]?/, param);\n });\n }\n\n return copy || key;\n },\n );\n\n return selector;\n }\n\n constructor(private appConfigurationService: ApplicationConfigurationService, private store: Store) {}\n\n @Action(GetAppConfiguration)\n addData({ patchState, dispatch }: StateContext) {\n return this.appConfigurationService.getConfiguration().pipe(\n tap(configuration =>\n patchState({\n ...configuration,\n }),\n ),\n switchMap(configuration => {\n let defaultLang: string = configuration.setting.values['Abp.Localization.DefaultLanguage'];\n\n if (defaultLang.includes(';')) {\n defaultLang = defaultLang.split(';')[0];\n }\n\n return this.store.selectSnapshot(SessionState.getLanguage) ? of(null) : dispatch(new SetLanguage(defaultLang));\n }),\n );\n }\n\n @Action(PatchRouteByName)\n patchRoute({ patchState, getState }: StateContext, { name, newValue }: PatchRouteByName) {\n let routes: ABP.FullRoute[] = getState().routes;\n\n const index = routes.findIndex(route => route.name === name);\n\n routes = patchRouteDeep(routes, name, newValue);\n\n return patchState({\n routes,\n });\n }\n}\n\nfunction patchRouteDeep(\n routes: ABP.FullRoute[],\n name: string,\n newValue: Partial,\n parentUrl: string = null,\n): ABP.FullRoute[] {\n routes = routes.map(route => {\n if (route.name === name) {\n if (newValue.path) {\n newValue.url = `${parentUrl}/${newValue.path}`;\n }\n\n if (newValue.children && newValue.children.length) {\n newValue.children = newValue.children.map(child => ({\n ...child,\n url: `${parentUrl}/${route.path}/${child.path}`,\n }));\n }\n\n return { ...route, ...newValue };\n } else if (route.children && route.children.length) {\n route.children = patchRouteDeep(route.children, name, newValue, (parentUrl || '/') + route.path);\n }\n\n return route;\n });\n\n if (parentUrl) {\n // recursive block\n return routes;\n }\n\n return organizeRoutes(routes);\n}\n","import { Observable, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nexport const takeUntilDestroy = (componentInstance, destroyMethodName = 'ngOnDestroy') => (\n source: Observable,\n) => {\n const originalDestroy = componentInstance[destroyMethodName];\n if (isFunction(originalDestroy) === false) {\n throw new Error(\n `${componentInstance.constructor.name} is using untilDestroyed but doesn't implement ${destroyMethodName}`,\n );\n }\n if (!componentInstance['__takeUntilDestroy']) {\n componentInstance['__takeUntilDestroy'] = new Subject();\n\n componentInstance[destroyMethodName] = function() {\n isFunction(originalDestroy) && originalDestroy.apply(this, arguments);\n componentInstance['__takeUntilDestroy'].next(true);\n componentInstance['__takeUntilDestroy'].complete();\n };\n }\n return source.pipe(takeUntil(componentInstance['__takeUntilDestroy']));\n};\n","import { Component, Input, OnDestroy, Type } from '@angular/core';\nimport { ActivatedRoute, NavigationEnd, Router, UrlSegment } from '@angular/router';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport snq from 'snq';\nimport { eLayoutType } from '../enums/common';\nimport { Config } from '../models/config';\nimport { ABP } from '../models/common';\nimport { ConfigState } from '../states/config.state';\nimport { takeUntilDestroy } from '../utils/rxjs-utils';\n\n@Component({\n selector: 'abp-dynamic-layout',\n template: `\n \n\n \n \n `,\n})\nexport class DynamicLayoutComponent implements OnDestroy {\n @Select(ConfigState.getOne('requirements'))\n requirements$: Observable;\n\n layout: Type;\n\n constructor(private router: Router, private route: ActivatedRoute, private store: Store) {\n const {\n requirements: { layouts },\n routes,\n } = this.store.selectSnapshot(ConfigState.getAll);\n\n if ((this.route.snapshot.data || {}).layout) {\n this.layout = layouts\n .filter(l => !!l)\n .find((l: any) => snq(() => l.type.toLowerCase().indexOf(this.route.snapshot.data.layout), -1) > -1);\n }\n\n this.router.events.pipe(takeUntilDestroy(this)).subscribe(event => {\n if (event instanceof NavigationEnd) {\n const { segments } = this.router.parseUrl(event.url).root.children.primary;\n\n const layout = (this.route.snapshot.data || {}).layout || findLayout(segments, routes);\n\n this.layout = layouts\n .filter(l => !!l)\n .find((l: any) => snq(() => l.type.toLowerCase().indexOf(layout), -1) > -1);\n }\n });\n }\n\n ngOnDestroy() {}\n}\n\nfunction findLayout(segments: UrlSegment[], routes: ABP.FullRoute[]): eLayoutType {\n let layout = eLayoutType.empty;\n\n const route = routes\n .reduce((acc, val) => (val.wrapper ? [...acc, ...val.children] : [...acc, val]), [])\n .find(r => r.path === segments[0].path);\n\n if (route) {\n if (route.layout) {\n layout = route.layout;\n }\n\n if (route.children && route.children.length && segments.length > 1) {\n const child = route.children.find(c => c.path === segments[1].path);\n\n if (child && child.layout) {\n layout = child.layout;\n }\n }\n }\n\n return layout;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-router-outlet',\n template: `\n \n `,\n})\nexport class RouterOutletComponent {}\n","import { Directive, ElementRef, Input, AfterViewInit } from '@angular/core';\n\n@Directive({\n selector: '[autofocus]',\n})\nexport class AutofocusDirective implements AfterViewInit {\n @Input('autofocus')\n delay: number = 0;\n\n constructor(private elRef: ElementRef) {}\n\n ngAfterViewInit(): void {\n setTimeout(() => this.elRef.nativeElement.focus(), this.delay);\n }\n}\n","import { AfterContentInit, ChangeDetectorRef, Directive, ElementRef, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[abpEllipsis]',\n})\nexport class EllipsisDirective implements AfterContentInit {\n @Input('abpEllipsis')\n width: string;\n\n @HostBinding('title')\n @Input()\n title: string;\n\n @Input('abpEllipsisEnabled')\n enabled = true;\n\n @HostBinding('class.abp-ellipsis-inline')\n get inlineClass() {\n return this.enabled && this.width;\n }\n\n @HostBinding('class.abp-ellipsis')\n get class() {\n return this.enabled && !this.width;\n }\n\n @HostBinding('style.max-width')\n get maxWidth() {\n return this.enabled && this.width ? this.width || '170px' : undefined;\n }\n\n constructor(private cdRef: ChangeDetectorRef, private elRef: ElementRef) {}\n\n ngAfterContentInit() {\n setTimeout(() => {\n const title = this.title;\n this.title = title || (this.elRef.nativeElement as HTMLElement).innerText;\n\n if (this.title !== title) {\n this.cdRef.detectChanges();\n }\n }, 0);\n }\n}\n","import {\n Directive,\n EmbeddedViewRef,\n Input,\n IterableChangeRecord,\n IterableChanges,\n IterableDiffer,\n IterableDiffers,\n OnChanges,\n TemplateRef,\n TrackByFunction,\n ViewContainerRef,\n} from '@angular/core';\nimport compare from 'just-compare';\nimport clone from 'just-clone';\n\nexport type CompareFn = (value: T, comparison: T) => boolean;\n\nclass AbpForContext {\n constructor(public $implicit: any, public index: number, public count: number, public list: any[]) {}\n}\n\nclass RecordView {\n constructor(public record: IterableChangeRecord, public view: EmbeddedViewRef) {}\n}\n\n@Directive({\n selector: '[abpFor]',\n})\nexport class ForDirective implements OnChanges {\n @Input('abpForOf')\n items: any[];\n\n @Input('abpForOrderBy')\n orderBy: string;\n\n @Input('abpForOrderDir')\n orderDir: 'ASC' | 'DESC';\n\n @Input('abpForFilterBy')\n filterBy: string;\n\n @Input('abpForFilterVal')\n filterVal: any;\n\n @Input('abpForTrackBy')\n trackBy;\n\n @Input('abpForCompareBy')\n compareBy: CompareFn;\n\n @Input('abpForEmptyRef')\n emptyRef: TemplateRef;\n\n private differ: IterableDiffer;\n\n private isShowEmptyRef: boolean;\n\n get compareFn(): CompareFn {\n return this.compareBy || compare;\n }\n\n get trackByFn(): TrackByFunction {\n return this.trackBy || ((index: number, item: any) => (item as any).id || index);\n }\n\n constructor(\n private tempRef: TemplateRef,\n private vcRef: ViewContainerRef,\n private differs: IterableDiffers,\n ) {}\n\n private iterateOverAppliedOperations(changes: IterableChanges) {\n const rw: RecordView[] = [];\n\n changes.forEachOperation((record: IterableChangeRecord, previousIndex: number, currentIndex: number) => {\n if (record.previousIndex == null) {\n const view = this.vcRef.createEmbeddedView(\n this.tempRef,\n new AbpForContext(null, -1, -1, this.items),\n currentIndex,\n );\n\n rw.push(new RecordView(record, view));\n } else if (currentIndex == null) {\n this.vcRef.remove(previousIndex);\n } else {\n const view = this.vcRef.get(previousIndex);\n this.vcRef.move(view, currentIndex);\n\n rw.push(new RecordView(record, view as EmbeddedViewRef));\n }\n });\n\n for (let i = 0, l = rw.length; i < l; i++) {\n rw[i].view.context.$implicit = rw[i].record.item;\n }\n }\n\n private iterateOverAttachedViews(changes: IterableChanges) {\n for (let i = 0, l = this.vcRef.length; i < l; i++) {\n const viewRef = this.vcRef.get(i) as EmbeddedViewRef;\n viewRef.context.index = i;\n viewRef.context.count = l;\n viewRef.context.list = this.items;\n }\n\n changes.forEachIdentityChange((record: IterableChangeRecord) => {\n const viewRef = this.vcRef.get(record.currentIndex) as EmbeddedViewRef;\n viewRef.context.$implicit = record.item;\n });\n }\n\n private projectItems(items: any[]): void {\n if (!items.length && this.emptyRef) {\n this.vcRef.createEmbeddedView(this.emptyRef).rootNodes;\n this.isShowEmptyRef = true;\n\n return;\n }\n\n if (this.emptyRef && this.isShowEmptyRef) {\n this.vcRef.clear();\n this.isShowEmptyRef = false;\n }\n\n if (!this.differ && items) {\n this.differ = this.differs.find(items).create(this.trackByFn);\n }\n\n if (this.differ) {\n const changes = this.differ.diff(items);\n\n if (changes) {\n this.iterateOverAppliedOperations(changes);\n this.iterateOverAttachedViews(changes);\n }\n }\n }\n\n private sortItems(items: any[]) {\n if (this.orderBy) {\n items.sort((a, b) => (a[this.orderBy] > b[this.orderBy] ? 1 : a[this.orderBy] < b[this.orderBy] ? -1 : 0));\n } else {\n items.sort();\n }\n }\n\n ngOnChanges() {\n let items = clone(this.items) as any[];\n if (!Array.isArray(items)) return;\n\n const compareFn = this.compareFn;\n\n if (typeof this.filterBy !== 'undefined') {\n items = items.filter(item => compareFn(item[this.filterBy], this.filterVal));\n }\n\n switch (this.orderDir) {\n case 'ASC':\n this.sortItems(items);\n this.projectItems(items);\n break;\n\n case 'DESC':\n this.sortItems(items);\n items.reverse();\n this.projectItems(items);\n break;\n\n default:\n this.projectItems(items);\n }\n }\n}\n","export function noop() {\n const fn = function() {};\n return fn;\n}\n","export function uuid(a?: any): string {\n return a\n ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16)\n : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid);\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n Self,\n} from '@angular/core';\nimport { FormControl, FormGroup, FormGroupDirective } from '@angular/forms';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime, filter } from 'rxjs/operators';\nimport { takeUntilDestroy } from '../utils';\n\ntype Controls = { [key: string]: FormControl } | FormGroup[];\n\n@Directive({\n selector: 'form[ngSubmit][formGroup]',\n})\nexport class FormSubmitDirective implements OnInit, OnDestroy {\n @Input()\n notValidateOnSubmit: string | boolean;\n\n @Output()\n ngSubmit = new EventEmitter();\n\n executedNgSubmit: boolean = false;\n\n constructor(\n @Self() private formGroupDirective: FormGroupDirective,\n private host: ElementRef,\n private cdRef: ChangeDetectorRef,\n ) {}\n\n ngOnInit() {\n this.formGroupDirective.ngSubmit.pipe(takeUntilDestroy(this)).subscribe(() => {\n this.markAsDirty();\n this.executedNgSubmit = true;\n });\n\n fromEvent(this.host.nativeElement as HTMLElement, 'keyup')\n .pipe(\n debounceTime(200),\n filter((key: KeyboardEvent) => key && key.key === 'Enter'),\n takeUntilDestroy(this),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.host.nativeElement.dispatchEvent(new Event('submit', { bubbles: true, cancelable: true }));\n }\n\n this.executedNgSubmit = false;\n });\n\n fromEvent(this.host.nativeElement, 'submit')\n .pipe(\n takeUntilDestroy(this),\n filter(() => !this.notValidateOnSubmit && typeof this.notValidateOnSubmit !== 'string'),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.markAsDirty();\n }\n });\n }\n\n ngOnDestroy(): void {}\n\n markAsDirty() {\n const { form } = this.formGroupDirective;\n\n setDirty(form.controls as { [key: string]: FormControl });\n form.markAsDirty();\n\n this.cdRef.detectChanges();\n }\n}\n\nfunction setDirty(controls: Controls) {\n if (Array.isArray(controls)) {\n controls.forEach(group => {\n setDirty(group.controls as { [key: string]: FormControl });\n });\n return;\n }\n\n Object.keys(controls).forEach(key => {\n controls[key].markAsDirty();\n controls[key].updateValueAndValidity();\n });\n}\n","import { Directive, ElementRef, Input, OnDestroy, OnInit, Optional, Renderer2 } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\n\n@Directive({\n selector: '[abpPermission]',\n})\nexport class PermissionDirective implements OnInit, OnDestroy {\n @Input('abpPermission') condition: string;\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2, private store: Store) {}\n\n ngOnInit() {\n if (this.condition) {\n this.store\n .select(ConfigState.getGrantedPolicy(this.condition))\n .pipe(takeUntilDestroy(this))\n .subscribe(isGranted => {\n if (!isGranted) {\n this.renderer.removeChild(\n (this.elRef.nativeElement as HTMLElement).parentElement,\n this.elRef.nativeElement,\n );\n }\n });\n }\n }\n\n ngOnDestroy(): void {}\n}\n","import { Directive, Input, Optional, ElementRef, Renderer2, AfterViewInit } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport snq from 'snq';\n\n@Directive({\n selector: '[abpVisibility]',\n})\nexport class VisibilityDirective implements AfterViewInit {\n @Input('abpVisibility')\n focusedElement: HTMLElement;\n\n completed$ = new Subject();\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2) {}\n\n ngAfterViewInit() {\n const observer = new MutationObserver(mutations => {\n mutations.forEach(mutation => {\n if (!mutation.target) return;\n\n const htmlNodes = snq(\n () => Array.from(mutation.target.childNodes).filter(node => node instanceof HTMLElement),\n [],\n );\n\n if (!htmlNodes.length) {\n this.renderer.removeChild(this.elRef.nativeElement.parentElement, this.elRef.nativeElement);\n this.disconnect();\n } else {\n setTimeout(() => {\n this.disconnect();\n }, 0);\n }\n });\n });\n\n observer.observe(this.focusedElement, {\n childList: true,\n });\n\n this.completed$.subscribe(() => observer.disconnect());\n }\n\n disconnect() {\n this.completed$.next();\n this.completed$.complete();\n }\n}\n","export const enum eLayoutType {\n account = 'account',\n application = 'application',\n empty = 'empty',\n setting = 'setting',\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Observable } from 'rxjs';\nimport { Navigate } from '@ngxs/router-plugin';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthGuard implements CanActivate {\n constructor(private oauthService: OAuthService, private store: Store) {}\n canActivate(_: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | boolean | UrlTree {\n const hasValidAccessToken = this.oauthService.hasValidAccessToken();\n if (hasValidAccessToken) {\n return hasValidAccessToken;\n }\n\n this.store.dispatch(new Navigate(['/account/login'], null, { state: { redirectUrl: state.url } }));\n\n return false;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { ConfigState } from '../states';\nimport { tap } from 'rxjs/operators';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionGuard implements CanActivate {\n constructor(private store: Store) {}\n\n canActivate({ data }: ActivatedRouteSnapshot): Observable {\n const resource = data.requiredPolicy as string;\n return this.store.select(ConfigState.getGrantedPolicy(resource)).pipe(\n tap(access => {\n if (!access) {\n this.store.dispatch(new RestOccurError({ status: 403 }));\n }\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpInterceptor, HttpHandler, HttpRequest } from '@angular/common/http';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Store } from '@ngxs/store';\nimport { SessionState } from '../states';\nimport { StartLoader, StopLoader } from '../actions/loader.actions';\nimport { finalize } from 'rxjs/operators';\n\n@Injectable()\nexport class ApiInterceptor implements HttpInterceptor {\n constructor(private oAuthService: OAuthService, private store: Store) {}\n\n intercept(request: HttpRequest, next: HttpHandler) {\n this.store.dispatch(new StartLoader(request));\n\n const headers = {} as any;\n\n const token = this.oAuthService.getAccessToken();\n if (!request.headers.has('Authorization') && token) {\n headers['Authorization'] = `Bearer ${token}`;\n }\n\n const lang = this.store.selectSnapshot(SessionState.getLanguage);\n if (!request.headers.has('Accept-Language') && lang) {\n headers['Accept-Language'] = lang;\n }\n\n const tenant = this.store.selectSnapshot(SessionState.getTenant);\n if (!request.headers.has('__tenant') && tenant) {\n headers['__tenant'] = tenant.id;\n }\n\n return next\n .handle(\n request.clone({\n setHeaders: headers,\n }),\n )\n .pipe(finalize(() => this.store.dispatch(new StopLoader(request))));\n }\n}\n","export namespace ApplicationConfiguration {\n export interface Response {\n localization: Localization;\n auth: Auth;\n setting: Setting;\n currentUser: CurrentUser;\n features: Features;\n }\n\n export interface Localization {\n values: LocalizationValue;\n languages: Language[];\n }\n\n export interface LocalizationValue {\n [key: string]: { [key: string]: string };\n }\n\n export interface Language {\n cultureName: string;\n uiCultureName: string;\n displayName: string;\n flagIcon: string;\n }\n\n export interface Auth {\n policies: Policy;\n grantedPolicies: Policy;\n }\n\n export interface Policy {\n [key: string]: boolean;\n }\n\n export interface Setting {\n values: { [key: string]: 'Abp.Localization.DefaultLanguage' };\n }\n\n export interface CurrentUser {\n isAuthenticated: boolean;\n id: string;\n tenantId: string;\n userName: string;\n }\n\n export interface Features {\n values: Setting;\n }\n}\n","import { Config } from './config';\nimport { eLayoutType } from '../enums/common';\n\nexport namespace ABP {\n export interface Root {\n environment: Partial;\n requirements: Config.Requirements;\n }\n\n export type PagedResponse = {\n totalCount: number;\n } & PagedItemsResponse;\n\n export interface PagedItemsResponse {\n items: T[];\n }\n\n export interface PageQueryParams {\n filter?: string;\n sorting?: string;\n skipCount?: number;\n maxResultCount?: number;\n }\n\n export interface Route {\n children?: Route[];\n invisible?: boolean;\n layout?: eLayoutType;\n name: string;\n order?: number;\n parentName?: string;\n path: string;\n requiredPolicy?: string;\n iconClass?: string;\n }\n\n export interface FullRoute extends Route {\n url?: string;\n wrapper?: boolean;\n }\n\n export interface BasicItem {\n id: string;\n name: string;\n }\n}\n","import { AuthConfig } from 'angular-oauth2-oidc';\nimport { Type } from '@angular/core';\nimport { ApplicationConfiguration } from './application-configuration';\nimport { ABP } from './common';\n\nexport namespace Config {\n export type State = ApplicationConfiguration.Response &\n ABP.Root & { environment: Environment } & {\n routes: ABP.FullRoute[];\n flattedRoutes: ABP.FullRoute[];\n };\n\n export interface Environment {\n application: Application;\n production: boolean;\n oAuthConfig: AuthConfig;\n apis: Apis;\n localization: { defaultResourceName: string };\n }\n\n export interface Application {\n name: string;\n logoUrl?: string;\n }\n\n export interface Apis {\n [key: string]: { [key: string]: string };\n }\n\n export interface Requirements {\n layouts: Type[];\n }\n}\n","import { HttpHeaders, HttpParams } from '@angular/common/http';\n\nexport namespace Rest {\n export interface Config {\n skipHandleError?: boolean;\n observe?: Observe;\n }\n\n export const enum Observe {\n Body = 'body',\n Events = 'events',\n Response = 'response',\n }\n\n export const enum ResponseType {\n ArrayBuffer = 'arraybuffer',\n Blob = 'blob',\n JSON = 'json',\n Text = 'text',\n }\n\n export interface Request {\n body?: T;\n headers?:\n | HttpHeaders\n | {\n [header: string]: string | string[];\n };\n method: string;\n params?:\n | HttpParams\n | {\n [param: string]: any;\n };\n reportProgress?: boolean;\n responseType?: ResponseType;\n url: string;\n withCredentials?: boolean;\n }\n}\n","import { ABP } from '../models';\n\nexport namespace Session {\n export interface State {\n language: string;\n tenant: ABP.BasicItem;\n }\n}\n","export namespace Profile {\n export interface State {\n profile: Response;\n }\n\n export interface Response {\n userName: string;\n email: string;\n name: string;\n surname: string;\n phoneNumber: string;\n }\n\n export interface ChangePasswordRequest {\n currentPassword: string;\n newPassword: string;\n }\n}\n","import { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { Router, Routes } from '@angular/router';\nimport { actionMatcher, InitState, NgxsNextPluginFn, NgxsPlugin, setValue, UpdateState } from '@ngxs/store';\nimport snq from 'snq';\nimport { ABP } from '../../models';\nimport { organizeRoutes } from '../../utils/route-utils';\nimport clone from 'just-clone';\n\nexport const NGXS_CONFIG_PLUGIN_OPTIONS = new InjectionToken('NGXS_CONFIG_PLUGIN_OPTIONS');\n\n@Injectable()\nexport class ConfigPlugin implements NgxsPlugin {\n private initialized: boolean = false;\n\n constructor(@Inject(NGXS_CONFIG_PLUGIN_OPTIONS) private options: ABP.Root, private router: Router) {}\n\n handle(state: any, event: any, next: NgxsNextPluginFn) {\n const matches = actionMatcher(event);\n const isInitAction = matches(InitState) || matches(UpdateState);\n\n // const layouts = snq(() => this.options.requirements.layouts.filter(layout => layout instanceof Type), []);\n if (isInitAction && !this.initialized) {\n let { routes, wrappers } = transformRoutes(this.router.config);\n routes = organizeRoutes(routes, wrappers);\n const flattedRoutes = flatRoutes(clone(routes));\n state = setValue(state, 'ConfigState', {\n ...(state.ConfigState && { ...state.ConfigState }),\n ...this.options,\n routes,\n flattedRoutes,\n });\n\n this.initialized = true;\n }\n\n return next(state, event);\n }\n}\n\nfunction transformRoutes(routes: Routes = [], wrappers: ABP.FullRoute[] = []): any {\n const abpRoutes: ABP.FullRoute[] = routes\n .filter(route => {\n return snq(() => route.data.routes.routes.find(r => r.path === route.path), false);\n })\n .reduce((acc, val) => [...acc, ...val.data.routes.routes], []);\n\n wrappers = abpRoutes.filter(ar => ar.wrapper);\n const transformed = [] as ABP.FullRoute[];\n routes\n .filter(route => (route.data || {}).routes && (route.component || route.loadChildren))\n .forEach(route => {\n const abpPackage = abpRoutes.find(\n abp => abp.path.toLowerCase() === route.path.toLowerCase() && snq(() => route.data.routes.routes.length, false),\n );\n const { length } = transformed;\n\n if (abpPackage) {\n transformed.push(abpPackage);\n }\n\n if (transformed.length === length) {\n transformed.push({\n ...route.data.routes,\n path: route.path,\n name: snq(() => route.data.routes.name, route.path),\n children: route.data.routes.children || [],\n } as ABP.FullRoute);\n }\n });\n\n return { routes: setUrls(transformed), wrappers };\n}\n\nfunction setUrls(routes: ABP.FullRoute[], parentUrl?: string): ABP.FullRoute[] {\n if (parentUrl) {\n // this if block using for only recursive call\n\n return routes.map(route => ({\n ...route,\n url: `${parentUrl}/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `${parentUrl}/${route.path}`),\n }),\n }));\n }\n\n return routes.map(route => ({\n ...route,\n url: `/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `/${route.path}`),\n }),\n }));\n}\n\nfunction flatRoutes(routes: ABP.FullRoute[]): ABP.FullRoute[] {\n const flat = (r: ABP.FullRoute[]) => {\n return r.reduce((acc, val) => {\n let value: ABP.FullRoute[] = [val];\n if (val.children) {\n const { children } = val;\n delete val.children;\n value = [val, ...flat(children)];\n }\n\n return [...acc, ...value];\n }, []);\n };\n\n return flat(routes);\n}\n","import { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConfigService {\n constructor(private store: Store) {}\n\n getAll() {\n return this.store.selectSnapshot(ConfigState.getAll);\n }\n\n getOne(key: string) {\n return this.store.selectSnapshot(ConfigState.getOne(key));\n }\n\n getDeep(keys: string[] | string) {\n return this.store.selectSnapshot(ConfigState.getDeep(keys));\n }\n\n getSetting(key: string) {\n return this.store.selectSnapshot(ConfigState.getSetting(key));\n }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { uuid } from '../utils';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LazyLoadService {\n loadedLibraries: { [url: string]: ReplaySubject } = {};\n\n load(\n url: string,\n type: 'script' | 'style',\n content: string = '',\n targetQuery: string = 'body',\n position: InsertPosition = 'afterend',\n ): Observable {\n if (!url && !content) return;\n const key = url ? url.slice(url.lastIndexOf('/') + 1) : uuid();\n\n if (this.loadedLibraries[key]) {\n return this.loadedLibraries[key].asObservable();\n }\n\n this.loadedLibraries[key] = new ReplaySubject();\n\n let library;\n if (type === 'script') {\n library = document.createElement('script');\n library.type = 'text/javascript';\n if (url) {\n (library as HTMLScriptElement).src = url;\n }\n\n (library as HTMLScriptElement).text = content;\n } else if (url) {\n library = document.createElement('link');\n library.type = 'text/css';\n (library as HTMLLinkElement).rel = 'stylesheet';\n\n if (url) {\n (library as HTMLLinkElement).href = url;\n }\n } else {\n library = document.createElement('style');\n (library as HTMLStyleElement).textContent = content;\n }\n\n library.onload = () => {\n this.loadedLibraries[key].next();\n this.loadedLibraries[key].complete();\n };\n\n document.querySelector(targetQuery).insertAdjacentElement(position, library);\n\n return this.loadedLibraries[key].asObservable();\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { Config } from '../models';\n\nexport function environmentFactory(environment: Config.Environment) {\n return {\n ...environment,\n };\n}\n\nexport function configFactory(config: Config.Requirements) {\n return {\n ...config,\n };\n}\n\nexport const ENVIRONMENT = new InjectionToken('ENVIRONMENT');\n\nexport const CONFIG = new InjectionToken('CONFIG');\n","import { Directive, Output, Renderer2, ElementRef, OnInit, EventEmitter, Input } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[input.debounce]',\n})\nexport class InputEventDebounceDirective implements OnInit {\n @Input() debounce: number = 300;\n\n @Output('input.debounce') debounceEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'input')\n .pipe(\n debounceTime(this.debounce),\n takeUntilDestroy(this),\n )\n .subscribe((event: Event) => {\n this.debounceEvent.emit(event);\n });\n }\n}\n","import { Directive, ElementRef, EventEmitter, OnInit, Output, Renderer2 } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[click.stop]',\n})\nexport class ClickEventStopPropagationDirective implements OnInit {\n @Output('click.stop') stopPropEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'click')\n .pipe(takeUntilDestroy(this))\n .subscribe((event: MouseEvent) => {\n event.stopPropagation();\n this.stopPropEvent.emit(event);\n });\n }\n}\n","import { Pipe, PipeTransform, OnDestroy } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\nimport { distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\n@Pipe({\n name: 'abpLocalization',\n pure: false, // required to update the value\n})\nexport class LocalizationPipe implements PipeTransform, OnDestroy {\n initialValue: string = '';\n\n value: string;\n\n destroy$ = new Subject();\n\n constructor(private store: Store) {}\n\n transform(value: string = '', ...interpolateParams: string[]): string {\n if (this.initialValue !== value) {\n this.initialValue = value;\n this.destroy$.next();\n\n this.store\n .select(\n ConfigState.getCopy(\n value,\n ...interpolateParams.reduce((acc, val) => (Array.isArray(val) ? [...acc, ...val] : [...acc, val]), []),\n ),\n )\n .pipe(\n takeUntil(this.destroy$),\n takeUntilDestroy(this),\n distinctUntilChanged(),\n )\n .subscribe(copy => (this.value = copy));\n }\n\n return this.value;\n }\n\n ngOnDestroy() {}\n}\n","import { LOCALE_ID, Provider } from '@angular/core';\nimport localesMapping from '../constants/different-locales';\nimport { LocalizationService } from '../services/localization.service';\n\nexport class LocaleId extends String {\n constructor(private localizationService: LocalizationService) {\n super();\n }\n\n toString(): string {\n const { currentLang } = this.localizationService;\n return localesMapping[currentLang] || currentLang;\n }\n\n valueOf(): string {\n return this.toString();\n }\n}\n\nexport const LocaleProvider: Provider = {\n provide: LOCALE_ID,\n useClass: LocaleId,\n deps: [LocalizationService],\n};\n","import { CommonModule } from '@angular/common';\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { NgxsRouterPluginModule } from '@ngxs/router-plugin';\nimport { NgxsStoragePluginModule } from '@ngxs/storage-plugin';\nimport { NgxsModule, NGXS_PLUGINS } from '@ngxs/store';\nimport { DynamicLayoutComponent } from './components/dynamic-layout.component';\nimport { RouterOutletComponent } from './components/router-outlet.component';\nimport { AutofocusDirective } from './directives/autofocus.directive';\nimport { InputEventDebounceDirective } from './directives/debounce.directive';\nimport { EllipsisDirective } from './directives/ellipsis.directive';\nimport { FormSubmitDirective } from './directives/form-submit.directive';\nimport { PermissionDirective } from './directives/permission.directive';\nimport { ClickEventStopPropagationDirective } from './directives/stop-propagation.directive';\nimport { VisibilityDirective } from './directives/visibility.directive';\nimport { ApiInterceptor } from './interceptors/api.interceptor';\nimport { ABP } from './models/common';\nimport { LocalizationPipe } from './pipes/localization.pipe';\nimport { LocaleProvider } from './providers/locale.provider';\nimport { ConfigState } from './states/config.state';\nimport { ProfileState } from './states/profile.state';\nimport { SessionState } from './states/session.state';\nimport { getInitialData, localeInitializer } from './utils/initial-utils';\nimport { ConfigPlugin, NGXS_CONFIG_PLUGIN_OPTIONS } from './plugins/config/config.plugin';\nimport { ForDirective } from './directives/for.directive';\n\n@NgModule({\n imports: [\n NgxsModule.forFeature([ProfileState, SessionState, ConfigState]),\n NgxsStoragePluginModule.forRoot({ key: 'SessionState' }),\n NgxsRouterPluginModule.forRoot(),\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n ],\n declarations: [\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n ForDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n ClickEventStopPropagationDirective,\n ],\n exports: [\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n ForDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n LocalizationPipe,\n ClickEventStopPropagationDirective,\n ],\n providers: [LocalizationPipe],\n entryComponents: [RouterOutletComponent, DynamicLayoutComponent],\n})\nexport class CoreModule {\n static forRoot(options = {} as ABP.Root): ModuleWithProviders {\n return {\n ngModule: CoreModule,\n providers: [\n LocaleProvider,\n {\n provide: NGXS_PLUGINS,\n useClass: ConfigPlugin,\n multi: true,\n },\n {\n provide: NGXS_CONFIG_PLUGIN_OPTIONS,\n useValue: options,\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: ApiInterceptor,\n multi: true,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: getInitialData,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: localeInitializer,\n },\n ],\n };\n }\n}\n"],"names":["tslib_1.__decorate","differentLocales","noop","takeUntilDestroy"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/core/fesm5/abp-ng.core.js b/npm/ng-packs/dist/core/fesm5/abp-ng.core.js index ad15db7bb7..ec8820de2a 100644 --- a/npm/ng-packs/dist/core/fesm5/abp-ng.core.js +++ b/npm/ng-packs/dist/core/fesm5/abp-ng.core.js @@ -1,12 +1,14 @@ -import { __rest, __assign, __decorate, __metadata, __awaiter, __generator, __spread, __extends } from 'tslib'; -import { Injectable, ɵɵdefineInjectable, ɵɵinject, Optional, SkipSelf, Component, Directive, ElementRef, Input, ChangeDetectorRef, HostBinding, EventEmitter, Self, Output, Renderer2, InjectionToken, Inject, Pipe, LOCALE_ID, APP_INITIALIZER, Injector, NgModule } from '@angular/core'; -import { Router, NavigationEnd, RouterModule } from '@angular/router'; -import { Store, Action, Selector, State, Actions, createSelector, Select, actionMatcher, InitState, UpdateState, setValue, NGXS_PLUGINS, NgxsModule } from '@ngxs/store'; -import { throwError, noop as noop$1, combineLatest, from, of, Subject, Observable, fromEvent, ReplaySubject } from 'rxjs'; -import { HttpClient, HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http'; -import { take, catchError, tap, switchMap, takeUntil, debounceTime, filter, finalize, distinctUntilChanged } from 'rxjs/operators'; +import { __decorate, __metadata, __awaiter, __generator, __spread, __rest, __assign, __extends } from 'tslib'; +import { Injectable, ɵɵdefineInjectable, ɵɵinject, Optional, SkipSelf, Component, Directive, ElementRef, Input, ChangeDetectorRef, HostBinding, TemplateRef, ViewContainerRef, IterableDiffers, EventEmitter, Self, Output, Renderer2, InjectionToken, Inject, Pipe, LOCALE_ID, APP_INITIALIZER, Injector, NgModule } from '@angular/core'; +import { Router, NavigationEnd, ActivatedRoute, RouterModule } from '@angular/router'; +import { Action, Selector, State, Store, Actions, createSelector, Select, actionMatcher, InitState, UpdateState, setValue, NGXS_PLUGINS, NgxsModule } from '@ngxs/store'; +import { noop as noop$1, combineLatest, from, throwError, of, Subject, Observable, fromEvent, ReplaySubject } from 'rxjs'; import snq from 'snq'; +import { HttpClient, HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http'; +import { tap, take, catchError, switchMap, takeUntil, debounceTime, filter, finalize, distinctUntilChanged } from 'rxjs/operators'; import { registerLocaleData, CommonModule } from '@angular/common'; +import compare from 'just-compare'; +import clone from 'just-clone'; import { FormGroupDirective, FormsModule, ReactiveFormsModule } from '@angular/forms'; import { OAuthService } from 'angular-oauth2-oidc'; import { Navigate, NgxsRouterPluginModule } from '@ngxs/router-plugin'; @@ -170,86 +172,6 @@ if (false) { * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var RestService = /** @class */ (function () { - function RestService(http, store) { - this.http = http; - this.store = store; - } - /** - * @param {?} err - * @return {?} - */ - RestService.prototype.handleError = /** - * @param {?} err - * @return {?} - */ - function (err) { - this.store.dispatch(new RestOccurError(err)); - console.error(err); - return throwError(err); - }; - /** - * @template T, R - * @param {?} request - * @param {?=} config - * @param {?=} api - * @return {?} - */ - RestService.prototype.request = /** - * @template T, R - * @param {?} request - * @param {?=} config - * @param {?=} api - * @return {?} - */ - function (request, config, api) { - var _this = this; - if (config === void 0) { config = {}; } - var _a = config.observe, observe = _a === void 0 ? "body" /* Body */ : _a, skipHandleError = config.skipHandleError; - /** @type {?} */ - var url = api || this.store.selectSnapshot(ConfigState.getApiUrl()) + request.url; - var method = request.method, options = __rest(request, ["method"]); - return this.http.request(method, url, (/** @type {?} */ (__assign({ observe: observe }, options)))).pipe(observe === "body" /* Body */ ? take(1) : null, catchError((/** - * @param {?} err - * @return {?} - */ - function (err) { - if (skipHandleError) { - return throwError(err); - } - return _this.handleError(err); - }))); - }; - RestService.decorators = [ - { type: Injectable, args: [{ - providedIn: 'root', - },] } - ]; - /** @nocollapse */ - RestService.ctorParameters = function () { return [ - { type: HttpClient }, - { type: Store } - ]; }; - /** @nocollapse */ RestService.ngInjectableDef = ɵɵdefineInjectable({ factory: function RestService_Factory() { return new RestService(ɵɵinject(HttpClient), ɵɵinject(Store)); }, token: RestService, providedIn: "root" }); - return RestService; -}()); -if (false) { - /** - * @type {?} - * @private - */ - RestService.prototype.http; - /** - * @type {?} - * @private - */ - RestService.prototype.store; -} - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -447,48 +369,6 @@ if (false) { ProfileState.prototype.profileService; } -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var ApplicationConfigurationService = /** @class */ (function () { - function ApplicationConfigurationService(rest) { - this.rest = rest; - } - /** - * @return {?} - */ - ApplicationConfigurationService.prototype.getConfiguration = /** - * @return {?} - */ - function () { - /** @type {?} */ - var request = { - method: 'GET', - url: '/api/abp/application-configuration', - }; - return this.rest.request(request); - }; - ApplicationConfigurationService.decorators = [ - { type: Injectable, args: [{ - providedIn: 'root', - },] } - ]; - /** @nocollapse */ - ApplicationConfigurationService.ctorParameters = function () { return [ - { type: RestService } - ]; }; - /** @nocollapse */ ApplicationConfigurationService.ngInjectableDef = ɵɵdefineInjectable({ factory: function ApplicationConfigurationService_Factory() { return new ApplicationConfigurationService(ɵɵinject(RestService)); }, token: ApplicationConfigurationService, providedIn: "root" }); - return ApplicationConfigurationService; -}()); -if (false) { - /** - * @type {?} - * @private - */ - ApplicationConfigurationService.prototype.rest; -} - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -829,6 +709,133 @@ if (false) { SessionState.prototype.localizationService; } +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +var RestService = /** @class */ (function () { + function RestService(http, store) { + this.http = http; + this.store = store; + } + /** + * @param {?} err + * @return {?} + */ + RestService.prototype.handleError = /** + * @param {?} err + * @return {?} + */ + function (err) { + this.store.dispatch(new RestOccurError(err)); + console.error(err); + return throwError(err); + }; + /** + * @template T, R + * @param {?} request + * @param {?=} config + * @param {?=} api + * @return {?} + */ + RestService.prototype.request = /** + * @template T, R + * @param {?} request + * @param {?=} config + * @param {?=} api + * @return {?} + */ + function (request, config, api) { + var _this = this; + if (config === void 0) { config = {}; } + var _a = config.observe, observe = _a === void 0 ? "body" /* Body */ : _a, skipHandleError = config.skipHandleError; + /** @type {?} */ + var url = api || this.store.selectSnapshot(ConfigState.getApiUrl()) + request.url; + var method = request.method, options = __rest(request, ["method"]); + return this.http.request(method, url, (/** @type {?} */ (__assign({ observe: observe }, options)))).pipe(observe === "body" /* Body */ ? take(1) : null, catchError((/** + * @param {?} err + * @return {?} + */ + function (err) { + if (skipHandleError) { + return throwError(err); + } + return _this.handleError(err); + }))); + }; + RestService.decorators = [ + { type: Injectable, args: [{ + providedIn: 'root', + },] } + ]; + /** @nocollapse */ + RestService.ctorParameters = function () { return [ + { type: HttpClient }, + { type: Store } + ]; }; + /** @nocollapse */ RestService.ngInjectableDef = ɵɵdefineInjectable({ factory: function RestService_Factory() { return new RestService(ɵɵinject(HttpClient), ɵɵinject(Store)); }, token: RestService, providedIn: "root" }); + return RestService; +}()); +if (false) { + /** + * @type {?} + * @private + */ + RestService.prototype.http; + /** + * @type {?} + * @private + */ + RestService.prototype.store; +} + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +var ApplicationConfigurationService = /** @class */ (function () { + function ApplicationConfigurationService(rest) { + this.rest = rest; + } + /** + * @return {?} + */ + ApplicationConfigurationService.prototype.getConfiguration = /** + * @return {?} + */ + function () { + /** @type {?} */ + var request = { + method: 'GET', + url: '/api/abp/application-configuration', + }; + return this.rest.request(request); + }; + ApplicationConfigurationService.decorators = [ + { type: Injectable, args: [{ + providedIn: 'root', + },] } + ]; + /** @nocollapse */ + ApplicationConfigurationService.ctorParameters = function () { return [ + { type: RestService } + ]; }; + /** @nocollapse */ ApplicationConfigurationService.ngInjectableDef = ɵɵdefineInjectable({ factory: function ApplicationConfigurationService_Factory() { return new ApplicationConfigurationService(ɵɵinject(RestService)); }, token: ApplicationConfigurationService, providedIn: "root" }); + return ApplicationConfigurationService; +}()); +if (false) { + /** + * @type {?} + * @private + */ + ApplicationConfigurationService.prototype.rest; +} + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -1026,7 +1033,19 @@ var ConfigState = /** @class */ (function () { * @return {?} */ function (state) { - return findRoute(state.routes, path, name); + var flattedRoutes = state.flattedRoutes; + return ((/** @type {?} */ (flattedRoutes))).find((/** + * @param {?} route + * @return {?} + */ + function (route) { + if (path && route.path === path) { + return route; + } + else if (name && route.name === name) { + return route; + } + })); })); return selector; }; @@ -1072,55 +1091,26 @@ var ConfigState = /** @class */ (function () { return selector; }; /** - * @param {?=} condition + * @param {?} key * @return {?} */ ConfigState.getGrantedPolicy = /** - * @param {?=} condition + * @param {?} key * @return {?} */ - function (condition) { - if (condition === void 0) { condition = ''; } - /** @type {?} */ - var keys = condition - .replace(/\(|\)|\!|\s/g, '') - .split(/\|\||&&/) - .filter((/** - * @param {?} key - * @return {?} - */ - function (key) { return key; })); + function (key) { /** @type {?} */ var selector = createSelector([ConfigState_1], (/** * @param {?} state * @return {?} */ function (state) { - if (!keys.length) + if (!key) return true; - /** @type {?} */ - var getPolicy = (/** - * @param {?} key - * @return {?} - */ - function (key) { return snq((/** + return snq((/** * @return {?} */ - function () { return state.auth.grantedPolicies[key]; }), false); }); - if (keys.length > 1) { - keys.forEach((/** - * @param {?} key - * @return {?} - */ - function (key) { - /** @type {?} */ - var value = getPolicy(key); - condition = condition.replace(key, value); - })); - // tslint:disable-next-line: no-eval - return eval("!!" + condition); - } - return getPolicy(condition); + function () { return state.auth.grantedPolicies[key]; }), false); })); return selector; }; @@ -1162,7 +1152,7 @@ var ConfigState = /** @class */ (function () { function () { return defaultResourceName; })); } /** @type {?} */ - var copy = keys.reduce((/** + var copy = ((/** @type {?} */ (keys))).reduce((/** * @param {?} acc * @param {?} val * @return {?} @@ -1298,103 +1288,38 @@ if (false) { * @param {?} name * @param {?} newValue * @param {?=} parentUrl - * @return {?} - */ -function patchRouteDeep(routes, name, newValue, parentUrl) { - if (parentUrl === void 0) { parentUrl = null; } - routes = routes.map((/** - * @param {?} route - * @return {?} - */ - function (route) { - if (route.name === name) { - if (newValue.path) { - newValue.url = parentUrl + "/" + newValue.path; - } - if (newValue.children && newValue.children.length) { - newValue.children = newValue.children.map((/** - * @param {?} child - * @return {?} - */ - function (child) { return (__assign({}, child, { url: parentUrl + "/" + route.path + "/" + child.path })); })); - } - return __assign({}, route, newValue); - } - else if (route.children && route.children.length) { - route.children = patchRouteDeep(route.children, name, newValue, (parentUrl || '/') + route.path); - } - return route; - })); - if (parentUrl) { - // recursive block - return routes; - } - return organizeRoutes(routes); -} -/** - * @param {?} routes - * @param {?=} path - * @param {?=} name - * @return {?} - */ -function findRoute(routes, path, name) { - /** @type {?} */ - var foundRoute; - routes.forEach((/** - * @param {?} route - * @return {?} - */ - function (route) { - if (foundRoute) - return; - if (path && route.path === path) { - foundRoute = route; - } - else if (name && route.name === name) { - foundRoute = route; - return; - } - else if (route.children && route.children.length) { - foundRoute = findRoute(route.children, path, name); - return; - } - })); - return foundRoute; -} - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -/** - * @return {?} - */ -function noop() { - /** @type {?} */ - var fn = (/** - * @return {?} - */ - function () { }); - return fn; -} - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -/** - * @param {?=} a - * @return {?} - */ -function uuid(a) { - return a - ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16) - : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid); + * @return {?} + */ +function patchRouteDeep(routes, name, newValue, parentUrl) { + if (parentUrl === void 0) { parentUrl = null; } + routes = routes.map((/** + * @param {?} route + * @return {?} + */ + function (route) { + if (route.name === name) { + if (newValue.path) { + newValue.url = parentUrl + "/" + newValue.path; + } + if (newValue.children && newValue.children.length) { + newValue.children = newValue.children.map((/** + * @param {?} child + * @return {?} + */ + function (child) { return (__assign({}, child, { url: parentUrl + "/" + route.path + "/" + child.path })); })); + } + return __assign({}, route, newValue); + } + else if (route.children && route.children.length) { + route.children = patchRouteDeep(route.children, name, newValue, (parentUrl || '/') + route.path); + } + return route; + })); + if (parentUrl) { + // recursive block + return routes; + } + return organizeRoutes(routes); } /** @@ -1442,20 +1367,33 @@ function (componentInstance, destroyMethodName) { }); }); -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ var DynamicLayoutComponent = /** @class */ (function () { - function DynamicLayoutComponent(router, store) { + function DynamicLayoutComponent(router, route, store) { var _this = this; this.router = router; + this.route = route; this.store = store; + var _a = this.store.selectSnapshot(ConfigState.getAll), layouts = _a.requirements.layouts, routes = _a.routes; + if ((this.route.snapshot.data || {}).layout) { + this.layout = layouts + .filter((/** + * @param {?} l + * @return {?} + */ + function (l) { return !!l; })) + .find((/** + * @param {?} l + * @return {?} + */ + function (l) { return snq((/** + * @return {?} + */ + function () { return l.type.toLowerCase().indexOf(_this.route.snapshot.data.layout); }), -1) > -1; })); + } this.router.events.pipe(takeUntilDestroy(this)).subscribe((/** * @param {?} event * @return {?} @@ -1463,14 +1401,15 @@ var DynamicLayoutComponent = /** @class */ (function () { function (event) { if (event instanceof NavigationEnd) { var segments = _this.router.parseUrl(event.url).root.children.primary.segments; - var _a = _this.store.selectSnapshot(ConfigState.getAll), layouts = _a.requirements.layouts, routes = _a.routes; /** @type {?} */ - var layout_1 = findLayout(segments, routes); - _this.layout = layouts.filter((/** + var layout_1 = (_this.route.snapshot.data || {}).layout || findLayout(segments, routes); + _this.layout = layouts + .filter((/** * @param {?} l * @return {?} */ - function (l) { return !!l; })).find((/** + function (l) { return !!l; })) + .find((/** * @param {?} l * @return {?} */ @@ -1497,6 +1436,7 @@ var DynamicLayoutComponent = /** @class */ (function () { /** @nocollapse */ DynamicLayoutComponent.ctorParameters = function () { return [ { type: Router }, + { type: ActivatedRoute }, { type: Store } ]; }; __decorate([ @@ -1515,6 +1455,11 @@ if (false) { * @private */ DynamicLayoutComponent.prototype.router; + /** + * @type {?} + * @private + */ + DynamicLayoutComponent.prototype.route; /** * @type {?} * @private @@ -1732,6 +1677,335 @@ if (false) { EllipsisDirective.prototype.elRef; } +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +var AbpForContext = /** @class */ (function () { + function AbpForContext($implicit, index, count, list) { + this.$implicit = $implicit; + this.index = index; + this.count = count; + this.list = list; + } + return AbpForContext; +}()); +if (false) { + /** @type {?} */ + AbpForContext.prototype.$implicit; + /** @type {?} */ + AbpForContext.prototype.index; + /** @type {?} */ + AbpForContext.prototype.count; + /** @type {?} */ + AbpForContext.prototype.list; +} +var RecordView = /** @class */ (function () { + function RecordView(record, view) { + this.record = record; + this.view = view; + } + return RecordView; +}()); +if (false) { + /** @type {?} */ + RecordView.prototype.record; + /** @type {?} */ + RecordView.prototype.view; +} +var ForDirective = /** @class */ (function () { + function ForDirective(tempRef, vcRef, differs) { + this.tempRef = tempRef; + this.vcRef = vcRef; + this.differs = differs; + } + Object.defineProperty(ForDirective.prototype, "compareFn", { + get: /** + * @return {?} + */ + function () { + return this.compareBy || compare; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ForDirective.prototype, "trackByFn", { + get: /** + * @return {?} + */ + function () { + return this.trackBy || ((/** + * @param {?} index + * @param {?} item + * @return {?} + */ + function (index, item) { return ((/** @type {?} */ (item))).id || index; })); + }, + enumerable: true, + configurable: true + }); + /** + * @private + * @param {?} changes + * @return {?} + */ + ForDirective.prototype.iterateOverAppliedOperations = /** + * @private + * @param {?} changes + * @return {?} + */ + function (changes) { + var _this = this; + /** @type {?} */ + var rw = []; + changes.forEachOperation((/** + * @param {?} record + * @param {?} previousIndex + * @param {?} currentIndex + * @return {?} + */ + function (record, previousIndex, currentIndex) { + if (record.previousIndex == null) { + /** @type {?} */ + var view = _this.vcRef.createEmbeddedView(_this.tempRef, new AbpForContext(null, -1, -1, _this.items), currentIndex); + rw.push(new RecordView(record, view)); + } + else if (currentIndex == null) { + _this.vcRef.remove(previousIndex); + } + else { + /** @type {?} */ + var view = _this.vcRef.get(previousIndex); + _this.vcRef.move(view, currentIndex); + rw.push(new RecordView(record, (/** @type {?} */ (view)))); + } + })); + for (var i = 0, l = rw.length; i < l; i++) { + rw[i].view.context.$implicit = rw[i].record.item; + } + }; + /** + * @private + * @param {?} changes + * @return {?} + */ + ForDirective.prototype.iterateOverAttachedViews = /** + * @private + * @param {?} changes + * @return {?} + */ + function (changes) { + var _this = this; + for (var i = 0, l = this.vcRef.length; i < l; i++) { + /** @type {?} */ + var viewRef = (/** @type {?} */ (this.vcRef.get(i))); + viewRef.context.index = i; + viewRef.context.count = l; + viewRef.context.list = this.items; + } + changes.forEachIdentityChange((/** + * @param {?} record + * @return {?} + */ + function (record) { + /** @type {?} */ + var viewRef = (/** @type {?} */ (_this.vcRef.get(record.currentIndex))); + viewRef.context.$implicit = record.item; + })); + }; + /** + * @private + * @param {?} items + * @return {?} + */ + ForDirective.prototype.projectItems = /** + * @private + * @param {?} items + * @return {?} + */ + function (items) { + if (!items.length && this.emptyRef) { + this.vcRef.createEmbeddedView(this.emptyRef).rootNodes; + this.isShowEmptyRef = true; + return; + } + if (this.emptyRef && this.isShowEmptyRef) { + this.vcRef.clear(); + this.isShowEmptyRef = false; + } + if (!this.differ && items) { + this.differ = this.differs.find(items).create(this.trackByFn); + } + if (this.differ) { + /** @type {?} */ + var changes = this.differ.diff(items); + if (changes) { + this.iterateOverAppliedOperations(changes); + this.iterateOverAttachedViews(changes); + } + } + }; + /** + * @private + * @param {?} items + * @return {?} + */ + ForDirective.prototype.sortItems = /** + * @private + * @param {?} items + * @return {?} + */ + function (items) { + var _this = this; + if (this.orderBy) { + items.sort((/** + * @param {?} a + * @param {?} b + * @return {?} + */ + function (a, b) { return (a[_this.orderBy] > b[_this.orderBy] ? 1 : a[_this.orderBy] < b[_this.orderBy] ? -1 : 0); })); + } + else { + items.sort(); + } + }; + /** + * @return {?} + */ + ForDirective.prototype.ngOnChanges = /** + * @return {?} + */ + function () { + var _this = this; + /** @type {?} */ + var items = (/** @type {?} */ (clone(this.items))); + if (!Array.isArray(items)) + return; + /** @type {?} */ + var compareFn = this.compareFn; + if (typeof this.filterBy !== 'undefined') { + items = items.filter((/** + * @param {?} item + * @return {?} + */ + function (item) { return compareFn(item[_this.filterBy], _this.filterVal); })); + } + switch (this.orderDir) { + case 'ASC': + this.sortItems(items); + this.projectItems(items); + break; + case 'DESC': + this.sortItems(items); + items.reverse(); + this.projectItems(items); + break; + default: + this.projectItems(items); + } + }; + ForDirective.decorators = [ + { type: Directive, args: [{ + selector: '[abpFor]', + },] } + ]; + /** @nocollapse */ + ForDirective.ctorParameters = function () { return [ + { type: TemplateRef }, + { type: ViewContainerRef }, + { type: IterableDiffers } + ]; }; + ForDirective.propDecorators = { + items: [{ type: Input, args: ['abpForOf',] }], + orderBy: [{ type: Input, args: ['abpForOrderBy',] }], + orderDir: [{ type: Input, args: ['abpForOrderDir',] }], + filterBy: [{ type: Input, args: ['abpForFilterBy',] }], + filterVal: [{ type: Input, args: ['abpForFilterVal',] }], + trackBy: [{ type: Input, args: ['abpForTrackBy',] }], + compareBy: [{ type: Input, args: ['abpForCompareBy',] }], + emptyRef: [{ type: Input, args: ['abpForEmptyRef',] }] + }; + return ForDirective; +}()); +if (false) { + /** @type {?} */ + ForDirective.prototype.items; + /** @type {?} */ + ForDirective.prototype.orderBy; + /** @type {?} */ + ForDirective.prototype.orderDir; + /** @type {?} */ + ForDirective.prototype.filterBy; + /** @type {?} */ + ForDirective.prototype.filterVal; + /** @type {?} */ + ForDirective.prototype.trackBy; + /** @type {?} */ + ForDirective.prototype.compareBy; + /** @type {?} */ + ForDirective.prototype.emptyRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.differ; + /** + * @type {?} + * @private + */ + ForDirective.prototype.isShowEmptyRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.tempRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.vcRef; + /** + * @type {?} + * @private + */ + ForDirective.prototype.differs; +} + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +/** + * @return {?} + */ +function noop() { + /** @type {?} */ + var fn = (/** + * @return {?} + */ + function () { }); + return fn; +} + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +/** + * @param {?=} a + * @return {?} + */ +function uuid(a) { + return a + ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16) + : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid); +} + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -2066,6 +2340,7 @@ var eLayoutType = { account: 'account', application: 'application', empty: 'empty', + setting: 'setting', }; /** @@ -2461,11 +2736,6 @@ var ABP; */ var Config; (function (Config) { - /** - * @record - */ - function State() { } - Config.State = State; /** * @record */ @@ -2480,6 +2750,8 @@ var Config; Environment.prototype.oAuthConfig; /** @type {?} */ Environment.prototype.apis; + /** @type {?} */ + Environment.prototype.localization; } /** * @record @@ -2653,7 +2925,10 @@ var ConfigPlugin = /** @class */ (function () { if (isInitAction && !this.initialized) { var _a = transformRoutes(this.router.config), routes = _a.routes, wrappers = _a.wrappers; routes = organizeRoutes(routes, wrappers); - state = setValue(state, 'ConfigState', __assign({}, (state.ConfigState && __assign({}, state.ConfigState)), this.options, { routes: routes })); + /** @type {?} */ + var flattedRoutes = flatRoutes(clone(routes)); + state = setValue(state, 'ConfigState', __assign({}, (state.ConfigState && __assign({}, state.ConfigState)), this.options, { routes: routes, + flattedRoutes: flattedRoutes })); this.initialized = true; } return next(state, event); @@ -2781,6 +3056,35 @@ function setUrls(routes, parentUrl) { children: setUrls(route.children, "/" + route.path), }))); })); } +/** + * @param {?} routes + * @return {?} + */ +function flatRoutes(routes) { + /** @type {?} */ + var flat = (/** + * @param {?} r + * @return {?} + */ + function (r) { + return r.reduce((/** + * @param {?} acc + * @param {?} val + * @return {?} + */ + function (acc, val) { + /** @type {?} */ + var value = [val]; + if (val.children) { + var children = val.children; + delete val.children; + value = __spread([val], flat(children)); + } + return __spread(acc, value); + }), []); + }); + return flat(routes); +} /** * @fileoverview added by tsickle @@ -3285,6 +3589,7 @@ var CoreModule = /** @class */ (function () { DynamicLayoutComponent, AutofocusDirective, EllipsisDirective, + ForDirective, FormSubmitDirective, LocalizationPipe, PermissionDirective, @@ -3302,6 +3607,7 @@ var CoreModule = /** @class */ (function () { DynamicLayoutComponent, AutofocusDirective, EllipsisDirective, + ForDirective, FormSubmitDirective, LocalizationPipe, PermissionDirective, @@ -3327,5 +3633,5 @@ var CoreModule = /** @class */ (function () { * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { ApiInterceptor, ApplicationConfigurationService, AuthGuard, AutofocusDirective, CONFIG, ChangePassword, ConfigPlugin, ConfigService, ConfigState, CoreModule, DynamicLayoutComponent, ENVIRONMENT, EllipsisDirective, FormSubmitDirective, GetAppConfiguration, GetProfile, LazyLoadService, LocalizationService, NGXS_CONFIG_PLUGIN_OPTIONS, PatchRouteByName, PermissionDirective, PermissionGuard, ProfileService, ProfileState, Rest, RestOccurError, RestService, RouterOutletComponent, SessionState, SetLanguage, SetTenant, StartLoader, StopLoader, UpdateProfile, VisibilityDirective, configFactory, environmentFactory, getInitialData, localeInitializer, noop, organizeRoutes, registerLocale, setChildRoute, sortRoutes, takeUntilDestroy, uuid, ProfileState as ɵa, ProfileService as ɵb, ClickEventStopPropagationDirective as ɵba, LocaleId as ɵbb, LocaleProvider as ɵbc, NGXS_CONFIG_PLUGIN_OPTIONS as ɵbd, ConfigPlugin as ɵbe, ApiInterceptor as ɵbf, getInitialData as ɵbg, localeInitializer as ɵbh, RestService as ɵc, GetProfile as ɵd, UpdateProfile as ɵe, ChangePassword as ɵf, SessionState as ɵh, LocalizationService as ɵi, SetLanguage as ɵj, SetTenant as ɵk, ConfigState as ɵm, ApplicationConfigurationService as ɵn, PatchRouteByName as ɵo, GetAppConfiguration as ɵp, RouterOutletComponent as ɵq, DynamicLayoutComponent as ɵr, ConfigState as ɵs, AutofocusDirective as ɵt, EllipsisDirective as ɵu, FormSubmitDirective as ɵv, LocalizationPipe as ɵw, PermissionDirective as ɵx, VisibilityDirective as ɵy, InputEventDebounceDirective as ɵz }; +export { ApiInterceptor, ApplicationConfigurationService, AuthGuard, AutofocusDirective, CONFIG, ChangePassword, ConfigPlugin, ConfigService, ConfigState, CoreModule, DynamicLayoutComponent, ENVIRONMENT, EllipsisDirective, ForDirective, FormSubmitDirective, GetAppConfiguration, GetProfile, LazyLoadService, LocalizationService, NGXS_CONFIG_PLUGIN_OPTIONS, PatchRouteByName, PermissionDirective, PermissionGuard, ProfileService, ProfileState, Rest, RestOccurError, RestService, RouterOutletComponent, SessionState, SetLanguage, SetTenant, StartLoader, StopLoader, UpdateProfile, VisibilityDirective, configFactory, environmentFactory, getInitialData, localeInitializer, noop, organizeRoutes, registerLocale, setChildRoute, sortRoutes, takeUntilDestroy, uuid, ProfileState as ɵa, ProfileService as ɵb, ClickEventStopPropagationDirective as ɵba, LocaleId as ɵbb, LocaleProvider as ɵbc, NGXS_CONFIG_PLUGIN_OPTIONS as ɵbd, ConfigPlugin as ɵbe, ApiInterceptor as ɵbf, getInitialData as ɵbg, localeInitializer as ɵbh, RestService as ɵc, GetProfile as ɵd, UpdateProfile as ɵe, ChangePassword as ɵf, SessionState as ɵh, LocalizationService as ɵi, SetLanguage as ɵj, SetTenant as ɵk, ConfigState as ɵm, ApplicationConfigurationService as ɵn, PatchRouteByName as ɵo, GetAppConfiguration as ɵp, RouterOutletComponent as ɵq, DynamicLayoutComponent as ɵr, AutofocusDirective as ɵs, EllipsisDirective as ɵt, ForDirective as ɵu, FormSubmitDirective as ɵv, LocalizationPipe as ɵw, PermissionDirective as ɵx, VisibilityDirective as ɵy, InputEventDebounceDirective as ɵz }; //# sourceMappingURL=abp-ng.core.js.map diff --git a/npm/ng-packs/dist/core/fesm5/abp-ng.core.js.map b/npm/ng-packs/dist/core/fesm5/abp-ng.core.js.map index ca3ffb5f44..8dcbfb37c8 100644 --- a/npm/ng-packs/dist/core/fesm5/abp-ng.core.js.map +++ b/npm/ng-packs/dist/core/fesm5/abp-ng.core.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.core.js","sources":["ng://@abp/ng.core/lib/actions/config.actions.ts","ng://@abp/ng.core/lib/actions/loader.actions.ts","ng://@abp/ng.core/lib/actions/profile.actions.ts","ng://@abp/ng.core/lib/actions/rest.actions.ts","ng://@abp/ng.core/lib/actions/session.actions.ts","ng://@abp/ng.core/lib/services/rest.service.ts","ng://@abp/ng.core/lib/services/profile.service.ts","ng://@abp/ng.core/lib/states/profile.state.ts","ng://@abp/ng.core/lib/services/application-configuration.service.ts","ng://@abp/ng.core/lib/constants/different-locales.ts","ng://@abp/ng.core/lib/utils/initial-utils.ts","ng://@abp/ng.core/lib/services/localization.service.ts","ng://@abp/ng.core/lib/states/session.state.ts","ng://@abp/ng.core/lib/utils/route-utils.ts","ng://@abp/ng.core/lib/states/config.state.ts","ng://@abp/ng.core/lib/utils/common-utils.ts","ng://@abp/ng.core/lib/utils/generator-utils.ts","ng://@abp/ng.core/lib/utils/rxjs-utils.ts","ng://@abp/ng.core/lib/components/dynamic-layout.component.ts","ng://@abp/ng.core/lib/components/router-outlet.component.ts","ng://@abp/ng.core/lib/directives/autofocus.directive.ts","ng://@abp/ng.core/lib/directives/ellipsis.directive.ts","ng://@abp/ng.core/lib/directives/form-submit.directive.ts","ng://@abp/ng.core/lib/directives/permission.directive.ts","ng://@abp/ng.core/lib/directives/visibility.directive.ts","ng://@abp/ng.core/lib/enums/common.ts","ng://@abp/ng.core/lib/guards/auth.guard.ts","ng://@abp/ng.core/lib/guards/permission.guard.ts","ng://@abp/ng.core/lib/interceptors/api.interceptor.ts","ng://@abp/ng.core/lib/models/application-configuration.ts","ng://@abp/ng.core/lib/models/common.ts","ng://@abp/ng.core/lib/models/config.ts","ng://@abp/ng.core/lib/models/rest.ts","ng://@abp/ng.core/lib/models/session.ts","ng://@abp/ng.core/lib/models/profile.ts","ng://@abp/ng.core/lib/plugins/config/config.plugin.ts","ng://@abp/ng.core/lib/services/config.service.ts","ng://@abp/ng.core/lib/services/lazy-load.service.ts","ng://@abp/ng.core/lib/tokens/common.token.ts","ng://@abp/ng.core/lib/directives/debounce.directive.ts","ng://@abp/ng.core/lib/directives/stop-propagation.directive.ts","ng://@abp/ng.core/lib/pipes/localization.pipe.ts","ng://@abp/ng.core/lib/providers/locale.provider.ts","ng://@abp/ng.core/lib/core.module.ts"],"sourcesContent":["import { ABP } from '../models';\n\nexport class PatchRouteByName {\n static readonly type = '[Config] Patch Route By Name';\n constructor(public name: string, public newValue: Partial) {}\n}\n\nexport class GetAppConfiguration {\n static readonly type = '[Config] Get App Configuration';\n}\n","import { HttpRequest } from '@angular/common/http';\n\nexport class StartLoader {\n static readonly type = '[Loader] Start';\n constructor(public payload: HttpRequest) {}\n}\n\nexport class StopLoader {\n static readonly type = '[Loader] Stop';\n constructor(public payload: HttpRequest) {}\n}\n","import { Profile } from '../models';\n\nexport class GetProfile {\n static readonly type = '[Profile] Get';\n}\n\nexport class UpdateProfile {\n static readonly type = '[Profile] Update';\n constructor(public payload: Profile.Response) {}\n}\n\nexport class ChangePassword {\n static readonly type = '[Profile] Change Password';\n constructor(public payload: Profile.ChangePasswordRequest) {}\n}\n","import { HttpErrorResponse } from '@angular/common/http';\n\nexport class RestOccurError {\n static readonly type = '[Rest] Error';\n constructor(public payload: HttpErrorResponse | any) {}\n}\n","import { ABP } from '../models';\n\nexport class SetLanguage {\n static readonly type = '[Session] Set Language';\n constructor(public payload: string) {}\n}\nexport class SetTenant {\n static readonly type = '[Session] Set Tenant';\n constructor(public payload: ABP.BasicItem) {}\n}\n","import { HttpClient, HttpRequest } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { NEVER, Observable, throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport { Rest } from '../models/rest';\nimport { ConfigState } from '../states';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RestService {\n constructor(private http: HttpClient, private store: Store) {}\n\n handleError(err: any): Observable {\n this.store.dispatch(new RestOccurError(err));\n console.error(err);\n return throwError(err);\n }\n\n request(request: HttpRequest | Rest.Request, config: Rest.Config = {}, api?: string): Observable {\n const { observe = Rest.Observe.Body, skipHandleError } = config;\n const url = api || this.store.selectSnapshot(ConfigState.getApiUrl()) + request.url;\n const { method, ...options } = request;\n return this.http.request(method, url, { observe, ...options } as any).pipe(\n observe === Rest.Observe.Body ? take(1) : null,\n catchError(err => {\n if (skipHandleError) {\n return throwError(err);\n }\n\n return this.handleError(err);\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService } from './rest.service';\nimport { Profile, Rest } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ProfileService {\n constructor(private rest: RestService) {}\n\n get(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/my-profile',\n };\n\n return this.rest.request(request);\n }\n\n update(body: Profile.Response): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/identity/my-profile',\n body,\n };\n\n return this.rest.request(request);\n }\n\n changePassword(body: Profile.ChangePasswordRequest, skipHandleError: boolean = false): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/my-profile/change-password',\n body,\n };\n\n return this.rest.request(request, { skipHandleError });\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetProfile, ChangePassword, UpdateProfile } from '../actions/profile.actions';\nimport { Profile } from '../models/profile';\nimport { ProfileService } from '../services/profile.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'ProfileState',\n defaults: {} as Profile.State,\n})\nexport class ProfileState {\n @Selector()\n static getProfile({ profile }: Profile.State): Profile.Response {\n return profile;\n }\n\n constructor(private profileService: ProfileService) {}\n\n @Action(GetProfile)\n profileGet({ patchState }: StateContext) {\n return this.profileService.get().pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(UpdateProfile)\n profileUpdate({ patchState }: StateContext, { payload }: UpdateProfile) {\n return this.profileService.update(payload).pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(ChangePassword)\n changePassword(_, { payload }: ChangePassword) {\n return this.profileService.changePassword(payload, true);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ApplicationConfiguration, Rest } from '../models';\nimport { RestService } from './rest.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ApplicationConfigurationService {\n constructor(private rest: RestService) {}\n\n getConfiguration(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/application-configuration',\n };\n\n return this.rest.request(request);\n }\n}\n","// Different locales from .NET\n// Key is .NET locale, value is Angular locale\n\nexport default {\n 'ar-sa': 'ar-SA',\n 'ca-ES-valencia': 'ca-ES-VALENCIA',\n 'de-de': 'de',\n 'es-ES': 'es',\n 'en-US': 'en',\n 'fil-Latn': 'en',\n 'ku-Arab': 'en',\n 'ky-Cyrl': 'en',\n 'mi-Latn': 'en',\n 'prs-Arab': 'en',\n 'qut-Latn': 'en',\n nso: 'en',\n quz: 'en',\n 'fr-FR': 'fr',\n 'gd-Latn': 'gd',\n 'ha-Latn': 'ha',\n 'ig-Latn': 'ig',\n 'it-it': 'it',\n 'mn-Cyrl': 'mn',\n 'pt-BR': 'pt',\n 'sd-Arab': 'pa-Arab',\n 'sr-Cyrl-RS': 'sr-Cyrl',\n 'sr-Latn-RS': 'sr-Latn',\n 'tg-Cyrl': 'tg',\n 'tk-Latn': 'tk',\n 'tt-Cyrl': 'tt',\n 'ug-Arab': 'ug',\n 'yo-Latn': 'yo',\n};\n","import { registerLocaleData } from '@angular/common';\nimport { Injector } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport differentLocales from '../constants/different-locales';\nimport { SessionState } from '../states/session.state';\n\nexport function getInitialData(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n return store.dispatch(new GetAppConfiguration()).toPromise();\n };\n\n return fn;\n}\n\nexport function localeInitializer(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n const lang = store.selectSnapshot(SessionState.getLanguage) || 'en';\n\n return new Promise((resolve, reject) => {\n registerLocale(lang).then(() => resolve(), reject);\n });\n };\n\n return fn;\n}\n\nexport function registerLocale(locale: string) {\n return import(\n /* webpackInclude: /(af|am|ar-SA|as|az-Latn|be|bg|bn-BD|bn-IN|bs|ca|ca-ES-VALENCIA|cs|cy|da|de|de|el|en-GB|en|es|en|es-US|es-MX|et|eu|fa|fi|en|fr|fr|fr-CA|ga|gd|gl|gu|ha|he|hi|hr|hu|hy|id|ig|is|it|it|ja|ka|kk|km|kn|ko|kok|en|en|lb|lt|lv|en|mk|ml|mn|mr|ms|mt|nb|ne|nl|nl-BE|nn|en|or|pa|pa-Arab|pl|en|pt|pt-PT|en|en|ro|ru|rw|pa-Arab|si|sk|sl|sq|sr-Cyrl-BA|sr-Cyrl|sr-Latn|sv|sw|ta|te|tg|th|ti|tk|tn|tr|tt|ug|uk|ur|uz-Latn|vi|wo|xh|yo|zh-Hans|zh-Hant|zu)\\.js$/ */\n `@angular/common/locales/${differentLocales[locale] || locale}.js`\n ).then(module => {\n registerLocaleData(module.default);\n });\n}\n","import { Injectable, Optional, SkipSelf } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router } from '@angular/router';\nimport { Actions, Store } from '@ngxs/store';\nimport { noop, Observable } from 'rxjs';\nimport { ConfigState } from '../states/config.state';\nimport { SessionState } from '../states/session.state';\nimport { registerLocale } from '../utils/initial-utils';\n\ntype ShouldReuseRoute = (future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot) => boolean;\n\n@Injectable({ providedIn: 'root' })\nexport class LocalizationService {\n get currentLang(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n constructor(\n private store: Store,\n private router: Router,\n private actions: Actions,\n @Optional()\n @SkipSelf()\n otherInstance: LocalizationService,\n ) {\n if (otherInstance) throw new Error('LocaleService should have only one instance.');\n }\n\n private setRouteReuse(reuse: ShouldReuseRoute) {\n this.router.routeReuseStrategy.shouldReuseRoute = reuse;\n }\n\n registerLocale(locale: string) {\n const { shouldReuseRoute } = this.router.routeReuseStrategy;\n\n this.setRouteReuse(() => false);\n this.router.navigated = false;\n\n return registerLocale(locale).then(async () => {\n await this.router.navigateByUrl(this.router.url).catch(noop);\n this.setRouteReuse(shouldReuseRoute);\n });\n }\n\n get(keys: string, ...interpolateParams: string[]): Observable {\n return this.store.select(ConfigState.getCopy(keys, ...interpolateParams));\n }\n\n instant(keys: string, ...interpolateParams: string[]): string {\n return this.store.selectSnapshot(ConfigState.getCopy(keys, ...interpolateParams));\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { SetLanguage, SetTenant } from '../actions/session.actions';\nimport { ABP, Session } from '../models';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport { LocalizationService } from '../services/localization.service';\nimport { from, combineLatest } from 'rxjs';\n\n@State({\n name: 'SessionState',\n defaults: {} as Session.State,\n})\nexport class SessionState {\n @Selector()\n static getLanguage({ language }: Session.State): string {\n return language;\n }\n\n @Selector()\n static getTenant({ tenant }: Session.State): ABP.BasicItem {\n return tenant;\n }\n\n constructor(private localizationService: LocalizationService) {}\n\n @Action(SetLanguage)\n setLanguage({ patchState, dispatch }: StateContext, { payload }: SetLanguage) {\n patchState({\n language: payload,\n });\n\n return combineLatest([dispatch(new GetAppConfiguration()), from(this.localizationService.registerLocale(payload))]);\n }\n\n @Action(SetTenant)\n setTenantId({ patchState }: StateContext, { payload }: SetTenant) {\n patchState({\n tenant: payload,\n });\n }\n}\n","import { ABP } from '../models';\n\nexport function organizeRoutes(\n routes: ABP.FullRoute[],\n wrappers: ABP.FullRoute[] = [],\n parentNameArr = [] as ABP.FullRoute[],\n parentName: string = null,\n): ABP.FullRoute[] {\n const filter = route => {\n if (route.children && route.children.length) {\n route.children = organizeRoutes(route.children, wrappers, parentNameArr, route.name);\n }\n\n if (route.parentName && route.parentName !== parentName) {\n parentNameArr.push(route);\n return false;\n }\n\n return true;\n };\n\n if (parentName) {\n // recursive block\n return routes.filter(filter);\n }\n\n const filteredRoutes = routes.filter(filter);\n\n if (parentNameArr.length) {\n return sortRoutes(setChildRoute([...filteredRoutes, ...wrappers], parentNameArr));\n }\n\n return filteredRoutes;\n}\n\nexport function setChildRoute(routes: ABP.FullRoute[], parentNameArr: ABP.FullRoute[]): ABP.FullRoute[] {\n return routes.map(route => {\n if (route.children && route.children.length) {\n route.children = setChildRoute(route.children, parentNameArr);\n }\n\n const foundedChildren = parentNameArr.filter(parent => parent.parentName === route.name);\n if (foundedChildren && foundedChildren.length) {\n route.children = [...(route.children || []), ...foundedChildren];\n }\n\n return route;\n });\n}\n\nexport function sortRoutes(routes: ABP.FullRoute[] = []): ABP.FullRoute[] {\n if (!routes.length) return [];\n return routes\n .sort((a, b) => a.order - b.order)\n .map(route => {\n if (route.children && route.children.length) {\n route.children = sortRoutes(route.children);\n }\n\n return route;\n });\n}\n","import { State, Selector, createSelector, Action, StateContext, Store } from '@ngxs/store';\nimport { Config, ABP } from '../models';\nimport { GetAppConfiguration, PatchRouteByName } from '../actions/config.actions';\nimport { ApplicationConfigurationService } from '../services/application-configuration.service';\nimport { tap, switchMap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { SetLanguage } from '../actions';\nimport { SessionState } from './session.state';\nimport { of } from 'rxjs';\nimport { setChildRoute, sortRoutes, organizeRoutes } from '../utils/route-utils';\n\n@State({\n name: 'ConfigState',\n defaults: {} as Config.State,\n})\nexport class ConfigState {\n @Selector()\n static getAll(state: Config.State) {\n return state;\n }\n\n @Selector()\n static getApplicationInfo(state: Config.State) {\n return state.environment.application || {};\n }\n\n static getOne(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return state[key];\n },\n );\n\n return selector;\n }\n\n static getDeep(keys: string[] | string) {\n if (typeof keys === 'string') {\n keys = keys.split('.');\n }\n\n if (!Array.isArray(keys)) {\n throw new Error('The argument must be a dot string or an string array.');\n }\n\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return (keys as string[]).reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state);\n },\n );\n\n return selector;\n }\n\n static getRoute(path?: string, name?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return findRoute(state.routes, path, name);\n },\n );\n\n return selector;\n }\n\n static getApiUrl(key?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): string {\n return state.environment.apis[key || 'default'].url;\n },\n );\n\n return selector;\n }\n\n static getSetting(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return snq(() => state.setting.values[key]);\n },\n );\n\n return selector;\n }\n\n static getGrantedPolicy(condition: string = '') {\n const keys = condition\n .replace(/\\(|\\)|\\!|\\s/g, '')\n .split(/\\|\\||&&/)\n .filter(key => key);\n\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): boolean {\n if (!keys.length) return true;\n\n const getPolicy = key => snq(() => state.auth.grantedPolicies[key], false);\n if (keys.length > 1) {\n keys.forEach(key => {\n const value = getPolicy(key);\n condition = condition.replace(key, value);\n });\n\n // tslint:disable-next-line: no-eval\n return eval(`!!${condition}`);\n }\n\n return getPolicy(condition);\n },\n );\n\n return selector;\n }\n\n static getCopy(key: string, ...interpolateParams: string[]) {\n if (!key) key = '';\n\n const keys = key.split('::') as string[];\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n if (!state.localization) return key;\n\n const { defaultResourceName } = state.environment.localization;\n if (keys[0] === '') {\n if (!defaultResourceName) {\n throw new Error(\n `Please check your environment. May you forget set defaultResourceName? \n Here is the example:\n { production: false,\n localization: {\n defaultResourceName: 'MyProjectName'\n }\n }`,\n );\n }\n\n keys[0] = snq(() => defaultResourceName);\n }\n\n let copy = keys.reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state.localization.values);\n\n interpolateParams = interpolateParams.filter(params => params != null);\n if (copy && interpolateParams && interpolateParams.length) {\n interpolateParams.forEach(param => {\n copy = copy.replace(/[\\'\\\"]?\\{[\\d]+\\}[\\'\\\"]?/, param);\n });\n }\n\n return copy || key;\n },\n );\n\n return selector;\n }\n\n constructor(private appConfigurationService: ApplicationConfigurationService, private store: Store) {}\n\n @Action(GetAppConfiguration)\n addData({ patchState, dispatch }: StateContext) {\n return this.appConfigurationService.getConfiguration().pipe(\n tap(configuration =>\n patchState({\n ...configuration,\n }),\n ),\n switchMap(configuration => {\n let defaultLang: string = configuration.setting.values['Abp.Localization.DefaultLanguage'];\n\n if (defaultLang.includes(';')) {\n defaultLang = defaultLang.split(';')[0];\n }\n\n return this.store.selectSnapshot(SessionState.getLanguage) ? of(null) : dispatch(new SetLanguage(defaultLang));\n }),\n );\n }\n\n @Action(PatchRouteByName)\n patchRoute({ patchState, getState }: StateContext, { name, newValue }: PatchRouteByName) {\n let routes: ABP.FullRoute[] = getState().routes;\n\n const index = routes.findIndex(route => route.name === name);\n\n routes = patchRouteDeep(routes, name, newValue);\n\n return patchState({\n routes,\n });\n }\n}\n\nfunction patchRouteDeep(\n routes: ABP.FullRoute[],\n name: string,\n newValue: Partial,\n parentUrl: string = null,\n): ABP.FullRoute[] {\n routes = routes.map(route => {\n if (route.name === name) {\n if (newValue.path) {\n newValue.url = `${parentUrl}/${newValue.path}`;\n }\n\n if (newValue.children && newValue.children.length) {\n newValue.children = newValue.children.map(child => ({\n ...child,\n url: `${parentUrl}/${route.path}/${child.path}`,\n }));\n }\n\n return { ...route, ...newValue };\n } else if (route.children && route.children.length) {\n route.children = patchRouteDeep(route.children, name, newValue, (parentUrl || '/') + route.path);\n }\n\n return route;\n });\n\n if (parentUrl) {\n // recursive block\n return routes;\n }\n\n return organizeRoutes(routes);\n}\n\nfunction findRoute(routes: ABP.FullRoute[], path?: string, name?: string) {\n let foundRoute;\n routes.forEach(route => {\n if (foundRoute) return;\n\n if (path && route.path === path) {\n foundRoute = route;\n } else if (name && route.name === name) {\n foundRoute = route;\n return;\n } else if (route.children && route.children.length) {\n foundRoute = findRoute(route.children, path, name);\n return;\n }\n });\n\n return foundRoute;\n}\n","export function noop() {\n const fn = function() {};\n return fn;\n}\n","export function uuid(a?: any): string {\n return a\n ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16)\n : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid);\n}\n","import { Observable, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nexport const takeUntilDestroy = (componentInstance, destroyMethodName = 'ngOnDestroy') => (\n source: Observable,\n) => {\n const originalDestroy = componentInstance[destroyMethodName];\n if (isFunction(originalDestroy) === false) {\n throw new Error(\n `${componentInstance.constructor.name} is using untilDestroyed but doesn't implement ${destroyMethodName}`,\n );\n }\n if (!componentInstance['__takeUntilDestroy']) {\n componentInstance['__takeUntilDestroy'] = new Subject();\n\n componentInstance[destroyMethodName] = function() {\n isFunction(originalDestroy) && originalDestroy.apply(this, arguments);\n componentInstance['__takeUntilDestroy'].next(true);\n componentInstance['__takeUntilDestroy'].complete();\n };\n }\n return source.pipe(takeUntil(componentInstance['__takeUntilDestroy']));\n};\n","import { Component, OnDestroy, Type } from '@angular/core';\nimport { NavigationEnd, Router, UrlSegment } from '@angular/router';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { eLayoutType } from '../enums';\nimport { ABP, Config } from '../models';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\nimport snq from 'snq';\n\n@Component({\n selector: 'abp-dynamic-layout',\n template: `\n \n\n \n \n `,\n})\nexport class DynamicLayoutComponent implements OnDestroy {\n @Select(ConfigState.getOne('requirements'))\n requirements$: Observable;\n\n layout: Type;\n\n constructor(private router: Router, private store: Store) {\n this.router.events.pipe(takeUntilDestroy(this)).subscribe(event => {\n if (event instanceof NavigationEnd) {\n const { segments } = this.router.parseUrl(event.url).root.children.primary;\n const {\n requirements: { layouts },\n routes,\n } = this.store.selectSnapshot(ConfigState.getAll);\n\n const layout = findLayout(segments, routes);\n\n this.layout = layouts.filter(l => !!l).find(l => snq(() => l.type.toLowerCase().indexOf(layout), -1) > -1);\n }\n });\n }\n\n ngOnDestroy() {}\n}\n\nfunction findLayout(segments: UrlSegment[], routes: ABP.FullRoute[]): eLayoutType {\n let layout = eLayoutType.empty;\n\n const route = routes\n .reduce((acc, val) => (val.wrapper ? [...acc, ...val.children] : [...acc, val]), [])\n .find(r => r.path === segments[0].path);\n\n if (route) {\n if (route.layout) {\n layout = route.layout;\n }\n\n if (route.children && route.children.length && segments.length > 1) {\n const child = route.children.find(c => c.path === segments[1].path);\n\n if (child && child.layout) {\n layout = child.layout;\n }\n }\n }\n\n return layout;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-router-outlet',\n template: `\n \n `,\n})\nexport class RouterOutletComponent {}\n","import { Directive, ElementRef, Input, AfterViewInit } from '@angular/core';\n\n@Directive({\n selector: '[autofocus]',\n})\nexport class AutofocusDirective implements AfterViewInit {\n @Input('autofocus')\n delay: number = 0;\n\n constructor(private elRef: ElementRef) {}\n\n ngAfterViewInit(): void {\n setTimeout(() => this.elRef.nativeElement.focus(), this.delay);\n }\n}\n","import { AfterContentInit, ChangeDetectorRef, Directive, ElementRef, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[abpEllipsis]',\n})\nexport class EllipsisDirective implements AfterContentInit {\n @Input('abpEllipsis')\n width: string;\n\n @HostBinding('title')\n @Input()\n title: string;\n\n @Input('abpEllipsisEnabled')\n enabled = true;\n\n @HostBinding('class.abp-ellipsis-inline')\n get inlineClass() {\n return this.enabled && this.width;\n }\n\n @HostBinding('class.abp-ellipsis')\n get class() {\n return this.enabled && !this.width;\n }\n\n @HostBinding('style.max-width')\n get maxWidth() {\n return this.enabled && this.width ? this.width || '170px' : undefined;\n }\n\n constructor(private cdRef: ChangeDetectorRef, private elRef: ElementRef) {}\n\n ngAfterContentInit() {\n setTimeout(() => {\n const title = this.title;\n this.title = title || (this.elRef.nativeElement as HTMLElement).innerText;\n\n if (this.title !== title) {\n this.cdRef.detectChanges();\n }\n }, 0);\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n Self,\n} from '@angular/core';\nimport { FormControl, FormGroup, FormGroupDirective } from '@angular/forms';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime, filter } from 'rxjs/operators';\nimport { takeUntilDestroy } from '../utils';\n\ntype Controls = { [key: string]: FormControl } | FormGroup[];\n\n@Directive({\n selector: 'form[ngSubmit][formGroup]',\n})\nexport class FormSubmitDirective implements OnInit, OnDestroy {\n @Input()\n notValidateOnSubmit: string | boolean;\n\n @Output()\n ngSubmit = new EventEmitter();\n\n executedNgSubmit: boolean = false;\n\n constructor(\n @Self() private formGroupDirective: FormGroupDirective,\n private host: ElementRef,\n private cdRef: ChangeDetectorRef,\n ) {}\n\n ngOnInit() {\n this.formGroupDirective.ngSubmit.pipe(takeUntilDestroy(this)).subscribe(() => {\n this.markAsDirty();\n this.executedNgSubmit = true;\n });\n\n fromEvent(this.host.nativeElement as HTMLElement, 'keyup')\n .pipe(\n debounceTime(200),\n filter((key: KeyboardEvent) => key && key.key === 'Enter'),\n takeUntilDestroy(this),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.host.nativeElement.dispatchEvent(new Event('submit', { bubbles: true, cancelable: true }));\n }\n\n this.executedNgSubmit = false;\n });\n\n fromEvent(this.host.nativeElement, 'submit')\n .pipe(\n takeUntilDestroy(this),\n filter(() => !this.notValidateOnSubmit && typeof this.notValidateOnSubmit !== 'string'),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.markAsDirty();\n }\n });\n }\n\n ngOnDestroy(): void {}\n\n markAsDirty() {\n const { form } = this.formGroupDirective;\n\n setDirty(form.controls as { [key: string]: FormControl });\n form.markAsDirty();\n\n this.cdRef.detectChanges();\n }\n}\n\nfunction setDirty(controls: Controls) {\n if (Array.isArray(controls)) {\n controls.forEach(group => {\n setDirty(group.controls as { [key: string]: FormControl });\n });\n return;\n }\n\n Object.keys(controls).forEach(key => {\n controls[key].markAsDirty();\n controls[key].updateValueAndValidity();\n });\n}\n","import { Directive, ElementRef, Input, OnDestroy, OnInit, Optional, Renderer2 } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\n\n@Directive({\n selector: '[abpPermission]',\n})\nexport class PermissionDirective implements OnInit, OnDestroy {\n @Input('abpPermission') condition: string;\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2, private store: Store) {}\n\n ngOnInit() {\n if (this.condition) {\n this.store\n .select(ConfigState.getGrantedPolicy(this.condition))\n .pipe(takeUntilDestroy(this))\n .subscribe(isGranted => {\n if (!isGranted) {\n this.renderer.removeChild(\n (this.elRef.nativeElement as HTMLElement).parentElement,\n this.elRef.nativeElement,\n );\n }\n });\n }\n }\n\n ngOnDestroy(): void {}\n}\n","import { Directive, Input, Optional, ElementRef, Renderer2, AfterViewInit } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport snq from 'snq';\n\n@Directive({\n selector: '[abpVisibility]',\n})\nexport class VisibilityDirective implements AfterViewInit {\n @Input('abpVisibility')\n focusedElement: HTMLElement;\n\n completed$ = new Subject();\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2) {}\n\n ngAfterViewInit() {\n const observer = new MutationObserver(mutations => {\n mutations.forEach(mutation => {\n if (!mutation.target) return;\n\n const htmlNodes = snq(\n () => Array.from(mutation.target.childNodes).filter(node => node instanceof HTMLElement),\n [],\n );\n\n if (!htmlNodes.length) {\n this.renderer.removeChild(this.elRef.nativeElement.parentElement, this.elRef.nativeElement);\n this.disconnect();\n } else {\n setTimeout(() => {\n this.disconnect();\n }, 0);\n }\n });\n });\n\n observer.observe(this.focusedElement, {\n childList: true,\n });\n\n this.completed$.subscribe(() => observer.disconnect());\n }\n\n disconnect() {\n this.completed$.next();\n this.completed$.complete();\n }\n}\n","export const enum eLayoutType {\n account = 'account',\n application = 'application',\n empty = 'empty',\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Observable } from 'rxjs';\nimport { Navigate } from '@ngxs/router-plugin';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthGuard implements CanActivate {\n constructor(private oauthService: OAuthService, private store: Store) {}\n canActivate(_: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | boolean | UrlTree {\n const hasValidAccessToken = this.oauthService.hasValidAccessToken();\n if (hasValidAccessToken) {\n return hasValidAccessToken;\n }\n\n this.store.dispatch(new Navigate(['/account/login'], null, { state: { redirectUrl: state.url } }));\n\n return false;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { ConfigState } from '../states';\nimport { tap } from 'rxjs/operators';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionGuard implements CanActivate {\n constructor(private store: Store) {}\n\n canActivate({ data }: ActivatedRouteSnapshot): Observable {\n const resource = data.requiredPolicy as string;\n return this.store.select(ConfigState.getGrantedPolicy(resource)).pipe(\n tap(access => {\n if (!access) {\n this.store.dispatch(new RestOccurError({ status: 403 }));\n }\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpInterceptor, HttpHandler, HttpRequest } from '@angular/common/http';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Store } from '@ngxs/store';\nimport { SessionState } from '../states';\nimport { StartLoader, StopLoader } from '../actions/loader.actions';\nimport { finalize } from 'rxjs/operators';\n\n@Injectable()\nexport class ApiInterceptor implements HttpInterceptor {\n constructor(private oAuthService: OAuthService, private store: Store) {}\n\n intercept(request: HttpRequest, next: HttpHandler) {\n this.store.dispatch(new StartLoader(request));\n\n const headers = {} as any;\n\n const token = this.oAuthService.getAccessToken();\n if (!request.headers.has('Authorization') && token) {\n headers['Authorization'] = `Bearer ${token}`;\n }\n\n const lang = this.store.selectSnapshot(SessionState.getLanguage);\n if (!request.headers.has('Accept-Language') && lang) {\n headers['Accept-Language'] = lang;\n }\n\n const tenant = this.store.selectSnapshot(SessionState.getTenant);\n if (!request.headers.has('__tenant') && tenant) {\n headers['__tenant'] = tenant.id;\n }\n\n return next\n .handle(\n request.clone({\n setHeaders: headers,\n }),\n )\n .pipe(finalize(() => this.store.dispatch(new StopLoader(request))));\n }\n}\n","export namespace ApplicationConfiguration {\n export interface Response {\n localization: Localization;\n auth: Auth;\n setting: Setting;\n currentUser: CurrentUser;\n features: Features;\n }\n\n export interface Localization {\n values: LocalizationValue;\n languages: Language[];\n }\n\n export interface LocalizationValue {\n [key: string]: { [key: string]: string };\n }\n\n export interface Language {\n cultureName: string;\n uiCultureName: string;\n displayName: string;\n flagIcon: string;\n }\n\n export interface Auth {\n policies: Policy;\n grantedPolicies: Policy;\n }\n\n export interface Policy {\n [key: string]: boolean;\n }\n\n export interface Setting {\n values: { [key: string]: 'Abp.Localization.DefaultLanguage' };\n }\n\n export interface CurrentUser {\n isAuthenticated: boolean;\n id: string;\n tenantId: string;\n userName: string;\n }\n\n export interface Features {\n values: Setting;\n }\n}\n","import { Config } from './config';\nimport { eLayoutType } from '../enums';\n\nexport namespace ABP {\n export interface Root {\n environment: Partial;\n requirements: Config.Requirements;\n }\n\n export type PagedResponse = {\n totalCount: number;\n } & PagedItemsResponse;\n\n export interface PagedItemsResponse {\n items: T[];\n }\n\n export interface PageQueryParams {\n filter?: string;\n sorting?: string;\n skipCount?: number;\n maxResultCount?: number;\n }\n\n export interface Route {\n children?: Route[];\n invisible?: boolean;\n layout?: eLayoutType;\n name: string;\n order?: number;\n parentName?: string;\n path: string;\n requiredPolicy?: string;\n iconClass?: string;\n }\n\n export interface FullRoute extends Route {\n url?: string;\n wrapper?: boolean;\n }\n\n export interface BasicItem {\n id: string;\n name: string;\n }\n}\n","import { AuthConfig } from 'angular-oauth2-oidc';\nimport { Type } from '@angular/core';\n\nexport namespace Config {\n export interface State {\n [key: string]: any;\n }\n\n export interface Environment {\n application: Application;\n production: boolean;\n oAuthConfig: AuthConfig;\n apis: Apis;\n }\n\n export interface Application {\n name: string;\n logoUrl?: string;\n }\n\n export interface Apis {\n [key: string]: { [key: string]: string };\n }\n\n export interface Requirements {\n layouts: Type[];\n }\n}\n","import { HttpHeaders, HttpParams } from '@angular/common/http';\n\nexport namespace Rest {\n export interface Config {\n skipHandleError?: boolean;\n observe?: Observe;\n }\n\n export const enum Observe {\n Body = 'body',\n Events = 'events',\n Response = 'response',\n }\n\n export const enum ResponseType {\n ArrayBuffer = 'arraybuffer',\n Blob = 'blob',\n JSON = 'json',\n Text = 'text',\n }\n\n export interface Request {\n body?: T;\n headers?:\n | HttpHeaders\n | {\n [header: string]: string | string[];\n };\n method: string;\n params?:\n | HttpParams\n | {\n [param: string]: any;\n };\n reportProgress?: boolean;\n responseType?: ResponseType;\n url: string;\n withCredentials?: boolean;\n }\n}\n","import { ABP } from '../models';\n\nexport namespace Session {\n export interface State {\n language: string;\n tenant: ABP.BasicItem;\n }\n}\n","export namespace Profile {\n export interface State {\n profile: Response;\n }\n\n export interface Response {\n userName: string;\n email: string;\n name: string;\n surname: string;\n phoneNumber: string;\n }\n\n export interface ChangePasswordRequest {\n currentPassword: string;\n newPassword: string;\n }\n}\n","import { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { Router, Routes } from '@angular/router';\nimport { actionMatcher, InitState, NgxsNextPluginFn, NgxsPlugin, setValue, UpdateState } from '@ngxs/store';\nimport snq from 'snq';\nimport { ABP } from '../../models';\nimport { organizeRoutes } from '../../utils/route-utils';\n\nexport const NGXS_CONFIG_PLUGIN_OPTIONS = new InjectionToken('NGXS_CONFIG_PLUGIN_OPTIONS');\n\n@Injectable()\nexport class ConfigPlugin implements NgxsPlugin {\n private initialized: boolean = false;\n\n constructor(@Inject(NGXS_CONFIG_PLUGIN_OPTIONS) private options: ABP.Root, private router: Router) {}\n\n handle(state: any, event: any, next: NgxsNextPluginFn) {\n const matches = actionMatcher(event);\n const isInitAction = matches(InitState) || matches(UpdateState);\n\n // const layouts = snq(() => this.options.requirements.layouts.filter(layout => layout instanceof Type), []);\n if (isInitAction && !this.initialized) {\n let { routes, wrappers } = transformRoutes(this.router.config);\n routes = organizeRoutes(routes, wrappers);\n\n state = setValue(state, 'ConfigState', {\n ...(state.ConfigState && { ...state.ConfigState }),\n ...this.options,\n routes,\n });\n\n this.initialized = true;\n }\n\n return next(state, event);\n }\n}\n\nfunction transformRoutes(routes: Routes = [], wrappers: ABP.FullRoute[] = []): any {\n const abpRoutes: ABP.FullRoute[] = routes\n .filter(route => {\n return snq(() => route.data.routes.routes.find(r => r.path === route.path), false);\n })\n .reduce((acc, val) => [...acc, ...val.data.routes.routes], []);\n\n wrappers = abpRoutes.filter(ar => ar.wrapper);\n const transformed = [] as ABP.FullRoute[];\n routes\n .filter(route => (route.data || {}).routes && (route.component || route.loadChildren))\n .forEach(route => {\n const abpPackage = abpRoutes.find(\n abp => abp.path.toLowerCase() === route.path.toLowerCase() && snq(() => route.data.routes.routes.length, false),\n );\n const { length } = transformed;\n\n if (abpPackage) {\n transformed.push(abpPackage);\n }\n\n if (transformed.length === length) {\n transformed.push({\n ...route.data.routes,\n path: route.path,\n name: snq(() => route.data.routes.name, route.path),\n children: route.data.routes.children || [],\n } as ABP.FullRoute);\n }\n });\n\n return { routes: setUrls(transformed), wrappers };\n}\n\nfunction setUrls(routes: ABP.FullRoute[], parentUrl?: string): ABP.FullRoute[] {\n if (parentUrl) {\n // this if block using for only recursive call\n\n return routes.map(route => ({\n ...route,\n url: `${parentUrl}/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `${parentUrl}/${route.path}`),\n }),\n }));\n }\n\n return routes.map(route => ({\n ...route,\n url: `/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `/${route.path}`),\n }),\n }));\n}\n","import { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConfigService {\n constructor(private store: Store) {}\n\n getAll() {\n return this.store.selectSnapshot(ConfigState.getAll);\n }\n\n getOne(key: string) {\n return this.store.selectSnapshot(ConfigState.getOne(key));\n }\n\n getDeep(keys: string[] | string) {\n return this.store.selectSnapshot(ConfigState.getDeep(keys));\n }\n\n getSetting(key: string) {\n return this.store.selectSnapshot(ConfigState.getSetting(key));\n }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { uuid } from '../utils';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LazyLoadService {\n loadedLibraries: { [url: string]: ReplaySubject } = {};\n\n load(\n url: string,\n type: 'script' | 'style',\n content: string = '',\n targetQuery: string = 'body',\n position: InsertPosition = 'afterend',\n ): Observable {\n if (!url && !content) return;\n const key = url ? url.slice(url.lastIndexOf('/') + 1) : uuid();\n\n if (this.loadedLibraries[key]) {\n return this.loadedLibraries[key].asObservable();\n }\n\n this.loadedLibraries[key] = new ReplaySubject();\n\n let library;\n if (type === 'script') {\n library = document.createElement('script');\n library.type = 'text/javascript';\n if (url) {\n (library as HTMLScriptElement).src = url;\n }\n\n (library as HTMLScriptElement).text = content;\n } else if (url) {\n library = document.createElement('link');\n library.type = 'text/css';\n (library as HTMLLinkElement).rel = 'stylesheet';\n\n if (url) {\n (library as HTMLLinkElement).href = url;\n }\n } else {\n library = document.createElement('style');\n (library as HTMLStyleElement).textContent = content;\n }\n\n library.onload = () => {\n this.loadedLibraries[key].next();\n this.loadedLibraries[key].complete();\n };\n\n document.querySelector(targetQuery).insertAdjacentElement(position, library);\n\n return this.loadedLibraries[key].asObservable();\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { Config } from '../models';\n\nexport function environmentFactory(environment: Config.Environment) {\n return {\n ...environment,\n };\n}\n\nexport function configFactory(config: Config.Requirements) {\n return {\n ...config,\n };\n}\n\nexport const ENVIRONMENT = new InjectionToken('ENVIRONMENT');\n\nexport const CONFIG = new InjectionToken('CONFIG');\n","import { Directive, Output, Renderer2, ElementRef, OnInit, EventEmitter, Input } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[input.debounce]',\n})\nexport class InputEventDebounceDirective implements OnInit {\n @Input() debounce: number = 300;\n\n @Output('input.debounce') debounceEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'input')\n .pipe(\n debounceTime(this.debounce),\n takeUntilDestroy(this),\n )\n .subscribe((event: Event) => {\n this.debounceEvent.emit(event);\n });\n }\n}\n","import { Directive, ElementRef, EventEmitter, OnInit, Output, Renderer2 } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[click.stop]',\n})\nexport class ClickEventStopPropagationDirective implements OnInit {\n @Output('click.stop') stopPropEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'click')\n .pipe(takeUntilDestroy(this))\n .subscribe((event: MouseEvent) => {\n event.stopPropagation();\n this.stopPropEvent.emit(event);\n });\n }\n}\n","import { Pipe, PipeTransform, OnDestroy } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\nimport { distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\n@Pipe({\n name: 'abpLocalization',\n pure: false, // required to update the value\n})\nexport class LocalizationPipe implements PipeTransform, OnDestroy {\n initialValue: string = '';\n\n value: string;\n\n destroy$ = new Subject();\n\n constructor(private store: Store) {}\n\n transform(value: string = '', ...interpolateParams: string[]): string {\n if (this.initialValue !== value) {\n this.initialValue = value;\n this.destroy$.next();\n\n this.store\n .select(\n ConfigState.getCopy(\n value,\n ...interpolateParams.reduce((acc, val) => (Array.isArray(val) ? [...acc, ...val] : [...acc, val]), []),\n ),\n )\n .pipe(\n takeUntil(this.destroy$),\n takeUntilDestroy(this),\n distinctUntilChanged(),\n )\n .subscribe(copy => (this.value = copy));\n }\n\n return this.value;\n }\n\n ngOnDestroy() {}\n}\n","import { LOCALE_ID, Provider } from '@angular/core';\nimport localesMapping from '../constants/different-locales';\nimport { LocalizationService } from '../services/localization.service';\n\nexport class LocaleId extends String {\n constructor(private localizationService: LocalizationService) {\n super();\n }\n\n toString(): string {\n const { currentLang } = this.localizationService;\n return localesMapping[currentLang] || currentLang;\n }\n\n valueOf(): string {\n return this.toString();\n }\n}\n\nexport const LocaleProvider: Provider = {\n provide: LOCALE_ID,\n useClass: LocaleId,\n deps: [LocalizationService],\n};\n","import { CommonModule } from '@angular/common';\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { NgxsRouterPluginModule } from '@ngxs/router-plugin';\nimport { NgxsStoragePluginModule } from '@ngxs/storage-plugin';\nimport { NgxsModule, NGXS_PLUGINS } from '@ngxs/store';\nimport { DynamicLayoutComponent } from './components/dynamic-layout.component';\nimport { RouterOutletComponent } from './components/router-outlet.component';\nimport { AutofocusDirective } from './directives/autofocus.directive';\nimport { InputEventDebounceDirective } from './directives/debounce.directive';\nimport { EllipsisDirective } from './directives/ellipsis.directive';\nimport { FormSubmitDirective } from './directives/form-submit.directive';\nimport { PermissionDirective } from './directives/permission.directive';\nimport { ClickEventStopPropagationDirective } from './directives/stop-propagation.directive';\nimport { VisibilityDirective } from './directives/visibility.directive';\nimport { ApiInterceptor } from './interceptors/api.interceptor';\nimport { ABP } from './models/common';\nimport { LocalizationPipe } from './pipes/localization.pipe';\nimport { LocaleProvider } from './providers/locale.provider';\nimport { ConfigState } from './states/config.state';\nimport { ProfileState } from './states/profile.state';\nimport { SessionState } from './states/session.state';\nimport { getInitialData, localeInitializer } from './utils/initial-utils';\nimport { ConfigPlugin, NGXS_CONFIG_PLUGIN_OPTIONS } from './plugins/config/config.plugin';\n\n@NgModule({\n imports: [\n NgxsModule.forFeature([ProfileState, SessionState, ConfigState]),\n NgxsStoragePluginModule.forRoot({ key: 'SessionState' }),\n NgxsRouterPluginModule.forRoot(),\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n ],\n declarations: [\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n ClickEventStopPropagationDirective,\n ],\n exports: [\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n LocalizationPipe,\n ClickEventStopPropagationDirective,\n ],\n providers: [LocalizationPipe],\n entryComponents: [RouterOutletComponent, DynamicLayoutComponent],\n})\nexport class CoreModule {\n static forRoot(options = {} as ABP.Root): ModuleWithProviders {\n return {\n ngModule: CoreModule,\n providers: [\n LocaleProvider,\n {\n provide: NGXS_PLUGINS,\n useClass: ConfigPlugin,\n multi: true,\n },\n {\n provide: NGXS_CONFIG_PLUGIN_OPTIONS,\n useValue: options,\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: ApiInterceptor,\n multi: true,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: getInitialData,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: localeInitializer,\n },\n ],\n };\n }\n}\n"],"names":["tslib_1.__decorate","differentLocales","noop","takeUntilDestroy","tslib_1.__extends"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.core.js","sources":["ng://@abp/ng.core/lib/actions/config.actions.ts","ng://@abp/ng.core/lib/actions/loader.actions.ts","ng://@abp/ng.core/lib/actions/profile.actions.ts","ng://@abp/ng.core/lib/actions/rest.actions.ts","ng://@abp/ng.core/lib/actions/session.actions.ts","ng://@abp/ng.core/lib/services/profile.service.ts","ng://@abp/ng.core/lib/states/profile.state.ts","ng://@abp/ng.core/lib/constants/different-locales.ts","ng://@abp/ng.core/lib/utils/initial-utils.ts","ng://@abp/ng.core/lib/services/localization.service.ts","ng://@abp/ng.core/lib/states/session.state.ts","ng://@abp/ng.core/lib/services/rest.service.ts","ng://@abp/ng.core/lib/services/application-configuration.service.ts","ng://@abp/ng.core/lib/utils/route-utils.ts","ng://@abp/ng.core/lib/states/config.state.ts","ng://@abp/ng.core/lib/utils/rxjs-utils.ts","ng://@abp/ng.core/lib/components/dynamic-layout.component.ts","ng://@abp/ng.core/lib/components/router-outlet.component.ts","ng://@abp/ng.core/lib/directives/autofocus.directive.ts","ng://@abp/ng.core/lib/directives/ellipsis.directive.ts","ng://@abp/ng.core/lib/directives/for.directive.ts","ng://@abp/ng.core/lib/utils/common-utils.ts","ng://@abp/ng.core/lib/utils/generator-utils.ts","ng://@abp/ng.core/lib/directives/form-submit.directive.ts","ng://@abp/ng.core/lib/directives/permission.directive.ts","ng://@abp/ng.core/lib/directives/visibility.directive.ts","ng://@abp/ng.core/lib/enums/common.ts","ng://@abp/ng.core/lib/guards/auth.guard.ts","ng://@abp/ng.core/lib/guards/permission.guard.ts","ng://@abp/ng.core/lib/interceptors/api.interceptor.ts","ng://@abp/ng.core/lib/models/application-configuration.ts","ng://@abp/ng.core/lib/models/common.ts","ng://@abp/ng.core/lib/models/config.ts","ng://@abp/ng.core/lib/models/rest.ts","ng://@abp/ng.core/lib/models/session.ts","ng://@abp/ng.core/lib/models/profile.ts","ng://@abp/ng.core/lib/plugins/config/config.plugin.ts","ng://@abp/ng.core/lib/services/config.service.ts","ng://@abp/ng.core/lib/services/lazy-load.service.ts","ng://@abp/ng.core/lib/tokens/common.token.ts","ng://@abp/ng.core/lib/directives/debounce.directive.ts","ng://@abp/ng.core/lib/directives/stop-propagation.directive.ts","ng://@abp/ng.core/lib/pipes/localization.pipe.ts","ng://@abp/ng.core/lib/providers/locale.provider.ts","ng://@abp/ng.core/lib/core.module.ts"],"sourcesContent":["import { ABP } from '../models';\n\nexport class PatchRouteByName {\n static readonly type = '[Config] Patch Route By Name';\n constructor(public name: string, public newValue: Partial) {}\n}\n\nexport class GetAppConfiguration {\n static readonly type = '[Config] Get App Configuration';\n}\n","import { HttpRequest } from '@angular/common/http';\n\nexport class StartLoader {\n static readonly type = '[Loader] Start';\n constructor(public payload: HttpRequest) {}\n}\n\nexport class StopLoader {\n static readonly type = '[Loader] Stop';\n constructor(public payload: HttpRequest) {}\n}\n","import { Profile } from '../models';\n\nexport class GetProfile {\n static readonly type = '[Profile] Get';\n}\n\nexport class UpdateProfile {\n static readonly type = '[Profile] Update';\n constructor(public payload: Profile.Response) {}\n}\n\nexport class ChangePassword {\n static readonly type = '[Profile] Change Password';\n constructor(public payload: Profile.ChangePasswordRequest) {}\n}\n","import { HttpErrorResponse } from '@angular/common/http';\n\nexport class RestOccurError {\n static readonly type = '[Rest] Error';\n constructor(public payload: HttpErrorResponse | any) {}\n}\n","import { ABP } from '../models';\n\nexport class SetLanguage {\n static readonly type = '[Session] Set Language';\n constructor(public payload: string) {}\n}\nexport class SetTenant {\n static readonly type = '[Session] Set Tenant';\n constructor(public payload: ABP.BasicItem) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService } from './rest.service';\nimport { Profile, Rest } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ProfileService {\n constructor(private rest: RestService) {}\n\n get(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/my-profile',\n };\n\n return this.rest.request(request);\n }\n\n update(body: Profile.Response): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/identity/my-profile',\n body,\n };\n\n return this.rest.request(request);\n }\n\n changePassword(body: Profile.ChangePasswordRequest, skipHandleError: boolean = false): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/my-profile/change-password',\n body,\n };\n\n return this.rest.request(request, { skipHandleError });\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetProfile, ChangePassword, UpdateProfile } from '../actions/profile.actions';\nimport { Profile } from '../models/profile';\nimport { ProfileService } from '../services/profile.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'ProfileState',\n defaults: {} as Profile.State,\n})\nexport class ProfileState {\n @Selector()\n static getProfile({ profile }: Profile.State): Profile.Response {\n return profile;\n }\n\n constructor(private profileService: ProfileService) {}\n\n @Action(GetProfile)\n profileGet({ patchState }: StateContext) {\n return this.profileService.get().pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(UpdateProfile)\n profileUpdate({ patchState }: StateContext, { payload }: UpdateProfile) {\n return this.profileService.update(payload).pipe(\n tap(profile =>\n patchState({\n profile,\n }),\n ),\n );\n }\n\n @Action(ChangePassword)\n changePassword(_, { payload }: ChangePassword) {\n return this.profileService.changePassword(payload, true);\n }\n}\n","// Different locales from .NET\n// Key is .NET locale, value is Angular locale\n\nexport default {\n 'ar-sa': 'ar-SA',\n 'ca-ES-valencia': 'ca-ES-VALENCIA',\n 'de-de': 'de',\n 'es-ES': 'es',\n 'en-US': 'en',\n 'fil-Latn': 'en',\n 'ku-Arab': 'en',\n 'ky-Cyrl': 'en',\n 'mi-Latn': 'en',\n 'prs-Arab': 'en',\n 'qut-Latn': 'en',\n nso: 'en',\n quz: 'en',\n 'fr-FR': 'fr',\n 'gd-Latn': 'gd',\n 'ha-Latn': 'ha',\n 'ig-Latn': 'ig',\n 'it-it': 'it',\n 'mn-Cyrl': 'mn',\n 'pt-BR': 'pt',\n 'sd-Arab': 'pa-Arab',\n 'sr-Cyrl-RS': 'sr-Cyrl',\n 'sr-Latn-RS': 'sr-Latn',\n 'tg-Cyrl': 'tg',\n 'tk-Latn': 'tk',\n 'tt-Cyrl': 'tt',\n 'ug-Arab': 'ug',\n 'yo-Latn': 'yo',\n};\n","import { registerLocaleData } from '@angular/common';\nimport { Injector } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport differentLocales from '../constants/different-locales';\nimport { SessionState } from '../states/session.state';\n\nexport function getInitialData(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n return store.dispatch(new GetAppConfiguration()).toPromise();\n };\n\n return fn;\n}\n\nexport function localeInitializer(injector: Injector) {\n const fn = function() {\n const store: Store = injector.get(Store);\n\n const lang = store.selectSnapshot(SessionState.getLanguage) || 'en';\n\n return new Promise((resolve, reject) => {\n registerLocale(lang).then(() => resolve(), reject);\n });\n };\n\n return fn;\n}\n\nexport function registerLocale(locale: string) {\n return import(\n /* webpackInclude: /(af|am|ar-SA|as|az-Latn|be|bg|bn-BD|bn-IN|bs|ca|ca-ES-VALENCIA|cs|cy|da|de|de|el|en-GB|en|es|en|es-US|es-MX|et|eu|fa|fi|en|fr|fr|fr-CA|ga|gd|gl|gu|ha|he|hi|hr|hu|hy|id|ig|is|it|it|ja|ka|kk|km|kn|ko|kok|en|en|lb|lt|lv|en|mk|ml|mn|mr|ms|mt|nb|ne|nl|nl-BE|nn|en|or|pa|pa-Arab|pl|en|pt|pt-PT|en|en|ro|ru|rw|pa-Arab|si|sk|sl|sq|sr-Cyrl-BA|sr-Cyrl|sr-Latn|sv|sw|ta|te|tg|th|ti|tk|tn|tr|tt|ug|uk|ur|uz-Latn|vi|wo|xh|yo|zh-Hans|zh-Hant|zu)\\.js$/ */\n `@angular/common/locales/${differentLocales[locale] || locale}.js`\n ).then(module => {\n registerLocaleData(module.default);\n });\n}\n","import { Injectable, Optional, SkipSelf } from '@angular/core';\nimport { ActivatedRouteSnapshot, Router } from '@angular/router';\nimport { Actions, Store } from '@ngxs/store';\nimport { noop, Observable } from 'rxjs';\nimport { ConfigState } from '../states/config.state';\nimport { SessionState } from '../states/session.state';\nimport { registerLocale } from '../utils/initial-utils';\n\ntype ShouldReuseRoute = (future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot) => boolean;\n\n@Injectable({ providedIn: 'root' })\nexport class LocalizationService {\n get currentLang(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n constructor(\n private store: Store,\n private router: Router,\n private actions: Actions,\n @Optional()\n @SkipSelf()\n otherInstance: LocalizationService,\n ) {\n if (otherInstance) throw new Error('LocaleService should have only one instance.');\n }\n\n private setRouteReuse(reuse: ShouldReuseRoute) {\n this.router.routeReuseStrategy.shouldReuseRoute = reuse;\n }\n\n registerLocale(locale: string) {\n const { shouldReuseRoute } = this.router.routeReuseStrategy;\n\n this.setRouteReuse(() => false);\n this.router.navigated = false;\n\n return registerLocale(locale).then(async () => {\n await this.router.navigateByUrl(this.router.url).catch(noop);\n this.setRouteReuse(shouldReuseRoute);\n });\n }\n\n get(keys: string, ...interpolateParams: string[]): Observable {\n return this.store.select(ConfigState.getCopy(keys, ...interpolateParams));\n }\n\n instant(keys: string, ...interpolateParams: string[]): string {\n return this.store.selectSnapshot(ConfigState.getCopy(keys, ...interpolateParams));\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { SetLanguage, SetTenant } from '../actions/session.actions';\nimport { ABP, Session } from '../models';\nimport { GetAppConfiguration } from '../actions/config.actions';\nimport { LocalizationService } from '../services/localization.service';\nimport { from, combineLatest } from 'rxjs';\n\n@State({\n name: 'SessionState',\n defaults: {} as Session.State,\n})\nexport class SessionState {\n @Selector()\n static getLanguage({ language }: Session.State): string {\n return language;\n }\n\n @Selector()\n static getTenant({ tenant }: Session.State): ABP.BasicItem {\n return tenant;\n }\n\n constructor(private localizationService: LocalizationService) {}\n\n @Action(SetLanguage)\n setLanguage({ patchState, dispatch }: StateContext, { payload }: SetLanguage) {\n patchState({\n language: payload,\n });\n\n return combineLatest([dispatch(new GetAppConfiguration()), from(this.localizationService.registerLocale(payload))]);\n }\n\n @Action(SetTenant)\n setTenantId({ patchState }: StateContext, { payload }: SetTenant) {\n patchState({\n tenant: payload,\n });\n }\n}\n","import { HttpClient, HttpRequest } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { NEVER, Observable, throwError } from 'rxjs';\nimport { catchError, take } from 'rxjs/operators';\nimport { Rest } from '../models/rest';\nimport { ConfigState } from '../states';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RestService {\n constructor(private http: HttpClient, private store: Store) {}\n\n handleError(err: any): Observable {\n this.store.dispatch(new RestOccurError(err));\n console.error(err);\n return throwError(err);\n }\n\n request(request: HttpRequest | Rest.Request, config: Rest.Config = {}, api?: string): Observable {\n const { observe = Rest.Observe.Body, skipHandleError } = config;\n const url = api || this.store.selectSnapshot(ConfigState.getApiUrl()) + request.url;\n const { method, ...options } = request;\n return this.http.request(method, url, { observe, ...options } as any).pipe(\n observe === Rest.Observe.Body ? take(1) : null,\n catchError(err => {\n if (skipHandleError) {\n return throwError(err);\n }\n\n return this.handleError(err);\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ApplicationConfiguration, Rest } from '../models';\nimport { RestService } from './rest.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ApplicationConfigurationService {\n constructor(private rest: RestService) {}\n\n getConfiguration(): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/application-configuration',\n };\n\n return this.rest.request(request);\n }\n}\n","import { ABP } from '../models';\n\nexport function organizeRoutes(\n routes: ABP.FullRoute[],\n wrappers: ABP.FullRoute[] = [],\n parentNameArr = [] as ABP.FullRoute[],\n parentName: string = null,\n): ABP.FullRoute[] {\n const filter = route => {\n if (route.children && route.children.length) {\n route.children = organizeRoutes(route.children, wrappers, parentNameArr, route.name);\n }\n\n if (route.parentName && route.parentName !== parentName) {\n parentNameArr.push(route);\n return false;\n }\n\n return true;\n };\n\n if (parentName) {\n // recursive block\n return routes.filter(filter);\n }\n\n const filteredRoutes = routes.filter(filter);\n\n if (parentNameArr.length) {\n return sortRoutes(setChildRoute([...filteredRoutes, ...wrappers], parentNameArr));\n }\n\n return filteredRoutes;\n}\n\nexport function setChildRoute(routes: ABP.FullRoute[], parentNameArr: ABP.FullRoute[]): ABP.FullRoute[] {\n return routes.map(route => {\n if (route.children && route.children.length) {\n route.children = setChildRoute(route.children, parentNameArr);\n }\n\n const foundedChildren = parentNameArr.filter(parent => parent.parentName === route.name);\n if (foundedChildren && foundedChildren.length) {\n route.children = [...(route.children || []), ...foundedChildren];\n }\n\n return route;\n });\n}\n\nexport function sortRoutes(routes: ABP.FullRoute[] = []): ABP.FullRoute[] {\n if (!routes.length) return [];\n return routes\n .sort((a, b) => a.order - b.order)\n .map(route => {\n if (route.children && route.children.length) {\n route.children = sortRoutes(route.children);\n }\n\n return route;\n });\n}\n","import { State, Selector, createSelector, Action, StateContext, Store } from '@ngxs/store';\nimport { Config, ABP } from '../models';\nimport { GetAppConfiguration, PatchRouteByName } from '../actions/config.actions';\nimport { ApplicationConfigurationService } from '../services/application-configuration.service';\nimport { tap, switchMap } from 'rxjs/operators';\nimport snq from 'snq';\nimport { SetLanguage } from '../actions';\nimport { SessionState } from './session.state';\nimport { of } from 'rxjs';\nimport { setChildRoute, sortRoutes, organizeRoutes } from '../utils/route-utils';\n\n@State({\n name: 'ConfigState',\n defaults: {} as Config.State,\n})\nexport class ConfigState {\n @Selector()\n static getAll(state: Config.State) {\n return state;\n }\n\n @Selector()\n static getApplicationInfo(state: Config.State) {\n return state.environment.application || {};\n }\n\n static getOne(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return state[key];\n },\n );\n\n return selector;\n }\n\n static getDeep(keys: string[] | string) {\n if (typeof keys === 'string') {\n keys = keys.split('.');\n }\n\n if (!Array.isArray(keys)) {\n throw new Error('The argument must be a dot string or an string array.');\n }\n\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return (keys as string[]).reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state);\n },\n );\n\n return selector;\n }\n\n static getRoute(path?: string, name?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n const { flattedRoutes } = state;\n return (flattedRoutes as ABP.FullRoute[]).find(route => {\n if (path && route.path === path) {\n return route;\n } else if (name && route.name === name) {\n return route;\n }\n });\n },\n );\n\n return selector;\n }\n\n static getApiUrl(key?: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): string {\n return state.environment.apis[key || 'default'].url;\n },\n );\n\n return selector;\n }\n\n static getSetting(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n return snq(() => state.setting.values[key]);\n },\n );\n\n return selector;\n }\n\n static getGrantedPolicy(key: string) {\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State): boolean {\n if (!key) return true;\n return snq(() => state.auth.grantedPolicies[key], false);\n },\n );\n\n return selector;\n }\n\n static getCopy(key: string, ...interpolateParams: string[]) {\n if (!key) key = '';\n\n const keys = key.split('::') as string[];\n const selector = createSelector(\n [ConfigState],\n function(state: Config.State) {\n if (!state.localization) return key;\n\n const { defaultResourceName } = state.environment.localization;\n if (keys[0] === '') {\n if (!defaultResourceName) {\n throw new Error(\n `Please check your environment. May you forget set defaultResourceName? \n Here is the example:\n { production: false,\n localization: {\n defaultResourceName: 'MyProjectName'\n }\n }`,\n );\n }\n\n keys[0] = snq(() => defaultResourceName);\n }\n\n let copy = (keys as any).reduce((acc, val) => {\n if (acc) {\n return acc[val];\n }\n\n return undefined;\n }, state.localization.values);\n\n interpolateParams = interpolateParams.filter(params => params != null);\n if (copy && interpolateParams && interpolateParams.length) {\n interpolateParams.forEach(param => {\n copy = copy.replace(/[\\'\\\"]?\\{[\\d]+\\}[\\'\\\"]?/, param);\n });\n }\n\n return copy || key;\n },\n );\n\n return selector;\n }\n\n constructor(private appConfigurationService: ApplicationConfigurationService, private store: Store) {}\n\n @Action(GetAppConfiguration)\n addData({ patchState, dispatch }: StateContext) {\n return this.appConfigurationService.getConfiguration().pipe(\n tap(configuration =>\n patchState({\n ...configuration,\n }),\n ),\n switchMap(configuration => {\n let defaultLang: string = configuration.setting.values['Abp.Localization.DefaultLanguage'];\n\n if (defaultLang.includes(';')) {\n defaultLang = defaultLang.split(';')[0];\n }\n\n return this.store.selectSnapshot(SessionState.getLanguage) ? of(null) : dispatch(new SetLanguage(defaultLang));\n }),\n );\n }\n\n @Action(PatchRouteByName)\n patchRoute({ patchState, getState }: StateContext, { name, newValue }: PatchRouteByName) {\n let routes: ABP.FullRoute[] = getState().routes;\n\n const index = routes.findIndex(route => route.name === name);\n\n routes = patchRouteDeep(routes, name, newValue);\n\n return patchState({\n routes,\n });\n }\n}\n\nfunction patchRouteDeep(\n routes: ABP.FullRoute[],\n name: string,\n newValue: Partial,\n parentUrl: string = null,\n): ABP.FullRoute[] {\n routes = routes.map(route => {\n if (route.name === name) {\n if (newValue.path) {\n newValue.url = `${parentUrl}/${newValue.path}`;\n }\n\n if (newValue.children && newValue.children.length) {\n newValue.children = newValue.children.map(child => ({\n ...child,\n url: `${parentUrl}/${route.path}/${child.path}`,\n }));\n }\n\n return { ...route, ...newValue };\n } else if (route.children && route.children.length) {\n route.children = patchRouteDeep(route.children, name, newValue, (parentUrl || '/') + route.path);\n }\n\n return route;\n });\n\n if (parentUrl) {\n // recursive block\n return routes;\n }\n\n return organizeRoutes(routes);\n}\n","import { Observable, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nfunction isFunction(value) {\n return typeof value === 'function';\n}\n\nexport const takeUntilDestroy = (componentInstance, destroyMethodName = 'ngOnDestroy') => (\n source: Observable,\n) => {\n const originalDestroy = componentInstance[destroyMethodName];\n if (isFunction(originalDestroy) === false) {\n throw new Error(\n `${componentInstance.constructor.name} is using untilDestroyed but doesn't implement ${destroyMethodName}`,\n );\n }\n if (!componentInstance['__takeUntilDestroy']) {\n componentInstance['__takeUntilDestroy'] = new Subject();\n\n componentInstance[destroyMethodName] = function() {\n isFunction(originalDestroy) && originalDestroy.apply(this, arguments);\n componentInstance['__takeUntilDestroy'].next(true);\n componentInstance['__takeUntilDestroy'].complete();\n };\n }\n return source.pipe(takeUntil(componentInstance['__takeUntilDestroy']));\n};\n","import { Component, Input, OnDestroy, Type } from '@angular/core';\nimport { ActivatedRoute, NavigationEnd, Router, UrlSegment } from '@angular/router';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport snq from 'snq';\nimport { eLayoutType } from '../enums/common';\nimport { Config } from '../models/config';\nimport { ABP } from '../models/common';\nimport { ConfigState } from '../states/config.state';\nimport { takeUntilDestroy } from '../utils/rxjs-utils';\n\n@Component({\n selector: 'abp-dynamic-layout',\n template: `\n \n\n \n \n `,\n})\nexport class DynamicLayoutComponent implements OnDestroy {\n @Select(ConfigState.getOne('requirements'))\n requirements$: Observable;\n\n layout: Type;\n\n constructor(private router: Router, private route: ActivatedRoute, private store: Store) {\n const {\n requirements: { layouts },\n routes,\n } = this.store.selectSnapshot(ConfigState.getAll);\n\n if ((this.route.snapshot.data || {}).layout) {\n this.layout = layouts\n .filter(l => !!l)\n .find((l: any) => snq(() => l.type.toLowerCase().indexOf(this.route.snapshot.data.layout), -1) > -1);\n }\n\n this.router.events.pipe(takeUntilDestroy(this)).subscribe(event => {\n if (event instanceof NavigationEnd) {\n const { segments } = this.router.parseUrl(event.url).root.children.primary;\n\n const layout = (this.route.snapshot.data || {}).layout || findLayout(segments, routes);\n\n this.layout = layouts\n .filter(l => !!l)\n .find((l: any) => snq(() => l.type.toLowerCase().indexOf(layout), -1) > -1);\n }\n });\n }\n\n ngOnDestroy() {}\n}\n\nfunction findLayout(segments: UrlSegment[], routes: ABP.FullRoute[]): eLayoutType {\n let layout = eLayoutType.empty;\n\n const route = routes\n .reduce((acc, val) => (val.wrapper ? [...acc, ...val.children] : [...acc, val]), [])\n .find(r => r.path === segments[0].path);\n\n if (route) {\n if (route.layout) {\n layout = route.layout;\n }\n\n if (route.children && route.children.length && segments.length > 1) {\n const child = route.children.find(c => c.path === segments[1].path);\n\n if (child && child.layout) {\n layout = child.layout;\n }\n }\n }\n\n return layout;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-router-outlet',\n template: `\n \n `,\n})\nexport class RouterOutletComponent {}\n","import { Directive, ElementRef, Input, AfterViewInit } from '@angular/core';\n\n@Directive({\n selector: '[autofocus]',\n})\nexport class AutofocusDirective implements AfterViewInit {\n @Input('autofocus')\n delay: number = 0;\n\n constructor(private elRef: ElementRef) {}\n\n ngAfterViewInit(): void {\n setTimeout(() => this.elRef.nativeElement.focus(), this.delay);\n }\n}\n","import { AfterContentInit, ChangeDetectorRef, Directive, ElementRef, HostBinding, Input } from '@angular/core';\n\n@Directive({\n selector: '[abpEllipsis]',\n})\nexport class EllipsisDirective implements AfterContentInit {\n @Input('abpEllipsis')\n width: string;\n\n @HostBinding('title')\n @Input()\n title: string;\n\n @Input('abpEllipsisEnabled')\n enabled = true;\n\n @HostBinding('class.abp-ellipsis-inline')\n get inlineClass() {\n return this.enabled && this.width;\n }\n\n @HostBinding('class.abp-ellipsis')\n get class() {\n return this.enabled && !this.width;\n }\n\n @HostBinding('style.max-width')\n get maxWidth() {\n return this.enabled && this.width ? this.width || '170px' : undefined;\n }\n\n constructor(private cdRef: ChangeDetectorRef, private elRef: ElementRef) {}\n\n ngAfterContentInit() {\n setTimeout(() => {\n const title = this.title;\n this.title = title || (this.elRef.nativeElement as HTMLElement).innerText;\n\n if (this.title !== title) {\n this.cdRef.detectChanges();\n }\n }, 0);\n }\n}\n","import {\n Directive,\n EmbeddedViewRef,\n Input,\n IterableChangeRecord,\n IterableChanges,\n IterableDiffer,\n IterableDiffers,\n OnChanges,\n TemplateRef,\n TrackByFunction,\n ViewContainerRef,\n} from '@angular/core';\nimport compare from 'just-compare';\nimport clone from 'just-clone';\n\nexport type CompareFn = (value: T, comparison: T) => boolean;\n\nclass AbpForContext {\n constructor(public $implicit: any, public index: number, public count: number, public list: any[]) {}\n}\n\nclass RecordView {\n constructor(public record: IterableChangeRecord, public view: EmbeddedViewRef) {}\n}\n\n@Directive({\n selector: '[abpFor]',\n})\nexport class ForDirective implements OnChanges {\n @Input('abpForOf')\n items: any[];\n\n @Input('abpForOrderBy')\n orderBy: string;\n\n @Input('abpForOrderDir')\n orderDir: 'ASC' | 'DESC';\n\n @Input('abpForFilterBy')\n filterBy: string;\n\n @Input('abpForFilterVal')\n filterVal: any;\n\n @Input('abpForTrackBy')\n trackBy;\n\n @Input('abpForCompareBy')\n compareBy: CompareFn;\n\n @Input('abpForEmptyRef')\n emptyRef: TemplateRef;\n\n private differ: IterableDiffer;\n\n private isShowEmptyRef: boolean;\n\n get compareFn(): CompareFn {\n return this.compareBy || compare;\n }\n\n get trackByFn(): TrackByFunction {\n return this.trackBy || ((index: number, item: any) => (item as any).id || index);\n }\n\n constructor(\n private tempRef: TemplateRef,\n private vcRef: ViewContainerRef,\n private differs: IterableDiffers,\n ) {}\n\n private iterateOverAppliedOperations(changes: IterableChanges) {\n const rw: RecordView[] = [];\n\n changes.forEachOperation((record: IterableChangeRecord, previousIndex: number, currentIndex: number) => {\n if (record.previousIndex == null) {\n const view = this.vcRef.createEmbeddedView(\n this.tempRef,\n new AbpForContext(null, -1, -1, this.items),\n currentIndex,\n );\n\n rw.push(new RecordView(record, view));\n } else if (currentIndex == null) {\n this.vcRef.remove(previousIndex);\n } else {\n const view = this.vcRef.get(previousIndex);\n this.vcRef.move(view, currentIndex);\n\n rw.push(new RecordView(record, view as EmbeddedViewRef));\n }\n });\n\n for (let i = 0, l = rw.length; i < l; i++) {\n rw[i].view.context.$implicit = rw[i].record.item;\n }\n }\n\n private iterateOverAttachedViews(changes: IterableChanges) {\n for (let i = 0, l = this.vcRef.length; i < l; i++) {\n const viewRef = this.vcRef.get(i) as EmbeddedViewRef;\n viewRef.context.index = i;\n viewRef.context.count = l;\n viewRef.context.list = this.items;\n }\n\n changes.forEachIdentityChange((record: IterableChangeRecord) => {\n const viewRef = this.vcRef.get(record.currentIndex) as EmbeddedViewRef;\n viewRef.context.$implicit = record.item;\n });\n }\n\n private projectItems(items: any[]): void {\n if (!items.length && this.emptyRef) {\n this.vcRef.createEmbeddedView(this.emptyRef).rootNodes;\n this.isShowEmptyRef = true;\n\n return;\n }\n\n if (this.emptyRef && this.isShowEmptyRef) {\n this.vcRef.clear();\n this.isShowEmptyRef = false;\n }\n\n if (!this.differ && items) {\n this.differ = this.differs.find(items).create(this.trackByFn);\n }\n\n if (this.differ) {\n const changes = this.differ.diff(items);\n\n if (changes) {\n this.iterateOverAppliedOperations(changes);\n this.iterateOverAttachedViews(changes);\n }\n }\n }\n\n private sortItems(items: any[]) {\n if (this.orderBy) {\n items.sort((a, b) => (a[this.orderBy] > b[this.orderBy] ? 1 : a[this.orderBy] < b[this.orderBy] ? -1 : 0));\n } else {\n items.sort();\n }\n }\n\n ngOnChanges() {\n let items = clone(this.items) as any[];\n if (!Array.isArray(items)) return;\n\n const compareFn = this.compareFn;\n\n if (typeof this.filterBy !== 'undefined') {\n items = items.filter(item => compareFn(item[this.filterBy], this.filterVal));\n }\n\n switch (this.orderDir) {\n case 'ASC':\n this.sortItems(items);\n this.projectItems(items);\n break;\n\n case 'DESC':\n this.sortItems(items);\n items.reverse();\n this.projectItems(items);\n break;\n\n default:\n this.projectItems(items);\n }\n }\n}\n","export function noop() {\n const fn = function() {};\n return fn;\n}\n","export function uuid(a?: any): string {\n return a\n ? (a ^ ((Math.random() * 16) >> (a / 4))).toString(16)\n : ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, uuid);\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n Self,\n} from '@angular/core';\nimport { FormControl, FormGroup, FormGroupDirective } from '@angular/forms';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime, filter } from 'rxjs/operators';\nimport { takeUntilDestroy } from '../utils';\n\ntype Controls = { [key: string]: FormControl } | FormGroup[];\n\n@Directive({\n selector: 'form[ngSubmit][formGroup]',\n})\nexport class FormSubmitDirective implements OnInit, OnDestroy {\n @Input()\n notValidateOnSubmit: string | boolean;\n\n @Output()\n ngSubmit = new EventEmitter();\n\n executedNgSubmit: boolean = false;\n\n constructor(\n @Self() private formGroupDirective: FormGroupDirective,\n private host: ElementRef,\n private cdRef: ChangeDetectorRef,\n ) {}\n\n ngOnInit() {\n this.formGroupDirective.ngSubmit.pipe(takeUntilDestroy(this)).subscribe(() => {\n this.markAsDirty();\n this.executedNgSubmit = true;\n });\n\n fromEvent(this.host.nativeElement as HTMLElement, 'keyup')\n .pipe(\n debounceTime(200),\n filter((key: KeyboardEvent) => key && key.key === 'Enter'),\n takeUntilDestroy(this),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.host.nativeElement.dispatchEvent(new Event('submit', { bubbles: true, cancelable: true }));\n }\n\n this.executedNgSubmit = false;\n });\n\n fromEvent(this.host.nativeElement, 'submit')\n .pipe(\n takeUntilDestroy(this),\n filter(() => !this.notValidateOnSubmit && typeof this.notValidateOnSubmit !== 'string'),\n )\n .subscribe(() => {\n if (!this.executedNgSubmit) {\n this.markAsDirty();\n }\n });\n }\n\n ngOnDestroy(): void {}\n\n markAsDirty() {\n const { form } = this.formGroupDirective;\n\n setDirty(form.controls as { [key: string]: FormControl });\n form.markAsDirty();\n\n this.cdRef.detectChanges();\n }\n}\n\nfunction setDirty(controls: Controls) {\n if (Array.isArray(controls)) {\n controls.forEach(group => {\n setDirty(group.controls as { [key: string]: FormControl });\n });\n return;\n }\n\n Object.keys(controls).forEach(key => {\n controls[key].markAsDirty();\n controls[key].updateValueAndValidity();\n });\n}\n","import { Directive, ElementRef, Input, OnDestroy, OnInit, Optional, Renderer2 } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\n\n@Directive({\n selector: '[abpPermission]',\n})\nexport class PermissionDirective implements OnInit, OnDestroy {\n @Input('abpPermission') condition: string;\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2, private store: Store) {}\n\n ngOnInit() {\n if (this.condition) {\n this.store\n .select(ConfigState.getGrantedPolicy(this.condition))\n .pipe(takeUntilDestroy(this))\n .subscribe(isGranted => {\n if (!isGranted) {\n this.renderer.removeChild(\n (this.elRef.nativeElement as HTMLElement).parentElement,\n this.elRef.nativeElement,\n );\n }\n });\n }\n }\n\n ngOnDestroy(): void {}\n}\n","import { Directive, Input, Optional, ElementRef, Renderer2, AfterViewInit } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport snq from 'snq';\n\n@Directive({\n selector: '[abpVisibility]',\n})\nexport class VisibilityDirective implements AfterViewInit {\n @Input('abpVisibility')\n focusedElement: HTMLElement;\n\n completed$ = new Subject();\n\n constructor(@Optional() private elRef: ElementRef, private renderer: Renderer2) {}\n\n ngAfterViewInit() {\n const observer = new MutationObserver(mutations => {\n mutations.forEach(mutation => {\n if (!mutation.target) return;\n\n const htmlNodes = snq(\n () => Array.from(mutation.target.childNodes).filter(node => node instanceof HTMLElement),\n [],\n );\n\n if (!htmlNodes.length) {\n this.renderer.removeChild(this.elRef.nativeElement.parentElement, this.elRef.nativeElement);\n this.disconnect();\n } else {\n setTimeout(() => {\n this.disconnect();\n }, 0);\n }\n });\n });\n\n observer.observe(this.focusedElement, {\n childList: true,\n });\n\n this.completed$.subscribe(() => observer.disconnect());\n }\n\n disconnect() {\n this.completed$.next();\n this.completed$.complete();\n }\n}\n","export const enum eLayoutType {\n account = 'account',\n application = 'application',\n empty = 'empty',\n setting = 'setting',\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Observable } from 'rxjs';\nimport { Navigate } from '@ngxs/router-plugin';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthGuard implements CanActivate {\n constructor(private oauthService: OAuthService, private store: Store) {}\n canActivate(_: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable | boolean | UrlTree {\n const hasValidAccessToken = this.oauthService.hasValidAccessToken();\n if (hasValidAccessToken) {\n return hasValidAccessToken;\n }\n\n this.store.dispatch(new Navigate(['/account/login'], null, { state: { redirectUrl: state.url } }));\n\n return false;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { ConfigState } from '../states';\nimport { tap } from 'rxjs/operators';\nimport { RestOccurError } from '../actions';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionGuard implements CanActivate {\n constructor(private store: Store) {}\n\n canActivate({ data }: ActivatedRouteSnapshot): Observable {\n const resource = data.requiredPolicy as string;\n return this.store.select(ConfigState.getGrantedPolicy(resource)).pipe(\n tap(access => {\n if (!access) {\n this.store.dispatch(new RestOccurError({ status: 403 }));\n }\n }),\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpInterceptor, HttpHandler, HttpRequest } from '@angular/common/http';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport { Store } from '@ngxs/store';\nimport { SessionState } from '../states';\nimport { StartLoader, StopLoader } from '../actions/loader.actions';\nimport { finalize } from 'rxjs/operators';\n\n@Injectable()\nexport class ApiInterceptor implements HttpInterceptor {\n constructor(private oAuthService: OAuthService, private store: Store) {}\n\n intercept(request: HttpRequest, next: HttpHandler) {\n this.store.dispatch(new StartLoader(request));\n\n const headers = {} as any;\n\n const token = this.oAuthService.getAccessToken();\n if (!request.headers.has('Authorization') && token) {\n headers['Authorization'] = `Bearer ${token}`;\n }\n\n const lang = this.store.selectSnapshot(SessionState.getLanguage);\n if (!request.headers.has('Accept-Language') && lang) {\n headers['Accept-Language'] = lang;\n }\n\n const tenant = this.store.selectSnapshot(SessionState.getTenant);\n if (!request.headers.has('__tenant') && tenant) {\n headers['__tenant'] = tenant.id;\n }\n\n return next\n .handle(\n request.clone({\n setHeaders: headers,\n }),\n )\n .pipe(finalize(() => this.store.dispatch(new StopLoader(request))));\n }\n}\n","export namespace ApplicationConfiguration {\n export interface Response {\n localization: Localization;\n auth: Auth;\n setting: Setting;\n currentUser: CurrentUser;\n features: Features;\n }\n\n export interface Localization {\n values: LocalizationValue;\n languages: Language[];\n }\n\n export interface LocalizationValue {\n [key: string]: { [key: string]: string };\n }\n\n export interface Language {\n cultureName: string;\n uiCultureName: string;\n displayName: string;\n flagIcon: string;\n }\n\n export interface Auth {\n policies: Policy;\n grantedPolicies: Policy;\n }\n\n export interface Policy {\n [key: string]: boolean;\n }\n\n export interface Setting {\n values: { [key: string]: 'Abp.Localization.DefaultLanguage' };\n }\n\n export interface CurrentUser {\n isAuthenticated: boolean;\n id: string;\n tenantId: string;\n userName: string;\n }\n\n export interface Features {\n values: Setting;\n }\n}\n","import { Config } from './config';\nimport { eLayoutType } from '../enums/common';\n\nexport namespace ABP {\n export interface Root {\n environment: Partial;\n requirements: Config.Requirements;\n }\n\n export type PagedResponse = {\n totalCount: number;\n } & PagedItemsResponse;\n\n export interface PagedItemsResponse {\n items: T[];\n }\n\n export interface PageQueryParams {\n filter?: string;\n sorting?: string;\n skipCount?: number;\n maxResultCount?: number;\n }\n\n export interface Route {\n children?: Route[];\n invisible?: boolean;\n layout?: eLayoutType;\n name: string;\n order?: number;\n parentName?: string;\n path: string;\n requiredPolicy?: string;\n iconClass?: string;\n }\n\n export interface FullRoute extends Route {\n url?: string;\n wrapper?: boolean;\n }\n\n export interface BasicItem {\n id: string;\n name: string;\n }\n}\n","import { AuthConfig } from 'angular-oauth2-oidc';\nimport { Type } from '@angular/core';\nimport { ApplicationConfiguration } from './application-configuration';\nimport { ABP } from './common';\n\nexport namespace Config {\n export type State = ApplicationConfiguration.Response &\n ABP.Root & { environment: Environment } & {\n routes: ABP.FullRoute[];\n flattedRoutes: ABP.FullRoute[];\n };\n\n export interface Environment {\n application: Application;\n production: boolean;\n oAuthConfig: AuthConfig;\n apis: Apis;\n localization: { defaultResourceName: string };\n }\n\n export interface Application {\n name: string;\n logoUrl?: string;\n }\n\n export interface Apis {\n [key: string]: { [key: string]: string };\n }\n\n export interface Requirements {\n layouts: Type[];\n }\n}\n","import { HttpHeaders, HttpParams } from '@angular/common/http';\n\nexport namespace Rest {\n export interface Config {\n skipHandleError?: boolean;\n observe?: Observe;\n }\n\n export const enum Observe {\n Body = 'body',\n Events = 'events',\n Response = 'response',\n }\n\n export const enum ResponseType {\n ArrayBuffer = 'arraybuffer',\n Blob = 'blob',\n JSON = 'json',\n Text = 'text',\n }\n\n export interface Request {\n body?: T;\n headers?:\n | HttpHeaders\n | {\n [header: string]: string | string[];\n };\n method: string;\n params?:\n | HttpParams\n | {\n [param: string]: any;\n };\n reportProgress?: boolean;\n responseType?: ResponseType;\n url: string;\n withCredentials?: boolean;\n }\n}\n","import { ABP } from '../models';\n\nexport namespace Session {\n export interface State {\n language: string;\n tenant: ABP.BasicItem;\n }\n}\n","export namespace Profile {\n export interface State {\n profile: Response;\n }\n\n export interface Response {\n userName: string;\n email: string;\n name: string;\n surname: string;\n phoneNumber: string;\n }\n\n export interface ChangePasswordRequest {\n currentPassword: string;\n newPassword: string;\n }\n}\n","import { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { Router, Routes } from '@angular/router';\nimport { actionMatcher, InitState, NgxsNextPluginFn, NgxsPlugin, setValue, UpdateState } from '@ngxs/store';\nimport snq from 'snq';\nimport { ABP } from '../../models';\nimport { organizeRoutes } from '../../utils/route-utils';\nimport clone from 'just-clone';\n\nexport const NGXS_CONFIG_PLUGIN_OPTIONS = new InjectionToken('NGXS_CONFIG_PLUGIN_OPTIONS');\n\n@Injectable()\nexport class ConfigPlugin implements NgxsPlugin {\n private initialized: boolean = false;\n\n constructor(@Inject(NGXS_CONFIG_PLUGIN_OPTIONS) private options: ABP.Root, private router: Router) {}\n\n handle(state: any, event: any, next: NgxsNextPluginFn) {\n const matches = actionMatcher(event);\n const isInitAction = matches(InitState) || matches(UpdateState);\n\n // const layouts = snq(() => this.options.requirements.layouts.filter(layout => layout instanceof Type), []);\n if (isInitAction && !this.initialized) {\n let { routes, wrappers } = transformRoutes(this.router.config);\n routes = organizeRoutes(routes, wrappers);\n const flattedRoutes = flatRoutes(clone(routes));\n state = setValue(state, 'ConfigState', {\n ...(state.ConfigState && { ...state.ConfigState }),\n ...this.options,\n routes,\n flattedRoutes,\n });\n\n this.initialized = true;\n }\n\n return next(state, event);\n }\n}\n\nfunction transformRoutes(routes: Routes = [], wrappers: ABP.FullRoute[] = []): any {\n const abpRoutes: ABP.FullRoute[] = routes\n .filter(route => {\n return snq(() => route.data.routes.routes.find(r => r.path === route.path), false);\n })\n .reduce((acc, val) => [...acc, ...val.data.routes.routes], []);\n\n wrappers = abpRoutes.filter(ar => ar.wrapper);\n const transformed = [] as ABP.FullRoute[];\n routes\n .filter(route => (route.data || {}).routes && (route.component || route.loadChildren))\n .forEach(route => {\n const abpPackage = abpRoutes.find(\n abp => abp.path.toLowerCase() === route.path.toLowerCase() && snq(() => route.data.routes.routes.length, false),\n );\n const { length } = transformed;\n\n if (abpPackage) {\n transformed.push(abpPackage);\n }\n\n if (transformed.length === length) {\n transformed.push({\n ...route.data.routes,\n path: route.path,\n name: snq(() => route.data.routes.name, route.path),\n children: route.data.routes.children || [],\n } as ABP.FullRoute);\n }\n });\n\n return { routes: setUrls(transformed), wrappers };\n}\n\nfunction setUrls(routes: ABP.FullRoute[], parentUrl?: string): ABP.FullRoute[] {\n if (parentUrl) {\n // this if block using for only recursive call\n\n return routes.map(route => ({\n ...route,\n url: `${parentUrl}/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `${parentUrl}/${route.path}`),\n }),\n }));\n }\n\n return routes.map(route => ({\n ...route,\n url: `/${route.path}`,\n ...(route.children &&\n route.children.length && {\n children: setUrls(route.children, `/${route.path}`),\n }),\n }));\n}\n\nfunction flatRoutes(routes: ABP.FullRoute[]): ABP.FullRoute[] {\n const flat = (r: ABP.FullRoute[]) => {\n return r.reduce((acc, val) => {\n let value: ABP.FullRoute[] = [val];\n if (val.children) {\n const { children } = val;\n delete val.children;\n value = [val, ...flat(children)];\n }\n\n return [...acc, ...value];\n }, []);\n };\n\n return flat(routes);\n}\n","import { Injectable } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ConfigService {\n constructor(private store: Store) {}\n\n getAll() {\n return this.store.selectSnapshot(ConfigState.getAll);\n }\n\n getOne(key: string) {\n return this.store.selectSnapshot(ConfigState.getOne(key));\n }\n\n getDeep(keys: string[] | string) {\n return this.store.selectSnapshot(ConfigState.getDeep(keys));\n }\n\n getSetting(key: string) {\n return this.store.selectSnapshot(ConfigState.getSetting(key));\n }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { uuid } from '../utils';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class LazyLoadService {\n loadedLibraries: { [url: string]: ReplaySubject } = {};\n\n load(\n url: string,\n type: 'script' | 'style',\n content: string = '',\n targetQuery: string = 'body',\n position: InsertPosition = 'afterend',\n ): Observable {\n if (!url && !content) return;\n const key = url ? url.slice(url.lastIndexOf('/') + 1) : uuid();\n\n if (this.loadedLibraries[key]) {\n return this.loadedLibraries[key].asObservable();\n }\n\n this.loadedLibraries[key] = new ReplaySubject();\n\n let library;\n if (type === 'script') {\n library = document.createElement('script');\n library.type = 'text/javascript';\n if (url) {\n (library as HTMLScriptElement).src = url;\n }\n\n (library as HTMLScriptElement).text = content;\n } else if (url) {\n library = document.createElement('link');\n library.type = 'text/css';\n (library as HTMLLinkElement).rel = 'stylesheet';\n\n if (url) {\n (library as HTMLLinkElement).href = url;\n }\n } else {\n library = document.createElement('style');\n (library as HTMLStyleElement).textContent = content;\n }\n\n library.onload = () => {\n this.loadedLibraries[key].next();\n this.loadedLibraries[key].complete();\n };\n\n document.querySelector(targetQuery).insertAdjacentElement(position, library);\n\n return this.loadedLibraries[key].asObservable();\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { Config } from '../models';\n\nexport function environmentFactory(environment: Config.Environment) {\n return {\n ...environment,\n };\n}\n\nexport function configFactory(config: Config.Requirements) {\n return {\n ...config,\n };\n}\n\nexport const ENVIRONMENT = new InjectionToken('ENVIRONMENT');\n\nexport const CONFIG = new InjectionToken('CONFIG');\n","import { Directive, Output, Renderer2, ElementRef, OnInit, EventEmitter, Input } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[input.debounce]',\n})\nexport class InputEventDebounceDirective implements OnInit {\n @Input() debounce: number = 300;\n\n @Output('input.debounce') debounceEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'input')\n .pipe(\n debounceTime(this.debounce),\n takeUntilDestroy(this),\n )\n .subscribe((event: Event) => {\n this.debounceEvent.emit(event);\n });\n }\n}\n","import { Directive, ElementRef, EventEmitter, OnInit, Output, Renderer2 } from '@angular/core';\nimport { fromEvent } from 'rxjs';\nimport { takeUntilDestroy } from '@ngx-validate/core';\n\n@Directive({\n selector: '[click.stop]',\n})\nexport class ClickEventStopPropagationDirective implements OnInit {\n @Output('click.stop') stopPropEvent = new EventEmitter();\n\n constructor(private renderer: Renderer2, private el: ElementRef) {}\n\n ngOnInit(): void {\n fromEvent(this.el.nativeElement, 'click')\n .pipe(takeUntilDestroy(this))\n .subscribe((event: MouseEvent) => {\n event.stopPropagation();\n this.stopPropEvent.emit(event);\n });\n }\n}\n","import { Pipe, PipeTransform, OnDestroy } from '@angular/core';\nimport { Store } from '@ngxs/store';\nimport { ConfigState } from '../states';\nimport { takeUntilDestroy } from '../utils';\nimport { distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { Subject } from 'rxjs';\n\n@Pipe({\n name: 'abpLocalization',\n pure: false, // required to update the value\n})\nexport class LocalizationPipe implements PipeTransform, OnDestroy {\n initialValue: string = '';\n\n value: string;\n\n destroy$ = new Subject();\n\n constructor(private store: Store) {}\n\n transform(value: string = '', ...interpolateParams: string[]): string {\n if (this.initialValue !== value) {\n this.initialValue = value;\n this.destroy$.next();\n\n this.store\n .select(\n ConfigState.getCopy(\n value,\n ...interpolateParams.reduce((acc, val) => (Array.isArray(val) ? [...acc, ...val] : [...acc, val]), []),\n ),\n )\n .pipe(\n takeUntil(this.destroy$),\n takeUntilDestroy(this),\n distinctUntilChanged(),\n )\n .subscribe(copy => (this.value = copy));\n }\n\n return this.value;\n }\n\n ngOnDestroy() {}\n}\n","import { LOCALE_ID, Provider } from '@angular/core';\nimport localesMapping from '../constants/different-locales';\nimport { LocalizationService } from '../services/localization.service';\n\nexport class LocaleId extends String {\n constructor(private localizationService: LocalizationService) {\n super();\n }\n\n toString(): string {\n const { currentLang } = this.localizationService;\n return localesMapping[currentLang] || currentLang;\n }\n\n valueOf(): string {\n return this.toString();\n }\n}\n\nexport const LocaleProvider: Provider = {\n provide: LOCALE_ID,\n useClass: LocaleId,\n deps: [LocalizationService],\n};\n","import { CommonModule } from '@angular/common';\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { NgxsRouterPluginModule } from '@ngxs/router-plugin';\nimport { NgxsStoragePluginModule } from '@ngxs/storage-plugin';\nimport { NgxsModule, NGXS_PLUGINS } from '@ngxs/store';\nimport { DynamicLayoutComponent } from './components/dynamic-layout.component';\nimport { RouterOutletComponent } from './components/router-outlet.component';\nimport { AutofocusDirective } from './directives/autofocus.directive';\nimport { InputEventDebounceDirective } from './directives/debounce.directive';\nimport { EllipsisDirective } from './directives/ellipsis.directive';\nimport { FormSubmitDirective } from './directives/form-submit.directive';\nimport { PermissionDirective } from './directives/permission.directive';\nimport { ClickEventStopPropagationDirective } from './directives/stop-propagation.directive';\nimport { VisibilityDirective } from './directives/visibility.directive';\nimport { ApiInterceptor } from './interceptors/api.interceptor';\nimport { ABP } from './models/common';\nimport { LocalizationPipe } from './pipes/localization.pipe';\nimport { LocaleProvider } from './providers/locale.provider';\nimport { ConfigState } from './states/config.state';\nimport { ProfileState } from './states/profile.state';\nimport { SessionState } from './states/session.state';\nimport { getInitialData, localeInitializer } from './utils/initial-utils';\nimport { ConfigPlugin, NGXS_CONFIG_PLUGIN_OPTIONS } from './plugins/config/config.plugin';\nimport { ForDirective } from './directives/for.directive';\n\n@NgModule({\n imports: [\n NgxsModule.forFeature([ProfileState, SessionState, ConfigState]),\n NgxsStoragePluginModule.forRoot({ key: 'SessionState' }),\n NgxsRouterPluginModule.forRoot(),\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n ],\n declarations: [\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n ForDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n ClickEventStopPropagationDirective,\n ],\n exports: [\n CommonModule,\n HttpClientModule,\n FormsModule,\n ReactiveFormsModule,\n RouterModule,\n RouterOutletComponent,\n DynamicLayoutComponent,\n AutofocusDirective,\n EllipsisDirective,\n ForDirective,\n FormSubmitDirective,\n LocalizationPipe,\n PermissionDirective,\n VisibilityDirective,\n InputEventDebounceDirective,\n LocalizationPipe,\n ClickEventStopPropagationDirective,\n ],\n providers: [LocalizationPipe],\n entryComponents: [RouterOutletComponent, DynamicLayoutComponent],\n})\nexport class CoreModule {\n static forRoot(options = {} as ABP.Root): ModuleWithProviders {\n return {\n ngModule: CoreModule,\n providers: [\n LocaleProvider,\n {\n provide: NGXS_PLUGINS,\n useClass: ConfigPlugin,\n multi: true,\n },\n {\n provide: NGXS_CONFIG_PLUGIN_OPTIONS,\n useValue: options,\n },\n {\n provide: HTTP_INTERCEPTORS,\n useClass: ApiInterceptor,\n multi: true,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: getInitialData,\n },\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector],\n useFactory: localeInitializer,\n },\n ],\n };\n }\n}\n"],"names":["tslib_1.__decorate","differentLocales","noop","takeUntilDestroy","tslib_1.__extends"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/core/lib/components/dynamic-layout.component.d.ts b/npm/ng-packs/dist/core/lib/components/dynamic-layout.component.d.ts index 713ad7fbc9..07b042305f 100644 --- a/npm/ng-packs/dist/core/lib/components/dynamic-layout.component.d.ts +++ b/npm/ng-packs/dist/core/lib/components/dynamic-layout.component.d.ts @@ -1,13 +1,14 @@ import { OnDestroy, Type } from '@angular/core'; -import { Router } from '@angular/router'; +import { ActivatedRoute, Router } from '@angular/router'; import { Store } from '@ngxs/store'; import { Observable } from 'rxjs'; -import { Config } from '../models'; +import { Config } from '../models/config'; export declare class DynamicLayoutComponent implements OnDestroy { private router; + private route; private store; requirements$: Observable; layout: Type; - constructor(router: Router, store: Store); + constructor(router: Router, route: ActivatedRoute, store: Store); ngOnDestroy(): void; } diff --git a/npm/ng-packs/dist/core/lib/directives/for.directive.d.ts b/npm/ng-packs/dist/core/lib/directives/for.directive.d.ts new file mode 100644 index 0000000000..4d8f886ce3 --- /dev/null +++ b/npm/ng-packs/dist/core/lib/directives/for.directive.d.ts @@ -0,0 +1,33 @@ +import { IterableDiffers, OnChanges, TemplateRef, TrackByFunction, ViewContainerRef } from '@angular/core'; +export declare type CompareFn = (value: T, comparison: T) => boolean; +declare class AbpForContext { + $implicit: any; + index: number; + count: number; + list: any[]; + constructor($implicit: any, index: number, count: number, list: any[]); +} +export declare class ForDirective implements OnChanges { + private tempRef; + private vcRef; + private differs; + items: any[]; + orderBy: string; + orderDir: 'ASC' | 'DESC'; + filterBy: string; + filterVal: any; + trackBy: any; + compareBy: CompareFn; + emptyRef: TemplateRef; + private differ; + private isShowEmptyRef; + readonly compareFn: CompareFn; + readonly trackByFn: TrackByFunction; + constructor(tempRef: TemplateRef, vcRef: ViewContainerRef, differs: IterableDiffers); + private iterateOverAppliedOperations; + private iterateOverAttachedViews; + private projectItems; + private sortItems; + ngOnChanges(): void; +} +export {}; diff --git a/npm/ng-packs/dist/core/lib/directives/index.d.ts b/npm/ng-packs/dist/core/lib/directives/index.d.ts index 336b6ff5ab..7edf1b5f76 100644 --- a/npm/ng-packs/dist/core/lib/directives/index.d.ts +++ b/npm/ng-packs/dist/core/lib/directives/index.d.ts @@ -1,5 +1,6 @@ export * from './autofocus.directive'; export * from './ellipsis.directive'; +export * from './for.directive'; export * from './form-submit.directive'; export * from './permission.directive'; export * from './visibility.directive'; diff --git a/npm/ng-packs/dist/core/lib/enums/common.d.ts b/npm/ng-packs/dist/core/lib/enums/common.d.ts index f0347beff5..d2ac2f6188 100644 --- a/npm/ng-packs/dist/core/lib/enums/common.d.ts +++ b/npm/ng-packs/dist/core/lib/enums/common.d.ts @@ -1,5 +1,6 @@ export declare const enum eLayoutType { account = "account", application = "application", - empty = "empty" + empty = "empty", + setting = "setting" } diff --git a/npm/ng-packs/dist/core/lib/models/common.d.ts b/npm/ng-packs/dist/core/lib/models/common.d.ts index 306e7ea5fb..7f504cdfbf 100644 --- a/npm/ng-packs/dist/core/lib/models/common.d.ts +++ b/npm/ng-packs/dist/core/lib/models/common.d.ts @@ -1,5 +1,5 @@ import { Config } from './config'; -import { eLayoutType } from '../enums'; +import { eLayoutType } from '../enums/common'; export declare namespace ABP { interface Root { environment: Partial; diff --git a/npm/ng-packs/dist/core/lib/models/config.d.ts b/npm/ng-packs/dist/core/lib/models/config.d.ts index 34616b5f75..da9c6f41df 100644 --- a/npm/ng-packs/dist/core/lib/models/config.d.ts +++ b/npm/ng-packs/dist/core/lib/models/config.d.ts @@ -1,14 +1,22 @@ import { AuthConfig } from 'angular-oauth2-oidc'; import { Type } from '@angular/core'; +import { ApplicationConfiguration } from './application-configuration'; +import { ABP } from './common'; export declare namespace Config { - interface State { - [key: string]: any; - } + type State = ApplicationConfiguration.Response & ABP.Root & { + environment: Environment; + } & { + routes: ABP.FullRoute[]; + flattedRoutes: ABP.FullRoute[]; + }; interface Environment { application: Application; production: boolean; oAuthConfig: AuthConfig; apis: Apis; + localization: { + defaultResourceName: string; + }; } interface Application { name: string; diff --git a/npm/ng-packs/dist/core/lib/services/config.service.d.ts b/npm/ng-packs/dist/core/lib/services/config.service.d.ts index 07b485ff4c..42df9f630a 100644 --- a/npm/ng-packs/dist/core/lib/services/config.service.d.ts +++ b/npm/ng-packs/dist/core/lib/services/config.service.d.ts @@ -5,5 +5,5 @@ export declare class ConfigService { getAll(): import("../models").Config.State; getOne(key: string): any; getDeep(keys: string[] | string): any; - getSetting(key: string): any; + getSetting(key: string): "Abp.Localization.DefaultLanguage"; } diff --git a/npm/ng-packs/dist/core/lib/states/config.state.d.ts b/npm/ng-packs/dist/core/lib/states/config.state.d.ts index b9277b58ef..6b7a8244be 100644 --- a/npm/ng-packs/dist/core/lib/states/config.state.d.ts +++ b/npm/ng-packs/dist/core/lib/states/config.state.d.ts @@ -1,18 +1,18 @@ import { StateContext, Store } from '@ngxs/store'; -import { Config } from '../models'; +import { Config, ABP } from '../models'; import { PatchRouteByName } from '../actions/config.actions'; import { ApplicationConfigurationService } from '../services/application-configuration.service'; export declare class ConfigState { private appConfigurationService; private store; static getAll(state: Config.State): Config.State; - static getApplicationInfo(state: Config.State): any; + static getApplicationInfo(state: Config.State): {}; static getOne(key: string): (state: Config.State) => any; static getDeep(keys: string[] | string): (state: Config.State) => any; - static getRoute(path?: string, name?: string): (state: Config.State) => any; + static getRoute(path?: string, name?: string): (state: Config.State) => ABP.FullRoute; static getApiUrl(key?: string): (state: Config.State) => string; - static getSetting(key: string): (state: Config.State) => any; - static getGrantedPolicy(condition?: string): (state: Config.State) => boolean; + static getSetting(key: string): (state: Config.State) => "Abp.Localization.DefaultLanguage"; + static getGrantedPolicy(key: string): (state: Config.State) => boolean; static getCopy(key: string, ...interpolateParams: string[]): (state: Config.State) => any; constructor(appConfigurationService: ApplicationConfigurationService, store: Store); addData({ patchState, dispatch }: StateContext): import("rxjs").Observable; diff --git a/npm/ng-packs/dist/core/lib/tokens/common.token.d.ts b/npm/ng-packs/dist/core/lib/tokens/common.token.d.ts index 5102a1104a..547d4bec8a 100644 --- a/npm/ng-packs/dist/core/lib/tokens/common.token.d.ts +++ b/npm/ng-packs/dist/core/lib/tokens/common.token.d.ts @@ -5,6 +5,9 @@ export declare function environmentFactory(environment: Config.Environment): { production: boolean; oAuthConfig: import("angular-oauth2-oidc").AuthConfig; apis: Config.Apis; + localization: { + defaultResourceName: string; + }; }; export declare function configFactory(config: Config.Requirements): { layouts: import("@angular/core").Type[]; diff --git a/npm/ng-packs/dist/core/package.json b/npm/ng-packs/dist/core/package.json index 60b3134707..e9ebe5240c 100644 --- a/npm/ng-packs/dist/core/package.json +++ b/npm/ng-packs/dist/core/package.json @@ -7,6 +7,7 @@ "@ngxs/store": "^3.5.0", "angular-oauth2-oidc": "^8.0.1", "just-compare": "^1.3.0", + "just-clone": "3.1.0", "snq": "^1.0.3", "tslib": "^1.9.0" }, diff --git a/npm/ng-packs/dist/feature-management/abp-ng.feature-management.metadata.json b/npm/ng-packs/dist/feature-management/abp-ng.feature-management.metadata.json index cc2aac7afd..7510f82cae 100644 --- a/npm/ng-packs/dist/feature-management/abp-ng.feature-management.metadata.json +++ b/npm/ng-packs/dist/feature-management/abp-ng.feature-management.metadata.json @@ -1 +1 @@ -{"__symbolic":"module","version":4,"exports":[{"from":"./lib/feature-management/feature-management.component"}],"metadata":{"RootFeatureManagementModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":2,"character":1},"arguments":[{}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"RootFeatureManagementModule"},"providers":[]}}}},"FeatureManagementModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":7,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ɵa"}],"imports":[{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":9,"character":12},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ThemeSharedModule","line":9,"character":24},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"NgxsModule","line":9,"character":43},"member":"forFeature"},"arguments":[[{"__symbolic":"reference","name":"ɵc"}]]}],"exports":[{"__symbolic":"reference","name":"ɵa"}]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"abp-feature-management","template":"\n \n

{{ 'AbpTenantManagement::Permission:ManageFeatures' | abpLocalization }}

\n
\n\n \n
\n \n
{{ feature.name }}
\n
\n \n
\n
\n \n
\n \n \n
\n\n \n \n \n {{ 'AbpFeatureManagement::Save' | abpLocalization }}\n \n \n
\n"}]}],"members":{"providerKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"providerName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":34,"character":3}}]}],"features$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":37,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵb"},"member":"getFeatures"}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":44,"character":29}]}],"openModal":[{"__symbolic":"method"}],"getFeatures":[{"__symbolic":"method"}],"buildForm":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}]}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":6,"character":1},"arguments":[{"name":"FeatureManagementState","defaults":{"features":{}}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵd"}]}],"getFeatures":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":18,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵe"}]}]}],"updateFeatures":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":29,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵf"}]}]}]},"statics":{"getFeatures":{"__symbolic":"function","parameters":["features"],"value":{"__symbolic":"reference","name":"features"}}}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.core","name":"RestService","line":10,"character":28},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":10,"character":56}]}],"getFeatures":[{"__symbolic":"method"}],"updateFeatures":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵe":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵg"},"member":"Provider"}]}]},"statics":{"type":"[FeatureManagement] Get Features"}},"ɵf":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":9,"character":30,"module":"./lib/actions/feature-management.actions"}]}]},"statics":{"type":"[FeatureManagement] Update Features"}}},"origins":{"RootFeatureManagementModule":"./lib/root-feature-management.module","FeatureManagementModule":"./lib/feature-management.module","ɵa":"./lib/components/feature-management/feature-management.component","ɵb":"./lib/states","ɵc":"./lib/states/feature-management.state","ɵd":"./lib/services/feature-management.service","ɵe":"./lib/actions/feature-management.actions","ɵf":"./lib/actions/feature-management.actions","ɵg":"./lib/models"},"importAs":"@abp/ng.feature-management"} \ No newline at end of file +{"__symbolic":"module","version":4,"exports":[{"from":"./lib/feature-management/feature-management.component"}],"metadata":{"FeatureManagementModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":7,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ɵa"}],"imports":[{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":9,"character":12},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ThemeSharedModule","line":9,"character":24},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"NgxsModule","line":9,"character":43},"member":"forFeature"},"arguments":[[{"__symbolic":"reference","name":"ɵc"}]]}],"exports":[{"__symbolic":"reference","name":"ɵa"}]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"abp-feature-management","template":"\n \n

{{ 'AbpTenantManagement::Permission:ManageFeatures' | abpLocalization }}

\n
\n\n \n
\n \n
{{ feature.name }}
\n
\n \n
\n
\n \n
\n \n \n
\n\n \n \n \n {{ 'AbpFeatureManagement::Save' | abpLocalization }}\n \n \n
\n"}]}],"members":{"providerKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"providerName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":34,"character":3}}]}],"features$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":37,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵb"},"member":"getFeatures"}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":44,"character":29}]}],"openModal":[{"__symbolic":"method"}],"getFeatures":[{"__symbolic":"method"}],"buildForm":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}]}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":6,"character":1},"arguments":[{"name":"FeatureManagementState","defaults":{"features":{}}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵd"}]}],"getFeatures":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":18,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵe"}]}]}],"updateFeatures":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":29,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵf"}]}]}]},"statics":{"getFeatures":{"__symbolic":"function","parameters":["features"],"value":{"__symbolic":"reference","name":"features"}}}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":6,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.core","name":"RestService","line":10,"character":28},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":10,"character":56}]}],"getFeatures":[{"__symbolic":"method"}],"updateFeatures":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵe":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵg"},"member":"Provider"}]}]},"statics":{"type":"[FeatureManagement] Get Features"}},"ɵf":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":9,"character":30,"module":"./lib/actions/feature-management.actions"}]}]},"statics":{"type":"[FeatureManagement] Update Features"}}},"origins":{"FeatureManagementModule":"./lib/feature-management.module","ɵa":"./lib/components/feature-management/feature-management.component","ɵb":"./lib/states","ɵc":"./lib/states/feature-management.state","ɵd":"./lib/services/feature-management.service","ɵe":"./lib/actions/feature-management.actions","ɵf":"./lib/actions/feature-management.actions","ɵg":"./lib/models"},"importAs":"@abp/ng.feature-management"} \ No newline at end of file diff --git a/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.js b/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.js index 8525a26b60..517a026099 100644 --- a/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.js +++ b/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.js @@ -1,8 +1,8 @@ (function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@abp/ng.core'), require('@abp/ng.theme.shared'), require('@ngxs/store'), require('rxjs'), require('rxjs/operators'), require('@angular/forms')) : - typeof define === 'function' && define.amd ? define('@abp/ng.feature-management', ['exports', '@angular/core', '@abp/ng.core', '@abp/ng.theme.shared', '@ngxs/store', 'rxjs', 'rxjs/operators', '@angular/forms'], factory) : - (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng['feature-management'] = {}), global.ng.core, global.ng_core, global.ng_theme_shared, global.store, global.rxjs, global.rxjs.operators, global.ng.forms)); -}(this, function (exports, core, ng_core, ng_theme_shared, store, rxjs, operators, forms) { 'use strict'; + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@abp/ng.core'), require('@abp/ng.theme.shared'), require('@angular/core'), require('@ngxs/store'), require('rxjs'), require('rxjs/operators'), require('@angular/forms')) : + typeof define === 'function' && define.amd ? define('@abp/ng.feature-management', ['exports', '@abp/ng.core', '@abp/ng.theme.shared', '@angular/core', '@ngxs/store', 'rxjs', 'rxjs/operators', '@angular/forms'], factory) : + (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng['feature-management'] = {}), global.ng_core, global.ng_theme_shared, global.ng.core, global.store, global.rxjs, global.rxjs.operators, global.ng.forms)); +}(this, function (exports, ng_core, ng_theme_shared, core, store, rxjs, operators, forms) { 'use strict'; /*! ***************************************************************************** Copyright (c) Microsoft Corporation. All rights reserved. @@ -201,31 +201,6 @@ return (mod && mod.__esModule) ? mod : { default: mod }; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var RootFeatureManagementModule = /** @class */ (function () { - function RootFeatureManagementModule() { - } - /** - * @return {?} - */ - RootFeatureManagementModule.forRoot = /** - * @return {?} - */ - function () { - return { - ngModule: RootFeatureManagementModule, - providers: [], - }; - }; - RootFeatureManagementModule.decorators = [ - { type: core.NgModule, args: [{},] } - ]; - return RootFeatureManagementModule; - }()); - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -608,7 +583,6 @@ exports.FeatureManagementComponent = FeatureManagementComponent; exports.FeatureManagementModule = FeatureManagementModule; - exports.RootFeatureManagementModule = RootFeatureManagementModule; exports.ɵa = FeatureManagementComponent; exports.ɵb = FeatureManagementState; exports.ɵc = FeatureManagementState; diff --git a/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.js.map b/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.js.map index 930d10b5ac..2ab31069d5 100644 --- a/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.js.map +++ b/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.feature-management.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.feature-management/lib/root-feature-management.module.ts","ng://@abp/ng.feature-management/lib/actions/feature-management.actions.ts","ng://@abp/ng.feature-management/lib/services/feature-management.service.ts","ng://@abp/ng.feature-management/lib/states/feature-management.state.ts","ng://@abp/ng.feature-management/lib/components/feature-management/feature-management.component.ts","ng://@abp/ng.feature-management/lib/feature-management.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootFeatureManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootFeatureManagementModule,\n providers: [],\n };\n }\n}\n","import { FeatureManagement } from '../models';\n\nexport class GetFeatures {\n static readonly type = '[FeatureManagement] Get Features';\n constructor(public payload: FeatureManagement.Provider) {}\n}\n\nexport class UpdateFeatures {\n static readonly type = '[FeatureManagement] Update Features';\n constructor(public payload: FeatureManagement.Provider & FeatureManagement.Features) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { FeatureManagement } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FeatureManagementService {\n constructor(private rest: RestService, private store: Store) {}\n\n getFeatures(params: FeatureManagement.Provider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/features',\n params,\n };\n return this.rest.request(request);\n }\n\n updateFeatures({\n features,\n providerKey,\n providerName,\n }: FeatureManagement.Provider & FeatureManagement.Features): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/features',\n body: { features },\n params: { providerKey, providerName },\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { tap } from 'rxjs/operators';\nimport { GetFeatures, UpdateFeatures } from '../actions/feature-management.actions';\nimport { FeatureManagement } from '../models/feature-management';\nimport { FeatureManagementService } from '../services/feature-management.service';\n\n@State({\n name: 'FeatureManagementState',\n defaults: { features: {} } as FeatureManagement.State,\n})\nexport class FeatureManagementState {\n @Selector()\n static getFeatures({ features }: FeatureManagement.State) {\n return features;\n }\n\n constructor(private featureManagementService: FeatureManagementService) {}\n\n @Action(GetFeatures)\n getFeatures({ patchState }: StateContext, { payload }: GetFeatures) {\n return this.featureManagementService.getFeatures(payload).pipe(\n tap(({ features }) =>\n patchState({\n features,\n }),\n ),\n );\n }\n\n @Action(UpdateFeatures)\n updateFeatures(_, { payload }: UpdateFeatures) {\n return this.featureManagementService.updateFeatures(payload);\n }\n}\n","import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { GetFeatures, UpdateFeatures } from '../../actions';\nimport { FeatureManagement } from '../../models/feature-management';\nimport { FeatureManagementState } from '../../states';\nimport { FormGroup, FormControl } from '@angular/forms';\nimport { pluck, tap } from 'rxjs/operators';\n\n@Component({\n selector: 'abp-feature-management',\n templateUrl: './feature-management.component.html',\n})\nexport class FeatureManagementComponent {\n @Input()\n providerKey: string;\n\n @Input()\n providerName: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (value) this.openModal();\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(FeatureManagementState.getFeatures)\n features$: Observable;\n\n modalBusy: boolean = false;\n\n form: FormGroup;\n\n constructor(private store: Store) {}\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.getFeatures();\n }\n\n getFeatures() {\n this.store\n .dispatch(new GetFeatures({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('FeatureManagementState', 'features'))\n .subscribe(features => {\n this.buildForm(features);\n });\n }\n\n buildForm(features) {\n const formGroupObj = {};\n\n for (let i = 0; i < features.length; i++) {\n formGroupObj[i] = new FormControl(features[i].value === 'false' ? null : features[i].value);\n }\n\n this.form = new FormGroup(formGroupObj);\n }\n\n save() {\n this.modalBusy = true;\n\n let features = this.store.selectSnapshot(FeatureManagementState.getFeatures);\n\n features = features.map((feature, i) => ({\n name: feature.name,\n value: !this.form.value[i] || this.form.value[i] === 'false' ? null : this.form.value[i],\n }));\n\n this.store\n .dispatch(\n new UpdateFeatures({\n providerKey: this.providerKey,\n providerName: this.providerName,\n features,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { FeatureManagementComponent } from './components/feature-management/feature-management.component';\nimport { NgxsModule } from '@ngxs/store';\nimport { FeatureManagementState } from './states/feature-management.state';\n\n@NgModule({\n declarations: [FeatureManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([FeatureManagementState])],\n exports: [FeatureManagementComponent],\n})\nexport class FeatureManagementModule {}\n"],"names":["NgModule","Injectable","RestService","Store","tap","tslib_1.__decorate","Action","Selector","State","EventEmitter","pluck","FormControl","FormGroup","Component","Input","Output","Select","Observable","CoreModule","ThemeSharedModule","NgxsModule"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.feature-management.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.feature-management/lib/actions/feature-management.actions.ts","ng://@abp/ng.feature-management/lib/services/feature-management.service.ts","ng://@abp/ng.feature-management/lib/states/feature-management.state.ts","ng://@abp/ng.feature-management/lib/components/feature-management/feature-management.component.ts","ng://@abp/ng.feature-management/lib/feature-management.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { FeatureManagement } from '../models';\n\nexport class GetFeatures {\n static readonly type = '[FeatureManagement] Get Features';\n constructor(public payload: FeatureManagement.Provider) {}\n}\n\nexport class UpdateFeatures {\n static readonly type = '[FeatureManagement] Update Features';\n constructor(public payload: FeatureManagement.Provider & FeatureManagement.Features) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { FeatureManagement } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FeatureManagementService {\n constructor(private rest: RestService, private store: Store) {}\n\n getFeatures(params: FeatureManagement.Provider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/features',\n params,\n };\n return this.rest.request(request);\n }\n\n updateFeatures({\n features,\n providerKey,\n providerName,\n }: FeatureManagement.Provider & FeatureManagement.Features): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/features',\n body: { features },\n params: { providerKey, providerName },\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { tap } from 'rxjs/operators';\nimport { GetFeatures, UpdateFeatures } from '../actions/feature-management.actions';\nimport { FeatureManagement } from '../models/feature-management';\nimport { FeatureManagementService } from '../services/feature-management.service';\n\n@State({\n name: 'FeatureManagementState',\n defaults: { features: {} } as FeatureManagement.State,\n})\nexport class FeatureManagementState {\n @Selector()\n static getFeatures({ features }: FeatureManagement.State) {\n return features;\n }\n\n constructor(private featureManagementService: FeatureManagementService) {}\n\n @Action(GetFeatures)\n getFeatures({ patchState }: StateContext, { payload }: GetFeatures) {\n return this.featureManagementService.getFeatures(payload).pipe(\n tap(({ features }) =>\n patchState({\n features,\n }),\n ),\n );\n }\n\n @Action(UpdateFeatures)\n updateFeatures(_, { payload }: UpdateFeatures) {\n return this.featureManagementService.updateFeatures(payload);\n }\n}\n","import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { GetFeatures, UpdateFeatures } from '../../actions';\nimport { FeatureManagement } from '../../models/feature-management';\nimport { FeatureManagementState } from '../../states';\nimport { FormGroup, FormControl } from '@angular/forms';\nimport { pluck, tap } from 'rxjs/operators';\n\n@Component({\n selector: 'abp-feature-management',\n templateUrl: './feature-management.component.html',\n})\nexport class FeatureManagementComponent {\n @Input()\n providerKey: string;\n\n @Input()\n providerName: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (value) this.openModal();\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(FeatureManagementState.getFeatures)\n features$: Observable;\n\n modalBusy: boolean = false;\n\n form: FormGroup;\n\n constructor(private store: Store) {}\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.getFeatures();\n }\n\n getFeatures() {\n this.store\n .dispatch(new GetFeatures({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('FeatureManagementState', 'features'))\n .subscribe(features => {\n this.buildForm(features);\n });\n }\n\n buildForm(features) {\n const formGroupObj = {};\n\n for (let i = 0; i < features.length; i++) {\n formGroupObj[i] = new FormControl(features[i].value === 'false' ? null : features[i].value);\n }\n\n this.form = new FormGroup(formGroupObj);\n }\n\n save() {\n this.modalBusy = true;\n\n let features = this.store.selectSnapshot(FeatureManagementState.getFeatures);\n\n features = features.map((feature, i) => ({\n name: feature.name,\n value: !this.form.value[i] || this.form.value[i] === 'false' ? null : this.form.value[i],\n }));\n\n this.store\n .dispatch(\n new UpdateFeatures({\n providerKey: this.providerKey,\n providerName: this.providerName,\n features,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { FeatureManagementComponent } from './components/feature-management/feature-management.component';\nimport { NgxsModule } from '@ngxs/store';\nimport { FeatureManagementState } from './states/feature-management.state';\n\n@NgModule({\n declarations: [FeatureManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([FeatureManagementState])],\n exports: [FeatureManagementComponent],\n})\nexport class FeatureManagementModule {}\n"],"names":["Injectable","RestService","Store","tap","tslib_1.__decorate","Action","Selector","State","EventEmitter","pluck","FormControl","FormGroup","Component","Input","Output","Select","Observable","NgModule","CoreModule","ThemeSharedModule","NgxsModule"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.min.js b/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.min.js index 2f086d5102..28befa0821 100644 --- a/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.min.js +++ b/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.min.js @@ -1,2 +1,2 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@abp/ng.core"),require("@abp/ng.theme.shared"),require("@ngxs/store"),require("rxjs"),require("rxjs/operators"),require("@angular/forms")):"function"==typeof define&&define.amd?define("@abp/ng.feature-management",["exports","@angular/core","@abp/ng.core","@abp/ng.theme.shared","@ngxs/store","rxjs","rxjs/operators","@angular/forms"],t):t(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng["feature-management"]={}),e.ng.core,e.ng_core,e.ng_theme_shared,e.store,e.rxjs,e.rxjs.operators,e.ng.forms)}(this,function(e,t,r,n,a,o,i,u){"use strict";function s(e,t,r,n){var a,o=arguments.length,i=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,r,n);else for(var u=e.length-1;u>=0;u--)(a=e[u])&&(i=(o<3?a(i):o>3?a(t,r,i):a(t,r))||i);return o>3&&i&&Object.defineProperty(t,r,i),i}function p(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}var c=function(){function e(){}return e.forRoot=function(){return{ngModule:e,providers:[]}},e.decorators=[{type:t.NgModule,args:[{}]}],e}(),f=function(){function e(e){this.payload=e}return e.type="[FeatureManagement] Get Features",e}();var l=function(){function e(e){this.payload=e}return e.type="[FeatureManagement] Update Features",e}();var d=function(){function e(e,t){this.rest=e,this.store=t}return e.prototype.getFeatures=function(e){var t={method:"GET",url:"/api/abp/features",params:e};return this.rest.request(t)},e.prototype.updateFeatures=function(e){var t={method:"PUT",url:"/api/abp/features",body:{features:e.features},params:{providerKey:e.providerKey,providerName:e.providerName}};return this.rest.request(t)},e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:r.RestService},{type:a.Store}]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e(t.ɵɵinject(r.RestService),t.ɵɵinject(a.Store))},token:e,providedIn:"root"}),e}();var m=function(){function e(e){this.featureManagementService=e}return e.getFeatures=function(e){return e.features},e.prototype.getFeatures=function(e,t){var r=e.patchState,n=t.payload;return this.featureManagementService.getFeatures(n).pipe(i.tap(function(e){var t=e.features;return r({features:t})}))},e.prototype.updateFeatures=function(e,t){var r=t.payload;return this.featureManagementService.updateFeatures(r)},s([a.Action(f),p("design:type",Function),p("design:paramtypes",[Object,f]),p("design:returntype",void 0)],e.prototype,"getFeatures",null),s([a.Action(l),p("design:type",Function),p("design:paramtypes",[Object,l]),p("design:returntype",void 0)],e.prototype,"updateFeatures",null),s([a.Selector(),p("design:type",Function),p("design:paramtypes",[Object]),p("design:returntype",void 0)],e,"getFeatures",null),e=s([a.State({name:"FeatureManagementState",defaults:{features:{}}}),p("design:paramtypes",[d])],e)}();var g=function(){function e(e){this.store=e,this.visibleChange=new t.EventEmitter,this.modalBusy=!1}return Object.defineProperty(e.prototype,"visible",{get:function(){return this._visible},set:function(e){this._visible=e,this.visibleChange.emit(e),e&&this.openModal()},enumerable:!0,configurable:!0}),e.prototype.openModal=function(){if(!this.providerKey||!this.providerName)throw new Error("Provider Key and Provider Name are required.");this.getFeatures()},e.prototype.getFeatures=function(){var e=this;this.store.dispatch(new f({providerKey:this.providerKey,providerName:this.providerName})).pipe(i.pluck("FeatureManagementState","features")).subscribe(function(t){e.buildForm(t)})},e.prototype.buildForm=function(e){for(var t={},r=0;r\n \n

{{ \'AbpTenantManagement::Permission:ManageFeatures\' | abpLocalization }}

\n
\n\n \n
\n \n
{{ feature.name }}
\n
\n \n
\n
\n \n
\n \n \n
\n\n \n \n \n {{ \'AbpFeatureManagement::Save\' | abpLocalization }}\n \n \n\n'}]}],e.ctorParameters=function(){return[{type:a.Store}]},e.propDecorators={providerKey:[{type:t.Input}],providerName:[{type:t.Input}],visible:[{type:t.Input}],visibleChange:[{type:t.Output}]},s([a.Select(m.getFeatures),p("design:type",o.Observable)],e.prototype,"features$",void 0),e}();var v=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{declarations:[g],imports:[r.CoreModule,n.ThemeSharedModule,a.NgxsModule.forFeature([m])],exports:[g]}]}],e}();e.FeatureManagementComponent=g,e.FeatureManagementModule=v,e.RootFeatureManagementModule=c,e.ɵa=g,e.ɵb=m,e.ɵc=m,e.ɵd=d,e.ɵe=f,e.ɵf=l,Object.defineProperty(e,"__esModule",{value:!0})}); +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@abp/ng.core"),require("@abp/ng.theme.shared"),require("@angular/core"),require("@ngxs/store"),require("rxjs"),require("rxjs/operators"),require("@angular/forms")):"function"==typeof define&&define.amd?define("@abp/ng.feature-management",["exports","@abp/ng.core","@abp/ng.theme.shared","@angular/core","@ngxs/store","rxjs","rxjs/operators","@angular/forms"],t):t(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng["feature-management"]={}),e.ng_core,e.ng_theme_shared,e.ng.core,e.store,e.rxjs,e.rxjs.operators,e.ng.forms)}(this,function(e,t,r,n,a,o,i,u){"use strict";function s(e,t,r,n){var a,o=arguments.length,i=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,r,n);else for(var u=e.length-1;u>=0;u--)(a=e[u])&&(i=(o<3?a(i):o>3?a(t,r,i):a(t,r))||i);return o>3&&i&&Object.defineProperty(t,r,i),i}function p(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}var c=function(){function e(e){this.payload=e}return e.type="[FeatureManagement] Get Features",e}();var f=function(){function e(e){this.payload=e}return e.type="[FeatureManagement] Update Features",e}();var l=function(){function e(e,t){this.rest=e,this.store=t}return e.prototype.getFeatures=function(e){var t={method:"GET",url:"/api/abp/features",params:e};return this.rest.request(t)},e.prototype.updateFeatures=function(e){var t={method:"PUT",url:"/api/abp/features",body:{features:e.features},params:{providerKey:e.providerKey,providerName:e.providerName}};return this.rest.request(t)},e.decorators=[{type:n.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:t.RestService},{type:a.Store}]},e.ngInjectableDef=n.ɵɵdefineInjectable({factory:function(){return new e(n.ɵɵinject(t.RestService),n.ɵɵinject(a.Store))},token:e,providedIn:"root"}),e}();var d=function(){function e(e){this.featureManagementService=e}return e.getFeatures=function(e){return e.features},e.prototype.getFeatures=function(e,t){var r=e.patchState,n=t.payload;return this.featureManagementService.getFeatures(n).pipe(i.tap(function(e){var t=e.features;return r({features:t})}))},e.prototype.updateFeatures=function(e,t){var r=t.payload;return this.featureManagementService.updateFeatures(r)},s([a.Action(c),p("design:type",Function),p("design:paramtypes",[Object,c]),p("design:returntype",void 0)],e.prototype,"getFeatures",null),s([a.Action(f),p("design:type",Function),p("design:paramtypes",[Object,f]),p("design:returntype",void 0)],e.prototype,"updateFeatures",null),s([a.Selector(),p("design:type",Function),p("design:paramtypes",[Object]),p("design:returntype",void 0)],e,"getFeatures",null),e=s([a.State({name:"FeatureManagementState",defaults:{features:{}}}),p("design:paramtypes",[l])],e)}();var m=function(){function e(e){this.store=e,this.visibleChange=new n.EventEmitter,this.modalBusy=!1}return Object.defineProperty(e.prototype,"visible",{get:function(){return this._visible},set:function(e){this._visible=e,this.visibleChange.emit(e),e&&this.openModal()},enumerable:!0,configurable:!0}),e.prototype.openModal=function(){if(!this.providerKey||!this.providerName)throw new Error("Provider Key and Provider Name are required.");this.getFeatures()},e.prototype.getFeatures=function(){var e=this;this.store.dispatch(new c({providerKey:this.providerKey,providerName:this.providerName})).pipe(i.pluck("FeatureManagementState","features")).subscribe(function(t){e.buildForm(t)})},e.prototype.buildForm=function(e){for(var t={},r=0;r\n \n

{{ \'AbpTenantManagement::Permission:ManageFeatures\' | abpLocalization }}

\n
\n\n \n
\n \n
{{ feature.name }}
\n
\n \n
\n
\n \n
\n \n \n
\n\n \n \n \n {{ \'AbpFeatureManagement::Save\' | abpLocalization }}\n \n \n\n'}]}],e.ctorParameters=function(){return[{type:a.Store}]},e.propDecorators={providerKey:[{type:n.Input}],providerName:[{type:n.Input}],visible:[{type:n.Input}],visibleChange:[{type:n.Output}]},s([a.Select(d.getFeatures),p("design:type",o.Observable)],e.prototype,"features$",void 0),e}();var g=function(){function e(){}return e.decorators=[{type:n.NgModule,args:[{declarations:[m],imports:[t.CoreModule,r.ThemeSharedModule,a.NgxsModule.forFeature([d])],exports:[m]}]}],e}();e.FeatureManagementComponent=m,e.FeatureManagementModule=g,e.ɵa=m,e.ɵb=d,e.ɵc=d,e.ɵd=l,e.ɵe=c,e.ɵf=f,Object.defineProperty(e,"__esModule",{value:!0})}); //# sourceMappingURL=abp-ng.feature-management.umd.min.js.map \ No newline at end of file diff --git a/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.min.js.map b/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.min.js.map index b7ef2d387c..aeaeeb062f 100644 --- a/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.min.js.map +++ b/npm/ng-packs/dist/feature-management/bundles/abp-ng.feature-management.umd.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.feature-management/lib/root-feature-management.module.ts","ng://@abp/ng.feature-management/lib/actions/feature-management.actions.ts","ng://@abp/ng.feature-management/lib/services/feature-management.service.ts","ng://@abp/ng.feature-management/lib/states/feature-management.state.ts","ng://@abp/ng.feature-management/lib/components/feature-management/feature-management.component.ts","ng://@abp/ng.feature-management/lib/feature-management.module.ts"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__metadata","metadataKey","metadataValue","metadata","RootFeatureManagementModule","forRoot","ngModule","providers","NgModule","args","GetFeatures","payload","this","type","UpdateFeatures","FeatureManagementService","rest","store","prototype","getFeatures","params","request","method","url","updateFeatures","_a","body","features","providerKey","providerName","Injectable","providedIn","RestService","Store","FeatureManagementState","featureManagementService","_b","patchState","pipe","tap","_","tslib_1.__decorate","Action","Selector","State","name","defaults","FeatureManagementComponent","visibleChange","EventEmitter","modalBusy","_visible","value","emit","openModal","Error","_this","dispatch","pluck","subscribe","buildForm","formGroupObj","FormControl","form","FormGroup","save","selectSnapshot","map","feature","visible","Component","selector","template","Input","Output","Select","Observable","FeatureManagementModule","declarations","imports","CoreModule","ThemeSharedModule","NgxsModule","forFeature","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootFeatureManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootFeatureManagementModule,\n providers: [],\n };\n }\n}\n","import { FeatureManagement } from '../models';\n\nexport class GetFeatures {\n static readonly type = '[FeatureManagement] Get Features';\n constructor(public payload: FeatureManagement.Provider) {}\n}\n\nexport class UpdateFeatures {\n static readonly type = '[FeatureManagement] Update Features';\n constructor(public payload: FeatureManagement.Provider & FeatureManagement.Features) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { FeatureManagement } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FeatureManagementService {\n constructor(private rest: RestService, private store: Store) {}\n\n getFeatures(params: FeatureManagement.Provider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/features',\n params,\n };\n return this.rest.request(request);\n }\n\n updateFeatures({\n features,\n providerKey,\n providerName,\n }: FeatureManagement.Provider & FeatureManagement.Features): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/features',\n body: { features },\n params: { providerKey, providerName },\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { tap } from 'rxjs/operators';\nimport { GetFeatures, UpdateFeatures } from '../actions/feature-management.actions';\nimport { FeatureManagement } from '../models/feature-management';\nimport { FeatureManagementService } from '../services/feature-management.service';\n\n@State({\n name: 'FeatureManagementState',\n defaults: { features: {} } as FeatureManagement.State,\n})\nexport class FeatureManagementState {\n @Selector()\n static getFeatures({ features }: FeatureManagement.State) {\n return features;\n }\n\n constructor(private featureManagementService: FeatureManagementService) {}\n\n @Action(GetFeatures)\n getFeatures({ patchState }: StateContext, { payload }: GetFeatures) {\n return this.featureManagementService.getFeatures(payload).pipe(\n tap(({ features }) =>\n patchState({\n features,\n }),\n ),\n );\n }\n\n @Action(UpdateFeatures)\n updateFeatures(_, { payload }: UpdateFeatures) {\n return this.featureManagementService.updateFeatures(payload);\n }\n}\n","import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { GetFeatures, UpdateFeatures } from '../../actions';\nimport { FeatureManagement } from '../../models/feature-management';\nimport { FeatureManagementState } from '../../states';\nimport { FormGroup, FormControl } from '@angular/forms';\nimport { pluck, tap } from 'rxjs/operators';\n\n@Component({\n selector: 'abp-feature-management',\n templateUrl: './feature-management.component.html',\n})\nexport class FeatureManagementComponent {\n @Input()\n providerKey: string;\n\n @Input()\n providerName: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (value) this.openModal();\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(FeatureManagementState.getFeatures)\n features$: Observable;\n\n modalBusy: boolean = false;\n\n form: FormGroup;\n\n constructor(private store: Store) {}\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.getFeatures();\n }\n\n getFeatures() {\n this.store\n .dispatch(new GetFeatures({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('FeatureManagementState', 'features'))\n .subscribe(features => {\n this.buildForm(features);\n });\n }\n\n buildForm(features) {\n const formGroupObj = {};\n\n for (let i = 0; i < features.length; i++) {\n formGroupObj[i] = new FormControl(features[i].value === 'false' ? null : features[i].value);\n }\n\n this.form = new FormGroup(formGroupObj);\n }\n\n save() {\n this.modalBusy = true;\n\n let features = this.store.selectSnapshot(FeatureManagementState.getFeatures);\n\n features = features.map((feature, i) => ({\n name: feature.name,\n value: !this.form.value[i] || this.form.value[i] === 'false' ? null : this.form.value[i],\n }));\n\n this.store\n .dispatch(\n new UpdateFeatures({\n providerKey: this.providerKey,\n providerName: this.providerName,\n features,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { FeatureManagementComponent } from './components/feature-management/feature-management.component';\nimport { NgxsModule } from '@ngxs/store';\nimport { FeatureManagementState } from './states/feature-management.state';\n\n@NgModule({\n declarations: [FeatureManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([FeatureManagementState])],\n exports: [FeatureManagementComponent],\n})\nexport class FeatureManagementModule {}\n"]} \ No newline at end of file +{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.feature-management/lib/actions/feature-management.actions.ts","ng://@abp/ng.feature-management/lib/services/feature-management.service.ts","ng://@abp/ng.feature-management/lib/states/feature-management.state.ts","ng://@abp/ng.feature-management/lib/components/feature-management/feature-management.component.ts","ng://@abp/ng.feature-management/lib/feature-management.module.ts"],"names":["__decorate","decorators","target","key","desc","d","c","arguments","length","r","Object","getOwnPropertyDescriptor","Reflect","decorate","i","defineProperty","__metadata","metadataKey","metadataValue","metadata","GetFeatures","payload","this","type","UpdateFeatures","FeatureManagementService","rest","store","prototype","getFeatures","params","request","method","url","updateFeatures","_a","body","features","providerKey","providerName","Injectable","args","providedIn","RestService","Store","FeatureManagementState","featureManagementService","_b","patchState","pipe","tap","_","tslib_1.__decorate","Action","Selector","State","name","defaults","FeatureManagementComponent","visibleChange","EventEmitter","modalBusy","_visible","value","emit","openModal","Error","_this","dispatch","pluck","subscribe","buildForm","formGroupObj","FormControl","form","FormGroup","save","selectSnapshot","map","feature","visible","Component","selector","template","Input","Output","Select","Observable","FeatureManagementModule","NgModule","declarations","imports","CoreModule","ThemeSharedModule","NgxsModule","forFeature","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { FeatureManagement } from '../models';\n\nexport class GetFeatures {\n static readonly type = '[FeatureManagement] Get Features';\n constructor(public payload: FeatureManagement.Provider) {}\n}\n\nexport class UpdateFeatures {\n static readonly type = '[FeatureManagement] Update Features';\n constructor(public payload: FeatureManagement.Provider & FeatureManagement.Features) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { FeatureManagement } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FeatureManagementService {\n constructor(private rest: RestService, private store: Store) {}\n\n getFeatures(params: FeatureManagement.Provider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/features',\n params,\n };\n return this.rest.request(request);\n }\n\n updateFeatures({\n features,\n providerKey,\n providerName,\n }: FeatureManagement.Provider & FeatureManagement.Features): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/features',\n body: { features },\n params: { providerKey, providerName },\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { tap } from 'rxjs/operators';\nimport { GetFeatures, UpdateFeatures } from '../actions/feature-management.actions';\nimport { FeatureManagement } from '../models/feature-management';\nimport { FeatureManagementService } from '../services/feature-management.service';\n\n@State({\n name: 'FeatureManagementState',\n defaults: { features: {} } as FeatureManagement.State,\n})\nexport class FeatureManagementState {\n @Selector()\n static getFeatures({ features }: FeatureManagement.State) {\n return features;\n }\n\n constructor(private featureManagementService: FeatureManagementService) {}\n\n @Action(GetFeatures)\n getFeatures({ patchState }: StateContext, { payload }: GetFeatures) {\n return this.featureManagementService.getFeatures(payload).pipe(\n tap(({ features }) =>\n patchState({\n features,\n }),\n ),\n );\n }\n\n @Action(UpdateFeatures)\n updateFeatures(_, { payload }: UpdateFeatures) {\n return this.featureManagementService.updateFeatures(payload);\n }\n}\n","import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { GetFeatures, UpdateFeatures } from '../../actions';\nimport { FeatureManagement } from '../../models/feature-management';\nimport { FeatureManagementState } from '../../states';\nimport { FormGroup, FormControl } from '@angular/forms';\nimport { pluck, tap } from 'rxjs/operators';\n\n@Component({\n selector: 'abp-feature-management',\n templateUrl: './feature-management.component.html',\n})\nexport class FeatureManagementComponent {\n @Input()\n providerKey: string;\n\n @Input()\n providerName: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (value) this.openModal();\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(FeatureManagementState.getFeatures)\n features$: Observable;\n\n modalBusy: boolean = false;\n\n form: FormGroup;\n\n constructor(private store: Store) {}\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.getFeatures();\n }\n\n getFeatures() {\n this.store\n .dispatch(new GetFeatures({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('FeatureManagementState', 'features'))\n .subscribe(features => {\n this.buildForm(features);\n });\n }\n\n buildForm(features) {\n const formGroupObj = {};\n\n for (let i = 0; i < features.length; i++) {\n formGroupObj[i] = new FormControl(features[i].value === 'false' ? null : features[i].value);\n }\n\n this.form = new FormGroup(formGroupObj);\n }\n\n save() {\n this.modalBusy = true;\n\n let features = this.store.selectSnapshot(FeatureManagementState.getFeatures);\n\n features = features.map((feature, i) => ({\n name: feature.name,\n value: !this.form.value[i] || this.form.value[i] === 'false' ? null : this.form.value[i],\n }));\n\n this.store\n .dispatch(\n new UpdateFeatures({\n providerKey: this.providerKey,\n providerName: this.providerName,\n features,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { FeatureManagementComponent } from './components/feature-management/feature-management.component';\nimport { NgxsModule } from '@ngxs/store';\nimport { FeatureManagementState } from './states/feature-management.state';\n\n@NgModule({\n declarations: [FeatureManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([FeatureManagementState])],\n exports: [FeatureManagementComponent],\n})\nexport class FeatureManagementModule {}\n"]} \ No newline at end of file diff --git a/npm/ng-packs/dist/feature-management/esm2015/abp-ng.feature-management.js b/npm/ng-packs/dist/feature-management/esm2015/abp-ng.feature-management.js index 6c3065bfed..c84f215508 100644 --- a/npm/ng-packs/dist/feature-management/esm2015/abp-ng.feature-management.js +++ b/npm/ng-packs/dist/feature-management/esm2015/abp-ng.feature-management.js @@ -5,10 +5,10 @@ /** * Generated bundle index. Do not edit. */ -export { RootFeatureManagementModule, FeatureManagementModule, FeatureManagementComponent } from './public-api'; +export { FeatureManagementModule, FeatureManagementComponent } from './public-api'; export { GetFeatures as ɵe, UpdateFeatures as ɵf } from './lib/actions/feature-management.actions'; export { FeatureManagementComponent as ɵa } from './lib/components/feature-management/feature-management.component'; export { FeatureManagementService as ɵd } from './lib/services/feature-management.service'; export { FeatureManagementState as ɵb } from './lib/states'; export { FeatureManagementState as ɵc } from './lib/states/feature-management.state'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmZlYXR1cmUtbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuZmVhdHVyZS1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsiYWJwLW5nLmZlYXR1cmUtbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsaUdBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUNoRyxPQUFPLEVBQUMsMEJBQTBCLElBQUksRUFBRSxFQUFDLE1BQU0sa0VBQWtFLENBQUM7QUFFbEgsT0FBTyxFQUFDLHdCQUF3QixJQUFJLEVBQUUsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQ3pGLE9BQU8sRUFBQyxzQkFBc0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDMUQsT0FBTyxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0dldEZlYXR1cmVzIGFzIMm1ZSxVcGRhdGVGZWF0dXJlcyBhcyDJtWZ9IGZyb20gJy4vbGliL2FjdGlvbnMvZmVhdHVyZS1tYW5hZ2VtZW50LmFjdGlvbnMnO1xuZXhwb3J0IHtGZWF0dXJlTWFuYWdlbWVudENvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvZmVhdHVyZS1tYW5hZ2VtZW50L2ZlYXR1cmUtbWFuYWdlbWVudC5jb21wb25lbnQnO1xuZXhwb3J0IHtGZWF0dXJlTWFuYWdlbWVudCBhcyDJtWd9IGZyb20gJy4vbGliL21vZGVscyc7XG5leHBvcnQge0ZlYXR1cmVNYW5hZ2VtZW50U2VydmljZSBhcyDJtWR9IGZyb20gJy4vbGliL3NlcnZpY2VzL2ZlYXR1cmUtbWFuYWdlbWVudC5zZXJ2aWNlJztcbmV4cG9ydCB7RmVhdHVyZU1hbmFnZW1lbnRTdGF0ZSBhcyDJtWJ9IGZyb20gJy4vbGliL3N0YXRlcyc7XG5leHBvcnQge0ZlYXR1cmVNYW5hZ2VtZW50U3RhdGUgYXMgybVjfSBmcm9tICcuL2xpYi9zdGF0ZXMvZmVhdHVyZS1tYW5hZ2VtZW50LnN0YXRlJzsiXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmZlYXR1cmUtbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuZmVhdHVyZS1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsiYWJwLW5nLmZlYXR1cmUtbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsb0VBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUNoRyxPQUFPLEVBQUMsMEJBQTBCLElBQUksRUFBRSxFQUFDLE1BQU0sa0VBQWtFLENBQUM7QUFFbEgsT0FBTyxFQUFDLHdCQUF3QixJQUFJLEVBQUUsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQ3pGLE9BQU8sRUFBQyxzQkFBc0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDMUQsT0FBTyxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0dldEZlYXR1cmVzIGFzIMm1ZSxVcGRhdGVGZWF0dXJlcyBhcyDJtWZ9IGZyb20gJy4vbGliL2FjdGlvbnMvZmVhdHVyZS1tYW5hZ2VtZW50LmFjdGlvbnMnO1xuZXhwb3J0IHtGZWF0dXJlTWFuYWdlbWVudENvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvZmVhdHVyZS1tYW5hZ2VtZW50L2ZlYXR1cmUtbWFuYWdlbWVudC5jb21wb25lbnQnO1xuZXhwb3J0IHtGZWF0dXJlTWFuYWdlbWVudCBhcyDJtWd9IGZyb20gJy4vbGliL21vZGVscyc7XG5leHBvcnQge0ZlYXR1cmVNYW5hZ2VtZW50U2VydmljZSBhcyDJtWR9IGZyb20gJy4vbGliL3NlcnZpY2VzL2ZlYXR1cmUtbWFuYWdlbWVudC5zZXJ2aWNlJztcbmV4cG9ydCB7RmVhdHVyZU1hbmFnZW1lbnRTdGF0ZSBhcyDJtWJ9IGZyb20gJy4vbGliL3N0YXRlcyc7XG5leHBvcnQge0ZlYXR1cmVNYW5hZ2VtZW50U3RhdGUgYXMgybVjfSBmcm9tICcuL2xpYi9zdGF0ZXMvZmVhdHVyZS1tYW5hZ2VtZW50LnN0YXRlJzsiXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/feature-management/esm2015/lib/root-feature-management.module.js b/npm/ng-packs/dist/feature-management/esm2015/lib/root-feature-management.module.js deleted file mode 100644 index fc51fa84e5..0000000000 --- a/npm/ng-packs/dist/feature-management/esm2015/lib/root-feature-management.module.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { NgModule } from '@angular/core'; -export class RootFeatureManagementModule { - /** - * @return {?} - */ - static forRoot() { - return { - ngModule: RootFeatureManagementModule, - providers: [], - }; - } -} -RootFeatureManagementModule.decorators = [ - { type: NgModule, args: [{},] } -]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1mZWF0dXJlLW1hbmFnZW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5mZWF0dXJlLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvcm9vdC1mZWF0dXJlLW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUc5RCxNQUFNLE9BQU8sMkJBQTJCOzs7O0lBQ3RDLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSwyQkFBMkI7WUFDckMsU0FBUyxFQUFFLEVBQUU7U0FDZCxDQUFDO0lBQ0osQ0FBQzs7O1lBUEYsUUFBUSxTQUFDLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ATmdNb2R1bGUoe30pXG5leHBvcnQgY2xhc3MgUm9vdEZlYXR1cmVNYW5hZ2VtZW50TW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVycyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBSb290RmVhdHVyZU1hbmFnZW1lbnRNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/feature-management/esm2015/public-api.js b/npm/ng-packs/dist/feature-management/esm2015/public-api.js index fcbf11e568..2ca23efea6 100644 --- a/npm/ng-packs/dist/feature-management/esm2015/public-api.js +++ b/npm/ng-packs/dist/feature-management/esm2015/public-api.js @@ -2,7 +2,6 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { RootFeatureManagementModule } from './lib/root-feature-management.module'; export { FeatureManagementModule } from './lib/feature-management.module'; export { FeatureManagementComponent } from './lib/components'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuZmVhdHVyZS1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsNENBQWMsc0NBQXNDLENBQUM7QUFDckQsd0NBQWMsaUNBQWlDLENBQUM7QUFDaEQsMkNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9yb290LWZlYXR1cmUtbWFuYWdlbWVudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZmVhdHVyZS1tYW5hZ2VtZW50Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuZmVhdHVyZS1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsd0NBQWMsaUNBQWlDLENBQUM7QUFDaEQsMkNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9mZWF0dXJlLW1hbmFnZW1lbnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/feature-management/esm5/abp-ng.feature-management.js b/npm/ng-packs/dist/feature-management/esm5/abp-ng.feature-management.js index 6c3065bfed..c84f215508 100644 --- a/npm/ng-packs/dist/feature-management/esm5/abp-ng.feature-management.js +++ b/npm/ng-packs/dist/feature-management/esm5/abp-ng.feature-management.js @@ -5,10 +5,10 @@ /** * Generated bundle index. Do not edit. */ -export { RootFeatureManagementModule, FeatureManagementModule, FeatureManagementComponent } from './public-api'; +export { FeatureManagementModule, FeatureManagementComponent } from './public-api'; export { GetFeatures as ɵe, UpdateFeatures as ɵf } from './lib/actions/feature-management.actions'; export { FeatureManagementComponent as ɵa } from './lib/components/feature-management/feature-management.component'; export { FeatureManagementService as ɵd } from './lib/services/feature-management.service'; export { FeatureManagementState as ɵb } from './lib/states'; export { FeatureManagementState as ɵc } from './lib/states/feature-management.state'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmZlYXR1cmUtbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuZmVhdHVyZS1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsiYWJwLW5nLmZlYXR1cmUtbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsaUdBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUNoRyxPQUFPLEVBQUMsMEJBQTBCLElBQUksRUFBRSxFQUFDLE1BQU0sa0VBQWtFLENBQUM7QUFFbEgsT0FBTyxFQUFDLHdCQUF3QixJQUFJLEVBQUUsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQ3pGLE9BQU8sRUFBQyxzQkFBc0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDMUQsT0FBTyxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0dldEZlYXR1cmVzIGFzIMm1ZSxVcGRhdGVGZWF0dXJlcyBhcyDJtWZ9IGZyb20gJy4vbGliL2FjdGlvbnMvZmVhdHVyZS1tYW5hZ2VtZW50LmFjdGlvbnMnO1xuZXhwb3J0IHtGZWF0dXJlTWFuYWdlbWVudENvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvZmVhdHVyZS1tYW5hZ2VtZW50L2ZlYXR1cmUtbWFuYWdlbWVudC5jb21wb25lbnQnO1xuZXhwb3J0IHtGZWF0dXJlTWFuYWdlbWVudCBhcyDJtWd9IGZyb20gJy4vbGliL21vZGVscyc7XG5leHBvcnQge0ZlYXR1cmVNYW5hZ2VtZW50U2VydmljZSBhcyDJtWR9IGZyb20gJy4vbGliL3NlcnZpY2VzL2ZlYXR1cmUtbWFuYWdlbWVudC5zZXJ2aWNlJztcbmV4cG9ydCB7RmVhdHVyZU1hbmFnZW1lbnRTdGF0ZSBhcyDJtWJ9IGZyb20gJy4vbGliL3N0YXRlcyc7XG5leHBvcnQge0ZlYXR1cmVNYW5hZ2VtZW50U3RhdGUgYXMgybVjfSBmcm9tICcuL2xpYi9zdGF0ZXMvZmVhdHVyZS1tYW5hZ2VtZW50LnN0YXRlJzsiXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmZlYXR1cmUtbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuZmVhdHVyZS1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsiYWJwLW5nLmZlYXR1cmUtbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsb0VBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxXQUFXLElBQUksRUFBRSxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUNoRyxPQUFPLEVBQUMsMEJBQTBCLElBQUksRUFBRSxFQUFDLE1BQU0sa0VBQWtFLENBQUM7QUFFbEgsT0FBTyxFQUFDLHdCQUF3QixJQUFJLEVBQUUsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQ3pGLE9BQU8sRUFBQyxzQkFBc0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDMUQsT0FBTyxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0dldEZlYXR1cmVzIGFzIMm1ZSxVcGRhdGVGZWF0dXJlcyBhcyDJtWZ9IGZyb20gJy4vbGliL2FjdGlvbnMvZmVhdHVyZS1tYW5hZ2VtZW50LmFjdGlvbnMnO1xuZXhwb3J0IHtGZWF0dXJlTWFuYWdlbWVudENvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvZmVhdHVyZS1tYW5hZ2VtZW50L2ZlYXR1cmUtbWFuYWdlbWVudC5jb21wb25lbnQnO1xuZXhwb3J0IHtGZWF0dXJlTWFuYWdlbWVudCBhcyDJtWd9IGZyb20gJy4vbGliL21vZGVscyc7XG5leHBvcnQge0ZlYXR1cmVNYW5hZ2VtZW50U2VydmljZSBhcyDJtWR9IGZyb20gJy4vbGliL3NlcnZpY2VzL2ZlYXR1cmUtbWFuYWdlbWVudC5zZXJ2aWNlJztcbmV4cG9ydCB7RmVhdHVyZU1hbmFnZW1lbnRTdGF0ZSBhcyDJtWJ9IGZyb20gJy4vbGliL3N0YXRlcyc7XG5leHBvcnQge0ZlYXR1cmVNYW5hZ2VtZW50U3RhdGUgYXMgybVjfSBmcm9tICcuL2xpYi9zdGF0ZXMvZmVhdHVyZS1tYW5hZ2VtZW50LnN0YXRlJzsiXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/feature-management/esm5/lib/root-feature-management.module.js b/npm/ng-packs/dist/feature-management/esm5/lib/root-feature-management.module.js deleted file mode 100644 index 02f160fdaa..0000000000 --- a/npm/ng-packs/dist/feature-management/esm5/lib/root-feature-management.module.js +++ /dev/null @@ -1,27 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { NgModule } from '@angular/core'; -var RootFeatureManagementModule = /** @class */ (function () { - function RootFeatureManagementModule() { - } - /** - * @return {?} - */ - RootFeatureManagementModule.forRoot = /** - * @return {?} - */ - function () { - return { - ngModule: RootFeatureManagementModule, - providers: [], - }; - }; - RootFeatureManagementModule.decorators = [ - { type: NgModule, args: [{},] } - ]; - return RootFeatureManagementModule; -}()); -export { RootFeatureManagementModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1mZWF0dXJlLW1hbmFnZW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5mZWF0dXJlLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvcm9vdC1mZWF0dXJlLW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RDtJQUFBO0lBUUEsQ0FBQzs7OztJQU5RLG1DQUFPOzs7SUFBZDtRQUNFLE9BQU87WUFDTCxRQUFRLEVBQUUsMkJBQTJCO1lBQ3JDLFNBQVMsRUFBRSxFQUFFO1NBQ2QsQ0FBQztJQUNKLENBQUM7O2dCQVBGLFFBQVEsU0FBQyxFQUFFOztJQVFaLGtDQUFDO0NBQUEsQUFSRCxJQVFDO1NBUFksMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQE5nTW9kdWxlKHt9KVxuZXhwb3J0IGNsYXNzIFJvb3RGZWF0dXJlTWFuYWdlbWVudE1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnMge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogUm9vdEZlYXR1cmVNYW5hZ2VtZW50TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXSxcbiAgICB9O1xuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/feature-management/esm5/public-api.js b/npm/ng-packs/dist/feature-management/esm5/public-api.js index fcbf11e568..2ca23efea6 100644 --- a/npm/ng-packs/dist/feature-management/esm5/public-api.js +++ b/npm/ng-packs/dist/feature-management/esm5/public-api.js @@ -2,7 +2,6 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { RootFeatureManagementModule } from './lib/root-feature-management.module'; export { FeatureManagementModule } from './lib/feature-management.module'; export { FeatureManagementComponent } from './lib/components'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuZmVhdHVyZS1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsNENBQWMsc0NBQXNDLENBQUM7QUFDckQsd0NBQWMsaUNBQWlDLENBQUM7QUFDaEQsMkNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9yb290LWZlYXR1cmUtbWFuYWdlbWVudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZmVhdHVyZS1tYW5hZ2VtZW50Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuZmVhdHVyZS1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsd0NBQWMsaUNBQWlDLENBQUM7QUFDaEQsMkNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9mZWF0dXJlLW1hbmFnZW1lbnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/feature-management/fesm2015/abp-ng.feature-management.js b/npm/ng-packs/dist/feature-management/fesm2015/abp-ng.feature-management.js index 08f63d224b..a761573caf 100644 --- a/npm/ng-packs/dist/feature-management/fesm2015/abp-ng.feature-management.js +++ b/npm/ng-packs/dist/feature-management/fesm2015/abp-ng.feature-management.js @@ -1,31 +1,12 @@ -import { NgModule, Injectable, ɵɵdefineInjectable, ɵɵinject, EventEmitter, Component, Input, Output } from '@angular/core'; import { RestService, CoreModule } from '@abp/ng.core'; import { ThemeSharedModule } from '@abp/ng.theme.shared'; +import { Injectable, ɵɵdefineInjectable, ɵɵinject, EventEmitter, Component, Input, Output, NgModule } from '@angular/core'; import { __decorate, __metadata } from 'tslib'; import { Store, Action, Selector, State, Select, NgxsModule } from '@ngxs/store'; import { Observable } from 'rxjs'; import { tap, pluck } from 'rxjs/operators'; import { FormControl, FormGroup } from '@angular/forms'; -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class RootFeatureManagementModule { - /** - * @return {?} - */ - static forRoot() { - return { - ngModule: RootFeatureManagementModule, - providers: [], - }; - } -} -RootFeatureManagementModule.decorators = [ - { type: NgModule, args: [{},] } -]; - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -380,5 +361,5 @@ FeatureManagementModule.decorators = [ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { FeatureManagementComponent, FeatureManagementModule, RootFeatureManagementModule, FeatureManagementComponent as ɵa, FeatureManagementState as ɵb, FeatureManagementState as ɵc, FeatureManagementService as ɵd, GetFeatures as ɵe, UpdateFeatures as ɵf }; +export { FeatureManagementComponent, FeatureManagementModule, FeatureManagementComponent as ɵa, FeatureManagementState as ɵb, FeatureManagementState as ɵc, FeatureManagementService as ɵd, GetFeatures as ɵe, UpdateFeatures as ɵf }; //# sourceMappingURL=abp-ng.feature-management.js.map diff --git a/npm/ng-packs/dist/feature-management/fesm2015/abp-ng.feature-management.js.map b/npm/ng-packs/dist/feature-management/fesm2015/abp-ng.feature-management.js.map index 95e1d29ce1..66b084481e 100644 --- a/npm/ng-packs/dist/feature-management/fesm2015/abp-ng.feature-management.js.map +++ b/npm/ng-packs/dist/feature-management/fesm2015/abp-ng.feature-management.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.feature-management.js","sources":["ng://@abp/ng.feature-management/lib/root-feature-management.module.ts","ng://@abp/ng.feature-management/lib/actions/feature-management.actions.ts","ng://@abp/ng.feature-management/lib/services/feature-management.service.ts","ng://@abp/ng.feature-management/lib/states/feature-management.state.ts","ng://@abp/ng.feature-management/lib/components/feature-management/feature-management.component.ts","ng://@abp/ng.feature-management/lib/feature-management.module.ts"],"sourcesContent":["import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootFeatureManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootFeatureManagementModule,\n providers: [],\n };\n }\n}\n","import { FeatureManagement } from '../models';\n\nexport class GetFeatures {\n static readonly type = '[FeatureManagement] Get Features';\n constructor(public payload: FeatureManagement.Provider) {}\n}\n\nexport class UpdateFeatures {\n static readonly type = '[FeatureManagement] Update Features';\n constructor(public payload: FeatureManagement.Provider & FeatureManagement.Features) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { FeatureManagement } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FeatureManagementService {\n constructor(private rest: RestService, private store: Store) {}\n\n getFeatures(params: FeatureManagement.Provider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/features',\n params,\n };\n return this.rest.request(request);\n }\n\n updateFeatures({\n features,\n providerKey,\n providerName,\n }: FeatureManagement.Provider & FeatureManagement.Features): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/features',\n body: { features },\n params: { providerKey, providerName },\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { tap } from 'rxjs/operators';\nimport { GetFeatures, UpdateFeatures } from '../actions/feature-management.actions';\nimport { FeatureManagement } from '../models/feature-management';\nimport { FeatureManagementService } from '../services/feature-management.service';\n\n@State({\n name: 'FeatureManagementState',\n defaults: { features: {} } as FeatureManagement.State,\n})\nexport class FeatureManagementState {\n @Selector()\n static getFeatures({ features }: FeatureManagement.State) {\n return features;\n }\n\n constructor(private featureManagementService: FeatureManagementService) {}\n\n @Action(GetFeatures)\n getFeatures({ patchState }: StateContext, { payload }: GetFeatures) {\n return this.featureManagementService.getFeatures(payload).pipe(\n tap(({ features }) =>\n patchState({\n features,\n }),\n ),\n );\n }\n\n @Action(UpdateFeatures)\n updateFeatures(_, { payload }: UpdateFeatures) {\n return this.featureManagementService.updateFeatures(payload);\n }\n}\n","import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { GetFeatures, UpdateFeatures } from '../../actions';\nimport { FeatureManagement } from '../../models/feature-management';\nimport { FeatureManagementState } from '../../states';\nimport { FormGroup, FormControl } from '@angular/forms';\nimport { pluck, tap } from 'rxjs/operators';\n\n@Component({\n selector: 'abp-feature-management',\n templateUrl: './feature-management.component.html',\n})\nexport class FeatureManagementComponent {\n @Input()\n providerKey: string;\n\n @Input()\n providerName: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (value) this.openModal();\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(FeatureManagementState.getFeatures)\n features$: Observable;\n\n modalBusy: boolean = false;\n\n form: FormGroup;\n\n constructor(private store: Store) {}\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.getFeatures();\n }\n\n getFeatures() {\n this.store\n .dispatch(new GetFeatures({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('FeatureManagementState', 'features'))\n .subscribe(features => {\n this.buildForm(features);\n });\n }\n\n buildForm(features) {\n const formGroupObj = {};\n\n for (let i = 0; i < features.length; i++) {\n formGroupObj[i] = new FormControl(features[i].value === 'false' ? null : features[i].value);\n }\n\n this.form = new FormGroup(formGroupObj);\n }\n\n save() {\n this.modalBusy = true;\n\n let features = this.store.selectSnapshot(FeatureManagementState.getFeatures);\n\n features = features.map((feature, i) => ({\n name: feature.name,\n value: !this.form.value[i] || this.form.value[i] === 'false' ? null : this.form.value[i],\n }));\n\n this.store\n .dispatch(\n new UpdateFeatures({\n providerKey: this.providerKey,\n providerName: this.providerName,\n features,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { FeatureManagementComponent } from './components/feature-management/feature-management.component';\nimport { NgxsModule } from '@ngxs/store';\nimport { FeatureManagementState } from './states/feature-management.state';\n\n@NgModule({\n declarations: [FeatureManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([FeatureManagementState])],\n exports: [FeatureManagementComponent],\n})\nexport class FeatureManagementModule {}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.feature-management.js","sources":["ng://@abp/ng.feature-management/lib/actions/feature-management.actions.ts","ng://@abp/ng.feature-management/lib/services/feature-management.service.ts","ng://@abp/ng.feature-management/lib/states/feature-management.state.ts","ng://@abp/ng.feature-management/lib/components/feature-management/feature-management.component.ts","ng://@abp/ng.feature-management/lib/feature-management.module.ts"],"sourcesContent":["import { FeatureManagement } from '../models';\n\nexport class GetFeatures {\n static readonly type = '[FeatureManagement] Get Features';\n constructor(public payload: FeatureManagement.Provider) {}\n}\n\nexport class UpdateFeatures {\n static readonly type = '[FeatureManagement] Update Features';\n constructor(public payload: FeatureManagement.Provider & FeatureManagement.Features) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { FeatureManagement } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FeatureManagementService {\n constructor(private rest: RestService, private store: Store) {}\n\n getFeatures(params: FeatureManagement.Provider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/features',\n params,\n };\n return this.rest.request(request);\n }\n\n updateFeatures({\n features,\n providerKey,\n providerName,\n }: FeatureManagement.Provider & FeatureManagement.Features): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/features',\n body: { features },\n params: { providerKey, providerName },\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { tap } from 'rxjs/operators';\nimport { GetFeatures, UpdateFeatures } from '../actions/feature-management.actions';\nimport { FeatureManagement } from '../models/feature-management';\nimport { FeatureManagementService } from '../services/feature-management.service';\n\n@State({\n name: 'FeatureManagementState',\n defaults: { features: {} } as FeatureManagement.State,\n})\nexport class FeatureManagementState {\n @Selector()\n static getFeatures({ features }: FeatureManagement.State) {\n return features;\n }\n\n constructor(private featureManagementService: FeatureManagementService) {}\n\n @Action(GetFeatures)\n getFeatures({ patchState }: StateContext, { payload }: GetFeatures) {\n return this.featureManagementService.getFeatures(payload).pipe(\n tap(({ features }) =>\n patchState({\n features,\n }),\n ),\n );\n }\n\n @Action(UpdateFeatures)\n updateFeatures(_, { payload }: UpdateFeatures) {\n return this.featureManagementService.updateFeatures(payload);\n }\n}\n","import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { GetFeatures, UpdateFeatures } from '../../actions';\nimport { FeatureManagement } from '../../models/feature-management';\nimport { FeatureManagementState } from '../../states';\nimport { FormGroup, FormControl } from '@angular/forms';\nimport { pluck, tap } from 'rxjs/operators';\n\n@Component({\n selector: 'abp-feature-management',\n templateUrl: './feature-management.component.html',\n})\nexport class FeatureManagementComponent {\n @Input()\n providerKey: string;\n\n @Input()\n providerName: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (value) this.openModal();\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(FeatureManagementState.getFeatures)\n features$: Observable;\n\n modalBusy: boolean = false;\n\n form: FormGroup;\n\n constructor(private store: Store) {}\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.getFeatures();\n }\n\n getFeatures() {\n this.store\n .dispatch(new GetFeatures({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('FeatureManagementState', 'features'))\n .subscribe(features => {\n this.buildForm(features);\n });\n }\n\n buildForm(features) {\n const formGroupObj = {};\n\n for (let i = 0; i < features.length; i++) {\n formGroupObj[i] = new FormControl(features[i].value === 'false' ? null : features[i].value);\n }\n\n this.form = new FormGroup(formGroupObj);\n }\n\n save() {\n this.modalBusy = true;\n\n let features = this.store.selectSnapshot(FeatureManagementState.getFeatures);\n\n features = features.map((feature, i) => ({\n name: feature.name,\n value: !this.form.value[i] || this.form.value[i] === 'false' ? null : this.form.value[i],\n }));\n\n this.store\n .dispatch(\n new UpdateFeatures({\n providerKey: this.providerKey,\n providerName: this.providerName,\n features,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { FeatureManagementComponent } from './components/feature-management/feature-management.component';\nimport { NgxsModule } from '@ngxs/store';\nimport { FeatureManagementState } from './states/feature-management.state';\n\n@NgModule({\n declarations: [FeatureManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([FeatureManagementState])],\n exports: [FeatureManagementComponent],\n})\nexport class FeatureManagementModule {}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/feature-management/fesm5/abp-ng.feature-management.js b/npm/ng-packs/dist/feature-management/fesm5/abp-ng.feature-management.js index 5794ee405b..92b041d57b 100644 --- a/npm/ng-packs/dist/feature-management/fesm5/abp-ng.feature-management.js +++ b/npm/ng-packs/dist/feature-management/fesm5/abp-ng.feature-management.js @@ -1,37 +1,12 @@ -import { NgModule, Injectable, ɵɵdefineInjectable, ɵɵinject, EventEmitter, Component, Input, Output } from '@angular/core'; import { RestService, CoreModule } from '@abp/ng.core'; import { ThemeSharedModule } from '@abp/ng.theme.shared'; +import { Injectable, ɵɵdefineInjectable, ɵɵinject, EventEmitter, Component, Input, Output, NgModule } from '@angular/core'; import { __decorate, __metadata } from 'tslib'; import { Store, Action, Selector, State, Select, NgxsModule } from '@ngxs/store'; import { Observable } from 'rxjs'; import { tap, pluck } from 'rxjs/operators'; import { FormControl, FormGroup } from '@angular/forms'; -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var RootFeatureManagementModule = /** @class */ (function () { - function RootFeatureManagementModule() { - } - /** - * @return {?} - */ - RootFeatureManagementModule.forRoot = /** - * @return {?} - */ - function () { - return { - ngModule: RootFeatureManagementModule, - providers: [], - }; - }; - RootFeatureManagementModule.decorators = [ - { type: NgModule, args: [{},] } - ]; - return RootFeatureManagementModule; -}()); - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -427,5 +402,5 @@ var FeatureManagementModule = /** @class */ (function () { * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { FeatureManagementComponent, FeatureManagementModule, RootFeatureManagementModule, FeatureManagementComponent as ɵa, FeatureManagementState as ɵb, FeatureManagementState as ɵc, FeatureManagementService as ɵd, GetFeatures as ɵe, UpdateFeatures as ɵf }; +export { FeatureManagementComponent, FeatureManagementModule, FeatureManagementComponent as ɵa, FeatureManagementState as ɵb, FeatureManagementState as ɵc, FeatureManagementService as ɵd, GetFeatures as ɵe, UpdateFeatures as ɵf }; //# sourceMappingURL=abp-ng.feature-management.js.map diff --git a/npm/ng-packs/dist/feature-management/fesm5/abp-ng.feature-management.js.map b/npm/ng-packs/dist/feature-management/fesm5/abp-ng.feature-management.js.map index 2d1a106f36..94ecafeb19 100644 --- a/npm/ng-packs/dist/feature-management/fesm5/abp-ng.feature-management.js.map +++ b/npm/ng-packs/dist/feature-management/fesm5/abp-ng.feature-management.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.feature-management.js","sources":["ng://@abp/ng.feature-management/lib/root-feature-management.module.ts","ng://@abp/ng.feature-management/lib/actions/feature-management.actions.ts","ng://@abp/ng.feature-management/lib/services/feature-management.service.ts","ng://@abp/ng.feature-management/lib/states/feature-management.state.ts","ng://@abp/ng.feature-management/lib/components/feature-management/feature-management.component.ts","ng://@abp/ng.feature-management/lib/feature-management.module.ts"],"sourcesContent":["import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootFeatureManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootFeatureManagementModule,\n providers: [],\n };\n }\n}\n","import { FeatureManagement } from '../models';\n\nexport class GetFeatures {\n static readonly type = '[FeatureManagement] Get Features';\n constructor(public payload: FeatureManagement.Provider) {}\n}\n\nexport class UpdateFeatures {\n static readonly type = '[FeatureManagement] Update Features';\n constructor(public payload: FeatureManagement.Provider & FeatureManagement.Features) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { FeatureManagement } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FeatureManagementService {\n constructor(private rest: RestService, private store: Store) {}\n\n getFeatures(params: FeatureManagement.Provider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/features',\n params,\n };\n return this.rest.request(request);\n }\n\n updateFeatures({\n features,\n providerKey,\n providerName,\n }: FeatureManagement.Provider & FeatureManagement.Features): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/features',\n body: { features },\n params: { providerKey, providerName },\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { tap } from 'rxjs/operators';\nimport { GetFeatures, UpdateFeatures } from '../actions/feature-management.actions';\nimport { FeatureManagement } from '../models/feature-management';\nimport { FeatureManagementService } from '../services/feature-management.service';\n\n@State({\n name: 'FeatureManagementState',\n defaults: { features: {} } as FeatureManagement.State,\n})\nexport class FeatureManagementState {\n @Selector()\n static getFeatures({ features }: FeatureManagement.State) {\n return features;\n }\n\n constructor(private featureManagementService: FeatureManagementService) {}\n\n @Action(GetFeatures)\n getFeatures({ patchState }: StateContext, { payload }: GetFeatures) {\n return this.featureManagementService.getFeatures(payload).pipe(\n tap(({ features }) =>\n patchState({\n features,\n }),\n ),\n );\n }\n\n @Action(UpdateFeatures)\n updateFeatures(_, { payload }: UpdateFeatures) {\n return this.featureManagementService.updateFeatures(payload);\n }\n}\n","import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { GetFeatures, UpdateFeatures } from '../../actions';\nimport { FeatureManagement } from '../../models/feature-management';\nimport { FeatureManagementState } from '../../states';\nimport { FormGroup, FormControl } from '@angular/forms';\nimport { pluck, tap } from 'rxjs/operators';\n\n@Component({\n selector: 'abp-feature-management',\n templateUrl: './feature-management.component.html',\n})\nexport class FeatureManagementComponent {\n @Input()\n providerKey: string;\n\n @Input()\n providerName: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (value) this.openModal();\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(FeatureManagementState.getFeatures)\n features$: Observable;\n\n modalBusy: boolean = false;\n\n form: FormGroup;\n\n constructor(private store: Store) {}\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.getFeatures();\n }\n\n getFeatures() {\n this.store\n .dispatch(new GetFeatures({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('FeatureManagementState', 'features'))\n .subscribe(features => {\n this.buildForm(features);\n });\n }\n\n buildForm(features) {\n const formGroupObj = {};\n\n for (let i = 0; i < features.length; i++) {\n formGroupObj[i] = new FormControl(features[i].value === 'false' ? null : features[i].value);\n }\n\n this.form = new FormGroup(formGroupObj);\n }\n\n save() {\n this.modalBusy = true;\n\n let features = this.store.selectSnapshot(FeatureManagementState.getFeatures);\n\n features = features.map((feature, i) => ({\n name: feature.name,\n value: !this.form.value[i] || this.form.value[i] === 'false' ? null : this.form.value[i],\n }));\n\n this.store\n .dispatch(\n new UpdateFeatures({\n providerKey: this.providerKey,\n providerName: this.providerName,\n features,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { FeatureManagementComponent } from './components/feature-management/feature-management.component';\nimport { NgxsModule } from '@ngxs/store';\nimport { FeatureManagementState } from './states/feature-management.state';\n\n@NgModule({\n declarations: [FeatureManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([FeatureManagementState])],\n exports: [FeatureManagementComponent],\n})\nexport class FeatureManagementModule {}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.feature-management.js","sources":["ng://@abp/ng.feature-management/lib/actions/feature-management.actions.ts","ng://@abp/ng.feature-management/lib/services/feature-management.service.ts","ng://@abp/ng.feature-management/lib/states/feature-management.state.ts","ng://@abp/ng.feature-management/lib/components/feature-management/feature-management.component.ts","ng://@abp/ng.feature-management/lib/feature-management.module.ts"],"sourcesContent":["import { FeatureManagement } from '../models';\n\nexport class GetFeatures {\n static readonly type = '[FeatureManagement] Get Features';\n constructor(public payload: FeatureManagement.Provider) {}\n}\n\nexport class UpdateFeatures {\n static readonly type = '[FeatureManagement] Update Features';\n constructor(public payload: FeatureManagement.Provider & FeatureManagement.Features) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { FeatureManagement } from '../models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class FeatureManagementService {\n constructor(private rest: RestService, private store: Store) {}\n\n getFeatures(params: FeatureManagement.Provider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/features',\n params,\n };\n return this.rest.request(request);\n }\n\n updateFeatures({\n features,\n providerKey,\n providerName,\n }: FeatureManagement.Provider & FeatureManagement.Features): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/features',\n body: { features },\n params: { providerKey, providerName },\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { tap } from 'rxjs/operators';\nimport { GetFeatures, UpdateFeatures } from '../actions/feature-management.actions';\nimport { FeatureManagement } from '../models/feature-management';\nimport { FeatureManagementService } from '../services/feature-management.service';\n\n@State({\n name: 'FeatureManagementState',\n defaults: { features: {} } as FeatureManagement.State,\n})\nexport class FeatureManagementState {\n @Selector()\n static getFeatures({ features }: FeatureManagement.State) {\n return features;\n }\n\n constructor(private featureManagementService: FeatureManagementService) {}\n\n @Action(GetFeatures)\n getFeatures({ patchState }: StateContext, { payload }: GetFeatures) {\n return this.featureManagementService.getFeatures(payload).pipe(\n tap(({ features }) =>\n patchState({\n features,\n }),\n ),\n );\n }\n\n @Action(UpdateFeatures)\n updateFeatures(_, { payload }: UpdateFeatures) {\n return this.featureManagementService.updateFeatures(payload);\n }\n}\n","import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { GetFeatures, UpdateFeatures } from '../../actions';\nimport { FeatureManagement } from '../../models/feature-management';\nimport { FeatureManagementState } from '../../states';\nimport { FormGroup, FormControl } from '@angular/forms';\nimport { pluck, tap } from 'rxjs/operators';\n\n@Component({\n selector: 'abp-feature-management',\n templateUrl: './feature-management.component.html',\n})\nexport class FeatureManagementComponent {\n @Input()\n providerKey: string;\n\n @Input()\n providerName: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (value) this.openModal();\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(FeatureManagementState.getFeatures)\n features$: Observable;\n\n modalBusy: boolean = false;\n\n form: FormGroup;\n\n constructor(private store: Store) {}\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.getFeatures();\n }\n\n getFeatures() {\n this.store\n .dispatch(new GetFeatures({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('FeatureManagementState', 'features'))\n .subscribe(features => {\n this.buildForm(features);\n });\n }\n\n buildForm(features) {\n const formGroupObj = {};\n\n for (let i = 0; i < features.length; i++) {\n formGroupObj[i] = new FormControl(features[i].value === 'false' ? null : features[i].value);\n }\n\n this.form = new FormGroup(formGroupObj);\n }\n\n save() {\n this.modalBusy = true;\n\n let features = this.store.selectSnapshot(FeatureManagementState.getFeatures);\n\n features = features.map((feature, i) => ({\n name: feature.name,\n value: !this.form.value[i] || this.form.value[i] === 'false' ? null : this.form.value[i],\n }));\n\n this.store\n .dispatch(\n new UpdateFeatures({\n providerKey: this.providerKey,\n providerName: this.providerName,\n features,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { FeatureManagementComponent } from './components/feature-management/feature-management.component';\nimport { NgxsModule } from '@ngxs/store';\nimport { FeatureManagementState } from './states/feature-management.state';\n\n@NgModule({\n declarations: [FeatureManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([FeatureManagementState])],\n exports: [FeatureManagementComponent],\n})\nexport class FeatureManagementModule {}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/feature-management/lib/root-feature-management.module.d.ts b/npm/ng-packs/dist/feature-management/lib/root-feature-management.module.d.ts deleted file mode 100644 index 03f4c95353..0000000000 --- a/npm/ng-packs/dist/feature-management/lib/root-feature-management.module.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { ModuleWithProviders } from '@angular/core'; -export declare class RootFeatureManagementModule { - static forRoot(): ModuleWithProviders; -} diff --git a/npm/ng-packs/dist/feature-management/public-api.d.ts b/npm/ng-packs/dist/feature-management/public-api.d.ts index a13bb6c526..047ac00914 100644 --- a/npm/ng-packs/dist/feature-management/public-api.d.ts +++ b/npm/ng-packs/dist/feature-management/public-api.d.ts @@ -1,3 +1,2 @@ -export * from './lib/root-feature-management.module'; export * from './lib/feature-management.module'; export * from './lib/components'; diff --git a/npm/ng-packs/dist/identity/abp-ng.identity.metadata.json b/npm/ng-packs/dist/identity/abp-ng.identity.metadata.json index 0a7da7c721..085a6e35a9 100644 --- a/npm/ng-packs/dist/identity/abp-ng.identity.metadata.json +++ b/npm/ng-packs/dist/identity/abp-ng.identity.metadata.json @@ -1 +1 @@ -{"__symbolic":"module","version":4,"exports":[{"from":"./lib/models/identity"}],"metadata":{"RootIdentityModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":2,"character":1},"arguments":[{}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"RootIdentityModule"},"providers":[]}}}},"IdentityModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":14,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"RolesComponent"},{"__symbolic":"reference","name":"ɵb"}],"imports":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"NgxsModule","line":17,"character":4},"member":"forFeature"},"arguments":[[{"__symbolic":"reference","name":"IdentityState"}]]},{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":18,"character":4},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbTabsetModule","line":20,"character":4},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ThemeSharedModule","line":21,"character":4},{"__symbolic":"reference","module":"primeng/table","name":"TableModule","line":22,"character":4},{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbDropdownModule","line":23,"character":4},{"__symbolic":"reference","module":"@abp/ng.permission-management","name":"PermissionManagementModule","line":24,"character":4},{"__symbolic":"reference","module":"@ngx-validate/core","name":"NgxValidateCoreModule","line":25,"character":4},{"__symbolic":"reference","module":"ngx-perfect-scrollbar","name":"PerfectScrollbarModule","line":26,"character":4}]}]}],"members":{}},"GetRoles":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ABP","line":5,"character":31},"member":"PageQueryParams"}]}]},"statics":{"type":"[Identity] Get Roles"}},"GetRoleById":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Identity] Get Role By Id"}},"DeleteRole":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Identity] Delete Role"}},"CreateRole":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵa"},"member":"RoleSaveRequest"}]}]},"statics":{"type":"[Identity] Create Role"}},"UpdateRole":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵa"},"member":"RoleItem"}]}]},"statics":{"type":"[Identity] Update Role"}},"GetUsers":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ABP","line":30,"character":31},"member":"PageQueryParams"}]}]},"statics":{"type":"[Identity] Get Users"}},"GetUserById":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Identity] Get User By Id"}},"DeleteUser":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Identity] Delete User"}},"CreateUser":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵa"},"member":"UserSaveRequest"}]}]},"statics":{"type":"[Identity] Create User"}},"UpdateUser":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":50,"character":30,"module":"./lib/actions/identity.actions"}]}]},"statics":{"type":"[Identity] Update User"}},"GetUserRoles":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Identity] Get User Roles"}},"RolesComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":11,"character":1},"arguments":[{"selector":"abp-roles","template":"
\n
\n
\n
\n
{{ 'AbpIdentity::Roles' | abpLocalization }}
\n
\n
\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n {{ 'AbpIdentity::RoleName' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.name }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewRole') | abpLocalization }}

\n
\n\n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n\n\n"}]}],"members":{"data$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":16,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"IdentityState"},"member":"getRoles"}]}]}],"totalCount$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":19,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"IdentityState"},"member":"getRolesTotalCount"}]}]}],"modalContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":40,"character":3},"arguments":["modalContent",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ConfirmationService","line":43,"character":43},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":43,"character":76},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":43,"character":104}]}],"onSearch":[{"__symbolic":"method"}],"createForm":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"onAdd":[{"__symbolic":"method"}],"onEdit":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}],"delete":[{"__symbolic":"method"}],"onPageChange":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}]}},"IDENTITY_ROUTES":{"routes":[{"name":"AbpUiNavigation::Menu:Administration","path":"","order":1,"wrapper":true},{"name":"AbpIdentity::Menu:IdentityManagement","path":"identity","order":1,"parentName":"AbpUiNavigation::Menu:Administration","layout":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":15,"character":14},"member":"application"},"iconClass":"fa fa-id-card-o","children":[{"path":"roles","name":"AbpIdentity::Roles","order":2,"requiredPolicy":"AbpIdentity.Roles"},{"path":"users","name":"AbpIdentity::Users","order":1,"requiredPolicy":"AbpIdentity.Users"}]}],"settings":[]},"RoleResolver":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":9,"character":29}]}],"resolve":[{"__symbolic":"method"}]}},"IdentityService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.core","name":"RestService","line":9,"character":28}]}],"getRoles":[{"__symbolic":"method"}],"getRoleById":[{"__symbolic":"method"}],"deleteRole":[{"__symbolic":"method"}],"createRole":[{"__symbolic":"method"}],"updateRole":[{"__symbolic":"method"}],"getUsers":[{"__symbolic":"method"}],"getUserById":[{"__symbolic":"method"}],"getUserRoles":[{"__symbolic":"method"}],"deleteUser":[{"__symbolic":"method"}],"createUser":[{"__symbolic":"method"}],"updateUser":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"IdentityState":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":18,"character":1},"arguments":[{"name":"IdentityState","defaults":{"roles":{},"selectedRole":{},"users":{},"selectedUser":{}}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"IdentityService"}]}],"getRoles":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":45,"character":3},"arguments":[{"__symbolic":"reference","name":"GetRoles"}]}]}],"getRole":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":56,"character":3},"arguments":[{"__symbolic":"reference","name":"GetRoleById"}]}]}],"deleteRole":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":67,"character":3},"arguments":[{"__symbolic":"reference","name":"DeleteRole"}]}]}],"addRole":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":72,"character":3},"arguments":[{"__symbolic":"reference","name":"CreateRole"}]}]}],"updateRole":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":77,"character":3},"arguments":[{"__symbolic":"reference","name":"UpdateRole"}]}]}],"getUsers":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":85,"character":3},"arguments":[{"__symbolic":"reference","name":"GetUsers"}]}]}],"getUser":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":96,"character":3},"arguments":[{"__symbolic":"reference","name":"GetUserById"}]}]}],"deleteUser":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":107,"character":3},"arguments":[{"__symbolic":"reference","name":"DeleteUser"}]}]}],"addUser":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":112,"character":3},"arguments":[{"__symbolic":"reference","name":"CreateUser"}]}]}],"updateUser":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":117,"character":3},"arguments":[{"__symbolic":"reference","name":"UpdateUser"}]}]}],"getUserRoles":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":125,"character":3},"arguments":[{"__symbolic":"reference","name":"GetUserRoles"}]}]}]},"statics":{"getRoles":{"__symbolic":"function","parameters":["roles"],"value":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"roles"},"member":"items"}},"getRolesTotalCount":{"__symbolic":"function","parameters":["roles"],"value":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"roles"},"member":"totalCount"}},"getUsers":{"__symbolic":"function","parameters":["users"],"value":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"users"},"member":"items"}},"getUsersTotalCount":{"__symbolic":"function","parameters":["users"],"value":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"users"},"member":"totalCount"}}}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":18,"character":1},"arguments":[{"selector":"abp-users","template":"
\n
\n
\n
\n
{{ 'AbpIdentity::Users' | abpLocalization }}
\n
\n
\n \n {{ 'AbpIdentity::NewUser' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n {{ 'AbpIdentity::UserName' | abpLocalization }}\n {{ 'AbpIdentity::EmailAddress' | abpLocalization }}\n {{ 'AbpIdentity::PhoneNumber' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.userName }}\n {{ data.email }}\n {{ data.phoneNumber }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}

\n
\n\n \n \n
\n \n \n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n
\n
\n\n \n \n {{\n 'AbpIdentity::Save' | abpLocalization\n }}\n \n
\n\n\n"}]}],"members":{"data$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":23,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"IdentityState"},"member":"getUsers"}]}]}],"totalCount$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":26,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"IdentityState"},"member":"getUsersTotalCount"}]}]}],"modalContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":29,"character":3},"arguments":["modalContent",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ConfirmationService","line":60,"character":43},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":60,"character":76},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":60,"character":104}]}],"onSearch":[{"__symbolic":"method"}],"buildForm":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"onAdd":[{"__symbolic":"method"}],"onEdit":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}],"delete":[{"__symbolic":"method"}],"onPageChange":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}]}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":32,"character":1},"arguments":[{"imports":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":33,"character":12},"member":"forChild"},"arguments":[[{"path":"","redirectTo":"roles","pathMatch":"full"},{"path":"roles","component":{"__symbolic":"reference","module":"@abp/ng.core","name":"DynamicLayoutComponent","line":12,"character":15},"canActivate":[{"__symbolic":"reference","module":"@abp/ng.core","name":"AuthGuard","line":13,"character":18},{"__symbolic":"reference","module":"@abp/ng.core","name":"PermissionGuard","line":13,"character":29}],"data":{"requiredPolicy":"AbpIdentity.Roles"},"children":[{"path":"","component":{"__symbolic":"reference","name":"RolesComponent"},"resolve":[{"__symbolic":"reference","name":"RoleResolver"}]}]},{"path":"users","component":{"__symbolic":"reference","module":"@abp/ng.core","name":"DynamicLayoutComponent","line":19,"character":15},"canActivate":[{"__symbolic":"reference","module":"@abp/ng.core","name":"AuthGuard","line":20,"character":18},{"__symbolic":"reference","module":"@abp/ng.core","name":"PermissionGuard","line":20,"character":29}],"data":{"requiredPolicy":"AbpIdentity.Users"},"children":[{"path":"","component":{"__symbolic":"reference","name":"ɵb"},"resolve":[{"__symbolic":"reference","name":"RoleResolver"},{"__symbolic":"reference","name":"ɵd"}]}]}]]}],"exports":[{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":34,"character":12}],"providers":[{"__symbolic":"reference","name":"RoleResolver"},{"__symbolic":"reference","name":"ɵd"}]}]}],"members":{}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":9,"character":29}]}],"resolve":[{"__symbolic":"method"}]}}},"origins":{"RootIdentityModule":"./lib/root-identity.module","IdentityModule":"./lib/identity.module","GetRoles":"./lib/actions/identity.actions","GetRoleById":"./lib/actions/identity.actions","DeleteRole":"./lib/actions/identity.actions","CreateRole":"./lib/actions/identity.actions","UpdateRole":"./lib/actions/identity.actions","GetUsers":"./lib/actions/identity.actions","GetUserById":"./lib/actions/identity.actions","DeleteUser":"./lib/actions/identity.actions","CreateUser":"./lib/actions/identity.actions","UpdateUser":"./lib/actions/identity.actions","GetUserRoles":"./lib/actions/identity.actions","RolesComponent":"./lib/components/roles/roles.component","IDENTITY_ROUTES":"./lib/constants/routes","RoleResolver":"./lib/resolvers/roles.resolver","IdentityService":"./lib/services/identity.service","IdentityState":"./lib/states/identity.state","ɵa":"./lib/models/identity","ɵb":"./lib/components/users/users.component","ɵc":"./lib/identity-routing.module","ɵd":"./lib/resolvers/users.resolver"},"importAs":"@abp/ng.identity"} \ No newline at end of file +{"__symbolic":"module","version":4,"exports":[{"from":"./lib/models/identity"}],"metadata":{"IdentityModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":13,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"RolesComponent"},{"__symbolic":"reference","name":"ɵb"}],"imports":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"NgxsModule","line":16,"character":4},"member":"forFeature"},"arguments":[[{"__symbolic":"reference","name":"IdentityState"}]]},{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":17,"character":4},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbTabsetModule","line":19,"character":4},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ThemeSharedModule","line":20,"character":4},{"__symbolic":"reference","module":"primeng/table","name":"TableModule","line":21,"character":4},{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbDropdownModule","line":22,"character":4},{"__symbolic":"reference","module":"@abp/ng.permission-management","name":"PermissionManagementModule","line":23,"character":4},{"__symbolic":"reference","module":"@ngx-validate/core","name":"NgxValidateCoreModule","line":24,"character":4}]}]}],"members":{}},"IdentityProviders":{"__symbolic":"function","parameters":[],"value":[]},"GetRoles":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ABP","line":5,"character":31},"member":"PageQueryParams"}]}]},"statics":{"type":"[Identity] Get Roles"}},"GetRoleById":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Identity] Get Role By Id"}},"DeleteRole":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Identity] Delete Role"}},"CreateRole":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵa"},"member":"RoleSaveRequest"}]}]},"statics":{"type":"[Identity] Create Role"}},"UpdateRole":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵa"},"member":"RoleItem"}]}]},"statics":{"type":"[Identity] Update Role"}},"GetUsers":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ABP","line":30,"character":31},"member":"PageQueryParams"}]}]},"statics":{"type":"[Identity] Get Users"}},"GetUserById":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Identity] Get User By Id"}},"DeleteUser":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Identity] Delete User"}},"CreateUser":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵa"},"member":"UserSaveRequest"}]}]},"statics":{"type":"[Identity] Create User"}},"UpdateUser":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":50,"character":30,"module":"./lib/actions/identity.actions"}]}]},"statics":{"type":"[Identity] Update User"}},"GetUserRoles":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Identity] Get User Roles"}},"RolesComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":11,"character":1},"arguments":[{"selector":"abp-roles","template":"
\n
\n
\n
\n
{{ 'AbpIdentity::Roles' | abpLocalization }}
\n
\n
\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n {{ 'AbpIdentity::RoleName' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.name }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewRole') | abpLocalization }}

\n
\n\n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n\n\n"}]}],"members":{"data$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":16,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"IdentityState"},"member":"getRoles"}]}]}],"totalCount$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":19,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"IdentityState"},"member":"getRolesTotalCount"}]}]}],"modalContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":40,"character":3},"arguments":["modalContent",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ConfirmationService","line":43,"character":43},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":43,"character":76},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":43,"character":104}]}],"onSearch":[{"__symbolic":"method"}],"createForm":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"onAdd":[{"__symbolic":"method"}],"onEdit":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}],"delete":[{"__symbolic":"method"}],"onPageChange":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}]}},"IDENTITY_ROUTES":{"routes":[{"name":"AbpUiNavigation::Menu:Administration","path":"","order":1,"wrapper":true},{"name":"AbpIdentity::Menu:IdentityManagement","path":"identity","order":1,"parentName":"AbpUiNavigation::Menu:Administration","layout":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":15,"character":14},"member":"application"},"iconClass":"fa fa-id-card-o","children":[{"path":"roles","name":"AbpIdentity::Roles","order":2,"requiredPolicy":"AbpIdentity.Roles"},{"path":"users","name":"AbpIdentity::Users","order":1,"requiredPolicy":"AbpIdentity.Users"}]}],"settings":[]},"RoleResolver":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":9,"character":29}]}],"resolve":[{"__symbolic":"method"}]}},"IdentityService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.core","name":"RestService","line":9,"character":28}]}],"getRoles":[{"__symbolic":"method"}],"getRoleById":[{"__symbolic":"method"}],"deleteRole":[{"__symbolic":"method"}],"createRole":[{"__symbolic":"method"}],"updateRole":[{"__symbolic":"method"}],"getUsers":[{"__symbolic":"method"}],"getUserById":[{"__symbolic":"method"}],"getUserRoles":[{"__symbolic":"method"}],"deleteUser":[{"__symbolic":"method"}],"createUser":[{"__symbolic":"method"}],"updateUser":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"IdentityState":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":18,"character":1},"arguments":[{"name":"IdentityState","defaults":{"roles":{},"selectedRole":{},"users":{},"selectedUser":{}}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"IdentityService"}]}],"getRoles":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":45,"character":3},"arguments":[{"__symbolic":"reference","name":"GetRoles"}]}]}],"getRole":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":56,"character":3},"arguments":[{"__symbolic":"reference","name":"GetRoleById"}]}]}],"deleteRole":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":67,"character":3},"arguments":[{"__symbolic":"reference","name":"DeleteRole"}]}]}],"addRole":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":72,"character":3},"arguments":[{"__symbolic":"reference","name":"CreateRole"}]}]}],"updateRole":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":77,"character":3},"arguments":[{"__symbolic":"reference","name":"UpdateRole"}]}]}],"getUsers":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":85,"character":3},"arguments":[{"__symbolic":"reference","name":"GetUsers"}]}]}],"getUser":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":96,"character":3},"arguments":[{"__symbolic":"reference","name":"GetUserById"}]}]}],"deleteUser":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":107,"character":3},"arguments":[{"__symbolic":"reference","name":"DeleteUser"}]}]}],"addUser":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":112,"character":3},"arguments":[{"__symbolic":"reference","name":"CreateUser"}]}]}],"updateUser":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":117,"character":3},"arguments":[{"__symbolic":"reference","name":"UpdateUser"}]}]}],"getUserRoles":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":125,"character":3},"arguments":[{"__symbolic":"reference","name":"GetUserRoles"}]}]}]},"statics":{"getRoles":{"__symbolic":"function","parameters":["roles"],"value":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"roles"},"member":"items"}},"getRolesTotalCount":{"__symbolic":"function","parameters":["roles"],"value":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"roles"},"member":"totalCount"}},"getUsers":{"__symbolic":"function","parameters":["users"],"value":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"users"},"member":"items"}},"getUsersTotalCount":{"__symbolic":"function","parameters":["users"],"value":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"users"},"member":"totalCount"}}}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":18,"character":1},"arguments":[{"selector":"abp-users","template":"
\n
\n
\n
\n
{{ 'AbpIdentity::Users' | abpLocalization }}
\n
\n
\n \n {{ 'AbpIdentity::NewUser' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n {{ 'AbpIdentity::UserName' | abpLocalization }}\n {{ 'AbpIdentity::EmailAddress' | abpLocalization }}\n {{ 'AbpIdentity::PhoneNumber' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.userName }}\n {{ data.email }}\n {{ data.phoneNumber }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}

\n
\n\n \n
\n \n \n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n
\n\n \n \n {{\n 'AbpIdentity::Save' | abpLocalization\n }}\n \n
\n\n\n"}]}],"members":{"data$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":23,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"IdentityState"},"member":"getUsers"}]}]}],"totalCount$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":26,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"IdentityState"},"member":"getUsersTotalCount"}]}]}],"modalContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":29,"character":3},"arguments":["modalContent",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ConfirmationService","line":60,"character":43},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":60,"character":76},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":60,"character":104}]}],"onSearch":[{"__symbolic":"method"}],"buildForm":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"onAdd":[{"__symbolic":"method"}],"onEdit":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}],"delete":[{"__symbolic":"method"}],"onPageChange":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}]}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":32,"character":1},"arguments":[{"imports":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":33,"character":12},"member":"forChild"},"arguments":[[{"path":"","redirectTo":"roles","pathMatch":"full"},{"path":"roles","component":{"__symbolic":"reference","module":"@abp/ng.core","name":"DynamicLayoutComponent","line":12,"character":15},"canActivate":[{"__symbolic":"reference","module":"@abp/ng.core","name":"AuthGuard","line":13,"character":18},{"__symbolic":"reference","module":"@abp/ng.core","name":"PermissionGuard","line":13,"character":29}],"data":{"requiredPolicy":"AbpIdentity.Roles"},"children":[{"path":"","component":{"__symbolic":"reference","name":"RolesComponent"},"resolve":[{"__symbolic":"reference","name":"RoleResolver"}]}]},{"path":"users","component":{"__symbolic":"reference","module":"@abp/ng.core","name":"DynamicLayoutComponent","line":19,"character":15},"canActivate":[{"__symbolic":"reference","module":"@abp/ng.core","name":"AuthGuard","line":20,"character":18},{"__symbolic":"reference","module":"@abp/ng.core","name":"PermissionGuard","line":20,"character":29}],"data":{"requiredPolicy":"AbpIdentity.Users"},"children":[{"path":"","component":{"__symbolic":"reference","name":"ɵb"},"resolve":[{"__symbolic":"reference","name":"RoleResolver"},{"__symbolic":"reference","name":"ɵd"}]}]}]]}],"exports":[{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":34,"character":12}],"providers":[{"__symbolic":"reference","name":"RoleResolver"},{"__symbolic":"reference","name":"ɵd"}]}]}],"members":{}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":9,"character":29}]}],"resolve":[{"__symbolic":"method"}]}}},"origins":{"IdentityModule":"./lib/identity.module","IdentityProviders":"./lib/identity.module","GetRoles":"./lib/actions/identity.actions","GetRoleById":"./lib/actions/identity.actions","DeleteRole":"./lib/actions/identity.actions","CreateRole":"./lib/actions/identity.actions","UpdateRole":"./lib/actions/identity.actions","GetUsers":"./lib/actions/identity.actions","GetUserById":"./lib/actions/identity.actions","DeleteUser":"./lib/actions/identity.actions","CreateUser":"./lib/actions/identity.actions","UpdateUser":"./lib/actions/identity.actions","GetUserRoles":"./lib/actions/identity.actions","RolesComponent":"./lib/components/roles/roles.component","IDENTITY_ROUTES":"./lib/constants/routes","RoleResolver":"./lib/resolvers/roles.resolver","IdentityService":"./lib/services/identity.service","IdentityState":"./lib/states/identity.state","ɵa":"./lib/models/identity","ɵb":"./lib/components/users/users.component","ɵc":"./lib/identity-routing.module","ɵd":"./lib/resolvers/users.resolver"},"importAs":"@abp/ng.identity"} \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.js b/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.js index 2345708ae8..89e7c72959 100644 --- a/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.js +++ b/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.js @@ -1,8 +1,8 @@ (function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@abp/ng.core'), require('@ngxs/store'), require('@abp/ng.theme.shared'), require('@angular/forms'), require('rxjs'), require('rxjs/operators'), require('@angular/router'), require('snq'), require('@ng-bootstrap/ng-bootstrap'), require('@abp/ng.permission-management'), require('primeng/table'), require('@ngx-validate/core'), require('ngx-perfect-scrollbar')) : - typeof define === 'function' && define.amd ? define('@abp/ng.identity', ['exports', '@angular/core', '@abp/ng.core', '@ngxs/store', '@abp/ng.theme.shared', '@angular/forms', 'rxjs', 'rxjs/operators', '@angular/router', 'snq', '@ng-bootstrap/ng-bootstrap', '@abp/ng.permission-management', 'primeng/table', '@ngx-validate/core', 'ngx-perfect-scrollbar'], factory) : - (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng.identity = {}), global.ng.core, global.ng_core, global.store, global.ng_theme_shared, global.ng.forms, global.rxjs, global.rxjs.operators, global.ng.router, global.snq, global.ngBootstrap, global.ng_permissionManagement, global.table, global.core$1, global.ngxPerfectScrollbar)); -}(this, function (exports, core, ng_core, store, ng_theme_shared, forms, rxjs, operators, router, snq, ngBootstrap, ng_permissionManagement, table, core$1, ngxPerfectScrollbar) { 'use strict'; + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@abp/ng.core'), require('@angular/core'), require('@ngxs/store'), require('@abp/ng.theme.shared'), require('@angular/forms'), require('rxjs'), require('rxjs/operators'), require('@angular/router'), require('snq'), require('@ng-bootstrap/ng-bootstrap'), require('@abp/ng.permission-management'), require('primeng/table'), require('@ngx-validate/core')) : + typeof define === 'function' && define.amd ? define('@abp/ng.identity', ['exports', '@abp/ng.core', '@angular/core', '@ngxs/store', '@abp/ng.theme.shared', '@angular/forms', 'rxjs', 'rxjs/operators', '@angular/router', 'snq', '@ng-bootstrap/ng-bootstrap', '@abp/ng.permission-management', 'primeng/table', '@ngx-validate/core'], factory) : + (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng.identity = {}), global.ng_core, global.ng.core, global.store, global.ng_theme_shared, global.ng.forms, global.rxjs, global.rxjs.operators, global.ng.router, global.snq, global.ngBootstrap, global.ng_permissionManagement, global.table, global.core$1)); +}(this, function (exports, ng_core, core, store, ng_theme_shared, forms, rxjs, operators, router, snq, ngBootstrap, ng_permissionManagement, table, core$1) { 'use strict'; snq = snq && snq.hasOwnProperty('default') ? snq['default'] : snq; @@ -203,31 +203,6 @@ return (mod && mod.__esModule) ? mod : { default: mod }; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var RootIdentityModule = /** @class */ (function () { - function RootIdentityModule() { - } - /** - * @return {?} - */ - RootIdentityModule.forRoot = /** - * @return {?} - */ - function () { - return { - ngModule: RootIdentityModule, - providers: [], - }; - }; - RootIdentityModule.decorators = [ - { type: core.NgModule, args: [{},] } - ]; - return RootIdentityModule; - }()); - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -1484,7 +1459,7 @@ UsersComponent.decorators = [ { type: core.Component, args: [{ selector: 'abp-users', - template: "
\n
\n
\n
\n
{{ 'AbpIdentity::Users' | abpLocalization }}
\n
\n
\n \n {{ 'AbpIdentity::NewUser' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n {{ 'AbpIdentity::UserName' | abpLocalization }}\n {{ 'AbpIdentity::EmailAddress' | abpLocalization }}\n {{ 'AbpIdentity::PhoneNumber' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.userName }}\n {{ data.email }}\n {{ data.phoneNumber }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}

\n
\n\n \n \n
\n \n \n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n
\n
\n\n \n \n {{\n 'AbpIdentity::Save' | abpLocalization\n }}\n \n
\n\n\n" + template: "
\n
\n
\n
\n
{{ 'AbpIdentity::Users' | abpLocalization }}
\n
\n
\n \n {{ 'AbpIdentity::NewUser' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n {{ 'AbpIdentity::UserName' | abpLocalization }}\n {{ 'AbpIdentity::EmailAddress' | abpLocalization }}\n {{ 'AbpIdentity::PhoneNumber' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.userName }}\n {{ data.email }}\n {{ data.phoneNumber }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}

\n
\n\n \n
\n \n \n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n
\n\n \n \n {{\n 'AbpIdentity::Save' | abpLocalization\n }}\n \n
\n\n\n" }] } ]; /** @nocollapse */ @@ -1650,12 +1625,17 @@ ngBootstrap.NgbDropdownModule, ng_permissionManagement.PermissionManagementModule, core$1.NgxValidateCoreModule, - ngxPerfectScrollbar.PerfectScrollbarModule, ], },] } ]; return IdentityModule; }()); + /** + * @return {?} + */ + function IdentityProviders() { + return []; + } /** * @fileoverview added by tsickle @@ -1799,11 +1779,11 @@ exports.GetUsers = GetUsers; exports.IDENTITY_ROUTES = IDENTITY_ROUTES; exports.IdentityModule = IdentityModule; + exports.IdentityProviders = IdentityProviders; exports.IdentityService = IdentityService; exports.IdentityState = IdentityState; exports.RoleResolver = RoleResolver; exports.RolesComponent = RolesComponent; - exports.RootIdentityModule = RootIdentityModule; exports.UpdateRole = UpdateRole; exports.UpdateUser = UpdateUser; exports.ɵb = UsersComponent; diff --git a/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.js.map b/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.js.map index 19475f991f..1c8fb8e6d3 100644 --- a/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.js.map +++ b/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.identity.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.identity/lib/root-identity.module.ts","ng://@abp/ng.identity/lib/actions/identity.actions.ts","ng://@abp/ng.identity/lib/services/identity.service.ts","ng://@abp/ng.identity/lib/states/identity.state.ts","ng://@abp/ng.identity/lib/components/roles/roles.component.ts","ng://@abp/ng.identity/lib/resolvers/roles.resolver.ts","ng://@abp/ng.identity/lib/components/users/users.component.ts","ng://@abp/ng.identity/lib/resolvers/users.resolver.ts","ng://@abp/ng.identity/lib/identity-routing.module.ts","ng://@abp/ng.identity/lib/identity.module.ts","ng://@abp/ng.identity/lib/constants/routes.ts","ng://@abp/ng.identity/lib/models/identity.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootIdentityModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootIdentityModule,\n providers: [],\n };\n }\n}\n","import { Identity } from '../models/identity';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetRoles {\n static readonly type = '[Identity] Get Roles';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetRoleById {\n static readonly type = '[Identity] Get Role By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteRole {\n static readonly type = '[Identity] Delete Role';\n constructor(public payload: string) {}\n}\n\nexport class CreateRole {\n static readonly type = '[Identity] Create Role';\n constructor(public payload: Identity.RoleSaveRequest) {}\n}\n\nexport class UpdateRole {\n static readonly type = '[Identity] Update Role';\n constructor(public payload: Identity.RoleItem) {}\n}\n\nexport class GetUsers {\n static readonly type = '[Identity] Get Users';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetUserById {\n static readonly type = '[Identity] Get User By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteUser {\n static readonly type = '[Identity] Delete User';\n constructor(public payload: string) {}\n}\n\nexport class CreateUser {\n static readonly type = '[Identity] Create User';\n constructor(public payload: Identity.UserSaveRequest) {}\n}\n\nexport class UpdateUser {\n static readonly type = '[Identity] Update User';\n constructor(public payload: Identity.UserSaveRequest & { id: string }) {}\n}\n\nexport class GetUserRoles {\n static readonly type = '[Identity] Get User Roles';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { Identity } from '../models/identity';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class IdentityService {\n constructor(private rest: RestService) {}\n\n getRoles(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/roles',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getRoleById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteRole(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createRole(body: Identity.RoleSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/roles',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateRole(body: Identity.RoleItem): Observable {\n const url = `/api/identity/roles/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getUsers(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/users',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getUserById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n getUserRoles(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}/roles`,\n };\n\n return this.rest.request(request);\n }\n\n deleteUser(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createUser(body: Identity.UserSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/users',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateUser(body: Identity.UserItem): Observable {\n const url = `/api/identity/users/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap, pluck } from 'rxjs/operators';\nimport {\n CreateRole,\n CreateUser,\n DeleteRole,\n DeleteUser,\n GetRoleById,\n GetRoles,\n GetUserById,\n GetUsers,\n UpdateRole,\n UpdateUser,\n GetUserRoles,\n} from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityService } from '../services/identity.service';\n\n@State({\n name: 'IdentityState',\n defaults: { roles: {}, selectedRole: {}, users: {}, selectedUser: {} } as Identity.State,\n})\nexport class IdentityState {\n @Selector()\n static getRoles({ roles }: Identity.State): Identity.RoleItem[] {\n return roles.items;\n }\n\n @Selector()\n static getRolesTotalCount({ roles }: Identity.State): number {\n return roles.totalCount;\n }\n\n @Selector()\n static getUsers({ users }: Identity.State): Identity.UserItem[] {\n return users.items;\n }\n\n @Selector()\n static getUsersTotalCount({ users }: Identity.State): number {\n return users.totalCount;\n }\n\n constructor(private identityService: IdentityService) {}\n\n @Action(GetRoles)\n getRoles({ patchState }: StateContext, { payload }: GetRoles) {\n return this.identityService.getRoles(payload).pipe(\n tap(roles =>\n patchState({\n roles,\n }),\n ),\n );\n }\n\n @Action(GetRoleById)\n getRole({ patchState }: StateContext, { payload }: GetRoleById) {\n return this.identityService.getRoleById(payload).pipe(\n tap(selectedRole =>\n patchState({\n selectedRole,\n }),\n ),\n );\n }\n\n @Action(DeleteRole)\n deleteRole({ dispatch }: StateContext, { payload }: GetRoleById) {\n return this.identityService.deleteRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(CreateRole)\n addRole({ dispatch }: StateContext, { payload }: CreateRole) {\n return this.identityService.createRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(UpdateRole)\n updateRole({ getState, dispatch }: StateContext, { payload }: UpdateRole) {\n return dispatch(new GetRoleById(payload.id)).pipe(\n switchMap(() => this.identityService.updateRole({ ...getState().selectedRole, ...payload })),\n switchMap(() => dispatch(new GetRoles())),\n );\n }\n\n @Action(GetUsers)\n getUsers({ patchState }: StateContext, { payload }: GetUsers) {\n return this.identityService.getUsers(payload).pipe(\n tap(users =>\n patchState({\n users,\n }),\n ),\n );\n }\n\n @Action(GetUserById)\n getUser({ patchState }: StateContext, { payload }: GetUserById) {\n return this.identityService.getUserById(payload).pipe(\n tap(selectedUser =>\n patchState({\n selectedUser,\n }),\n ),\n );\n }\n\n @Action(DeleteUser)\n deleteUser({ dispatch }: StateContext, { payload }: GetUserById) {\n return this.identityService.deleteUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(CreateUser)\n addUser({ dispatch }: StateContext, { payload }: CreateUser) {\n return this.identityService.createUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(UpdateUser)\n updateUser({ getState, dispatch }: StateContext, { payload }: UpdateUser) {\n return dispatch(new GetUserById(payload.id)).pipe(\n switchMap(() => this.identityService.updateUser({ ...getState().selectedUser, ...payload })),\n switchMap(() => dispatch(new GetUsers())),\n );\n }\n\n @Action(GetUserRoles)\n getUserRoles({ patchState }: StateContext, { payload }: GetUserRoles) {\n return this.identityService.getUserRoles(payload).pipe(\n pluck('items'),\n tap(selectedUserRoles =>\n patchState({\n selectedUserRoles,\n }),\n ),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck } from 'rxjs/operators';\nimport { CreateRole, DeleteRole, GetRoleById, GetRoles, UpdateRole } from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n\n@Component({\n selector: 'abp-roles',\n templateUrl: './roles.component.html',\n})\nexport class RolesComponent {\n @Select(IdentityState.getRoles)\n data$: Observable;\n\n @Select(IdentityState.getRolesTotalCount)\n totalCount$: Observable;\n\n form: FormGroup;\n\n selected: Identity.RoleItem;\n\n isModalVisible: boolean;\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n createForm() {\n this.form = this.fb.group({\n name: new FormControl({ value: this.selected.name || '', disabled: this.selected.isStatic }, [\n Validators.required,\n Validators.maxLength(256),\n ]),\n isDefault: [this.selected.isDefault || false],\n isPublic: [this.selected.isPublic || false],\n });\n }\n\n openModal() {\n this.createForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.RoleItem;\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetRoleById(id))\n .pipe(pluck('IdentityState', 'selectedRole'))\n .subscribe(selectedRole => {\n this.selected = selectedRole;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateRole({ ...this.form.value, id: this.selected.id })\n : new CreateRole(this.form.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpIdentity::RoleDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteRole(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetRoles(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetRoles } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class RoleResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const roles = this.store.selectSnapshot(IdentityState.getRoles);\n return roles && roles.length ? null : this.store.dispatch(new GetRoles());\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, TrackByFunction, ViewChild } from '@angular/core';\nimport { AbstractControl, FormArray, FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport {\n CreateUser,\n DeleteUser,\n GetUserById,\n GetUserRoles,\n GetUsers,\n UpdateUser,\n} from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n@Component({\n selector: 'abp-users',\n templateUrl: './users.component.html',\n})\nexport class UsersComponent {\n @Select(IdentityState.getUsers)\n data$: Observable;\n\n @Select(IdentityState.getUsersTotalCount)\n totalCount$: Observable;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n selected: Identity.UserItem;\n\n selectedUserRoles: Identity.RoleItem[];\n\n roles: Identity.RoleItem[];\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'userName',\n };\n\n isModalVisible: boolean;\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (index, item) => Object.keys(item)[0] || index;\n\n get roleGroups(): FormGroup[] {\n return snq(() => (this.form.get('roleNames') as FormArray).controls as FormGroup[], []);\n }\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n buildForm() {\n this.roles = this.store.selectSnapshot(IdentityState.getRoles);\n this.form = this.fb.group({\n userName: [this.selected.userName || '', [Validators.required, Validators.maxLength(256)]],\n email: [this.selected.email || '', [Validators.required, Validators.email, Validators.maxLength(256)]],\n name: [this.selected.name || '', [Validators.maxLength(64)]],\n surname: [this.selected.surname || '', [Validators.maxLength(64)]],\n phoneNumber: [this.selected.phoneNumber || '', [Validators.maxLength(16)]],\n lockoutEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n twoFactorEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n roleNames: this.fb.array(\n this.roles.map(role =>\n this.fb.group({\n [role.name]: [!!snq(() => this.selectedUserRoles.find(userRole => userRole.id === role.id))],\n }),\n ),\n ),\n });\n if (!this.selected.userName) {\n this.form.addControl('password', new FormControl('', [Validators.required, Validators.maxLength(32)]));\n }\n }\n\n openModal() {\n this.buildForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.UserItem;\n this.selectedUserRoles = [] as Identity.RoleItem[];\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetUserById(id))\n .pipe(\n switchMap(() => this.store.dispatch(new GetUserRoles(id))),\n pluck('IdentityState'),\n take(1),\n )\n .subscribe((state: Identity.State) => {\n this.selected = state.selectedUser;\n this.selectedUserRoles = state.selectedUserRoles;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n const { roleNames } = this.form.value;\n const mappedRoleNames = snq(\n () => roleNames.filter(role => !!role[Object.keys(role)[0]]).map(role => Object.keys(role)[0]),\n [],\n );\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateUser({\n ...this.form.value,\n id: this.selected.id,\n roleNames: mappedRoleNames,\n })\n : new CreateUser({\n ...this.form.value,\n roleNames: mappedRoleNames,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, userName: string) {\n this.confirmationService\n .warn('AbpIdentity::UserDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [userName],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteUser(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetUsers(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetUsers } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class UserResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const users = this.store.selectSnapshot(IdentityState.getUsers);\n return users && users.length ? null : this.store.dispatch(new GetUsers());\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { RoleResolver } from './resolvers/roles.resolver';\nimport { DynamicLayoutComponent, AuthGuard, PermissionGuard } from '@abp/ng.core';\nimport { UsersComponent } from './components/users/users.component';\nimport { UserResolver } from './resolvers/users.resolver';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'roles', pathMatch: 'full' },\n {\n path: 'roles',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Roles' },\n children: [{ path: '', component: RolesComponent, resolve: [RoleResolver] }],\n },\n {\n path: 'users',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Users' },\n children: [\n {\n path: '',\n component: UsersComponent,\n resolve: [RoleResolver, UserResolver],\n },\n ],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [RoleResolver, UserResolver],\n})\nexport class IdentityRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { IdentityRoutingModule } from './identity-routing.module';\nimport { IdentityState } from './states/identity.state';\nimport { NgbTabsetModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { UsersComponent } from './components/users/users.component';\nimport { PermissionManagementModule } from '@abp/ng.permission-management';\nimport { TableModule } from 'primeng/table';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\n\n@NgModule({\n declarations: [RolesComponent, UsersComponent],\n imports: [\n NgxsModule.forFeature([IdentityState]),\n CoreModule,\n IdentityRoutingModule,\n NgbTabsetModule,\n ThemeSharedModule,\n TableModule,\n NgbDropdownModule,\n PermissionManagementModule,\n NgxValidateCoreModule,\n PerfectScrollbarModule,\n ],\n})\nexport class IdentityModule {}\n","import { eLayoutType, ABP } from '@abp/ng.core';\n\nexport const IDENTITY_ROUTES = {\n routes: [\n {\n name: 'AbpUiNavigation::Menu:Administration',\n path: '',\n order: 1,\n wrapper: true,\n },\n {\n name: 'AbpIdentity::Menu:IdentityManagement',\n path: 'identity',\n order: 1,\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-id-card-o',\n children: [\n { path: 'roles', name: 'AbpIdentity::Roles', order: 2, requiredPolicy: 'AbpIdentity.Roles' },\n { path: 'users', name: 'AbpIdentity::Users', order: 1, requiredPolicy: 'AbpIdentity.Users' },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","import { ABP } from '@abp/ng.core';\n\nexport namespace Identity {\n export interface State {\n roles: RoleResponse;\n users: UserResponse;\n selectedRole: RoleItem;\n selectedUser: UserItem;\n selectedUserRoles: RoleItem[];\n }\n\n export type RoleResponse = ABP.PagedResponse;\n\n export interface RoleSaveRequest {\n name: string;\n isDefault: boolean;\n isPublic: boolean;\n }\n\n export interface RoleItem extends RoleSaveRequest {\n isStatic: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export type UserResponse = ABP.PagedResponse;\n\n export interface UserItem extends User {\n tenantId: string;\n emailConfirmed: boolean;\n phoneNumberConfirmed: boolean;\n isLockedOut: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export interface User {\n userName: string;\n name: string;\n surname: string;\n email: string;\n phoneNumber: string;\n twoFactorEnabled: true;\n lockoutEnabled: true;\n }\n\n export interface UserSaveRequest extends User {\n password: string;\n roleNames: string[];\n }\n}\n"],"names":["NgModule","Injectable","RestService","tap","switchMap","pluck","tslib_1.__decorate","Action","Selector","State","FormControl","Validators","finalize","Component","ConfirmationService","FormBuilder","Store","ViewChild","Select","Observable","take","DynamicLayoutComponent","AuthGuard","PermissionGuard","RouterModule","NgxsModule","CoreModule","NgbTabsetModule","ThemeSharedModule","TableModule","NgbDropdownModule","PermissionManagementModule","NgxValidateCoreModule","PerfectScrollbarModule"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.identity.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.identity/lib/actions/identity.actions.ts","ng://@abp/ng.identity/lib/services/identity.service.ts","ng://@abp/ng.identity/lib/states/identity.state.ts","ng://@abp/ng.identity/lib/components/roles/roles.component.ts","ng://@abp/ng.identity/lib/resolvers/roles.resolver.ts","ng://@abp/ng.identity/lib/components/users/users.component.ts","ng://@abp/ng.identity/lib/resolvers/users.resolver.ts","ng://@abp/ng.identity/lib/identity-routing.module.ts","ng://@abp/ng.identity/lib/identity.module.ts","ng://@abp/ng.identity/lib/constants/routes.ts","ng://@abp/ng.identity/lib/models/identity.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { Identity } from '../models/identity';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetRoles {\n static readonly type = '[Identity] Get Roles';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetRoleById {\n static readonly type = '[Identity] Get Role By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteRole {\n static readonly type = '[Identity] Delete Role';\n constructor(public payload: string) {}\n}\n\nexport class CreateRole {\n static readonly type = '[Identity] Create Role';\n constructor(public payload: Identity.RoleSaveRequest) {}\n}\n\nexport class UpdateRole {\n static readonly type = '[Identity] Update Role';\n constructor(public payload: Identity.RoleItem) {}\n}\n\nexport class GetUsers {\n static readonly type = '[Identity] Get Users';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetUserById {\n static readonly type = '[Identity] Get User By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteUser {\n static readonly type = '[Identity] Delete User';\n constructor(public payload: string) {}\n}\n\nexport class CreateUser {\n static readonly type = '[Identity] Create User';\n constructor(public payload: Identity.UserSaveRequest) {}\n}\n\nexport class UpdateUser {\n static readonly type = '[Identity] Update User';\n constructor(public payload: Identity.UserSaveRequest & { id: string }) {}\n}\n\nexport class GetUserRoles {\n static readonly type = '[Identity] Get User Roles';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { Identity } from '../models/identity';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class IdentityService {\n constructor(private rest: RestService) {}\n\n getRoles(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/roles',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getRoleById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteRole(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createRole(body: Identity.RoleSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/roles',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateRole(body: Identity.RoleItem): Observable {\n const url = `/api/identity/roles/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getUsers(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/users',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getUserById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n getUserRoles(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}/roles`,\n };\n\n return this.rest.request(request);\n }\n\n deleteUser(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createUser(body: Identity.UserSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/users',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateUser(body: Identity.UserItem): Observable {\n const url = `/api/identity/users/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap, pluck } from 'rxjs/operators';\nimport {\n CreateRole,\n CreateUser,\n DeleteRole,\n DeleteUser,\n GetRoleById,\n GetRoles,\n GetUserById,\n GetUsers,\n UpdateRole,\n UpdateUser,\n GetUserRoles,\n} from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityService } from '../services/identity.service';\n\n@State({\n name: 'IdentityState',\n defaults: { roles: {}, selectedRole: {}, users: {}, selectedUser: {} } as Identity.State,\n})\nexport class IdentityState {\n @Selector()\n static getRoles({ roles }: Identity.State): Identity.RoleItem[] {\n return roles.items;\n }\n\n @Selector()\n static getRolesTotalCount({ roles }: Identity.State): number {\n return roles.totalCount;\n }\n\n @Selector()\n static getUsers({ users }: Identity.State): Identity.UserItem[] {\n return users.items;\n }\n\n @Selector()\n static getUsersTotalCount({ users }: Identity.State): number {\n return users.totalCount;\n }\n\n constructor(private identityService: IdentityService) {}\n\n @Action(GetRoles)\n getRoles({ patchState }: StateContext, { payload }: GetRoles) {\n return this.identityService.getRoles(payload).pipe(\n tap(roles =>\n patchState({\n roles,\n }),\n ),\n );\n }\n\n @Action(GetRoleById)\n getRole({ patchState }: StateContext, { payload }: GetRoleById) {\n return this.identityService.getRoleById(payload).pipe(\n tap(selectedRole =>\n patchState({\n selectedRole,\n }),\n ),\n );\n }\n\n @Action(DeleteRole)\n deleteRole({ dispatch }: StateContext, { payload }: GetRoleById) {\n return this.identityService.deleteRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(CreateRole)\n addRole({ dispatch }: StateContext, { payload }: CreateRole) {\n return this.identityService.createRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(UpdateRole)\n updateRole({ getState, dispatch }: StateContext, { payload }: UpdateRole) {\n return dispatch(new GetRoleById(payload.id)).pipe(\n switchMap(() => this.identityService.updateRole({ ...getState().selectedRole, ...payload })),\n switchMap(() => dispatch(new GetRoles())),\n );\n }\n\n @Action(GetUsers)\n getUsers({ patchState }: StateContext, { payload }: GetUsers) {\n return this.identityService.getUsers(payload).pipe(\n tap(users =>\n patchState({\n users,\n }),\n ),\n );\n }\n\n @Action(GetUserById)\n getUser({ patchState }: StateContext, { payload }: GetUserById) {\n return this.identityService.getUserById(payload).pipe(\n tap(selectedUser =>\n patchState({\n selectedUser,\n }),\n ),\n );\n }\n\n @Action(DeleteUser)\n deleteUser({ dispatch }: StateContext, { payload }: GetUserById) {\n return this.identityService.deleteUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(CreateUser)\n addUser({ dispatch }: StateContext, { payload }: CreateUser) {\n return this.identityService.createUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(UpdateUser)\n updateUser({ getState, dispatch }: StateContext, { payload }: UpdateUser) {\n return dispatch(new GetUserById(payload.id)).pipe(\n switchMap(() => this.identityService.updateUser({ ...getState().selectedUser, ...payload })),\n switchMap(() => dispatch(new GetUsers())),\n );\n }\n\n @Action(GetUserRoles)\n getUserRoles({ patchState }: StateContext, { payload }: GetUserRoles) {\n return this.identityService.getUserRoles(payload).pipe(\n pluck('items'),\n tap(selectedUserRoles =>\n patchState({\n selectedUserRoles,\n }),\n ),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck } from 'rxjs/operators';\nimport { CreateRole, DeleteRole, GetRoleById, GetRoles, UpdateRole } from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n\n@Component({\n selector: 'abp-roles',\n templateUrl: './roles.component.html',\n})\nexport class RolesComponent {\n @Select(IdentityState.getRoles)\n data$: Observable;\n\n @Select(IdentityState.getRolesTotalCount)\n totalCount$: Observable;\n\n form: FormGroup;\n\n selected: Identity.RoleItem;\n\n isModalVisible: boolean;\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n createForm() {\n this.form = this.fb.group({\n name: new FormControl({ value: this.selected.name || '', disabled: this.selected.isStatic }, [\n Validators.required,\n Validators.maxLength(256),\n ]),\n isDefault: [this.selected.isDefault || false],\n isPublic: [this.selected.isPublic || false],\n });\n }\n\n openModal() {\n this.createForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.RoleItem;\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetRoleById(id))\n .pipe(pluck('IdentityState', 'selectedRole'))\n .subscribe(selectedRole => {\n this.selected = selectedRole;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateRole({ ...this.form.value, id: this.selected.id })\n : new CreateRole(this.form.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpIdentity::RoleDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteRole(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetRoles(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetRoles } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class RoleResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const roles = this.store.selectSnapshot(IdentityState.getRoles);\n return roles && roles.length ? null : this.store.dispatch(new GetRoles());\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, TrackByFunction, ViewChild } from '@angular/core';\nimport { AbstractControl, FormArray, FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport {\n CreateUser,\n DeleteUser,\n GetUserById,\n GetUserRoles,\n GetUsers,\n UpdateUser,\n} from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n@Component({\n selector: 'abp-users',\n templateUrl: './users.component.html',\n})\nexport class UsersComponent {\n @Select(IdentityState.getUsers)\n data$: Observable;\n\n @Select(IdentityState.getUsersTotalCount)\n totalCount$: Observable;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n selected: Identity.UserItem;\n\n selectedUserRoles: Identity.RoleItem[];\n\n roles: Identity.RoleItem[];\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'userName',\n };\n\n isModalVisible: boolean;\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (index, item) => Object.keys(item)[0] || index;\n\n get roleGroups(): FormGroup[] {\n return snq(() => (this.form.get('roleNames') as FormArray).controls as FormGroup[], []);\n }\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n buildForm() {\n this.roles = this.store.selectSnapshot(IdentityState.getRoles);\n this.form = this.fb.group({\n userName: [this.selected.userName || '', [Validators.required, Validators.maxLength(256)]],\n email: [this.selected.email || '', [Validators.required, Validators.email, Validators.maxLength(256)]],\n name: [this.selected.name || '', [Validators.maxLength(64)]],\n surname: [this.selected.surname || '', [Validators.maxLength(64)]],\n phoneNumber: [this.selected.phoneNumber || '', [Validators.maxLength(16)]],\n lockoutEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n twoFactorEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n roleNames: this.fb.array(\n this.roles.map(role =>\n this.fb.group({\n [role.name]: [!!snq(() => this.selectedUserRoles.find(userRole => userRole.id === role.id))],\n }),\n ),\n ),\n });\n if (!this.selected.userName) {\n this.form.addControl('password', new FormControl('', [Validators.required, Validators.maxLength(32)]));\n }\n }\n\n openModal() {\n this.buildForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.UserItem;\n this.selectedUserRoles = [] as Identity.RoleItem[];\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetUserById(id))\n .pipe(\n switchMap(() => this.store.dispatch(new GetUserRoles(id))),\n pluck('IdentityState'),\n take(1),\n )\n .subscribe((state: Identity.State) => {\n this.selected = state.selectedUser;\n this.selectedUserRoles = state.selectedUserRoles;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n const { roleNames } = this.form.value;\n const mappedRoleNames = snq(\n () => roleNames.filter(role => !!role[Object.keys(role)[0]]).map(role => Object.keys(role)[0]),\n [],\n );\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateUser({\n ...this.form.value,\n id: this.selected.id,\n roleNames: mappedRoleNames,\n })\n : new CreateUser({\n ...this.form.value,\n roleNames: mappedRoleNames,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, userName: string) {\n this.confirmationService\n .warn('AbpIdentity::UserDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [userName],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteUser(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetUsers(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetUsers } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class UserResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const users = this.store.selectSnapshot(IdentityState.getUsers);\n return users && users.length ? null : this.store.dispatch(new GetUsers());\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { RoleResolver } from './resolvers/roles.resolver';\nimport { DynamicLayoutComponent, AuthGuard, PermissionGuard } from '@abp/ng.core';\nimport { UsersComponent } from './components/users/users.component';\nimport { UserResolver } from './resolvers/users.resolver';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'roles', pathMatch: 'full' },\n {\n path: 'roles',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Roles' },\n children: [{ path: '', component: RolesComponent, resolve: [RoleResolver] }],\n },\n {\n path: 'users',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Users' },\n children: [\n {\n path: '',\n component: UsersComponent,\n resolve: [RoleResolver, UserResolver],\n },\n ],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [RoleResolver, UserResolver],\n})\nexport class IdentityRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { NgModule, Provider } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { IdentityRoutingModule } from './identity-routing.module';\nimport { IdentityState } from './states/identity.state';\nimport { NgbTabsetModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { UsersComponent } from './components/users/users.component';\nimport { PermissionManagementModule } from '@abp/ng.permission-management';\nimport { TableModule } from 'primeng/table';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\n\n@NgModule({\n declarations: [RolesComponent, UsersComponent],\n imports: [\n NgxsModule.forFeature([IdentityState]),\n CoreModule,\n IdentityRoutingModule,\n NgbTabsetModule,\n ThemeSharedModule,\n TableModule,\n NgbDropdownModule,\n PermissionManagementModule,\n NgxValidateCoreModule,\n ],\n})\nexport class IdentityModule {}\n\nexport function IdentityProviders(): Provider[] {\n return [];\n}\n","import { eLayoutType, ABP } from '@abp/ng.core';\n\nexport const IDENTITY_ROUTES = {\n routes: [\n {\n name: 'AbpUiNavigation::Menu:Administration',\n path: '',\n order: 1,\n wrapper: true,\n },\n {\n name: 'AbpIdentity::Menu:IdentityManagement',\n path: 'identity',\n order: 1,\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-id-card-o',\n children: [\n { path: 'roles', name: 'AbpIdentity::Roles', order: 2, requiredPolicy: 'AbpIdentity.Roles' },\n { path: 'users', name: 'AbpIdentity::Users', order: 1, requiredPolicy: 'AbpIdentity.Users' },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","import { ABP } from '@abp/ng.core';\n\nexport namespace Identity {\n export interface State {\n roles: RoleResponse;\n users: UserResponse;\n selectedRole: RoleItem;\n selectedUser: UserItem;\n selectedUserRoles: RoleItem[];\n }\n\n export type RoleResponse = ABP.PagedResponse;\n\n export interface RoleSaveRequest {\n name: string;\n isDefault: boolean;\n isPublic: boolean;\n }\n\n export interface RoleItem extends RoleSaveRequest {\n isStatic: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export type UserResponse = ABP.PagedResponse;\n\n export interface UserItem extends User {\n tenantId: string;\n emailConfirmed: boolean;\n phoneNumberConfirmed: boolean;\n isLockedOut: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export interface User {\n userName: string;\n name: string;\n surname: string;\n email: string;\n phoneNumber: string;\n twoFactorEnabled: true;\n lockoutEnabled: true;\n }\n\n export interface UserSaveRequest extends User {\n password: string;\n roleNames: string[];\n }\n}\n"],"names":["Injectable","RestService","tap","switchMap","pluck","tslib_1.__decorate","Action","Selector","State","FormControl","Validators","finalize","Component","ConfirmationService","FormBuilder","Store","ViewChild","Select","Observable","take","DynamicLayoutComponent","AuthGuard","PermissionGuard","NgModule","RouterModule","NgxsModule","CoreModule","NgbTabsetModule","ThemeSharedModule","TableModule","NgbDropdownModule","PermissionManagementModule","NgxValidateCoreModule"],"mappings":";;;;;;;;IAAA;IACA;IACA;IACA;IACA;;IAEA;IACA;IACA;IACA;;IAEA;IACA;IACA;IACA;;IAEA,IAAI,aAAa,GAAG,SAAS,CAAC,EAAE,CAAC,EAAE;IACnC,IAAI,aAAa,GAAG,MAAM,CAAC,cAAc;IACzC,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;IACpF,QAAQ,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,IAAI,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;;AAEF,IAAO,SAAS,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE;IAChC,IAAI,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxB,IAAI,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE;IAC3C,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;;AAED,IAAO,IAAI,QAAQ,GAAG,WAAW;IACjC,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC,EAAE;IACrD,QAAQ,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;IAC7D,YAAY,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAC7B,YAAY,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACzF,SAAS;IACT,QAAQ,OAAO,CAAC,CAAC;IACjB,MAAK;IACL,IAAI,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,EAAC;;AAED,IAAO,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE;IAC7B,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IACf,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACvF,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;IACvE,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;IAChF,YAAY,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1F,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,SAAS;IACT,IAAI,OAAO,CAAC,CAAC;IACb,CAAC;;AAED,IAAO,SAAS,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE;IAC1D,IAAI,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IACjI,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IACnI,SAAS,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IACtJ,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;;AAED,IAAO,SAAS,OAAO,CAAC,UAAU,EAAE,SAAS,EAAE;IAC/C,IAAI,OAAO,UAAU,MAAM,EAAE,GAAG,EAAE,EAAE,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE;IACzE,CAAC;;AAED,IAAO,SAAS,UAAU,CAAC,WAAW,EAAE,aAAa,EAAE;IACvD,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACnI,CAAC;;AAED,IAAO,SAAS,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE;IAC7D,IAAI,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM,EAAE;IAC/D,QAAQ,SAAS,SAAS,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;IACnG,QAAQ,SAAS,QAAQ,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;IACtG,QAAQ,SAAS,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;IACvJ,QAAQ,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9E,KAAK,CAAC,CAAC;IACP,CAAC;;AAED,IAAO,SAAS,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE;IAC3C,IAAI,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACrH,IAAI,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,WAAW,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC7J,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,OAAO,UAAU,CAAC,EAAE,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACtE,IAAI,SAAS,IAAI,CAAC,EAAE,EAAE;IACtB,QAAQ,IAAI,CAAC,EAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;IACtE,QAAQ,OAAO,CAAC,EAAE,IAAI;IACtB,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACzK,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;IACpD,YAAY,QAAQ,EAAE,CAAC,CAAC,CAAC;IACzB,gBAAgB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM;IAC9C,gBAAgB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACxE,gBAAgB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;IACjE,gBAAgB,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;IACjE,gBAAgB;IAChB,oBAAoB,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE;IAChI,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;IAC1G,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACzF,oBAAoB,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE;IACvF,oBAAoB,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAC1C,oBAAoB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;IAC3C,aAAa;IACb,YAAY,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACvC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;IAClE,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACzF,KAAK;IACL,CAAC;;AAED,IAAO,SAAS,YAAY,CAAC,CAAC,EAAE,OAAO,EAAE;IACzC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC;;AAED,IAAO,SAAS,QAAQ,CAAC,CAAC,EAAE;IAC5B,IAAI,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACtE,IAAI,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5B,IAAI,OAAO;IACX,QAAQ,IAAI,EAAE,YAAY;IAC1B,YAAY,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC;IAC/C,YAAY,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;IACpD,SAAS;IACT,KAAK,CAAC;IACN,CAAC;;AAED,IAAO,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE;IAC7B,IAAI,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC/D,IAAI,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IACrB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACrC,IAAI,IAAI;IACR,QAAQ,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACnF,KAAK;IACL,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;IAC3C,YAAY;IACZ,QAAQ,IAAI;IACZ,YAAY,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7D,SAAS;IACT,gBAAgB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,EAAE;IACzC,KAAK;IACL,IAAI,OAAO,EAAE,CAAC;IACd,CAAC;;AAED,IAAO,SAAS,QAAQ,GAAG;IAC3B,IAAI,KAAK,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;IACtD,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,IAAI,OAAO,EAAE,CAAC;IACd,CAAC;;AAED,IAAO,SAAS,cAAc,GAAG;IACjC,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACxF,IAAI,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;IACpD,QAAQ,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;IACzE,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,OAAO,CAAC,CAAC;IACb,CAAC,CAAC;;AAEF,IAAO,SAAS,OAAO,CAAC,CAAC,EAAE;IAC3B,IAAI,OAAO,IAAI,YAAY,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;;AAED,IAAO,SAAS,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE;IACjE,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;IAC3F,IAAI,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;IAClE,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,YAAY,EAAE,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1H,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,EAAE,EAAE,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;IAC9I,IAAI,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;IACtF,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,YAAY,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;IAC5H,IAAI,SAAS,OAAO,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE;IACtD,IAAI,SAAS,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE;IACtD,IAAI,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;IACtF,CAAC;;AAED,IAAO,SAAS,gBAAgB,CAAC,CAAC,EAAE;IACpC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC;IACb,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,YAAY,EAAE,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChJ,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;IACnJ,CAAC;;AAED,IAAO,SAAS,aAAa,CAAC,CAAC,EAAE;IACjC,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;IAC3F,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACvC,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,YAAY,EAAE,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACrN,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,EAAE,EAAE,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;IACpK,IAAI,SAAS,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE;IAChI,CAAC;;AAED,IAAO,SAAS,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE;IAClD,IAAI,IAAI,MAAM,CAAC,cAAc,EAAE,EAAE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE;IACnH,IAAI,OAAO,MAAM,CAAC;IAClB,CAAC,CAAC;;AAEF,IAAO,SAAS,YAAY,CAAC,GAAG,EAAE;IAClC,IAAI,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU,EAAE,OAAO,GAAG,CAAC;IAC1C,IAAI,IAAI,MAAM,GAAG,EAAE,CAAC;IACpB,IAAI,IAAI,GAAG,IAAI,IAAI,EAAE,KAAK,IAAI,CAAC,IAAI,GAAG,EAAE,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IACnG,IAAI,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC;IACzB,IAAI,OAAO,MAAM,CAAC;IAClB,CAAC;;AAED,IAAO,SAAS,eAAe,CAAC,GAAG,EAAE;IACrC,IAAI,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC5D,CAAC;;;;;;AChMD;QAEE,kBAAmB,OAA6B;YAA7B,YAAO,GAAP,OAAO,CAAsB;SAAI;QADpC,aAAI,GAAG,sBAAsB,CAAC;QAEhD,eAAC;KAHD,IAGC;;;QAFC,cAA8C;;QAClC,2BAAoC;;AAGlD;QAEE,qBAAmB,OAAe;YAAf,YAAO,GAAP,OAAO,CAAQ;SAAI;QADtB,gBAAI,GAAG,2BAA2B,CAAC;QAErD,kBAAC;KAHD,IAGC;;;QAFC,iBAAmD;;QACvC,8BAAsB;;AAGpC;QAEE,oBAAmB,OAAe;YAAf,YAAO,GAAP,OAAO,CAAQ;SAAI;QADtB,eAAI,GAAG,wBAAwB,CAAC;QAElD,iBAAC;KAHD,IAGC;;;QAFC,gBAAgD;;QACpC,6BAAsB;;AAGpC;QAEE,oBAAmB,OAAiC;YAAjC,YAAO,GAAP,OAAO,CAA0B;SAAI;QADxC,eAAI,GAAG,wBAAwB,CAAC;QAElD,iBAAC;KAHD,IAGC;;;QAFC,gBAAgD;;QACpC,6BAAwC;;AAGtD;QAEE,oBAAmB,OAA0B;YAA1B,YAAO,GAAP,OAAO,CAAmB;SAAI;QADjC,eAAI,GAAG,wBAAwB,CAAC;QAElD,iBAAC;KAHD,IAGC;;;QAFC,gBAAgD;;QACpC,6BAAiC;;AAG/C;QAEE,kBAAmB,OAA6B;YAA7B,YAAO,GAAP,OAAO,CAAsB;SAAI;QADpC,aAAI,GAAG,sBAAsB,CAAC;QAEhD,eAAC;KAHD,IAGC;;;QAFC,cAA8C;;QAClC,2BAAoC;;AAGlD;QAEE,qBAAmB,OAAe;YAAf,YAAO,GAAP,OAAO,CAAQ;SAAI;QADtB,gBAAI,GAAG,2BAA2B,CAAC;QAErD,kBAAC;KAHD,IAGC;;;QAFC,iBAAmD;;QACvC,8BAAsB;;AAGpC;QAEE,oBAAmB,OAAe;YAAf,YAAO,GAAP,OAAO,CAAQ;SAAI;QADtB,eAAI,GAAG,wBAAwB,CAAC;QAElD,iBAAC;KAHD,IAGC;;;QAFC,gBAAgD;;QACpC,6BAAsB;;AAGpC;QAEE,oBAAmB,OAAiC;YAAjC,YAAO,GAAP,OAAO,CAA0B;SAAI;QADxC,eAAI,GAAG,wBAAwB,CAAC;QAElD,iBAAC;KAHD,IAGC;;;QAFC,gBAAgD;;QACpC,6BAAwC;;AAGtD;QAEE,oBAAmB,OAAkD;YAAlD,YAAO,GAAP,OAAO,CAA2C;SAAI;QADzD,eAAI,GAAG,wBAAwB,CAAC;QAElD,iBAAC;KAHD,IAGC;;;QAFC,gBAAgD;;QACpC,6BAAyD;;AAGvE;QAEE,sBAAmB,OAAe;YAAf,YAAO,GAAP,OAAO,CAAQ;SAAI;QADtB,iBAAI,GAAG,2BAA2B,CAAC;QAErD,mBAAC;KAHD,IAGC;;;QAFC,kBAAmD;;QACvC,+BAAsB;;;;;;;ACvDpC;QASE,yBAAoB,IAAiB;YAAjB,SAAI,GAAJ,IAAI,CAAa;SAAI;;;;;QAEzC,kCAAQ;;;;QAAR,UAAS,MAAkC;YAAlC,uBAAA,EAAA,4BAAS,EAAE,EAAuB;;gBACnC,OAAO,GAAuB;gBAClC,MAAM,EAAE,KAAK;gBACb,GAAG,EAAE,qBAAqB;gBAC1B,MAAM,QAAA;aACP;YAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA8B,OAAO,CAAC,CAAC;SAChE;;;;;QAED,qCAAW;;;;QAAX,UAAY,EAAU;;gBACd,OAAO,GAAuB;gBAClC,MAAM,EAAE,KAAK;gBACb,GAAG,EAAE,yBAAuB,EAAI;aACjC;YAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA0B,OAAO,CAAC,CAAC;SAC5D;;;;;QAED,oCAAU;;;;QAAV,UAAW,EAAU;;gBACb,OAAO,GAAuB;gBAClC,MAAM,EAAE,QAAQ;gBAChB,GAAG,EAAE,yBAAuB,EAAI;aACjC;YAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA0B,OAAO,CAAC,CAAC;SAC5D;;;;;QAED,oCAAU;;;;QAAV,UAAW,IAA8B;;gBACjC,OAAO,GAA2C;gBACtD,MAAM,EAAE,MAAM;gBACd,GAAG,EAAE,qBAAqB;gBAC1B,IAAI,MAAA;aACL;YAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA8C,OAAO,CAAC,CAAC;SAChF;;;;;QAED,oCAAU;;;;QAAV,UAAW,IAAuB;;gBAC1B,GAAG,GAAG,yBAAuB,IAAI,CAAC,EAAI;YAC5C,OAAO,IAAI,CAAC,EAAE,CAAC;;gBAET,OAAO,GAAoC;gBAC/C,MAAM,EAAE,KAAK;gBACb,GAAG,KAAA;gBACH,IAAI,MAAA;aACL;YAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAuC,OAAO,CAAC,CAAC;SACzE;;;;;QAED,kCAAQ;;;;QAAR,UAAS,MAAkC;YAAlC,uBAAA,EAAA,4BAAS,EAAE,EAAuB;;gBACnC,OAAO,GAAuB;gBAClC,MAAM,EAAE,KAAK;gBACb,GAAG,EAAE,qBAAqB;gBAC1B,MAAM,QAAA;aACP;YAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA8B,OAAO,CAAC,CAAC;SAChE;;;;;QAED,qCAAW;;;;QAAX,UAAY,EAAU;;gBACd,OAAO,GAAuB;gBAClC,MAAM,EAAE,KAAK;gBACb,GAAG,EAAE,yBAAuB,EAAI;aACjC;YAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA0B,OAAO,CAAC,CAAC;SAC5D;;;;;QAED,sCAAY;;;;QAAZ,UAAa,EAAU;;gBACf,OAAO,GAAuB;gBAClC,MAAM,EAAE,KAAK;gBACb,GAAG,EAAE,yBAAuB,EAAE,WAAQ;aACvC;YAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA8B,OAAO,CAAC,CAAC;SAChE;;;;;QAED,oCAAU;;;;QAAV,UAAW,EAAU;;gBACb,OAAO,GAAuB;gBAClC,MAAM,EAAE,QAAQ;gBAChB,GAAG,EAAE,yBAAuB,EAAI;aACjC;YAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAa,OAAO,CAAC,CAAC;SAC/C;;;;;QAED,oCAAU;;;;QAAV,UAAW,IAA8B;;gBACjC,OAAO,GAA2C;gBACtD,MAAM,EAAE,MAAM;gBACd,GAAG,EAAE,qBAAqB;gBAC1B,IAAI,MAAA;aACL;YAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA8C,OAAO,CAAC,CAAC;SAChF;;;;;QAED,oCAAU;;;;QAAV,UAAW,IAAuB;;gBAC1B,GAAG,GAAG,yBAAuB,IAAI,CAAC,EAAI;YAC5C,OAAO,IAAI,CAAC,EAAE,CAAC;;gBAET,OAAO,GAAoC;gBAC/C,MAAM,EAAE,KAAK;gBACb,GAAG,KAAA;gBACH,IAAI,MAAA;aACL;YAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAuC,OAAO,CAAC,CAAC;SACzE;;oBAnHFA,eAAU,SAAC;wBACV,UAAU,EAAE,MAAM;qBACnB;;;;oBALQC,mBAAW;;;8BAFpB;KAKA,IAoHC;;;;;;QAhHa,+BAAyB;;;;;;;;QCkCrC,uBAAoB,eAAgC;YAAhC,oBAAe,GAAf,eAAe,CAAiB;SAAI;;;;;QAnBjD,sBAAQ;;;;QAAf,UAAgB,EAAyB;gBAAvB,gBAAK;YACrB,OAAO,KAAK,CAAC,KAAK,CAAC;SACpB;;;;;QAGM,gCAAkB;;;;QAAzB,UAA0B,EAAyB;gBAAvB,gBAAK;YAC/B,OAAO,KAAK,CAAC,UAAU,CAAC;SACzB;;;;;QAGM,sBAAQ;;;;QAAf,UAAgB,EAAyB;gBAAvB,gBAAK;YACrB,OAAO,KAAK,CAAC,KAAK,CAAC;SACpB;;;;;QAGM,gCAAkB;;;;QAAzB,UAA0B,EAAyB;gBAAvB,gBAAK;YAC/B,OAAO,KAAK,CAAC,UAAU,CAAC;SACzB;;;;;;QAKD,gCAAQ;;;;;QAAR,UAAS,EAA4C,EAAE,EAAqB;gBAAjE,0BAAU;gBAAoC,oBAAO;YAC9D,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAChDC,aAAG;;;;YAAC,UAAA,KAAK;gBACP,OAAA,UAAU,CAAC;oBACT,KAAK,OAAA;iBACN,CAAC;aAAA,EACH,CACF,CAAC;SACH;;;;;;QAGD,+BAAO;;;;;QAAP,UAAQ,EAA4C,EAAE,EAAwB;gBAApE,0BAAU;gBAAoC,oBAAO;YAC7D,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CACnDA,aAAG;;;;YAAC,UAAA,YAAY;gBACd,OAAA,UAAU,CAAC;oBACT,YAAY,cAAA;iBACb,CAAC;aAAA,EACH,CACF,CAAC;SACH;;;;;;QAGD,kCAAU;;;;;QAAV,UAAW,EAA0C,EAAE,EAAwB;gBAAlE,sBAAQ;gBAAoC,oBAAO;YAC9D,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAACC,mBAAS;;;YAAC,cAAM,OAAA,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,GAAA,EAAC,CAAC,CAAC;SACjG;;;;;;QAGD,+BAAO;;;;;QAAP,UAAQ,EAA0C,EAAE,EAAuB;gBAAjE,sBAAQ;gBAAoC,oBAAO;YAC3D,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAACA,mBAAS;;;YAAC,cAAM,OAAA,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,GAAA,EAAC,CAAC,CAAC;SACjG;;;;;;QAGD,kCAAU;;;;;QAAV,UAAW,EAAoD,EAAE,EAAuB;YADxF,iBAMC;gBALY,sBAAQ,EAAE,sBAAQ;gBAAoC,oBAAO;YACxE,OAAO,QAAQ,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAC/CA,mBAAS;;;YAAC,cAAM,OAAA,KAAI,CAAC,eAAe,CAAC,UAAU,cAAM,QAAQ,EAAE,CAAC,YAAY,EAAK,OAAO,EAAG,GAAA,EAAC,EAC5FA,mBAAS;;;YAAC,cAAM,OAAA,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,GAAA,EAAC,CAC1C,CAAC;SACH;;;;;;QAGD,gCAAQ;;;;;QAAR,UAAS,EAA4C,EAAE,EAAqB;gBAAjE,0BAAU;gBAAoC,oBAAO;YAC9D,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAChDD,aAAG;;;;YAAC,UAAA,KAAK;gBACP,OAAA,UAAU,CAAC;oBACT,KAAK,OAAA;iBACN,CAAC;aAAA,EACH,CACF,CAAC;SACH;;;;;;QAGD,+BAAO;;;;;QAAP,UAAQ,EAA4C,EAAE,EAAwB;gBAApE,0BAAU;gBAAoC,oBAAO;YAC7D,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CACnDA,aAAG;;;;YAAC,UAAA,YAAY;gBACd,OAAA,UAAU,CAAC;oBACT,YAAY,cAAA;iBACb,CAAC;aAAA,EACH,CACF,CAAC;SACH;;;;;;QAGD,kCAAU;;;;;QAAV,UAAW,EAA0C,EAAE,EAAwB;gBAAlE,sBAAQ;gBAAoC,oBAAO;YAC9D,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAACC,mBAAS;;;YAAC,cAAM,OAAA,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,GAAA,EAAC,CAAC,CAAC;SACjG;;;;;;QAGD,+BAAO;;;;;QAAP,UAAQ,EAA0C,EAAE,EAAuB;gBAAjE,sBAAQ;gBAAoC,oBAAO;YAC3D,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAACA,mBAAS;;;YAAC,cAAM,OAAA,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,GAAA,EAAC,CAAC,CAAC;SACjG;;;;;;QAGD,kCAAU;;;;;QAAV,UAAW,EAAoD,EAAE,EAAuB;YADxF,iBAMC;gBALY,sBAAQ,EAAE,sBAAQ;gBAAoC,oBAAO;YACxE,OAAO,QAAQ,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAC/CA,mBAAS;;;YAAC,cAAM,OAAA,KAAI,CAAC,eAAe,CAAC,UAAU,cAAM,QAAQ,EAAE,CAAC,YAAY,EAAK,OAAO,EAAG,GAAA,EAAC,EAC5FA,mBAAS;;;YAAC,cAAM,OAAA,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,GAAA,EAAC,CAC1C,CAAC;SACH;;;;;;QAGD,oCAAY;;;;;QAAZ,UAAa,EAA4C,EAAE,EAAyB;gBAArE,0BAAU;gBAAoC,oBAAO;YAClE,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CACpDC,eAAK,CAAC,OAAO,CAAC,EACdF,aAAG;;;;YAAC,UAAA,iBAAiB;gBACnB,OAAA,UAAU,CAAC;oBACT,iBAAiB,mBAAA;iBAClB,CAAC;aAAA,EACH,CACF,CAAC;SACH;QAzFDG;YADCC,YAAM,CAAC,QAAQ,CAAC;;qDACmD,QAAQ;;qDAQ3E;QAGDD;YADCC,YAAM,CAAC,WAAW,CAAC;;qDAC+C,WAAW;;oDAQ7E;QAGDD;YADCC,YAAM,CAAC,UAAU,CAAC;;qDACiD,WAAW;;uDAE9E;QAGDD;YADCC,YAAM,CAAC,UAAU,CAAC;;qDAC8C,UAAU;;oDAE1E;QAGDD;YADCC,YAAM,CAAC,UAAU,CAAC;;qDAC2D,UAAU;;uDAKvF;QAGDD;YADCC,YAAM,CAAC,QAAQ,CAAC;;qDACmD,QAAQ;;qDAQ3E;QAGDD;YADCC,YAAM,CAAC,WAAW,CAAC;;qDAC+C,WAAW;;oDAQ7E;QAGDD;YADCC,YAAM,CAAC,UAAU,CAAC;;qDACiD,WAAW;;uDAE9E;QAGDD;YADCC,YAAM,CAAC,UAAU,CAAC;;qDAC8C,UAAU;;oDAE1E;QAGDD;YADCC,YAAM,CAAC,UAAU,CAAC;;qDAC2D,UAAU;;uDAKvF;QAGDD;YADCC,YAAM,CAAC,YAAY,CAAC;;qDACmD,YAAY;;yDASnF;QA/GDD;YADCE,cAAQ,EAAE;;;;2CAGV;QAGDF;YADCE,cAAQ,EAAE;;;;qDAGV;QAGDF;YADCE,cAAQ,EAAE;;;;2CAGV;QAGDF;YADCE,cAAQ,EAAE;;;;qDAGV;QAnBU,aAAa;YAJzBC,WAAK,CAAiB;gBACrB,IAAI,EAAE,eAAe;gBACrB,QAAQ,qBAAE,EAAE,KAAK,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,EAAkB;aACzF,CAAC;6CAsBqC,eAAe;WArBzC,aAAa,CAkHzB;QAAD,oBAAC;KAAA,IAAA;;;;;;QA7Fa,wCAAwC;;;;;;;;QCApD,wBAAoB,mBAAwC,EAAU,EAAe,EAAU,KAAY;YAAvF,wBAAmB,GAAnB,mBAAmB,CAAqB;YAAU,OAAE,GAAF,EAAE,CAAa;YAAU,UAAK,GAAL,KAAK,CAAO;YAf3G,uBAAkB,GAAY,KAAK,CAAC;YAIpC,cAAS,GAAwB;gBAC/B,OAAO,EAAE,MAAM;aAChB,CAAC;YAEF,YAAO,GAAY,KAAK,CAAC;YAEzB,cAAS,GAAY,KAAK,CAAC;SAKoF;;;;;QAE/G,iCAAQ;;;;QAAR,UAAS,KAAK;YACZ,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,KAAK,CAAC;YAC9B,IAAI,CAAC,GAAG,EAAE,CAAC;SACZ;;;;QAED,mCAAU;;;QAAV;YACE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;gBACxB,IAAI,EAAE,IAAIC,iBAAW,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE;oBAC3FC,gBAAU,CAAC,QAAQ;oBACnBA,gBAAU,CAAC,SAAS,CAAC,GAAG,CAAC;iBAC1B,CAAC;gBACF,SAAS,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,KAAK,CAAC;gBAC7C,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,KAAK,CAAC;aAC5C,CAAC,CAAC;SACJ;;;;QAED,kCAAS;;;QAAT;YACE,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;SAC5B;;;;QAED,8BAAK;;;QAAL;YACE,IAAI,CAAC,QAAQ,sBAAG,EAAE,EAAqB,CAAC;YACxC,IAAI,CAAC,SAAS,EAAE,CAAC;SAClB;;;;;QAED,+BAAM;;;;QAAN,UAAO,EAAU;YAAjB,iBAQC;YAPC,IAAI,CAAC,KAAK;iBACP,QAAQ,CAAC,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;iBAC7B,IAAI,CAACN,eAAK,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;iBAC5C,SAAS;;;;YAAC,UAAA,YAAY;gBACrB,KAAI,CAAC,QAAQ,GAAG,YAAY,CAAC;gBAC7B,KAAI,CAAC,SAAS,EAAE,CAAC;aAClB,EAAC,CAAC;SACN;;;;QAED,6BAAI;;;QAAJ;YAAA,iBAcC;YAbC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;gBAAE,OAAO;YAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YAEtB,IAAI,CAAC,KAAK;iBACP,QAAQ,CACP,IAAI,CAAC,QAAQ,CAAC,EAAE;kBACZ,IAAI,UAAU,cAAM,IAAI,CAAC,IAAI,CAAC,KAAK,IAAE,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAG;kBAC5D,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CACpC;iBACA,SAAS;;;YAAC;gBACT,KAAI,CAAC,SAAS,GAAG,KAAK,CAAC;gBACvB,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;aAC7B,EAAC,CAAC;SACN;;;;;;QAED,+BAAM;;;;;QAAN,UAAO,EAAU,EAAE,IAAY;YAA/B,iBAUC;YATC,IAAI,CAAC,mBAAmB;iBACrB,IAAI,CAAC,8CAA8C,EAAE,yBAAyB,EAAE;gBAC/E,yBAAyB,EAAE,CAAC,IAAI,CAAC;aAClC,CAAC;iBACD,SAAS;;;;YAAC,UAAC,MAAsB;gBAChC,IAAI,MAAM,8BAA6B;oBACrC,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;iBACzC;aACF,EAAC,CAAC;SACN;;;;;QAED,qCAAY;;;;QAAZ,UAAa,IAAI;YACf,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;YACtC,IAAI,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC;YAE1C,IAAI,CAAC,GAAG,EAAE,CAAC;SACZ;;;;QAED,4BAAG;;;QAAH;YAAA,iBAMC;YALC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,KAAK;iBACP,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBACtC,IAAI,CAACO,kBAAQ;;;YAAC,cAAM,QAAC,KAAI,CAAC,OAAO,GAAG,KAAK,IAAC,EAAC,CAAC;iBAC5C,SAAS,EAAE,CAAC;SAChB;;oBA/GFC,cAAS,SAAC;wBACT,QAAQ,EAAE,WAAW;wBACrB,yzIAAqC;qBACtC;;;;oBAbQC,mCAAmB;oBAEnBC,iBAAW;oBACHC,WAAK;;;mCAoCnBC,cAAS,SAAC,cAAc,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;;QAvB5CX;YADCY,YAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;sCACxBC,eAAU;qDAAsB;QAGvCb;YADCY,YAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC;sCAC5BC,eAAU;2DAAS;QAuGlC,qBAAC;KAhHD,IAgHC;;;QA3GC,+BACuC;;QAEvC,qCACgC;;QAEhC,8BAAgB;;QAEhB,kCAA4B;;QAE5B,wCAAwB;;QAExB,4CAAoC;;QAEpC,qCAAoB;;QAEpB,mCAEE;;QAEF,iCAAyB;;QAEzB,mCAA2B;;QAE3B,sCAC+B;;;;;QAEnB,6CAAgD;;;;;QAAE,4BAAuB;;;;;QAAE,+BAAoB;;;;;;;AC3C7G;QASE,sBAAoB,KAAY;YAAZ,UAAK,GAAL,KAAK,CAAO;SAAI;;;;QAEpC,8BAAO;;;QAAP;;gBACQ,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC;YAC/D,OAAO,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;SAC3E;;oBAPFlB,eAAU;;;;oBALFe,WAAK;;QAad,mBAAC;KARD,IAQC;;;;;;QANa,6BAAoB;;;;;;;;QCmDhC,wBAAoB,mBAAwC,EAAU,EAAe,EAAU,KAAY;YAAvF,wBAAmB,GAAnB,mBAAmB,CAAqB;YAAU,OAAE,GAAF,EAAE,CAAa;YAAU,UAAK,GAAL,KAAK,CAAO;YApB3G,uBAAkB,GAAY,KAAK,CAAC;YAIpC,cAAS,GAAwB;gBAC/B,OAAO,EAAE,UAAU;aACpB,CAAC;YAIF,YAAO,GAAY,KAAK,CAAC;YAEzB,cAAS,GAAY,KAAK,CAAC;YAE3B,cAAS;;;;;YAAqC,UAAC,KAAK,EAAE,IAAI,IAAK,OAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,GAAA,EAAC;SAMkB;QAJ/G,sBAAI,sCAAU;;;;YAAd;gBAAA,iBAEC;gBADC,OAAO,GAAG;;;gBAAC,wCAAM,oBAAC,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAe,QAAQ,KAAe,GAAE,EAAE,CAAC,CAAC;aACzF;;;WAAA;;;;;QAID,iCAAQ;;;;QAAR,UAAS,KAAK;YACZ,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,KAAK,CAAC;YAC9B,IAAI,CAAC,GAAG,EAAE,CAAC;SACZ;;;;QAED,kCAAS;;;QAAT;YAAA,iBAqBC;YApBC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC/D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;gBACxB,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,EAAE,EAAE,CAACL,gBAAU,CAAC,QAAQ,EAAEA,gBAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC1F,KAAK,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,EAAE,CAACA,gBAAU,CAAC,QAAQ,EAAEA,gBAAU,CAAC,KAAK,EAAEA,gBAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;gBACtG,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,EAAE,CAACA,gBAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC5D,OAAO,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,EAAE,CAACA,gBAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;gBAClE,WAAW,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE,EAAE,CAACA,gBAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC1E,cAAc,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,KAAK,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC;gBACrF,gBAAgB,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,KAAK,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC;gBACvF,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CACtB,IAAI,CAAC,KAAK,CAAC,GAAG;;;;gBAAC,UAAA,IAAI;;oBACjB,OAAA,KAAI,CAAC,EAAE,CAAC,KAAK;wBACX,GAAC,IAAI,CAAC,IAAI,IAAG,CAAC,CAAC,CAAC,GAAG;;;4BAAC,cAAM,OAAA,KAAI,CAAC,iBAAiB,CAAC,IAAI;;;;4BAAC,UAAA,QAAQ,IAAI,OAAA,QAAQ,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,GAAA,EAAC,GAAA,EAAC,CAAC;4BAC5F;iBAAA,EACH,CACF;aACF,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;gBAC3B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,IAAID,iBAAW,CAAC,EAAE,EAAE,CAACC,gBAAU,CAAC,QAAQ,EAAEA,gBAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;aACxG;SACF;;;;QAED,kCAAS;;;QAAT;YACE,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;SAC5B;;;;QAED,8BAAK;;;QAAL;YACE,IAAI,CAAC,QAAQ,sBAAG,EAAE,EAAqB,CAAC;YACxC,IAAI,CAAC,iBAAiB,sBAAG,EAAE,EAAuB,CAAC;YACnD,IAAI,CAAC,SAAS,EAAE,CAAC;SAClB;;;;;QAED,+BAAM;;;;QAAN,UAAO,EAAU;YAAjB,iBAaC;YAZC,IAAI,CAAC,KAAK;iBACP,QAAQ,CAAC,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;iBAC7B,IAAI,CACHP,mBAAS;;;YAAC,cAAM,OAAA,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC,GAAA,EAAC,EAC1DC,eAAK,CAAC,eAAe,CAAC,EACtBe,cAAI,CAAC,CAAC,CAAC,CACR;iBACA,SAAS;;;;YAAC,UAAC,KAAqB;gBAC/B,KAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC;gBACnC,KAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAC;gBACjD,KAAI,CAAC,SAAS,EAAE,CAAC;aAClB,EAAC,CAAC;SACN;;;;QAED,6BAAI;;;QAAJ;YAAA,iBA2BC;YA1BC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;gBAAE,OAAO;YAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YAEd,IAAA,qCAAS;;gBACX,eAAe,GAAG,GAAG;;;YACzB,cAAM,OAAA,SAAS,CAAC,MAAM;;;;YAAC,UAAA,IAAI,IAAI,OAAA,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAA,EAAC,CAAC,GAAG;;;;YAAC,UAAA,IAAI,IAAI,OAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAA,EAAC,GAAA,GAC9F,EAAE,CACH;YAED,IAAI,CAAC,KAAK;iBACP,QAAQ,CACP,IAAI,CAAC,QAAQ,CAAC,EAAE;kBACZ,IAAI,UAAU,cACT,IAAI,CAAC,IAAI,CAAC,KAAK,IAClB,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EACpB,SAAS,EAAE,eAAe,IAC1B;kBACF,IAAI,UAAU,cACT,IAAI,CAAC,IAAI,CAAC,KAAK,IAClB,SAAS,EAAE,eAAe,IAC1B,CACP;iBACA,SAAS;;;YAAC;gBACT,KAAI,CAAC,SAAS,GAAG,KAAK,CAAC;gBACvB,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;aAC7B,EAAC,CAAC;SACN;;;;;;QAED,+BAAM;;;;;QAAN,UAAO,EAAU,EAAE,QAAgB;YAAnC,iBAUC;YATC,IAAI,CAAC,mBAAmB;iBACrB,IAAI,CAAC,8CAA8C,EAAE,yBAAyB,EAAE;gBAC/E,yBAAyB,EAAE,CAAC,QAAQ,CAAC;aACtC,CAAC;iBACD,SAAS;;;;YAAC,UAAC,MAAsB;gBAChC,IAAI,MAAM,8BAA6B;oBACrC,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;iBACzC;aACF,EAAC,CAAC;SACN;;;;;QAED,qCAAY;;;;QAAZ,UAAa,IAAI;YACf,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;YACtC,IAAI,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC;YAE1C,IAAI,CAAC,GAAG,EAAE,CAAC;SACZ;;;;QAED,4BAAG;;;QAAH;YAAA,iBAMC;YALC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,KAAK;iBACP,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBACtC,IAAI,CAACR,kBAAQ;;;YAAC,cAAM,QAAC,KAAI,CAAC,OAAO,GAAG,KAAK,IAAC,EAAC,CAAC;iBAC5C,SAAS,EAAE,CAAC;SAChB;;oBAxJFC,cAAS,SAAC;wBACT,QAAQ,EAAE,WAAW;wBACrB,kuPAAqC;qBACtC;;;;oBApBQC,mCAAmB;oBAESC,iBAAW;oBAC/BC,WAAK;;;mCAyBnBC,cAAS,SAAC,cAAc,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;;QAL5CX;YADCY,YAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;sCACxBC,eAAU;qDAAsB;QAGvCb;YADCY,YAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC;sCAC5BC,eAAU;2DAAS;QAgJlC,qBAAC;KAzJD,IAyJC;;;QApJC,+BACuC;;QAEvC,qCACgC;;QAEhC,sCAC+B;;QAE/B,8BAAgB;;QAEhB,kCAA4B;;QAE5B,2CAAuC;;QAEvC,+BAA2B;;QAE3B,4CAAoC;;QAEpC,qCAAoB;;QAEpB,mCAEE;;QAEF,wCAAwB;;QAExB,iCAAyB;;QAEzB,mCAA2B;;QAE3B,mCAA6F;;;;;QAMjF,6CAAgD;;;;;QAAE,4BAAuB;;;;;QAAE,+BAAoB;;;;;;;AC5D7G;QASE,sBAAoB,KAAY;YAAZ,UAAK,GAAL,KAAK,CAAO;SAAI;;;;QAEpC,8BAAO;;;QAAP;;gBACQ,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC;YAC/D,OAAO,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;SAC3E;;oBAPFlB,eAAU;;;;oBALFe,WAAK;;QAad,mBAAC;KARD,IAQC;;;;;;QANa,6BAAoB;;;;;;;ICTlC,SAcU,EAAE,cAAc,EAAE,mBAAmB,EAAE,OAOvC,EAAE,cAAc,EAAE,mBAAmB,EAAE;;QAb3C,MAAM,GAAW;QACrB,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE;QACpD;YACE,IAAI,EAAE,OAAO;YACb,SAAS,EAAEK,8BAAsB;YACjC,WAAW,EAAE,CAACC,iBAAS,EAAEC,uBAAe,CAAC;YACzC,IAAI,IAAyC;YAC7C,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;SAC7E;QACD;YACE,IAAI,EAAE,OAAO;YACb,SAAS,EAAEF,8BAAsB;YACjC,WAAW,EAAE,CAACC,iBAAS,EAAEC,uBAAe,CAAC;YACzC,IAAI,IAAyC;YAC7C,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,EAAE;oBACR,SAAS,EAAE,cAAc;oBACzB,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;iBACtC;aACF;SACF;KACF;AAED;QAAA;SAKqC;;oBALpCC,aAAQ,SAAC;wBACR,OAAO,EAAE,CAACC,mBAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;wBACxC,OAAO,EAAE,CAACA,mBAAY,CAAC;wBACvB,SAAS,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;qBACxC;;QACmC,4BAAC;KALrC;;;;;;AChCA;QAaA;SAc8B;;oBAd7BD,aAAQ,SAAC;wBACR,YAAY,EAAE,CAAC,cAAc,EAAE,cAAc,CAAC;wBAC9C,OAAO,EAAE;4BACPE,gBAAU,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC,CAAC;4BACtCC,kBAAU;4BACV,qBAAqB;4BACrBC,2BAAe;4BACfC,iCAAiB;4BACjBC,iBAAW;4BACXC,6BAAiB;4BACjBC,kDAA0B;4BAC1BC,4BAAqB;yBACtB;qBACF;;QAC4B,qBAAC;KAd9B,IAc8B;;;;IAE9B,SAAgB,iBAAiB;QAC/B,OAAO,EAAE,CAAC;KACX;;;;;;;AC7BD,QAAa,eAAe,GAAG;QAC7B,MAAM,qBAAE;YACN;gBACE,IAAI,EAAE,sCAAsC;gBAC5C,IAAI,EAAE,EAAE;gBACR,KAAK,EAAE,CAAC;gBACR,OAAO,EAAE,IAAI;aACd;YACD;gBACE,IAAI,EAAE,sCAAsC;gBAC5C,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,CAAC;gBACR,UAAU,EAAE,sCAAsC;gBAClD,MAAM;gBACN,SAAS,EAAE,iBAAiB;gBAC5B,QAAQ,EAAE;oBACR,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,cAAc,EAAE,mBAAmB,EAAE;oBAC5F,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,cAAc,EAAE,mBAAmB,EAAE;iBAC7F;aACF;SACF,EAAmB;QACpB,QAAQ,EAAE,EAAE;KACb;;;;;;ICtBD,IAAiB,QAAQ,CAgDxB;IAhDD,WAAiB,QAAQ;;;;QACvB,oBAMC;;;;YALC,sBAAoB;;YACpB,sBAAoB;;YACpB,6BAAuB;;YACvB,6BAAuB;;YACvB,kCAA8B;;;;;QAKhC,8BAIC;;;;YAHC,+BAAa;;YACb,oCAAmB;;YACnB,mCAAkB;;;;;QAGpB,uBAIC;;;;YAHC,4BAAkB;;YAClB,oCAAyB;;YACzB,sBAAW;;;;;QAKb,uBAOC;;;;YANC,4BAAiB;;YACjB,kCAAwB;;YACxB,wCAA8B;;YAC9B,+BAAqB;;YACrB,oCAAyB;;YACzB,sBAAW;;;;;QAGb,mBAQC;;;;YAPC,wBAAiB;;YACjB,oBAAa;;YACb,uBAAgB;;YAChB,qBAAc;;YACd,2BAAoB;;YACpB,gCAAuB;;YACvB,8BAAqB;;;;;QAGvB,8BAGC;;;;YAFC,mCAAiB;;YACjB,oCAAoB;;KAEvB,EAhDgB,QAAQ,KAAR,QAAQ,QAgDxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.min.js b/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.min.js index d838ed8ca1..32104c073d 100644 --- a/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.min.js +++ b/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.min.js @@ -1,2 +1,2 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@abp/ng.core"),require("@ngxs/store"),require("@abp/ng.theme.shared"),require("@angular/forms"),require("rxjs"),require("rxjs/operators"),require("@angular/router"),require("snq"),require("@ng-bootstrap/ng-bootstrap"),require("@abp/ng.permission-management"),require("primeng/table"),require("@ngx-validate/core"),require("ngx-perfect-scrollbar")):"function"==typeof define&&define.amd?define("@abp/ng.identity",["exports","@angular/core","@abp/ng.core","@ngxs/store","@abp/ng.theme.shared","@angular/forms","rxjs","rxjs/operators","@angular/router","snq","@ng-bootstrap/ng-bootstrap","@abp/ng.permission-management","primeng/table","@ngx-validate/core","ngx-perfect-scrollbar"],t):t(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng.identity={}),e.ng.core,e.ng_core,e.store,e.ng_theme_shared,e.ng.forms,e.rxjs,e.rxjs.operators,e.ng.router,e.snq,e.ngBootstrap,e.ng_permissionManagement,e.table,e.core$1,e.ngxPerfectScrollbar)}(this,function(e,t,n,o,r,i,a,s,l,p,d,c,u,b,y){"use strict";p=p&&p.hasOwnProperty("default")?p.default:p;var m=function(){return(m=Object.assign||function(e){for(var t,n=1,o=arguments.length;n=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,n,a):r(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}function g(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}var h=function(){function e(){}return e.forRoot=function(){return{ngModule:e,providers:[]}},e.decorators=[{type:t.NgModule,args:[{}]}],e}(),v=function(){function e(e){this.payload=e}return e.type="[Identity] Get Roles",e}();var I=function(){function e(e){this.payload=e}return e.type="[Identity] Get Role By Id",e}();var R=function(){function e(e){this.payload=e}return e.type="[Identity] Delete Role",e}();var w=function(){function e(e){this.payload=e}return e.type="[Identity] Create Role",e}();var A=function(){function e(e){this.payload=e}return e.type="[Identity] Update Role",e}();var U=function(){function e(e){this.payload=e}return e.type="[Identity] Get Users",e}();var S=function(){function e(e){this.payload=e}return e.type="[Identity] Get User By Id",e}();var C=function(){function e(e){this.payload=e}return e.type="[Identity] Delete User",e}();var N=function(){function e(e){this.payload=e}return e.type="[Identity] Create User",e}();var L=function(){function e(e){this.payload=e}return e.type="[Identity] Update User",e}();var x=function(){function e(e){this.payload=e}return e.type="[Identity] Get User Roles",e}();var z=function(){function e(e){this.rest=e}return e.prototype.getRoles=function(e){void 0===e&&(e={});var t={method:"GET",url:"/api/identity/roles",params:e};return this.rest.request(t)},e.prototype.getRoleById=function(e){var t={method:"GET",url:"/api/identity/roles/"+e};return this.rest.request(t)},e.prototype.deleteRole=function(e){var t={method:"DELETE",url:"/api/identity/roles/"+e};return this.rest.request(t)},e.prototype.createRole=function(e){var t={method:"POST",url:"/api/identity/roles",body:e};return this.rest.request(t)},e.prototype.updateRole=function(e){var t="/api/identity/roles/"+e.id;delete e.id;var n={method:"PUT",url:t,body:e};return this.rest.request(n)},e.prototype.getUsers=function(e){void 0===e&&(e={});var t={method:"GET",url:"/api/identity/users",params:e};return this.rest.request(t)},e.prototype.getUserById=function(e){var t={method:"GET",url:"/api/identity/users/"+e};return this.rest.request(t)},e.prototype.getUserRoles=function(e){var t={method:"GET",url:"/api/identity/users/"+e+"/roles"};return this.rest.request(t)},e.prototype.deleteUser=function(e){var t={method:"DELETE",url:"/api/identity/users/"+e};return this.rest.request(t)},e.prototype.createUser=function(e){var t={method:"POST",url:"/api/identity/users",body:e};return this.rest.request(t)},e.prototype.updateUser=function(e){var t="/api/identity/users/"+e.id;delete e.id;var n={method:"PUT",url:t,body:e};return this.rest.request(n)},e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:n.RestService}]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e(t.ɵɵinject(n.RestService))},token:e,providedIn:"root"}),e}();var M=function(){function e(e){this.identityService=e}return e.getRoles=function(e){return e.roles.items},e.getRolesTotalCount=function(e){return e.roles.totalCount},e.getUsers=function(e){return e.users.items},e.getUsersTotalCount=function(e){return e.users.totalCount},e.prototype.getRoles=function(e,t){var n=e.patchState,o=t.payload;return this.identityService.getRoles(o).pipe(s.tap(function(e){return n({roles:e})}))},e.prototype.getRole=function(e,t){var n=e.patchState,o=t.payload;return this.identityService.getRoleById(o).pipe(s.tap(function(e){return n({selectedRole:e})}))},e.prototype.deleteRole=function(e,t){var n=e.dispatch,o=t.payload;return this.identityService.deleteRole(o).pipe(s.switchMap(function(){return n(new v)}))},e.prototype.addRole=function(e,t){var n=e.dispatch,o=t.payload;return this.identityService.createRole(o).pipe(s.switchMap(function(){return n(new v)}))},e.prototype.updateRole=function(e,t){var n=this,o=e.getState,r=e.dispatch,i=t.payload;return r(new I(i.id)).pipe(s.switchMap(function(){return n.identityService.updateRole(m({},o().selectedRole,i))}),s.switchMap(function(){return r(new v)}))},e.prototype.getUsers=function(e,t){var n=e.patchState,o=t.payload;return this.identityService.getUsers(o).pipe(s.tap(function(e){return n({users:e})}))},e.prototype.getUser=function(e,t){var n=e.patchState,o=t.payload;return this.identityService.getUserById(o).pipe(s.tap(function(e){return n({selectedUser:e})}))},e.prototype.deleteUser=function(e,t){var n=e.dispatch,o=t.payload;return this.identityService.deleteUser(o).pipe(s.switchMap(function(){return n(new U)}))},e.prototype.addUser=function(e,t){var n=e.dispatch,o=t.payload;return this.identityService.createUser(o).pipe(s.switchMap(function(){return n(new U)}))},e.prototype.updateUser=function(e,t){var n=this,o=e.getState,r=e.dispatch,i=t.payload;return r(new S(i.id)).pipe(s.switchMap(function(){return n.identityService.updateUser(m({},o().selectedUser,i))}),s.switchMap(function(){return r(new U)}))},e.prototype.getUserRoles=function(e,t){var n=e.patchState,o=t.payload;return this.identityService.getUserRoles(o).pipe(s.pluck("items"),s.tap(function(e){return n({selectedUserRoles:e})}))},f([o.Action(v),g("design:type",Function),g("design:paramtypes",[Object,v]),g("design:returntype",void 0)],e.prototype,"getRoles",null),f([o.Action(I),g("design:type",Function),g("design:paramtypes",[Object,I]),g("design:returntype",void 0)],e.prototype,"getRole",null),f([o.Action(R),g("design:type",Function),g("design:paramtypes",[Object,I]),g("design:returntype",void 0)],e.prototype,"deleteRole",null),f([o.Action(w),g("design:type",Function),g("design:paramtypes",[Object,w]),g("design:returntype",void 0)],e.prototype,"addRole",null),f([o.Action(A),g("design:type",Function),g("design:paramtypes",[Object,A]),g("design:returntype",void 0)],e.prototype,"updateRole",null),f([o.Action(U),g("design:type",Function),g("design:paramtypes",[Object,U]),g("design:returntype",void 0)],e.prototype,"getUsers",null),f([o.Action(S),g("design:type",Function),g("design:paramtypes",[Object,S]),g("design:returntype",void 0)],e.prototype,"getUser",null),f([o.Action(C),g("design:type",Function),g("design:paramtypes",[Object,S]),g("design:returntype",void 0)],e.prototype,"deleteUser",null),f([o.Action(N),g("design:type",Function),g("design:paramtypes",[Object,N]),g("design:returntype",void 0)],e.prototype,"addUser",null),f([o.Action(L),g("design:type",Function),g("design:paramtypes",[Object,L]),g("design:returntype",void 0)],e.prototype,"updateUser",null),f([o.Action(x),g("design:type",Function),g("design:paramtypes",[Object,x]),g("design:returntype",void 0)],e.prototype,"getUserRoles",null),f([o.Selector(),g("design:type",Function),g("design:paramtypes",[Object]),g("design:returntype",Array)],e,"getRoles",null),f([o.Selector(),g("design:type",Function),g("design:paramtypes",[Object]),g("design:returntype",Number)],e,"getRolesTotalCount",null),f([o.Selector(),g("design:type",Function),g("design:paramtypes",[Object]),g("design:returntype",Array)],e,"getUsers",null),f([o.Selector(),g("design:type",Function),g("design:paramtypes",[Object]),g("design:returntype",Number)],e,"getUsersTotalCount",null),e=f([o.State({name:"IdentityState",defaults:{roles:{},selectedRole:{},users:{},selectedUser:{}}}),g("design:paramtypes",[z])],e)}();var P=function(){function e(e,t,n){this.confirmationService=e,this.fb=t,this.store=n,this.visiblePermissions=!1,this.pageQuery={sorting:"name"},this.loading=!1,this.modalBusy=!1}return e.prototype.onSearch=function(e){this.pageQuery.filter=e,this.get()},e.prototype.createForm=function(){this.form=this.fb.group({name:new i.FormControl({value:this.selected.name||"",disabled:this.selected.isStatic},[i.Validators.required,i.Validators.maxLength(256)]),isDefault:[this.selected.isDefault||!1],isPublic:[this.selected.isPublic||!1]})},e.prototype.openModal=function(){this.createForm(),this.isModalVisible=!0},e.prototype.onAdd=function(){this.selected={},this.openModal()},e.prototype.onEdit=function(e){var t=this;this.store.dispatch(new I(e)).pipe(s.pluck("IdentityState","selectedRole")).subscribe(function(e){t.selected=e,t.openModal()})},e.prototype.save=function(){var e=this;this.form.valid&&(this.modalBusy=!0,this.store.dispatch(this.selected.id?new A(m({},this.form.value,{id:this.selected.id})):new w(this.form.value)).subscribe(function(){e.modalBusy=!1,e.isModalVisible=!1}))},e.prototype.delete=function(e,t){var n=this;this.confirmationService.warn("AbpIdentity::RoleDeletionConfirmationMessage","AbpIdentity::AreYouSure",{messageLocalizationParams:[t]}).subscribe(function(t){"confirm"===t&&n.store.dispatch(new R(e))})},e.prototype.onPageChange=function(e){this.pageQuery.skipCount=e.first,this.pageQuery.maxResultCount=e.rows,this.get()},e.prototype.get=function(){var e=this;this.loading=!0,this.store.dispatch(new v(this.pageQuery)).pipe(s.finalize(function(){return e.loading=!1})).subscribe()},e.decorators=[{type:t.Component,args:[{selector:"abp-roles",template:'
\n
\n
\n
\n
{{ \'AbpIdentity::Roles\' | abpLocalization }}
\n
\n
\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ \'AbpIdentity::Actions\' | abpLocalization }}\n {{ \'AbpIdentity::RoleName\' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ \'AbpIdentity::Actions\' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.name }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? \'AbpIdentity::Edit\' : \'AbpIdentity::NewRole\') | abpLocalization }}

\n
\n\n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n\n \n \n {{ \'AbpIdentity::Save\' | abpLocalization }}\n \n
\n\n\n'}]}],e.ctorParameters=function(){return[{type:r.ConfirmationService},{type:i.FormBuilder},{type:o.Store}]},e.propDecorators={modalContent:[{type:t.ViewChild,args:["modalContent",{static:!1}]}]},f([o.Select(M.getRoles),g("design:type",a.Observable)],e.prototype,"data$",void 0),f([o.Select(M.getRolesTotalCount),g("design:type",a.Observable)],e.prototype,"totalCount$",void 0),e}();var k=function(){function e(e){this.store=e}return e.prototype.resolve=function(){var e=this.store.selectSnapshot(M.getRoles);return e&&e.length?null:this.store.dispatch(new v)},e.decorators=[{type:t.Injectable}],e.ctorParameters=function(){return[{type:o.Store}]},e}();var D=function(){function e(e,t,n){this.confirmationService=e,this.fb=t,this.store=n,this.visiblePermissions=!1,this.pageQuery={sorting:"userName"},this.loading=!1,this.modalBusy=!1,this.trackByFn=function(e,t){return Object.keys(t)[0]||e}}return Object.defineProperty(e.prototype,"roleGroups",{get:function(){var e=this;return p(function(){return e.form.get("roleNames").controls},[])},enumerable:!0,configurable:!0}),e.prototype.onSearch=function(e){this.pageQuery.filter=e,this.get()},e.prototype.buildForm=function(){var e=this;this.roles=this.store.selectSnapshot(M.getRoles),this.form=this.fb.group({userName:[this.selected.userName||"",[i.Validators.required,i.Validators.maxLength(256)]],email:[this.selected.email||"",[i.Validators.required,i.Validators.email,i.Validators.maxLength(256)]],name:[this.selected.name||"",[i.Validators.maxLength(64)]],surname:[this.selected.surname||"",[i.Validators.maxLength(64)]],phoneNumber:[this.selected.phoneNumber||"",[i.Validators.maxLength(16)]],lockoutEnabled:[this.selected.twoFactorEnabled||!this.selected.id],twoFactorEnabled:[this.selected.twoFactorEnabled||!this.selected.id],roleNames:this.fb.array(this.roles.map(function(t){var n;return e.fb.group(((n={})[t.name]=[!!p(function(){return e.selectedUserRoles.find(function(e){return e.id===t.id})})],n))}))}),this.selected.userName||this.form.addControl("password",new i.FormControl("",[i.Validators.required,i.Validators.maxLength(32)]))},e.prototype.openModal=function(){this.buildForm(),this.isModalVisible=!0},e.prototype.onAdd=function(){this.selected={},this.selectedUserRoles=[],this.openModal()},e.prototype.onEdit=function(e){var t=this;this.store.dispatch(new S(e)).pipe(s.switchMap(function(){return t.store.dispatch(new x(e))}),s.pluck("IdentityState"),s.take(1)).subscribe(function(e){t.selected=e.selectedUser,t.selectedUserRoles=e.selectedUserRoles,t.openModal()})},e.prototype.save=function(){var e=this;if(this.form.valid){this.modalBusy=!0;var t=this.form.value.roleNames,n=p(function(){return t.filter(function(e){return!!e[Object.keys(e)[0]]}).map(function(e){return Object.keys(e)[0]})},[]);this.store.dispatch(this.selected.id?new L(m({},this.form.value,{id:this.selected.id,roleNames:n})):new N(m({},this.form.value,{roleNames:n}))).subscribe(function(){e.modalBusy=!1,e.isModalVisible=!1})}},e.prototype.delete=function(e,t){var n=this;this.confirmationService.warn("AbpIdentity::UserDeletionConfirmationMessage","AbpIdentity::AreYouSure",{messageLocalizationParams:[t]}).subscribe(function(t){"confirm"===t&&n.store.dispatch(new C(e))})},e.prototype.onPageChange=function(e){this.pageQuery.skipCount=e.first,this.pageQuery.maxResultCount=e.rows,this.get()},e.prototype.get=function(){var e=this;this.loading=!0,this.store.dispatch(new U(this.pageQuery)).pipe(s.finalize(function(){return e.loading=!1})).subscribe()},e.decorators=[{type:t.Component,args:[{selector:"abp-users",template:'
\n
\n
\n
\n
{{ \'AbpIdentity::Users\' | abpLocalization }}
\n
\n
\n \n {{ \'AbpIdentity::NewUser\' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ \'AbpIdentity::Actions\' | abpLocalization }}\n {{ \'AbpIdentity::UserName\' | abpLocalization }}\n {{ \'AbpIdentity::EmailAddress\' | abpLocalization }}\n {{ \'AbpIdentity::PhoneNumber\' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ \'AbpIdentity::Actions\' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.userName }}\n {{ data.email }}\n {{ data.phoneNumber }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? \'AbpIdentity::Edit\' : \'AbpIdentity::NewUser\') | abpLocalization }}

\n
\n\n \n \n
\n \n \n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n
\n
\n\n \n \n {{\n \'AbpIdentity::Save\' | abpLocalization\n }}\n \n
\n\n\n'}]}],e.ctorParameters=function(){return[{type:r.ConfirmationService},{type:i.FormBuilder},{type:o.Store}]},e.propDecorators={modalContent:[{type:t.ViewChild,args:["modalContent",{static:!1}]}]},f([o.Select(M.getUsers),g("design:type",a.Observable)],e.prototype,"data$",void 0),f([o.Select(M.getUsersTotalCount),g("design:type",a.Observable)],e.prototype,"totalCount$",void 0),e}();var j=function(){function e(e){this.store=e}return e.prototype.resolve=function(){var e=this.store.selectSnapshot(M.getUsers);return e&&e.length?null:this.store.dispatch(new U)},e.decorators=[{type:t.Injectable}],e.ctorParameters=function(){return[{type:o.Store}]},e}();var q,O=[{path:"",redirectTo:"roles",pathMatch:"full"},{path:"roles",component:n.DynamicLayoutComponent,canActivate:[n.AuthGuard,n.PermissionGuard],data:{requiredPolicy:"AbpIdentity.Roles"},children:[{path:"",component:P,resolve:[k]}]},{path:"users",component:n.DynamicLayoutComponent,canActivate:[n.AuthGuard,n.PermissionGuard],data:{requiredPolicy:"AbpIdentity.Users"},children:[{path:"",component:D,resolve:[k,j]}]}],F=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[l.RouterModule.forChild(O)],exports:[l.RouterModule],providers:[k,j]}]}],e}(),T=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{declarations:[P,D],imports:[o.NgxsModule.forFeature([M]),n.CoreModule,F,d.NgbTabsetModule,r.ThemeSharedModule,u.TableModule,d.NgbDropdownModule,c.PermissionManagementModule,b.NgxValidateCoreModule,y.PerfectScrollbarModule]}]}],e}();!function(e){function t(){}function n(){}function o(){}function r(){}function i(){}function a(){}e.State=t,e.RoleSaveRequest=n,e.RoleItem=o,e.UserItem=r,e.User=i,e.UserSaveRequest=a}(q||(q={})),e.CreateRole=w,e.CreateUser=N,e.DeleteRole=R,e.DeleteUser=C,e.GetRoleById=I,e.GetRoles=v,e.GetUserById=S,e.GetUserRoles=x,e.GetUsers=U,e.IDENTITY_ROUTES={routes:[{name:"AbpUiNavigation::Menu:Administration",path:"",order:1,wrapper:!0},{name:"AbpIdentity::Menu:IdentityManagement",path:"identity",order:1,parentName:"AbpUiNavigation::Menu:Administration",layout:"application",iconClass:"fa fa-id-card-o",children:[{path:"roles",name:"AbpIdentity::Roles",order:2,requiredPolicy:"AbpIdentity.Roles"},{path:"users",name:"AbpIdentity::Users",order:1,requiredPolicy:"AbpIdentity.Users"}]}],settings:[]},e.IdentityModule=T,e.IdentityService=z,e.IdentityState=M,e.RoleResolver=k,e.RolesComponent=P,e.RootIdentityModule=h,e.UpdateRole=A,e.UpdateUser=L,e.ɵb=D,e.ɵc=F,e.ɵd=j,Object.defineProperty(e,"__esModule",{value:!0})}); +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@abp/ng.core"),require("@angular/core"),require("@ngxs/store"),require("@abp/ng.theme.shared"),require("@angular/forms"),require("rxjs"),require("rxjs/operators"),require("@angular/router"),require("snq"),require("@ng-bootstrap/ng-bootstrap"),require("@abp/ng.permission-management"),require("primeng/table"),require("@ngx-validate/core")):"function"==typeof define&&define.amd?define("@abp/ng.identity",["exports","@abp/ng.core","@angular/core","@ngxs/store","@abp/ng.theme.shared","@angular/forms","rxjs","rxjs/operators","@angular/router","snq","@ng-bootstrap/ng-bootstrap","@abp/ng.permission-management","primeng/table","@ngx-validate/core"],t):t(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng.identity={}),e.ng_core,e.ng.core,e.store,e.ng_theme_shared,e.ng.forms,e.rxjs,e.rxjs.operators,e.ng.router,e.snq,e.ngBootstrap,e.ng_permissionManagement,e.table,e.core$1)}(this,function(e,t,n,o,r,i,a,s,l,p,d,c,u,b){"use strict";p=p&&p.hasOwnProperty("default")?p.default:p;var y=function(){return(y=Object.assign||function(e){for(var t,n=1,o=arguments.length;n=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,n,a):r(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}function f(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}var h=function(){function e(e){this.payload=e}return e.type="[Identity] Get Roles",e}();var g=function(){function e(e){this.payload=e}return e.type="[Identity] Get Role By Id",e}();var v=function(){function e(e){this.payload=e}return e.type="[Identity] Delete Role",e}();var I=function(){function e(e){this.payload=e}return e.type="[Identity] Create Role",e}();var A=function(){function e(e){this.payload=e}return e.type="[Identity] Update Role",e}();var R=function(){function e(e){this.payload=e}return e.type="[Identity] Get Users",e}();var w=function(){function e(e){this.payload=e}return e.type="[Identity] Get User By Id",e}();var U=function(){function e(e){this.payload=e}return e.type="[Identity] Delete User",e}();var S=function(){function e(e){this.payload=e}return e.type="[Identity] Create User",e}();var C=function(){function e(e){this.payload=e}return e.type="[Identity] Update User",e}();var L=function(){function e(e){this.payload=e}return e.type="[Identity] Get User Roles",e}();var N=function(){function e(e){this.rest=e}return e.prototype.getRoles=function(e){void 0===e&&(e={});var t={method:"GET",url:"/api/identity/roles",params:e};return this.rest.request(t)},e.prototype.getRoleById=function(e){var t={method:"GET",url:"/api/identity/roles/"+e};return this.rest.request(t)},e.prototype.deleteRole=function(e){var t={method:"DELETE",url:"/api/identity/roles/"+e};return this.rest.request(t)},e.prototype.createRole=function(e){var t={method:"POST",url:"/api/identity/roles",body:e};return this.rest.request(t)},e.prototype.updateRole=function(e){var t="/api/identity/roles/"+e.id;delete e.id;var n={method:"PUT",url:t,body:e};return this.rest.request(n)},e.prototype.getUsers=function(e){void 0===e&&(e={});var t={method:"GET",url:"/api/identity/users",params:e};return this.rest.request(t)},e.prototype.getUserById=function(e){var t={method:"GET",url:"/api/identity/users/"+e};return this.rest.request(t)},e.prototype.getUserRoles=function(e){var t={method:"GET",url:"/api/identity/users/"+e+"/roles"};return this.rest.request(t)},e.prototype.deleteUser=function(e){var t={method:"DELETE",url:"/api/identity/users/"+e};return this.rest.request(t)},e.prototype.createUser=function(e){var t={method:"POST",url:"/api/identity/users",body:e};return this.rest.request(t)},e.prototype.updateUser=function(e){var t="/api/identity/users/"+e.id;delete e.id;var n={method:"PUT",url:t,body:e};return this.rest.request(n)},e.decorators=[{type:n.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:t.RestService}]},e.ngInjectableDef=n.ɵɵdefineInjectable({factory:function(){return new e(n.ɵɵinject(t.RestService))},token:e,providedIn:"root"}),e}();var z=function(){function e(e){this.identityService=e}return e.getRoles=function(e){return e.roles.items},e.getRolesTotalCount=function(e){return e.roles.totalCount},e.getUsers=function(e){return e.users.items},e.getUsersTotalCount=function(e){return e.users.totalCount},e.prototype.getRoles=function(e,t){var n=e.patchState,o=t.payload;return this.identityService.getRoles(o).pipe(s.tap(function(e){return n({roles:e})}))},e.prototype.getRole=function(e,t){var n=e.patchState,o=t.payload;return this.identityService.getRoleById(o).pipe(s.tap(function(e){return n({selectedRole:e})}))},e.prototype.deleteRole=function(e,t){var n=e.dispatch,o=t.payload;return this.identityService.deleteRole(o).pipe(s.switchMap(function(){return n(new h)}))},e.prototype.addRole=function(e,t){var n=e.dispatch,o=t.payload;return this.identityService.createRole(o).pipe(s.switchMap(function(){return n(new h)}))},e.prototype.updateRole=function(e,t){var n=this,o=e.getState,r=e.dispatch,i=t.payload;return r(new g(i.id)).pipe(s.switchMap(function(){return n.identityService.updateRole(y({},o().selectedRole,i))}),s.switchMap(function(){return r(new h)}))},e.prototype.getUsers=function(e,t){var n=e.patchState,o=t.payload;return this.identityService.getUsers(o).pipe(s.tap(function(e){return n({users:e})}))},e.prototype.getUser=function(e,t){var n=e.patchState,o=t.payload;return this.identityService.getUserById(o).pipe(s.tap(function(e){return n({selectedUser:e})}))},e.prototype.deleteUser=function(e,t){var n=e.dispatch,o=t.payload;return this.identityService.deleteUser(o).pipe(s.switchMap(function(){return n(new R)}))},e.prototype.addUser=function(e,t){var n=e.dispatch,o=t.payload;return this.identityService.createUser(o).pipe(s.switchMap(function(){return n(new R)}))},e.prototype.updateUser=function(e,t){var n=this,o=e.getState,r=e.dispatch,i=t.payload;return r(new w(i.id)).pipe(s.switchMap(function(){return n.identityService.updateUser(y({},o().selectedUser,i))}),s.switchMap(function(){return r(new R)}))},e.prototype.getUserRoles=function(e,t){var n=e.patchState,o=t.payload;return this.identityService.getUserRoles(o).pipe(s.pluck("items"),s.tap(function(e){return n({selectedUserRoles:e})}))},m([o.Action(h),f("design:type",Function),f("design:paramtypes",[Object,h]),f("design:returntype",void 0)],e.prototype,"getRoles",null),m([o.Action(g),f("design:type",Function),f("design:paramtypes",[Object,g]),f("design:returntype",void 0)],e.prototype,"getRole",null),m([o.Action(v),f("design:type",Function),f("design:paramtypes",[Object,g]),f("design:returntype",void 0)],e.prototype,"deleteRole",null),m([o.Action(I),f("design:type",Function),f("design:paramtypes",[Object,I]),f("design:returntype",void 0)],e.prototype,"addRole",null),m([o.Action(A),f("design:type",Function),f("design:paramtypes",[Object,A]),f("design:returntype",void 0)],e.prototype,"updateRole",null),m([o.Action(R),f("design:type",Function),f("design:paramtypes",[Object,R]),f("design:returntype",void 0)],e.prototype,"getUsers",null),m([o.Action(w),f("design:type",Function),f("design:paramtypes",[Object,w]),f("design:returntype",void 0)],e.prototype,"getUser",null),m([o.Action(U),f("design:type",Function),f("design:paramtypes",[Object,w]),f("design:returntype",void 0)],e.prototype,"deleteUser",null),m([o.Action(S),f("design:type",Function),f("design:paramtypes",[Object,S]),f("design:returntype",void 0)],e.prototype,"addUser",null),m([o.Action(C),f("design:type",Function),f("design:paramtypes",[Object,C]),f("design:returntype",void 0)],e.prototype,"updateUser",null),m([o.Action(L),f("design:type",Function),f("design:paramtypes",[Object,L]),f("design:returntype",void 0)],e.prototype,"getUserRoles",null),m([o.Selector(),f("design:type",Function),f("design:paramtypes",[Object]),f("design:returntype",Array)],e,"getRoles",null),m([o.Selector(),f("design:type",Function),f("design:paramtypes",[Object]),f("design:returntype",Number)],e,"getRolesTotalCount",null),m([o.Selector(),f("design:type",Function),f("design:paramtypes",[Object]),f("design:returntype",Array)],e,"getUsers",null),m([o.Selector(),f("design:type",Function),f("design:paramtypes",[Object]),f("design:returntype",Number)],e,"getUsersTotalCount",null),e=m([o.State({name:"IdentityState",defaults:{roles:{},selectedRole:{},users:{},selectedUser:{}}}),f("design:paramtypes",[N])],e)}();var x=function(){function e(e,t,n){this.confirmationService=e,this.fb=t,this.store=n,this.visiblePermissions=!1,this.pageQuery={sorting:"name"},this.loading=!1,this.modalBusy=!1}return e.prototype.onSearch=function(e){this.pageQuery.filter=e,this.get()},e.prototype.createForm=function(){this.form=this.fb.group({name:new i.FormControl({value:this.selected.name||"",disabled:this.selected.isStatic},[i.Validators.required,i.Validators.maxLength(256)]),isDefault:[this.selected.isDefault||!1],isPublic:[this.selected.isPublic||!1]})},e.prototype.openModal=function(){this.createForm(),this.isModalVisible=!0},e.prototype.onAdd=function(){this.selected={},this.openModal()},e.prototype.onEdit=function(e){var t=this;this.store.dispatch(new g(e)).pipe(s.pluck("IdentityState","selectedRole")).subscribe(function(e){t.selected=e,t.openModal()})},e.prototype.save=function(){var e=this;this.form.valid&&(this.modalBusy=!0,this.store.dispatch(this.selected.id?new A(y({},this.form.value,{id:this.selected.id})):new I(this.form.value)).subscribe(function(){e.modalBusy=!1,e.isModalVisible=!1}))},e.prototype.delete=function(e,t){var n=this;this.confirmationService.warn("AbpIdentity::RoleDeletionConfirmationMessage","AbpIdentity::AreYouSure",{messageLocalizationParams:[t]}).subscribe(function(t){"confirm"===t&&n.store.dispatch(new v(e))})},e.prototype.onPageChange=function(e){this.pageQuery.skipCount=e.first,this.pageQuery.maxResultCount=e.rows,this.get()},e.prototype.get=function(){var e=this;this.loading=!0,this.store.dispatch(new h(this.pageQuery)).pipe(s.finalize(function(){return e.loading=!1})).subscribe()},e.decorators=[{type:n.Component,args:[{selector:"abp-roles",template:'
\n
\n
\n
\n
{{ \'AbpIdentity::Roles\' | abpLocalization }}
\n
\n
\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ \'AbpIdentity::Actions\' | abpLocalization }}\n {{ \'AbpIdentity::RoleName\' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ \'AbpIdentity::Actions\' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.name }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? \'AbpIdentity::Edit\' : \'AbpIdentity::NewRole\') | abpLocalization }}

\n
\n\n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n\n \n \n {{ \'AbpIdentity::Save\' | abpLocalization }}\n \n
\n\n\n'}]}],e.ctorParameters=function(){return[{type:r.ConfirmationService},{type:i.FormBuilder},{type:o.Store}]},e.propDecorators={modalContent:[{type:n.ViewChild,args:["modalContent",{static:!1}]}]},m([o.Select(z.getRoles),f("design:type",a.Observable)],e.prototype,"data$",void 0),m([o.Select(z.getRolesTotalCount),f("design:type",a.Observable)],e.prototype,"totalCount$",void 0),e}();var P=function(){function e(e){this.store=e}return e.prototype.resolve=function(){var e=this.store.selectSnapshot(z.getRoles);return e&&e.length?null:this.store.dispatch(new h)},e.decorators=[{type:n.Injectable}],e.ctorParameters=function(){return[{type:o.Store}]},e}();var k=function(){function e(e,t,n){this.confirmationService=e,this.fb=t,this.store=n,this.visiblePermissions=!1,this.pageQuery={sorting:"userName"},this.loading=!1,this.modalBusy=!1,this.trackByFn=function(e,t){return Object.keys(t)[0]||e}}return Object.defineProperty(e.prototype,"roleGroups",{get:function(){var e=this;return p(function(){return e.form.get("roleNames").controls},[])},enumerable:!0,configurable:!0}),e.prototype.onSearch=function(e){this.pageQuery.filter=e,this.get()},e.prototype.buildForm=function(){var e=this;this.roles=this.store.selectSnapshot(z.getRoles),this.form=this.fb.group({userName:[this.selected.userName||"",[i.Validators.required,i.Validators.maxLength(256)]],email:[this.selected.email||"",[i.Validators.required,i.Validators.email,i.Validators.maxLength(256)]],name:[this.selected.name||"",[i.Validators.maxLength(64)]],surname:[this.selected.surname||"",[i.Validators.maxLength(64)]],phoneNumber:[this.selected.phoneNumber||"",[i.Validators.maxLength(16)]],lockoutEnabled:[this.selected.twoFactorEnabled||!this.selected.id],twoFactorEnabled:[this.selected.twoFactorEnabled||!this.selected.id],roleNames:this.fb.array(this.roles.map(function(t){var n;return e.fb.group(((n={})[t.name]=[!!p(function(){return e.selectedUserRoles.find(function(e){return e.id===t.id})})],n))}))}),this.selected.userName||this.form.addControl("password",new i.FormControl("",[i.Validators.required,i.Validators.maxLength(32)]))},e.prototype.openModal=function(){this.buildForm(),this.isModalVisible=!0},e.prototype.onAdd=function(){this.selected={},this.selectedUserRoles=[],this.openModal()},e.prototype.onEdit=function(e){var t=this;this.store.dispatch(new w(e)).pipe(s.switchMap(function(){return t.store.dispatch(new L(e))}),s.pluck("IdentityState"),s.take(1)).subscribe(function(e){t.selected=e.selectedUser,t.selectedUserRoles=e.selectedUserRoles,t.openModal()})},e.prototype.save=function(){var e=this;if(this.form.valid){this.modalBusy=!0;var t=this.form.value.roleNames,n=p(function(){return t.filter(function(e){return!!e[Object.keys(e)[0]]}).map(function(e){return Object.keys(e)[0]})},[]);this.store.dispatch(this.selected.id?new C(y({},this.form.value,{id:this.selected.id,roleNames:n})):new S(y({},this.form.value,{roleNames:n}))).subscribe(function(){e.modalBusy=!1,e.isModalVisible=!1})}},e.prototype.delete=function(e,t){var n=this;this.confirmationService.warn("AbpIdentity::UserDeletionConfirmationMessage","AbpIdentity::AreYouSure",{messageLocalizationParams:[t]}).subscribe(function(t){"confirm"===t&&n.store.dispatch(new U(e))})},e.prototype.onPageChange=function(e){this.pageQuery.skipCount=e.first,this.pageQuery.maxResultCount=e.rows,this.get()},e.prototype.get=function(){var e=this;this.loading=!0,this.store.dispatch(new R(this.pageQuery)).pipe(s.finalize(function(){return e.loading=!1})).subscribe()},e.decorators=[{type:n.Component,args:[{selector:"abp-users",template:'
\n
\n
\n
\n
{{ \'AbpIdentity::Users\' | abpLocalization }}
\n
\n
\n \n {{ \'AbpIdentity::NewUser\' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ \'AbpIdentity::Actions\' | abpLocalization }}\n {{ \'AbpIdentity::UserName\' | abpLocalization }}\n {{ \'AbpIdentity::EmailAddress\' | abpLocalization }}\n {{ \'AbpIdentity::PhoneNumber\' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ \'AbpIdentity::Actions\' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.userName }}\n {{ data.email }}\n {{ data.phoneNumber }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? \'AbpIdentity::Edit\' : \'AbpIdentity::NewUser\') | abpLocalization }}

\n
\n\n \n
\n \n \n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n
\n\n \n \n {{\n \'AbpIdentity::Save\' | abpLocalization\n }}\n \n
\n\n\n'}]}],e.ctorParameters=function(){return[{type:r.ConfirmationService},{type:i.FormBuilder},{type:o.Store}]},e.propDecorators={modalContent:[{type:n.ViewChild,args:["modalContent",{static:!1}]}]},m([o.Select(z.getUsers),f("design:type",a.Observable)],e.prototype,"data$",void 0),m([o.Select(z.getUsersTotalCount),f("design:type",a.Observable)],e.prototype,"totalCount$",void 0),e}();var M=function(){function e(e){this.store=e}return e.prototype.resolve=function(){var e=this.store.selectSnapshot(z.getUsers);return e&&e.length?null:this.store.dispatch(new R)},e.decorators=[{type:n.Injectable}],e.ctorParameters=function(){return[{type:o.Store}]},e}();var D=[{path:"",redirectTo:"roles",pathMatch:"full"},{path:"roles",component:t.DynamicLayoutComponent,canActivate:[t.AuthGuard,t.PermissionGuard],data:{requiredPolicy:"AbpIdentity.Roles"},children:[{path:"",component:x,resolve:[P]}]},{path:"users",component:t.DynamicLayoutComponent,canActivate:[t.AuthGuard,t.PermissionGuard],data:{requiredPolicy:"AbpIdentity.Users"},children:[{path:"",component:k,resolve:[P,M]}]}],j=function(){function e(){}return e.decorators=[{type:n.NgModule,args:[{imports:[l.RouterModule.forChild(D)],exports:[l.RouterModule],providers:[P,M]}]}],e}(),q=function(){function e(){}return e.decorators=[{type:n.NgModule,args:[{declarations:[x,k],imports:[o.NgxsModule.forFeature([z]),t.CoreModule,j,d.NgbTabsetModule,r.ThemeSharedModule,u.TableModule,d.NgbDropdownModule,c.PermissionManagementModule,b.NgxValidateCoreModule]}]}],e}();var O;!function(e){function t(){}function n(){}function o(){}function r(){}function i(){}function a(){}e.State=t,e.RoleSaveRequest=n,e.RoleItem=o,e.UserItem=r,e.User=i,e.UserSaveRequest=a}(O||(O={})),e.CreateRole=I,e.CreateUser=S,e.DeleteRole=v,e.DeleteUser=U,e.GetRoleById=g,e.GetRoles=h,e.GetUserById=w,e.GetUserRoles=L,e.GetUsers=R,e.IDENTITY_ROUTES={routes:[{name:"AbpUiNavigation::Menu:Administration",path:"",order:1,wrapper:!0},{name:"AbpIdentity::Menu:IdentityManagement",path:"identity",order:1,parentName:"AbpUiNavigation::Menu:Administration",layout:"application",iconClass:"fa fa-id-card-o",children:[{path:"roles",name:"AbpIdentity::Roles",order:2,requiredPolicy:"AbpIdentity.Roles"},{path:"users",name:"AbpIdentity::Users",order:1,requiredPolicy:"AbpIdentity.Users"}]}],settings:[]},e.IdentityModule=q,e.IdentityProviders=function(){return[]},e.IdentityService=N,e.IdentityState=z,e.RoleResolver=P,e.RolesComponent=x,e.UpdateRole=A,e.UpdateUser=C,e.ɵb=k,e.ɵc=j,e.ɵd=M,Object.defineProperty(e,"__esModule",{value:!0})}); //# sourceMappingURL=abp-ng.identity.umd.min.js.map \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.min.js.map b/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.min.js.map index 510fe19420..e7da9f8de7 100644 --- a/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.min.js.map +++ b/npm/ng-packs/dist/identity/bundles/abp-ng.identity.umd.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.identity/lib/root-identity.module.ts","ng://@abp/ng.identity/lib/actions/identity.actions.ts","ng://@abp/ng.identity/lib/services/identity.service.ts","ng://@abp/ng.identity/lib/states/identity.state.ts","ng://@abp/ng.identity/lib/components/roles/roles.component.ts","ng://@abp/ng.identity/lib/resolvers/roles.resolver.ts","ng://@abp/ng.identity/lib/components/users/users.component.ts","ng://@abp/ng.identity/lib/resolvers/users.resolver.ts","ng://@abp/ng.identity/lib/identity-routing.module.ts","ng://@abp/ng.identity/lib/models/identity.ts","ng://@abp/ng.identity/lib/identity.module.ts","ng://@abp/ng.identity/lib/constants/routes.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__metadata","metadataKey","metadataValue","metadata","RootIdentityModule","forRoot","ngModule","providers","NgModule","args","GetRoles","payload","type","GetRoleById","DeleteRole","CreateRole","UpdateRole","GetUsers","GetUserById","DeleteUser","CreateUser","UpdateUser","GetUserRoles","IdentityService","rest","getRoles","params","request","method","url","getRoleById","id","deleteRole","createRole","body","updateRole","getUsers","getUserById","getUserRoles","deleteUser","createUser","updateUser","Injectable","providedIn","RestService","IdentityState","identityService","_a","roles","items","getRolesTotalCount","totalCount","users","getUsersTotalCount","_b","patchState","pipe","tap","getRole","selectedRole","dispatch","switchMap","addRole","_this","getState","getUser","selectedUser","addUser","pluck","selectedUserRoles","tslib_1.__decorate","Action","Selector","State","name","defaults","RolesComponent","confirmationService","fb","store","visiblePermissions","pageQuery","sorting","loading","modalBusy","onSearch","value","filter","get","createForm","form","group","FormControl","selected","disabled","isStatic","Validators","required","maxLength","isDefault","isPublic","openModal","isModalVisible","onAdd","onEdit","subscribe","save","valid","delete","warn","messageLocalizationParams","status","onPageChange","data","skipCount","first","maxResultCount","rows","finalize","Component","selector","template","ConfirmationService","FormBuilder","Store","ViewChild","static","Select","Observable","RoleResolver","resolve","selectSnapshot","UsersComponent","trackByFn","index","item","keys","snq","buildForm","userName","email","surname","phoneNumber","lockoutEnabled","twoFactorEnabled","roleNames","array","map","role","find","userRole","addControl","take","state","mappedRoleNames","UserResolver","Identity","routes","path","redirectTo","pathMatch","component","DynamicLayoutComponent","canActivate","AuthGuard","PermissionGuard","requiredPolicy","children","IdentityRoutingModule","imports","RouterModule","forChild","exports","IdentityModule","declarations","NgxsModule","forFeature","CoreModule","NgbTabsetModule","ThemeSharedModule","TableModule","NgbDropdownModule","PermissionManagementModule","NgxValidateCoreModule","PerfectScrollbarModule","RoleSaveRequest","RoleItem","UserItem","User","UserSaveRequest","order","wrapper","parentName","layout","iconClass","settings"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootIdentityModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootIdentityModule,\n providers: [],\n };\n }\n}\n","import { Identity } from '../models/identity';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetRoles {\n static readonly type = '[Identity] Get Roles';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetRoleById {\n static readonly type = '[Identity] Get Role By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteRole {\n static readonly type = '[Identity] Delete Role';\n constructor(public payload: string) {}\n}\n\nexport class CreateRole {\n static readonly type = '[Identity] Create Role';\n constructor(public payload: Identity.RoleSaveRequest) {}\n}\n\nexport class UpdateRole {\n static readonly type = '[Identity] Update Role';\n constructor(public payload: Identity.RoleItem) {}\n}\n\nexport class GetUsers {\n static readonly type = '[Identity] Get Users';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetUserById {\n static readonly type = '[Identity] Get User By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteUser {\n static readonly type = '[Identity] Delete User';\n constructor(public payload: string) {}\n}\n\nexport class CreateUser {\n static readonly type = '[Identity] Create User';\n constructor(public payload: Identity.UserSaveRequest) {}\n}\n\nexport class UpdateUser {\n static readonly type = '[Identity] Update User';\n constructor(public payload: Identity.UserSaveRequest & { id: string }) {}\n}\n\nexport class GetUserRoles {\n static readonly type = '[Identity] Get User Roles';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { Identity } from '../models/identity';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class IdentityService {\n constructor(private rest: RestService) {}\n\n getRoles(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/roles',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getRoleById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteRole(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createRole(body: Identity.RoleSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/roles',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateRole(body: Identity.RoleItem): Observable {\n const url = `/api/identity/roles/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getUsers(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/users',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getUserById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n getUserRoles(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}/roles`,\n };\n\n return this.rest.request(request);\n }\n\n deleteUser(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createUser(body: Identity.UserSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/users',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateUser(body: Identity.UserItem): Observable {\n const url = `/api/identity/users/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap, pluck } from 'rxjs/operators';\nimport {\n CreateRole,\n CreateUser,\n DeleteRole,\n DeleteUser,\n GetRoleById,\n GetRoles,\n GetUserById,\n GetUsers,\n UpdateRole,\n UpdateUser,\n GetUserRoles,\n} from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityService } from '../services/identity.service';\n\n@State({\n name: 'IdentityState',\n defaults: { roles: {}, selectedRole: {}, users: {}, selectedUser: {} } as Identity.State,\n})\nexport class IdentityState {\n @Selector()\n static getRoles({ roles }: Identity.State): Identity.RoleItem[] {\n return roles.items;\n }\n\n @Selector()\n static getRolesTotalCount({ roles }: Identity.State): number {\n return roles.totalCount;\n }\n\n @Selector()\n static getUsers({ users }: Identity.State): Identity.UserItem[] {\n return users.items;\n }\n\n @Selector()\n static getUsersTotalCount({ users }: Identity.State): number {\n return users.totalCount;\n }\n\n constructor(private identityService: IdentityService) {}\n\n @Action(GetRoles)\n getRoles({ patchState }: StateContext, { payload }: GetRoles) {\n return this.identityService.getRoles(payload).pipe(\n tap(roles =>\n patchState({\n roles,\n }),\n ),\n );\n }\n\n @Action(GetRoleById)\n getRole({ patchState }: StateContext, { payload }: GetRoleById) {\n return this.identityService.getRoleById(payload).pipe(\n tap(selectedRole =>\n patchState({\n selectedRole,\n }),\n ),\n );\n }\n\n @Action(DeleteRole)\n deleteRole({ dispatch }: StateContext, { payload }: GetRoleById) {\n return this.identityService.deleteRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(CreateRole)\n addRole({ dispatch }: StateContext, { payload }: CreateRole) {\n return this.identityService.createRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(UpdateRole)\n updateRole({ getState, dispatch }: StateContext, { payload }: UpdateRole) {\n return dispatch(new GetRoleById(payload.id)).pipe(\n switchMap(() => this.identityService.updateRole({ ...getState().selectedRole, ...payload })),\n switchMap(() => dispatch(new GetRoles())),\n );\n }\n\n @Action(GetUsers)\n getUsers({ patchState }: StateContext, { payload }: GetUsers) {\n return this.identityService.getUsers(payload).pipe(\n tap(users =>\n patchState({\n users,\n }),\n ),\n );\n }\n\n @Action(GetUserById)\n getUser({ patchState }: StateContext, { payload }: GetUserById) {\n return this.identityService.getUserById(payload).pipe(\n tap(selectedUser =>\n patchState({\n selectedUser,\n }),\n ),\n );\n }\n\n @Action(DeleteUser)\n deleteUser({ dispatch }: StateContext, { payload }: GetUserById) {\n return this.identityService.deleteUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(CreateUser)\n addUser({ dispatch }: StateContext, { payload }: CreateUser) {\n return this.identityService.createUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(UpdateUser)\n updateUser({ getState, dispatch }: StateContext, { payload }: UpdateUser) {\n return dispatch(new GetUserById(payload.id)).pipe(\n switchMap(() => this.identityService.updateUser({ ...getState().selectedUser, ...payload })),\n switchMap(() => dispatch(new GetUsers())),\n );\n }\n\n @Action(GetUserRoles)\n getUserRoles({ patchState }: StateContext, { payload }: GetUserRoles) {\n return this.identityService.getUserRoles(payload).pipe(\n pluck('items'),\n tap(selectedUserRoles =>\n patchState({\n selectedUserRoles,\n }),\n ),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck } from 'rxjs/operators';\nimport { CreateRole, DeleteRole, GetRoleById, GetRoles, UpdateRole } from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n\n@Component({\n selector: 'abp-roles',\n templateUrl: './roles.component.html',\n})\nexport class RolesComponent {\n @Select(IdentityState.getRoles)\n data$: Observable;\n\n @Select(IdentityState.getRolesTotalCount)\n totalCount$: Observable;\n\n form: FormGroup;\n\n selected: Identity.RoleItem;\n\n isModalVisible: boolean;\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n createForm() {\n this.form = this.fb.group({\n name: new FormControl({ value: this.selected.name || '', disabled: this.selected.isStatic }, [\n Validators.required,\n Validators.maxLength(256),\n ]),\n isDefault: [this.selected.isDefault || false],\n isPublic: [this.selected.isPublic || false],\n });\n }\n\n openModal() {\n this.createForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.RoleItem;\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetRoleById(id))\n .pipe(pluck('IdentityState', 'selectedRole'))\n .subscribe(selectedRole => {\n this.selected = selectedRole;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateRole({ ...this.form.value, id: this.selected.id })\n : new CreateRole(this.form.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpIdentity::RoleDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteRole(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetRoles(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetRoles } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class RoleResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const roles = this.store.selectSnapshot(IdentityState.getRoles);\n return roles && roles.length ? null : this.store.dispatch(new GetRoles());\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, TrackByFunction, ViewChild } from '@angular/core';\nimport { AbstractControl, FormArray, FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport {\n CreateUser,\n DeleteUser,\n GetUserById,\n GetUserRoles,\n GetUsers,\n UpdateUser,\n} from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n@Component({\n selector: 'abp-users',\n templateUrl: './users.component.html',\n})\nexport class UsersComponent {\n @Select(IdentityState.getUsers)\n data$: Observable;\n\n @Select(IdentityState.getUsersTotalCount)\n totalCount$: Observable;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n selected: Identity.UserItem;\n\n selectedUserRoles: Identity.RoleItem[];\n\n roles: Identity.RoleItem[];\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'userName',\n };\n\n isModalVisible: boolean;\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (index, item) => Object.keys(item)[0] || index;\n\n get roleGroups(): FormGroup[] {\n return snq(() => (this.form.get('roleNames') as FormArray).controls as FormGroup[], []);\n }\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n buildForm() {\n this.roles = this.store.selectSnapshot(IdentityState.getRoles);\n this.form = this.fb.group({\n userName: [this.selected.userName || '', [Validators.required, Validators.maxLength(256)]],\n email: [this.selected.email || '', [Validators.required, Validators.email, Validators.maxLength(256)]],\n name: [this.selected.name || '', [Validators.maxLength(64)]],\n surname: [this.selected.surname || '', [Validators.maxLength(64)]],\n phoneNumber: [this.selected.phoneNumber || '', [Validators.maxLength(16)]],\n lockoutEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n twoFactorEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n roleNames: this.fb.array(\n this.roles.map(role =>\n this.fb.group({\n [role.name]: [!!snq(() => this.selectedUserRoles.find(userRole => userRole.id === role.id))],\n }),\n ),\n ),\n });\n if (!this.selected.userName) {\n this.form.addControl('password', new FormControl('', [Validators.required, Validators.maxLength(32)]));\n }\n }\n\n openModal() {\n this.buildForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.UserItem;\n this.selectedUserRoles = [] as Identity.RoleItem[];\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetUserById(id))\n .pipe(\n switchMap(() => this.store.dispatch(new GetUserRoles(id))),\n pluck('IdentityState'),\n take(1),\n )\n .subscribe((state: Identity.State) => {\n this.selected = state.selectedUser;\n this.selectedUserRoles = state.selectedUserRoles;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n const { roleNames } = this.form.value;\n const mappedRoleNames = snq(\n () => roleNames.filter(role => !!role[Object.keys(role)[0]]).map(role => Object.keys(role)[0]),\n [],\n );\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateUser({\n ...this.form.value,\n id: this.selected.id,\n roleNames: mappedRoleNames,\n })\n : new CreateUser({\n ...this.form.value,\n roleNames: mappedRoleNames,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, userName: string) {\n this.confirmationService\n .warn('AbpIdentity::UserDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [userName],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteUser(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetUsers(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetUsers } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class UserResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const users = this.store.selectSnapshot(IdentityState.getUsers);\n return users && users.length ? null : this.store.dispatch(new GetUsers());\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { RoleResolver } from './resolvers/roles.resolver';\nimport { DynamicLayoutComponent, AuthGuard, PermissionGuard } from '@abp/ng.core';\nimport { UsersComponent } from './components/users/users.component';\nimport { UserResolver } from './resolvers/users.resolver';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'roles', pathMatch: 'full' },\n {\n path: 'roles',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Roles' },\n children: [{ path: '', component: RolesComponent, resolve: [RoleResolver] }],\n },\n {\n path: 'users',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Users' },\n children: [\n {\n path: '',\n component: UsersComponent,\n resolve: [RoleResolver, UserResolver],\n },\n ],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [RoleResolver, UserResolver],\n})\nexport class IdentityRoutingModule {}\n","import { ABP } from '@abp/ng.core';\n\nexport namespace Identity {\n export interface State {\n roles: RoleResponse;\n users: UserResponse;\n selectedRole: RoleItem;\n selectedUser: UserItem;\n selectedUserRoles: RoleItem[];\n }\n\n export type RoleResponse = ABP.PagedResponse;\n\n export interface RoleSaveRequest {\n name: string;\n isDefault: boolean;\n isPublic: boolean;\n }\n\n export interface RoleItem extends RoleSaveRequest {\n isStatic: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export type UserResponse = ABP.PagedResponse;\n\n export interface UserItem extends User {\n tenantId: string;\n emailConfirmed: boolean;\n phoneNumberConfirmed: boolean;\n isLockedOut: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export interface User {\n userName: string;\n name: string;\n surname: string;\n email: string;\n phoneNumber: string;\n twoFactorEnabled: true;\n lockoutEnabled: true;\n }\n\n export interface UserSaveRequest extends User {\n password: string;\n roleNames: string[];\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { IdentityRoutingModule } from './identity-routing.module';\nimport { IdentityState } from './states/identity.state';\nimport { NgbTabsetModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { UsersComponent } from './components/users/users.component';\nimport { PermissionManagementModule } from '@abp/ng.permission-management';\nimport { TableModule } from 'primeng/table';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\n\n@NgModule({\n declarations: [RolesComponent, UsersComponent],\n imports: [\n NgxsModule.forFeature([IdentityState]),\n CoreModule,\n IdentityRoutingModule,\n NgbTabsetModule,\n ThemeSharedModule,\n TableModule,\n NgbDropdownModule,\n PermissionManagementModule,\n NgxValidateCoreModule,\n PerfectScrollbarModule,\n ],\n})\nexport class IdentityModule {}\n","import { eLayoutType, ABP } from '@abp/ng.core';\n\nexport const IDENTITY_ROUTES = {\n routes: [\n {\n name: 'AbpUiNavigation::Menu:Administration',\n path: '',\n order: 1,\n wrapper: true,\n },\n {\n name: 'AbpIdentity::Menu:IdentityManagement',\n path: 'identity',\n order: 1,\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-id-card-o',\n children: [\n { path: 'roles', name: 'AbpIdentity::Roles', order: 2, requiredPolicy: 'AbpIdentity.Roles' },\n { path: 'users', name: 'AbpIdentity::Users', order: 1, requiredPolicy: 'AbpIdentity.Users' },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n"]} \ No newline at end of file +{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.identity/lib/actions/identity.actions.ts","ng://@abp/ng.identity/lib/services/identity.service.ts","ng://@abp/ng.identity/lib/states/identity.state.ts","ng://@abp/ng.identity/lib/components/roles/roles.component.ts","ng://@abp/ng.identity/lib/resolvers/roles.resolver.ts","ng://@abp/ng.identity/lib/components/users/users.component.ts","ng://@abp/ng.identity/lib/resolvers/users.resolver.ts","ng://@abp/ng.identity/lib/identity-routing.module.ts","ng://@abp/ng.identity/lib/identity.module.ts","ng://@abp/ng.identity/lib/constants/routes.ts","ng://@abp/ng.identity/lib/models/identity.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__metadata","metadataKey","metadataValue","metadata","GetRoles","payload","type","GetRoleById","DeleteRole","CreateRole","UpdateRole","GetUsers","GetUserById","DeleteUser","CreateUser","UpdateUser","GetUserRoles","IdentityService","rest","getRoles","params","request","method","url","getRoleById","id","deleteRole","createRole","body","updateRole","getUsers","getUserById","getUserRoles","deleteUser","createUser","updateUser","Injectable","args","providedIn","RestService","IdentityState","identityService","_a","roles","items","getRolesTotalCount","totalCount","users","getUsersTotalCount","_b","patchState","pipe","tap","getRole","selectedRole","dispatch","switchMap","addRole","_this","getState","getUser","selectedUser","addUser","pluck","selectedUserRoles","tslib_1.__decorate","Action","Selector","State","name","defaults","RolesComponent","confirmationService","fb","store","visiblePermissions","pageQuery","sorting","loading","modalBusy","onSearch","value","filter","get","createForm","form","group","FormControl","selected","disabled","isStatic","Validators","required","maxLength","isDefault","isPublic","openModal","isModalVisible","onAdd","onEdit","subscribe","save","valid","delete","warn","messageLocalizationParams","status","onPageChange","data","skipCount","first","maxResultCount","rows","finalize","Component","selector","template","ConfirmationService","FormBuilder","Store","ViewChild","static","Select","Observable","RoleResolver","resolve","selectSnapshot","UsersComponent","trackByFn","index","item","keys","snq","buildForm","userName","email","surname","phoneNumber","lockoutEnabled","twoFactorEnabled","roleNames","array","map","role","find","userRole","addControl","take","state","mappedRoleNames","UserResolver","routes","path","redirectTo","pathMatch","component","DynamicLayoutComponent","canActivate","AuthGuard","PermissionGuard","requiredPolicy","children","IdentityRoutingModule","NgModule","imports","RouterModule","forChild","exports","providers","IdentityModule","declarations","NgxsModule","forFeature","CoreModule","NgbTabsetModule","ThemeSharedModule","TableModule","NgbDropdownModule","PermissionManagementModule","NgxValidateCoreModule","Identity","RoleSaveRequest","RoleItem","UserItem","User","UserSaveRequest","order","wrapper","parentName","layout","iconClass","settings"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { Identity } from '../models/identity';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetRoles {\n static readonly type = '[Identity] Get Roles';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetRoleById {\n static readonly type = '[Identity] Get Role By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteRole {\n static readonly type = '[Identity] Delete Role';\n constructor(public payload: string) {}\n}\n\nexport class CreateRole {\n static readonly type = '[Identity] Create Role';\n constructor(public payload: Identity.RoleSaveRequest) {}\n}\n\nexport class UpdateRole {\n static readonly type = '[Identity] Update Role';\n constructor(public payload: Identity.RoleItem) {}\n}\n\nexport class GetUsers {\n static readonly type = '[Identity] Get Users';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetUserById {\n static readonly type = '[Identity] Get User By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteUser {\n static readonly type = '[Identity] Delete User';\n constructor(public payload: string) {}\n}\n\nexport class CreateUser {\n static readonly type = '[Identity] Create User';\n constructor(public payload: Identity.UserSaveRequest) {}\n}\n\nexport class UpdateUser {\n static readonly type = '[Identity] Update User';\n constructor(public payload: Identity.UserSaveRequest & { id: string }) {}\n}\n\nexport class GetUserRoles {\n static readonly type = '[Identity] Get User Roles';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { Identity } from '../models/identity';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class IdentityService {\n constructor(private rest: RestService) {}\n\n getRoles(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/roles',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getRoleById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteRole(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createRole(body: Identity.RoleSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/roles',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateRole(body: Identity.RoleItem): Observable {\n const url = `/api/identity/roles/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getUsers(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/users',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getUserById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n getUserRoles(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}/roles`,\n };\n\n return this.rest.request(request);\n }\n\n deleteUser(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createUser(body: Identity.UserSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/users',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateUser(body: Identity.UserItem): Observable {\n const url = `/api/identity/users/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap, pluck } from 'rxjs/operators';\nimport {\n CreateRole,\n CreateUser,\n DeleteRole,\n DeleteUser,\n GetRoleById,\n GetRoles,\n GetUserById,\n GetUsers,\n UpdateRole,\n UpdateUser,\n GetUserRoles,\n} from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityService } from '../services/identity.service';\n\n@State({\n name: 'IdentityState',\n defaults: { roles: {}, selectedRole: {}, users: {}, selectedUser: {} } as Identity.State,\n})\nexport class IdentityState {\n @Selector()\n static getRoles({ roles }: Identity.State): Identity.RoleItem[] {\n return roles.items;\n }\n\n @Selector()\n static getRolesTotalCount({ roles }: Identity.State): number {\n return roles.totalCount;\n }\n\n @Selector()\n static getUsers({ users }: Identity.State): Identity.UserItem[] {\n return users.items;\n }\n\n @Selector()\n static getUsersTotalCount({ users }: Identity.State): number {\n return users.totalCount;\n }\n\n constructor(private identityService: IdentityService) {}\n\n @Action(GetRoles)\n getRoles({ patchState }: StateContext, { payload }: GetRoles) {\n return this.identityService.getRoles(payload).pipe(\n tap(roles =>\n patchState({\n roles,\n }),\n ),\n );\n }\n\n @Action(GetRoleById)\n getRole({ patchState }: StateContext, { payload }: GetRoleById) {\n return this.identityService.getRoleById(payload).pipe(\n tap(selectedRole =>\n patchState({\n selectedRole,\n }),\n ),\n );\n }\n\n @Action(DeleteRole)\n deleteRole({ dispatch }: StateContext, { payload }: GetRoleById) {\n return this.identityService.deleteRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(CreateRole)\n addRole({ dispatch }: StateContext, { payload }: CreateRole) {\n return this.identityService.createRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(UpdateRole)\n updateRole({ getState, dispatch }: StateContext, { payload }: UpdateRole) {\n return dispatch(new GetRoleById(payload.id)).pipe(\n switchMap(() => this.identityService.updateRole({ ...getState().selectedRole, ...payload })),\n switchMap(() => dispatch(new GetRoles())),\n );\n }\n\n @Action(GetUsers)\n getUsers({ patchState }: StateContext, { payload }: GetUsers) {\n return this.identityService.getUsers(payload).pipe(\n tap(users =>\n patchState({\n users,\n }),\n ),\n );\n }\n\n @Action(GetUserById)\n getUser({ patchState }: StateContext, { payload }: GetUserById) {\n return this.identityService.getUserById(payload).pipe(\n tap(selectedUser =>\n patchState({\n selectedUser,\n }),\n ),\n );\n }\n\n @Action(DeleteUser)\n deleteUser({ dispatch }: StateContext, { payload }: GetUserById) {\n return this.identityService.deleteUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(CreateUser)\n addUser({ dispatch }: StateContext, { payload }: CreateUser) {\n return this.identityService.createUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(UpdateUser)\n updateUser({ getState, dispatch }: StateContext, { payload }: UpdateUser) {\n return dispatch(new GetUserById(payload.id)).pipe(\n switchMap(() => this.identityService.updateUser({ ...getState().selectedUser, ...payload })),\n switchMap(() => dispatch(new GetUsers())),\n );\n }\n\n @Action(GetUserRoles)\n getUserRoles({ patchState }: StateContext, { payload }: GetUserRoles) {\n return this.identityService.getUserRoles(payload).pipe(\n pluck('items'),\n tap(selectedUserRoles =>\n patchState({\n selectedUserRoles,\n }),\n ),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck } from 'rxjs/operators';\nimport { CreateRole, DeleteRole, GetRoleById, GetRoles, UpdateRole } from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n\n@Component({\n selector: 'abp-roles',\n templateUrl: './roles.component.html',\n})\nexport class RolesComponent {\n @Select(IdentityState.getRoles)\n data$: Observable;\n\n @Select(IdentityState.getRolesTotalCount)\n totalCount$: Observable;\n\n form: FormGroup;\n\n selected: Identity.RoleItem;\n\n isModalVisible: boolean;\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n createForm() {\n this.form = this.fb.group({\n name: new FormControl({ value: this.selected.name || '', disabled: this.selected.isStatic }, [\n Validators.required,\n Validators.maxLength(256),\n ]),\n isDefault: [this.selected.isDefault || false],\n isPublic: [this.selected.isPublic || false],\n });\n }\n\n openModal() {\n this.createForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.RoleItem;\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetRoleById(id))\n .pipe(pluck('IdentityState', 'selectedRole'))\n .subscribe(selectedRole => {\n this.selected = selectedRole;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateRole({ ...this.form.value, id: this.selected.id })\n : new CreateRole(this.form.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpIdentity::RoleDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteRole(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetRoles(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetRoles } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class RoleResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const roles = this.store.selectSnapshot(IdentityState.getRoles);\n return roles && roles.length ? null : this.store.dispatch(new GetRoles());\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, TrackByFunction, ViewChild } from '@angular/core';\nimport { AbstractControl, FormArray, FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport {\n CreateUser,\n DeleteUser,\n GetUserById,\n GetUserRoles,\n GetUsers,\n UpdateUser,\n} from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n@Component({\n selector: 'abp-users',\n templateUrl: './users.component.html',\n})\nexport class UsersComponent {\n @Select(IdentityState.getUsers)\n data$: Observable;\n\n @Select(IdentityState.getUsersTotalCount)\n totalCount$: Observable;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n selected: Identity.UserItem;\n\n selectedUserRoles: Identity.RoleItem[];\n\n roles: Identity.RoleItem[];\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'userName',\n };\n\n isModalVisible: boolean;\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (index, item) => Object.keys(item)[0] || index;\n\n get roleGroups(): FormGroup[] {\n return snq(() => (this.form.get('roleNames') as FormArray).controls as FormGroup[], []);\n }\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n buildForm() {\n this.roles = this.store.selectSnapshot(IdentityState.getRoles);\n this.form = this.fb.group({\n userName: [this.selected.userName || '', [Validators.required, Validators.maxLength(256)]],\n email: [this.selected.email || '', [Validators.required, Validators.email, Validators.maxLength(256)]],\n name: [this.selected.name || '', [Validators.maxLength(64)]],\n surname: [this.selected.surname || '', [Validators.maxLength(64)]],\n phoneNumber: [this.selected.phoneNumber || '', [Validators.maxLength(16)]],\n lockoutEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n twoFactorEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n roleNames: this.fb.array(\n this.roles.map(role =>\n this.fb.group({\n [role.name]: [!!snq(() => this.selectedUserRoles.find(userRole => userRole.id === role.id))],\n }),\n ),\n ),\n });\n if (!this.selected.userName) {\n this.form.addControl('password', new FormControl('', [Validators.required, Validators.maxLength(32)]));\n }\n }\n\n openModal() {\n this.buildForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.UserItem;\n this.selectedUserRoles = [] as Identity.RoleItem[];\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetUserById(id))\n .pipe(\n switchMap(() => this.store.dispatch(new GetUserRoles(id))),\n pluck('IdentityState'),\n take(1),\n )\n .subscribe((state: Identity.State) => {\n this.selected = state.selectedUser;\n this.selectedUserRoles = state.selectedUserRoles;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n const { roleNames } = this.form.value;\n const mappedRoleNames = snq(\n () => roleNames.filter(role => !!role[Object.keys(role)[0]]).map(role => Object.keys(role)[0]),\n [],\n );\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateUser({\n ...this.form.value,\n id: this.selected.id,\n roleNames: mappedRoleNames,\n })\n : new CreateUser({\n ...this.form.value,\n roleNames: mappedRoleNames,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, userName: string) {\n this.confirmationService\n .warn('AbpIdentity::UserDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [userName],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteUser(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetUsers(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetUsers } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class UserResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const users = this.store.selectSnapshot(IdentityState.getUsers);\n return users && users.length ? null : this.store.dispatch(new GetUsers());\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { RoleResolver } from './resolvers/roles.resolver';\nimport { DynamicLayoutComponent, AuthGuard, PermissionGuard } from '@abp/ng.core';\nimport { UsersComponent } from './components/users/users.component';\nimport { UserResolver } from './resolvers/users.resolver';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'roles', pathMatch: 'full' },\n {\n path: 'roles',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Roles' },\n children: [{ path: '', component: RolesComponent, resolve: [RoleResolver] }],\n },\n {\n path: 'users',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Users' },\n children: [\n {\n path: '',\n component: UsersComponent,\n resolve: [RoleResolver, UserResolver],\n },\n ],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [RoleResolver, UserResolver],\n})\nexport class IdentityRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { NgModule, Provider } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { IdentityRoutingModule } from './identity-routing.module';\nimport { IdentityState } from './states/identity.state';\nimport { NgbTabsetModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { UsersComponent } from './components/users/users.component';\nimport { PermissionManagementModule } from '@abp/ng.permission-management';\nimport { TableModule } from 'primeng/table';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\n\n@NgModule({\n declarations: [RolesComponent, UsersComponent],\n imports: [\n NgxsModule.forFeature([IdentityState]),\n CoreModule,\n IdentityRoutingModule,\n NgbTabsetModule,\n ThemeSharedModule,\n TableModule,\n NgbDropdownModule,\n PermissionManagementModule,\n NgxValidateCoreModule,\n ],\n})\nexport class IdentityModule {}\n\nexport function IdentityProviders(): Provider[] {\n return [];\n}\n","import { eLayoutType, ABP } from '@abp/ng.core';\n\nexport const IDENTITY_ROUTES = {\n routes: [\n {\n name: 'AbpUiNavigation::Menu:Administration',\n path: '',\n order: 1,\n wrapper: true,\n },\n {\n name: 'AbpIdentity::Menu:IdentityManagement',\n path: 'identity',\n order: 1,\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-id-card-o',\n children: [\n { path: 'roles', name: 'AbpIdentity::Roles', order: 2, requiredPolicy: 'AbpIdentity.Roles' },\n { path: 'users', name: 'AbpIdentity::Users', order: 1, requiredPolicy: 'AbpIdentity.Users' },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","import { ABP } from '@abp/ng.core';\n\nexport namespace Identity {\n export interface State {\n roles: RoleResponse;\n users: UserResponse;\n selectedRole: RoleItem;\n selectedUser: UserItem;\n selectedUserRoles: RoleItem[];\n }\n\n export type RoleResponse = ABP.PagedResponse;\n\n export interface RoleSaveRequest {\n name: string;\n isDefault: boolean;\n isPublic: boolean;\n }\n\n export interface RoleItem extends RoleSaveRequest {\n isStatic: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export type UserResponse = ABP.PagedResponse;\n\n export interface UserItem extends User {\n tenantId: string;\n emailConfirmed: boolean;\n phoneNumberConfirmed: boolean;\n isLockedOut: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export interface User {\n userName: string;\n name: string;\n surname: string;\n email: string;\n phoneNumber: string;\n twoFactorEnabled: true;\n lockoutEnabled: true;\n }\n\n export interface UserSaveRequest extends User {\n password: string;\n roleNames: string[];\n }\n}\n"]} \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/esm2015/abp-ng.identity.js b/npm/ng-packs/dist/identity/esm2015/abp-ng.identity.js index 2ccd8a6a10..30171986c1 100644 --- a/npm/ng-packs/dist/identity/esm2015/abp-ng.identity.js +++ b/npm/ng-packs/dist/identity/esm2015/abp-ng.identity.js @@ -5,8 +5,8 @@ /** * Generated bundle index. Do not edit. */ -export { RootIdentityModule, IdentityModule, GetRoles, GetRoleById, DeleteRole, CreateRole, UpdateRole, GetUsers, GetUserById, DeleteUser, CreateUser, UpdateUser, GetUserRoles, RolesComponent, IDENTITY_ROUTES, RoleResolver, IdentityService, IdentityState } from './public-api'; +export { IdentityProviders, IdentityModule, GetRoles, GetRoleById, DeleteRole, CreateRole, UpdateRole, GetUsers, GetUserById, DeleteUser, CreateUser, UpdateUser, GetUserRoles, RolesComponent, IDENTITY_ROUTES, RoleResolver, IdentityService, IdentityState } from './public-api'; export { UsersComponent as ɵb } from './lib/components/users/users.component'; export { IdentityRoutingModule as ɵc } from './lib/identity-routing.module'; export { UserResolver as ɵd } from './lib/resolvers/users.resolver'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmlkZW50aXR5LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5pZGVudGl0eS8iLCJzb3VyY2VzIjpbImFicC1uZy5pZGVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsc1FBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBRTFFLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7VXNlcnNDb21wb25lbnQgYXMgybVifSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3VzZXJzL3VzZXJzLmNvbXBvbmVudCc7XG5leHBvcnQge0lkZW50aXR5Um91dGluZ01vZHVsZSBhcyDJtWN9IGZyb20gJy4vbGliL2lkZW50aXR5LXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7SWRlbnRpdHkgYXMgybVhfSBmcm9tICcuL2xpYi9tb2RlbHMvaWRlbnRpdHknO1xuZXhwb3J0IHtVc2VyUmVzb2x2ZXIgYXMgybVkfSBmcm9tICcuL2xpYi9yZXNvbHZlcnMvdXNlcnMucmVzb2x2ZXInOyJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmlkZW50aXR5LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5pZGVudGl0eS8iLCJzb3VyY2VzIjpbImFicC1uZy5pZGVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEscVFBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBRTFFLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7VXNlcnNDb21wb25lbnQgYXMgybVifSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3VzZXJzL3VzZXJzLmNvbXBvbmVudCc7XG5leHBvcnQge0lkZW50aXR5Um91dGluZ01vZHVsZSBhcyDJtWN9IGZyb20gJy4vbGliL2lkZW50aXR5LXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7SWRlbnRpdHkgYXMgybVhfSBmcm9tICcuL2xpYi9tb2RlbHMvaWRlbnRpdHknO1xuZXhwb3J0IHtVc2VyUmVzb2x2ZXIgYXMgybVkfSBmcm9tICcuL2xpYi9yZXNvbHZlcnMvdXNlcnMucmVzb2x2ZXInOyJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/esm2015/lib/components/users/users.component.js b/npm/ng-packs/dist/identity/esm2015/lib/components/users/users.component.js index 2587277861..40a792d580 100644 --- a/npm/ng-packs/dist/identity/esm2015/lib/components/users/users.component.js +++ b/npm/ng-packs/dist/identity/esm2015/lib/components/users/users.component.js @@ -199,7 +199,7 @@ export class UsersComponent { UsersComponent.decorators = [ { type: Component, args: [{ selector: 'abp-users', - template: "
\n
\n
\n
\n
{{ 'AbpIdentity::Users' | abpLocalization }}
\n
\n
\n \n {{ 'AbpIdentity::NewUser' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n {{ 'AbpIdentity::UserName' | abpLocalization }}\n {{ 'AbpIdentity::EmailAddress' | abpLocalization }}\n {{ 'AbpIdentity::PhoneNumber' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.userName }}\n {{ data.email }}\n {{ data.phoneNumber }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}

\n
\n\n \n \n
\n \n \n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n
\n
\n\n \n \n {{\n 'AbpIdentity::Save' | abpLocalization\n }}\n \n
\n\n\n" + template: "
\n
\n
\n
\n
{{ 'AbpIdentity::Users' | abpLocalization }}
\n
\n
\n \n {{ 'AbpIdentity::NewUser' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n {{ 'AbpIdentity::UserName' | abpLocalization }}\n {{ 'AbpIdentity::EmailAddress' | abpLocalization }}\n {{ 'AbpIdentity::PhoneNumber' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.userName }}\n {{ data.email }}\n {{ data.phoneNumber }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}

\n
\n\n \n
\n \n \n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n
\n\n \n \n {{\n 'AbpIdentity::Save' | abpLocalization\n }}\n \n
\n\n\n" }] } ]; /** @nocollapse */ @@ -264,4 +264,4 @@ if (false) { */ UsersComponent.prototype.store; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5pZGVudGl0eS8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3VzZXJzL3VzZXJzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBVyxNQUFNLHNCQUFzQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFtQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUE4QixXQUFXLEVBQWEsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdHLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sR0FBRyxNQUFNLEtBQUssQ0FBQztBQUN0QixPQUFPLEVBQ0wsVUFBVSxFQUNWLFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLFFBQVEsRUFDUixVQUFVLEdBQ1gsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV4QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFLNUQsTUFBTSxPQUFPLGNBQWM7Ozs7OztJQXNDekIsWUFBb0IsbUJBQXdDLEVBQVUsRUFBZSxFQUFVLEtBQVk7UUFBdkYsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUFVLE9BQUUsR0FBRixFQUFFLENBQWE7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBcEIzRyx1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFJcEMsY0FBUyxHQUF3QjtZQUMvQixPQUFPLEVBQUUsVUFBVTtTQUNwQixDQUFDO1FBSUYsWUFBTyxH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Q0FBQyxrQkFBa0IsQ0FBQztzQ0FDNUIsVUFBVTttREFBUzs7O0lBSmhDLCtCQUN1Qzs7SUFFdkMscUNBQ2dDOztJQUVoQyxzQ0FDK0I7O0lBRS9CLDhCQUFnQjs7SUFFaEIsa0NBQTRCOztJQUU1QiwyQ0FBdUM7O0lBRXZDLCtCQUEyQjs7SUFFM0IsNENBQW9DOztJQUVwQyxxQ0FBb0I7O0lBRXBCLG1DQUVFOztJQUVGLHdDQUF3Qjs7SUFFeEIsaUNBQXlCOztJQUV6QixtQ0FBMkI7O0lBRTNCLG1DQUE2Rjs7Ozs7SUFNakYsNkNBQWdEOzs7OztJQUFFLDRCQUF1Qjs7Ozs7SUFBRSwrQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBQlAgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSwgVG9hc3RlciB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IENvbXBvbmVudCwgVGVtcGxhdGVSZWYsIFRyYWNrQnlGdW5jdGlvbiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1BcnJheSwgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycywgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmluYWxpemUsIHBsdWNrLCBzd2l0Y2hNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgc25xIGZyb20gJ3NucSc7XG5pbXBvcnQge1xuICBDcmVhdGVVc2VyLFxuICBEZWxldGVVc2VyLFxuICBHZXRVc2VyQnlJZCxcbiAgR2V0VXNlclJvbGVzLFxuICBHZXRVc2VycyxcbiAgVXBkYXRlVXNlcixcbn0gZnJvbSAnLi4vLi4vYWN0aW9ucy9pZGVudGl0eS5hY3Rpb25zJztcbmltcG9ydCB7IElkZW50aXR5IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2lkZW50aXR5JztcbmltcG9ydCB7IElkZW50aXR5U3RhdGUgfSBmcm9tICcuLi8uLi9zdGF0ZXMvaWRlbnRpdHkuc3RhdGUnO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLXVzZXJzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VzZXJzLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgVXNlcnNDb21wb25lbnQge1xuICBAU2VsZWN0KElkZW50aXR5U3RhdGUuZ2V0VXNlcnMpXG4gIGRhdGEkOiBPYnNlcnZhYmxlPElkZW50aXR5LlVzZXJJdGVtW10+O1xuXG4gIEBTZWxlY3QoSWRlbnRpdHlTdGF0ZS5nZXRVc2Vyc1RvdGFsQ291bnQpXG4gIHRvdGFsQ291bnQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgQFZpZXdDaGlsZCgnbW9kYWxDb250ZW50JywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIG1vZGFsQ29udGVudDogVGVtcGxhdGVSZWY8YW55PjtcblxuICBmb3JtOiBGb3JtR3JvdXA7XG5cbiAgc2VsZWN0ZWQ6IElkZW50aXR5LlVzZXJJdGVtO1xuXG4gIHNlbGVjdGVkVXNlclJvbGVzOiBJZGVudGl0eS5Sb2xlSXRlbVtdO1xuXG4gIHJvbGVzOiBJZGVudGl0eS5Sb2xlSXRlbVtdO1xuXG4gIHZpc2libGVQZXJtaXNzaW9uczogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByb3ZpZGVyS2V5OiBzdHJpbmc7XG5cbiAgcGFnZVF1ZXJ5OiBBQlAuUGFnZVF1ZXJ5UGFyYW1zID0ge1xuICAgIHNvcnRpbmc6ICd1c2VyTmFtZScsXG4gIH07XG5cbiAgaXNNb2RhbFZpc2libGU6IGJvb2xlYW47XG5cbiAgbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIG1vZGFsQnVzeTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHRyYWNrQnlGbjogVHJhY2tCeUZ1bmN0aW9uPEFic3RyYWN0Q29udHJvbD4gPSAoaW5kZXgsIGl0ZW0pID0+IE9iamVjdC5rZXlzKGl0ZW0pWzBdIHx8IGluZGV4O1xuXG4gIGdldCByb2xlR3JvdXBzKCk6IEZvcm1Hcm91cFtdIHtcbiAgICByZXR1cm4gc25xKCgpID0+ICh0aGlzLmZvcm0uZ2V0KCdyb2xlTmFtZXMnKSBhcyBGb3JtQXJyYXkpLmNvbnRyb2xzIGFzIEZvcm1Hcm91cFtdLCBbXSk7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UsIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIHN0b3JlOiBTdG9yZSkge31cblxuICBvblNlYXJjaCh2YWx1ZSkge1xuICAgIHRoaXMucGFnZVF1ZXJ5LmZpbHRlciA9IHZhbHVlO1xuICAgIHRoaXMuZ2V0KCk7XG4gIH1cblxuICBidWlsZEZvcm0oKSB7XG4gICAgdGhpcy5yb2xlcyA9IHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoSWRlbnRpdHlTdGF0ZS5nZXRSb2xlcyk7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICB1c2VyTmFtZTogW3RoaXMuc2VsZWN0ZWQudXNlck5hbWUgfHwgJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCgyNTYpXV0sXG4gICAgICBlbWFpbDogW3RoaXMuc2VsZWN0ZWQuZW1haWwgfHwgJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLmVtYWlsLCBWYWxpZGF0b3JzLm1heExlbmd0aCgyNTYpXV0sXG4gICAgICBuYW1lOiBbdGhpcy5zZWxlY3RlZC5uYW1lIHx8ICcnLCBbVmFsaWRhdG9ycy5tYXhMZW5ndGgoNjQpXV0sXG4gICAgICBzdXJuYW1lOiBbdGhpcy5zZWxlY3RlZC5zdXJuYW1lIHx8ICcnLCBbVmFsaWRhdG9ycy5tYXhMZW5ndGgoNjQpXV0sXG4gICAgICBwaG9uZU51bWJlcjogW3RoaXMuc2VsZWN0ZWQucGhvbmVOdW1iZXIgfHwgJycsIFtWYWxpZGF0b3JzLm1heExlbmd0aCgxNildXSxcbiAgICAgIGxvY2tvdXRFbmFibGVkOiBbdGhpcy5zZWxlY3RlZC50d29GYWN0b3JFbmFibGVkIHx8ICh0aGlzLnNlbGVjdGVkLmlkID8gZmFsc2UgOiB0cnVlKV0sXG4gICAgICB0d29GYWN0b3JFbmFibGVkOiBbdGhpcy5zZWxlY3RlZC50d29GYWN0b3JFbmFibGVkIHx8ICh0aGlzLnNlbGVjdGVkLmlkID8gZmFsc2UgOiB0cnVlKV0sXG4gICAgICByb2xlTmFtZXM6IHRoaXMuZmIuYXJyYXkoXG4gICAgICAgIHRoaXMucm9sZXMubWFwKHJvbGUgPT5cbiAgICAgICAgICB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgICAgIFtyb2xlLm5hbWVdOiBbISFzbnEoKCkgPT4gdGhpcy5zZWxlY3RlZFVzZXJSb2xlcy5maW5kKHVzZXJSb2xlID0+IHVzZXJSb2xlLmlkID09PSByb2xlLmlkKSldLFxuICAgICAgICAgIH0pLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICB9KTtcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWQudXNlck5hbWUpIHtcbiAgICAgIHRoaXMuZm9ybS5hZGRDb250cm9sKCdwYXNzd29yZCcsIG5ldyBGb3JtQ29udHJvbCgnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDMyKV0pKTtcbiAgICB9XG4gIH1cblxuICBvcGVuTW9kYWwoKSB7XG4gICAgdGhpcy5idWlsZEZvcm0oKTtcbiAgICB0aGlzLmlzTW9kYWxWaXNpYmxlID0gdHJ1ZTtcbiAgfVxuXG4gIG9uQWRkKCkge1xuICAgIHRoaXMuc2VsZWN0ZWQgPSB7fSBhcyBJZGVudGl0eS5Vc2VySXRlbTtcbiAgICB0aGlzLnNlbGVjdGVkVXNlclJvbGVzID0gW10gYXMgSWRlbnRpdHkuUm9sZUl0ZW1bXTtcbiAgICB0aGlzLm9wZW5Nb2RhbCgpO1xuICB9XG5cbiAgb25FZGl0KGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLnN0b3JlXG4gICAgICAuZGlzcGF0Y2gobmV3IEdldFVzZXJCeUlkKGlkKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgR2V0VXNlclJvbGVzKGlkKSkpLFxuICAgICAgICBwbHVjaygnSWRlbnRpdHlTdGF0ZScpLFxuICAgICAgICB0YWtlKDEpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoc3RhdGU6IElkZW50aXR5LlN0YXRlKSA9PiB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBzdGF0ZS5zZWxlY3RlZFVzZXI7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRVc2VyUm9sZXMgPSBzdGF0ZS5zZWxlY3RlZFVzZXJSb2xlcztcbiAgICAgICAgdGhpcy5vcGVuTW9kYWwoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgc2F2ZSgpIHtcbiAgICBpZiAoIXRoaXMuZm9ybS52YWxpZCkgcmV0dXJuO1xuICAgIHRoaXMubW9kYWxCdXN5ID0gdHJ1ZTtcblxuICAgIGNvbnN0IHsgcm9sZU5hbWVzIH0gPSB0aGlzLmZvcm0udmFsdWU7XG4gICAgY29uc3QgbWFwcGVkUm9sZU5hbWVzID0gc25xKFxuICAgICAgKCkgPT4gcm9sZU5hbWVzLmZpbHRlcihyb2xlID0+ICEhcm9sZVtPYmplY3Qua2V5cyhyb2xlKVswXV0pLm1hcChyb2xlID0+IE9iamVjdC5rZXlzKHJvbGUpWzBdKSxcbiAgICAgIFtdLFxuICAgICk7XG5cbiAgICB0aGlzLnN0b3JlXG4gICAgICAuZGlzcGF0Y2goXG4gICAgICAgIHRoaXMuc2VsZWN0ZWQuaWRcbiAgICAgICAgICA/IG5ldyBVcGRhdGVVc2VyKHtcbiAgICAgICAgICAgICAgLi4udGhpcy5mb3JtLnZhbHVlLFxuICAgICAgICAgICAgICBpZDogdGhpcy5zZWxlY3RlZC5pZCxcbiAgICAgICAgICAgICAgcm9sZU5hbWVzOiBtYXBwZWRSb2xlTmFtZXMsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIDogbmV3IENyZWF0ZVVzZXIoe1xuICAgICAgICAgICAgICAuLi50aGlzLmZvcm0udmFsdWUsXG4gICAgICAgICAgICAgIHJvbGVOYW1lczogbWFwcGVkUm9sZU5hbWVzLFxuICAgICAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5tb2RhbEJ1c3kgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pc01vZGFsVmlzaWJsZSA9IGZhbHNlO1xuICAgICAgfSk7XG4gIH1cblxuICBkZWxldGUoaWQ6IHN0cmluZywgdXNlck5hbWU6IHN0cmluZykge1xuICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZVxuICAgICAgLndhcm4oJ0FicElkZW50aXR5OjpVc2VyRGVsZXRpb25Db25maXJtYXRpb25NZXNzYWdlJywgJ0FicElkZW50aXR5OjpBcmVZb3VTdXJlJywge1xuICAgICAgICBtZXNzYWdlTG9jYWxpemF0aW9uUGFyYW1zOiBbdXNlck5hbWVdLFxuICAgICAgfSlcbiAgICAgIC5zdWJzY3JpYmUoKHN0YXR1czogVG9hc3Rlci5TdGF0dXMpID0+IHtcbiAgICAgICAgaWYgKHN0YXR1cyA9PT0gVG9hc3Rlci5TdGF0dXMuY29uZmlybSkge1xuICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IERlbGV0ZVVzZXIoaWQpKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBvblBhZ2VDaGFuZ2UoZGF0YSkge1xuICAgIHRoaXMucGFnZVF1ZXJ5LnNraXBDb3VudCA9IGRhdGEuZmlyc3Q7XG4gICAgdGhpcy5wYWdlUXVlcnkubWF4UmVzdWx0Q291bnQgPSBkYXRhLnJvd3M7XG5cbiAgICB0aGlzLmdldCgpO1xuICB9XG5cbiAgZ2V0KCkge1xuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5zdG9yZVxuICAgICAgLmRpc3BhdGNoKG5ldyBHZXRVc2Vycyh0aGlzLnBhZ2VRdWVyeSkpXG4gICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiAodGhpcy5sb2FkaW5nID0gZmFsc2UpKSlcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5pZGVudGl0eS8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3VzZXJzL3VzZXJzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBVyxNQUFNLHNCQUFzQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFtQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUE4QixXQUFXLEVBQWEsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdHLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sR0FBRyxNQUFNLEtBQUssQ0FBQztBQUN0QixPQUFPLEVBQ0wsVUFBVSxFQUNWLFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLFFBQVEsRUFDUixVQUFVLEdBQ1gsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV4QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFLNUQsTUFBTSxPQUFPLGNBQWM7Ozs7OztJQXNDekIsWUFBb0IsbUJBQXdDLEVBQVUsRUFBZSxFQUFVLEtBQVk7UUFBdkYsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUFVLE9BQUUsR0FBRixFQUFFLENBQWE7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFPO1FBcEIzRyx1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFJcEMsY0FBUyxHQUF3QjtZQUMvQixPQUFPLEVBQUUsVUFBVTtTQUNwQixDQUFDO1FBSUYsWUFBTyxH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Q0FBQyxrQkFBa0IsQ0FBQztzQ0FDNUIsVUFBVTttREFBUzs7O0lBSmhDLCtCQUN1Qzs7SUFFdkMscUNBQ2dDOztJQUVoQyxzQ0FDK0I7O0lBRS9CLDhCQUFnQjs7SUFFaEIsa0NBQTRCOztJQUU1QiwyQ0FBdUM7O0lBRXZDLCtCQUEyQjs7SUFFM0IsNENBQW9DOztJQUVwQyxxQ0FBb0I7O0lBRXBCLG1DQUVFOztJQUVGLHdDQUF3Qjs7SUFFeEIsaUNBQXlCOztJQUV6QixtQ0FBMkI7O0lBRTNCLG1DQUE2Rjs7Ozs7SUFNakYsNkNBQWdEOzs7OztJQUFFLDRCQUF1Qjs7Ozs7SUFBRSwrQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBQlAgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSwgVG9hc3RlciB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IENvbXBvbmVudCwgVGVtcGxhdGVSZWYsIFRyYWNrQnlGdW5jdGlvbiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1BcnJheSwgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycywgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmluYWxpemUsIHBsdWNrLCBzd2l0Y2hNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgc25xIGZyb20gJ3NucSc7XG5pbXBvcnQge1xuICBDcmVhdGVVc2VyLFxuICBEZWxldGVVc2VyLFxuICBHZXRVc2VyQnlJZCxcbiAgR2V0VXNlclJvbGVzLFxuICBHZXRVc2VycyxcbiAgVXBkYXRlVXNlcixcbn0gZnJvbSAnLi4vLi4vYWN0aW9ucy9pZGVudGl0eS5hY3Rpb25zJztcbmltcG9ydCB7IElkZW50aXR5IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2lkZW50aXR5JztcbmltcG9ydCB7IElkZW50aXR5U3RhdGUgfSBmcm9tICcuLi8uLi9zdGF0ZXMvaWRlbnRpdHkuc3RhdGUnO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLXVzZXJzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VzZXJzLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgVXNlcnNDb21wb25lbnQge1xuICBAU2VsZWN0KElkZW50aXR5U3RhdGUuZ2V0VXNlcnMpXG4gIGRhdGEkOiBPYnNlcnZhYmxlPElkZW50aXR5LlVzZXJJdGVtW10+O1xuXG4gIEBTZWxlY3QoSWRlbnRpdHlTdGF0ZS5nZXRVc2Vyc1RvdGFsQ291bnQpXG4gIHRvdGFsQ291bnQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgQFZpZXdDaGlsZCgnbW9kYWxDb250ZW50JywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIG1vZGFsQ29udGVudDogVGVtcGxhdGVSZWY8YW55PjtcblxuICBmb3JtOiBGb3JtR3JvdXA7XG5cbiAgc2VsZWN0ZWQ6IElkZW50aXR5LlVzZXJJdGVtO1xuXG4gIHNlbGVjdGVkVXNlclJvbGVzOiBJZGVudGl0eS5Sb2xlSXRlbVtdO1xuXG4gIHJvbGVzOiBJZGVudGl0eS5Sb2xlSXRlbVtdO1xuXG4gIHZpc2libGVQZXJtaXNzaW9uczogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByb3ZpZGVyS2V5OiBzdHJpbmc7XG5cbiAgcGFnZVF1ZXJ5OiBBQlAuUGFnZVF1ZXJ5UGFyYW1zID0ge1xuICAgIHNvcnRpbmc6ICd1c2VyTmFtZScsXG4gIH07XG5cbiAgaXNNb2RhbFZpc2libGU6IGJvb2xlYW47XG5cbiAgbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIG1vZGFsQnVzeTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHRyYWNrQnlGbjogVHJhY2tCeUZ1bmN0aW9uPEFic3RyYWN0Q29udHJvbD4gPSAoaW5kZXgsIGl0ZW0pID0+IE9iamVjdC5rZXlzKGl0ZW0pWzBdIHx8IGluZGV4O1xuXG4gIGdldCByb2xlR3JvdXBzKCk6IEZvcm1Hcm91cFtdIHtcbiAgICByZXR1cm4gc25xKCgpID0+ICh0aGlzLmZvcm0uZ2V0KCdyb2xlTmFtZXMnKSBhcyBGb3JtQXJyYXkpLmNvbnRyb2xzIGFzIEZvcm1Hcm91cFtdLCBbXSk7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UsIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIHN0b3JlOiBTdG9yZSkge31cblxuICBvblNlYXJjaCh2YWx1ZSkge1xuICAgIHRoaXMucGFnZVF1ZXJ5LmZpbHRlciA9IHZhbHVlO1xuICAgIHRoaXMuZ2V0KCk7XG4gIH1cblxuICBidWlsZEZvcm0oKSB7XG4gICAgdGhpcy5yb2xlcyA9IHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoSWRlbnRpdHlTdGF0ZS5nZXRSb2xlcyk7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICB1c2VyTmFtZTogW3RoaXMuc2VsZWN0ZWQudXNlck5hbWUgfHwgJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCgyNTYpXV0sXG4gICAgICBlbWFpbDogW3RoaXMuc2VsZWN0ZWQuZW1haWwgfHwgJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLmVtYWlsLCBWYWxpZGF0b3JzLm1heExlbmd0aCgyNTYpXV0sXG4gICAgICBuYW1lOiBbdGhpcy5zZWxlY3RlZC5uYW1lIHx8ICcnLCBbVmFsaWRhdG9ycy5tYXhMZW5ndGgoNjQpXV0sXG4gICAgICBzdXJuYW1lOiBbdGhpcy5zZWxlY3RlZC5zdXJuYW1lIHx8ICcnLCBbVmFsaWRhdG9ycy5tYXhMZW5ndGgoNjQpXV0sXG4gICAgICBwaG9uZU51bWJlcjogW3RoaXMuc2VsZWN0ZWQucGhvbmVOdW1iZXIgfHwgJycsIFtWYWxpZGF0b3JzLm1heExlbmd0aCgxNildXSxcbiAgICAgIGxvY2tvdXRFbmFibGVkOiBbdGhpcy5zZWxlY3RlZC50d29GYWN0b3JFbmFibGVkIHx8ICh0aGlzLnNlbGVjdGVkLmlkID8gZmFsc2UgOiB0cnVlKV0sXG4gICAgICB0d29GYWN0b3JFbmFibGVkOiBbdGhpcy5zZWxlY3RlZC50d29GYWN0b3JFbmFibGVkIHx8ICh0aGlzLnNlbGVjdGVkLmlkID8gZmFsc2UgOiB0cnVlKV0sXG4gICAgICByb2xlTmFtZXM6IHRoaXMuZmIuYXJyYXkoXG4gICAgICAgIHRoaXMucm9sZXMubWFwKHJvbGUgPT5cbiAgICAgICAgICB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgICAgIFtyb2xlLm5hbWVdOiBbISFzbnEoKCkgPT4gdGhpcy5zZWxlY3RlZFVzZXJSb2xlcy5maW5kKHVzZXJSb2xlID0+IHVzZXJSb2xlLmlkID09PSByb2xlLmlkKSldLFxuICAgICAgICAgIH0pLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICB9KTtcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWQudXNlck5hbWUpIHtcbiAgICAgIHRoaXMuZm9ybS5hZGRDb250cm9sKCdwYXNzd29yZCcsIG5ldyBGb3JtQ29udHJvbCgnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDMyKV0pKTtcbiAgICB9XG4gIH1cblxuICBvcGVuTW9kYWwoKSB7XG4gICAgdGhpcy5idWlsZEZvcm0oKTtcbiAgICB0aGlzLmlzTW9kYWxWaXNpYmxlID0gdHJ1ZTtcbiAgfVxuXG4gIG9uQWRkKCkge1xuICAgIHRoaXMuc2VsZWN0ZWQgPSB7fSBhcyBJZGVudGl0eS5Vc2VySXRlbTtcbiAgICB0aGlzLnNlbGVjdGVkVXNlclJvbGVzID0gW10gYXMgSWRlbnRpdHkuUm9sZUl0ZW1bXTtcbiAgICB0aGlzLm9wZW5Nb2RhbCgpO1xuICB9XG5cbiAgb25FZGl0KGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLnN0b3JlXG4gICAgICAuZGlzcGF0Y2gobmV3IEdldFVzZXJCeUlkKGlkKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgR2V0VXNlclJvbGVzKGlkKSkpLFxuICAgICAgICBwbHVjaygnSWRlbnRpdHlTdGF0ZScpLFxuICAgICAgICB0YWtlKDEpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoc3RhdGU6IElkZW50aXR5LlN0YXRlKSA9PiB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBzdGF0ZS5zZWxlY3RlZFVzZXI7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRVc2VyUm9sZXMgPSBzdGF0ZS5zZWxlY3RlZFVzZXJSb2xlcztcbiAgICAgICAgdGhpcy5vcGVuTW9kYWwoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgc2F2ZSgpIHtcbiAgICBpZiAoIXRoaXMuZm9ybS52YWxpZCkgcmV0dXJuO1xuICAgIHRoaXMubW9kYWxCdXN5ID0gdHJ1ZTtcblxuICAgIGNvbnN0IHsgcm9sZU5hbWVzIH0gPSB0aGlzLmZvcm0udmFsdWU7XG4gICAgY29uc3QgbWFwcGVkUm9sZU5hbWVzID0gc25xKFxuICAgICAgKCkgPT4gcm9sZU5hbWVzLmZpbHRlcihyb2xlID0+ICEhcm9sZVtPYmplY3Qua2V5cyhyb2xlKVswXV0pLm1hcChyb2xlID0+IE9iamVjdC5rZXlzKHJvbGUpWzBdKSxcbiAgICAgIFtdLFxuICAgICk7XG5cbiAgICB0aGlzLnN0b3JlXG4gICAgICAuZGlzcGF0Y2goXG4gICAgICAgIHRoaXMuc2VsZWN0ZWQuaWRcbiAgICAgICAgICA/IG5ldyBVcGRhdGVVc2VyKHtcbiAgICAgICAgICAgICAgLi4udGhpcy5mb3JtLnZhbHVlLFxuICAgICAgICAgICAgICBpZDogdGhpcy5zZWxlY3RlZC5pZCxcbiAgICAgICAgICAgICAgcm9sZU5hbWVzOiBtYXBwZWRSb2xlTmFtZXMsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIDogbmV3IENyZWF0ZVVzZXIoe1xuICAgICAgICAgICAgICAuLi50aGlzLmZvcm0udmFsdWUsXG4gICAgICAgICAgICAgIHJvbGVOYW1lczogbWFwcGVkUm9sZU5hbWVzLFxuICAgICAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5tb2RhbEJ1c3kgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pc01vZGFsVmlzaWJsZSA9IGZhbHNlO1xuICAgICAgfSk7XG4gIH1cblxuICBkZWxldGUoaWQ6IHN0cmluZywgdXNlck5hbWU6IHN0cmluZykge1xuICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZVxuICAgICAgLndhcm4oJ0FicElkZW50aXR5OjpVc2VyRGVsZXRpb25Db25maXJtYXRpb25NZXNzYWdlJywgJ0FicElkZW50aXR5OjpBcmVZb3VTdXJlJywge1xuICAgICAgICBtZXNzYWdlTG9jYWxpemF0aW9uUGFyYW1zOiBbdXNlck5hbWVdLFxuICAgICAgfSlcbiAgICAgIC5zdWJzY3JpYmUoKHN0YXR1czogVG9hc3Rlci5TdGF0dXMpID0+IHtcbiAgICAgICAgaWYgKHN0YXR1cyA9PT0gVG9hc3Rlci5TdGF0dXMuY29uZmlybSkge1xuICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IERlbGV0ZVVzZXIoaWQpKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBvblBhZ2VDaGFuZ2UoZGF0YSkge1xuICAgIHRoaXMucGFnZVF1ZXJ5LnNraXBDb3VudCA9IGRhdGEuZmlyc3Q7XG4gICAgdGhpcy5wYWdlUXVlcnkubWF4UmVzdWx0Q291bnQgPSBkYXRhLnJvd3M7XG5cbiAgICB0aGlzLmdldCgpO1xuICB9XG5cbiAgZ2V0KCkge1xuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5zdG9yZVxuICAgICAgLmRpc3BhdGNoKG5ldyBHZXRVc2Vycyh0aGlzLnBhZ2VRdWVyeSkpXG4gICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiAodGhpcy5sb2FkaW5nID0gZmFsc2UpKSlcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/esm2015/lib/identity.module.js b/npm/ng-packs/dist/identity/esm2015/lib/identity.module.js index 54493dc951..b61c3de718 100644 --- a/npm/ng-packs/dist/identity/esm2015/lib/identity.module.js +++ b/npm/ng-packs/dist/identity/esm2015/lib/identity.module.js @@ -14,7 +14,6 @@ import { UsersComponent } from './components/users/users.component'; import { PermissionManagementModule } from '@abp/ng.permission-management'; import { TableModule } from 'primeng/table'; import { NgxValidateCoreModule } from '@ngx-validate/core'; -import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar'; export class IdentityModule { } IdentityModule.decorators = [ @@ -30,8 +29,13 @@ IdentityModule.decorators = [ NgbDropdownModule, PermissionManagementModule, NgxValidateCoreModule, - PerfectScrollbarModule, ], },] } ]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRlbnRpdHkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5pZGVudGl0eS8iLCJzb3VyY2VzIjpbImxpYi9pZGVudGl0eS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBaUIvRCxNQUFNLE9BQU8sY0FBYzs7O1lBZjFCLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsY0FBYyxDQUFDO2dCQUM5QyxPQUFPLEVBQUU7b0JBQ1AsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDO29CQUN0QyxVQUFVO29CQUNWLHFCQUFxQjtvQkFDckIsZUFBZTtvQkFDZixpQkFBaUI7b0JBQ2pCLFdBQVc7b0JBQ1gsaUJBQWlCO29CQUNqQiwwQkFBMEI7b0JBQzFCLHFCQUFxQjtvQkFDckIsc0JBQXNCO2lCQUN2QjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd4c01vZHVsZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IFJvbGVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JvbGVzL3JvbGVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJZGVudGl0eVJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2lkZW50aXR5LXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IElkZW50aXR5U3RhdGUgfSBmcm9tICcuL3N0YXRlcy9pZGVudGl0eS5zdGF0ZSc7XG5pbXBvcnQgeyBOZ2JUYWJzZXRNb2R1bGUsIE5nYkRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgVGhlbWVTaGFyZWRNb2R1bGUgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBVc2Vyc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy91c2Vycy91c2Vycy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGVybWlzc2lvbk1hbmFnZW1lbnRNb2R1bGUgfSBmcm9tICdAYWJwL25nLnBlcm1pc3Npb24tbWFuYWdlbWVudCc7XG5pbXBvcnQgeyBUYWJsZU1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdGFibGUnO1xuaW1wb3J0IHsgTmd4VmFsaWRhdGVDb3JlTW9kdWxlIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcbmltcG9ydCB7IFBlcmZlY3RTY3JvbGxiYXJNb2R1bGUgfSBmcm9tICduZ3gtcGVyZmVjdC1zY3JvbGxiYXInO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtSb2xlc0NvbXBvbmVudCwgVXNlcnNDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgTmd4c01vZHVsZS5mb3JGZWF0dXJlKFtJZGVudGl0eVN0YXRlXSksXG4gICAgQ29yZU1vZHVsZSxcbiAgICBJZGVudGl0eVJvdXRpbmdNb2R1bGUsXG4gICAgTmdiVGFic2V0TW9kdWxlLFxuICAgIFRoZW1lU2hhcmVkTW9kdWxlLFxuICAgIFRhYmxlTW9kdWxlLFxuICAgIE5nYkRyb3Bkb3duTW9kdWxlLFxuICAgIFBlcm1pc3Npb25NYW5hZ2VtZW50TW9kdWxlLFxuICAgIE5neFZhbGlkYXRlQ29yZU1vZHVsZSxcbiAgICBQZXJmZWN0U2Nyb2xsYmFyTW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBJZGVudGl0eU1vZHVsZSB7fVxuIl19 \ No newline at end of file +/** + * @return {?} + */ +export function IdentityProviders() { + return []; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRlbnRpdHkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5pZGVudGl0eS8iLCJzb3VyY2VzIjpbImxpYi9pZGVudGl0eS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLFFBQVEsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBZ0IzRCxNQUFNLE9BQU8sY0FBYzs7O1lBZDFCLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsY0FBYyxDQUFDO2dCQUM5QyxPQUFPLEVBQUU7b0JBQ1AsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDO29CQUN0QyxVQUFVO29CQUNWLHFCQUFxQjtvQkFDckIsZUFBZTtvQkFDZixpQkFBaUI7b0JBQ2pCLFdBQVc7b0JBQ1gsaUJBQWlCO29CQUNqQiwwQkFBMEI7b0JBQzFCLHFCQUFxQjtpQkFDdEI7YUFDRjs7Ozs7QUFHRCxNQUFNLFVBQVUsaUJBQWlCO0lBQy9CLE9BQU8sRUFBRSxDQUFDO0FBQ1osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgTmdNb2R1bGUsIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3hzTW9kdWxlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgUm9sZXNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcm9sZXMvcm9sZXMuY29tcG9uZW50JztcbmltcG9ydCB7IElkZW50aXR5Um91dGluZ01vZHVsZSB9IGZyb20gJy4vaWRlbnRpdHktcm91dGluZy5tb2R1bGUnO1xuaW1wb3J0IHsgSWRlbnRpdHlTdGF0ZSB9IGZyb20gJy4vc3RhdGVzL2lkZW50aXR5LnN0YXRlJztcbmltcG9ydCB7IE5nYlRhYnNldE1vZHVsZSwgTmdiRHJvcGRvd25Nb2R1bGUgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IFVzZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3VzZXJzL3VzZXJzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uTWFuYWdlbWVudE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50JztcbmltcG9ydCB7IFRhYmxlTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XG5pbXBvcnQgeyBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtSb2xlc0NvbXBvbmVudCwgVXNlcnNDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgTmd4c01vZHVsZS5mb3JGZWF0dXJlKFtJZGVudGl0eVN0YXRlXSksXG4gICAgQ29yZU1vZHVsZSxcbiAgICBJZGVudGl0eVJvdXRpbmdNb2R1bGUsXG4gICAgTmdiVGFic2V0TW9kdWxlLFxuICAgIFRoZW1lU2hhcmVkTW9kdWxlLFxuICAgIFRhYmxlTW9kdWxlLFxuICAgIE5nYkRyb3Bkb3duTW9kdWxlLFxuICAgIFBlcm1pc3Npb25NYW5hZ2VtZW50TW9kdWxlLFxuICAgIE5neFZhbGlkYXRlQ29yZU1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgSWRlbnRpdHlNb2R1bGUge31cblxuZXhwb3J0IGZ1bmN0aW9uIElkZW50aXR5UHJvdmlkZXJzKCk6IFByb3ZpZGVyW10ge1xuICByZXR1cm4gW107XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/esm2015/lib/root-identity.module.js b/npm/ng-packs/dist/identity/esm2015/lib/root-identity.module.js deleted file mode 100644 index 1c7d2dad4a..0000000000 --- a/npm/ng-packs/dist/identity/esm2015/lib/root-identity.module.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { NgModule } from '@angular/core'; -export class RootIdentityModule { - /** - * @return {?} - */ - static forRoot() { - return { - ngModule: RootIdentityModule, - providers: [], - }; - } -} -RootIdentityModule.decorators = [ - { type: NgModule, args: [{},] } -]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1pZGVudGl0eS5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmlkZW50aXR5LyIsInNvdXJjZXMiOlsibGliL3Jvb3QtaWRlbnRpdHkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUc5RCxNQUFNLE9BQU8sa0JBQWtCOzs7O0lBQzdCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxrQkFBa0I7WUFDNUIsU0FBUyxFQUFFLEVBQUU7U0FDZCxDQUFDO0lBQ0osQ0FBQzs7O1lBUEYsUUFBUSxTQUFDLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ATmdNb2R1bGUoe30pXG5leHBvcnQgY2xhc3MgUm9vdElkZW50aXR5TW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVycyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBSb290SWRlbnRpdHlNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/esm2015/public-api.js b/npm/ng-packs/dist/identity/esm2015/public-api.js index acd44ac98e..bd87001daf 100644 --- a/npm/ng-packs/dist/identity/esm2015/public-api.js +++ b/npm/ng-packs/dist/identity/esm2015/public-api.js @@ -5,8 +5,7 @@ /* * Public API Surface of identity */ -export { RootIdentityModule } from './lib/root-identity.module'; -export { IdentityModule } from './lib/identity.module'; +export { IdentityProviders, IdentityModule } from './lib/identity.module'; export { GetRoles, GetRoleById, DeleteRole, CreateRole, UpdateRole, GetUsers, GetUserById, DeleteUser, CreateUser, UpdateUser, GetUserRoles } from './lib/actions/identity.actions'; export { RolesComponent } from './lib/components/roles/roles.component'; export { IDENTITY_ROUTES } from './lib/constants/routes'; @@ -14,4 +13,4 @@ export {} from './lib/models/identity'; export { RoleResolver } from './lib/resolvers/roles.resolver'; export { IdentityService } from './lib/services/identity.service'; export { IdentityState } from './lib/states/identity.state'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuaWRlbnRpdHkvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxtQ0FBYyw0QkFBNEIsQ0FBQztBQUMzQywrQkFBYyx1QkFBdUIsQ0FBQztBQUN0QyxtSkFBYyxnQ0FBZ0MsQ0FBQztBQUMvQywrQkFBYyx3Q0FBd0MsQ0FBQztBQUN2RCxnQ0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxlQUFjLHVCQUF1QixDQUFDO0FBQ3RDLDZCQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGdDQUFjLGlDQUFpQyxDQUFDO0FBQ2hELDhCQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBpZGVudGl0eVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3Jvb3QtaWRlbnRpdHkubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lkZW50aXR5Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zL2lkZW50aXR5LmFjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9yb2xlcy9yb2xlcy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzL3JvdXRlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaWRlbnRpdHknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcmVzb2x2ZXJzL3JvbGVzLnJlc29sdmVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2lkZW50aXR5LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc3RhdGVzL2lkZW50aXR5LnN0YXRlJztcbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuaWRlbnRpdHkvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxrREFBYyx1QkFBdUIsQ0FBQztBQUN0QyxtSkFBYyxnQ0FBZ0MsQ0FBQztBQUMvQywrQkFBYyx3Q0FBd0MsQ0FBQztBQUN2RCxnQ0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxlQUFjLHVCQUF1QixDQUFDO0FBQ3RDLDZCQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGdDQUFjLGlDQUFpQyxDQUFDO0FBQ2hELDhCQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBpZGVudGl0eVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2lkZW50aXR5Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zL2lkZW50aXR5LmFjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9yb2xlcy9yb2xlcy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzL3JvdXRlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaWRlbnRpdHknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcmVzb2x2ZXJzL3JvbGVzLnJlc29sdmVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2lkZW50aXR5LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc3RhdGVzL2lkZW50aXR5LnN0YXRlJztcbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/esm5/abp-ng.identity.js b/npm/ng-packs/dist/identity/esm5/abp-ng.identity.js index 2ccd8a6a10..30171986c1 100644 --- a/npm/ng-packs/dist/identity/esm5/abp-ng.identity.js +++ b/npm/ng-packs/dist/identity/esm5/abp-ng.identity.js @@ -5,8 +5,8 @@ /** * Generated bundle index. Do not edit. */ -export { RootIdentityModule, IdentityModule, GetRoles, GetRoleById, DeleteRole, CreateRole, UpdateRole, GetUsers, GetUserById, DeleteUser, CreateUser, UpdateUser, GetUserRoles, RolesComponent, IDENTITY_ROUTES, RoleResolver, IdentityService, IdentityState } from './public-api'; +export { IdentityProviders, IdentityModule, GetRoles, GetRoleById, DeleteRole, CreateRole, UpdateRole, GetUsers, GetUserById, DeleteUser, CreateUser, UpdateUser, GetUserRoles, RolesComponent, IDENTITY_ROUTES, RoleResolver, IdentityService, IdentityState } from './public-api'; export { UsersComponent as ɵb } from './lib/components/users/users.component'; export { IdentityRoutingModule as ɵc } from './lib/identity-routing.module'; export { UserResolver as ɵd } from './lib/resolvers/users.resolver'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmlkZW50aXR5LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5pZGVudGl0eS8iLCJzb3VyY2VzIjpbImFicC1uZy5pZGVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsc1FBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBRTFFLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7VXNlcnNDb21wb25lbnQgYXMgybVifSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3VzZXJzL3VzZXJzLmNvbXBvbmVudCc7XG5leHBvcnQge0lkZW50aXR5Um91dGluZ01vZHVsZSBhcyDJtWN9IGZyb20gJy4vbGliL2lkZW50aXR5LXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7SWRlbnRpdHkgYXMgybVhfSBmcm9tICcuL2xpYi9tb2RlbHMvaWRlbnRpdHknO1xuZXhwb3J0IHtVc2VyUmVzb2x2ZXIgYXMgybVkfSBmcm9tICcuL2xpYi9yZXNvbHZlcnMvdXNlcnMucmVzb2x2ZXInOyJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLmlkZW50aXR5LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5pZGVudGl0eS8iLCJzb3VyY2VzIjpbImFicC1uZy5pZGVudGl0eS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEscVFBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBRTFFLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7VXNlcnNDb21wb25lbnQgYXMgybVifSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3VzZXJzL3VzZXJzLmNvbXBvbmVudCc7XG5leHBvcnQge0lkZW50aXR5Um91dGluZ01vZHVsZSBhcyDJtWN9IGZyb20gJy4vbGliL2lkZW50aXR5LXJvdXRpbmcubW9kdWxlJztcbmV4cG9ydCB7SWRlbnRpdHkgYXMgybVhfSBmcm9tICcuL2xpYi9tb2RlbHMvaWRlbnRpdHknO1xuZXhwb3J0IHtVc2VyUmVzb2x2ZXIgYXMgybVkfSBmcm9tICcuL2xpYi9yZXNvbHZlcnMvdXNlcnMucmVzb2x2ZXInOyJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/esm5/lib/components/users/users.component.js b/npm/ng-packs/dist/identity/esm5/lib/components/users/users.component.js index 273bf12567..c6164fd76f 100644 --- a/npm/ng-packs/dist/identity/esm5/lib/components/users/users.component.js +++ b/npm/ng-packs/dist/identity/esm5/lib/components/users/users.component.js @@ -238,7 +238,7 @@ var UsersComponent = /** @class */ (function () { UsersComponent.decorators = [ { type: Component, args: [{ selector: 'abp-users', - template: "
\n
\n
\n
\n
{{ 'AbpIdentity::Users' | abpLocalization }}
\n
\n
\n \n {{ 'AbpIdentity::NewUser' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n {{ 'AbpIdentity::UserName' | abpLocalization }}\n {{ 'AbpIdentity::EmailAddress' | abpLocalization }}\n {{ 'AbpIdentity::PhoneNumber' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.userName }}\n {{ data.email }}\n {{ data.phoneNumber }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}

\n
\n\n \n \n
\n \n \n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n
\n
\n\n \n \n {{\n 'AbpIdentity::Save' | abpLocalization\n }}\n \n
\n\n\n" + template: "
\n
\n
\n
\n
{{ 'AbpIdentity::Users' | abpLocalization }}
\n
\n
\n \n {{ 'AbpIdentity::NewUser' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n {{ 'AbpIdentity::UserName' | abpLocalization }}\n {{ 'AbpIdentity::EmailAddress' | abpLocalization }}\n {{ 'AbpIdentity::PhoneNumber' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.userName }}\n {{ data.email }}\n {{ data.phoneNumber }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}

\n
\n\n \n
\n \n \n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n
\n\n \n \n {{\n 'AbpIdentity::Save' | abpLocalization\n }}\n \n
\n\n\n" }] } ]; /** @nocollapse */ @@ -306,4 +306,4 @@ if (false) { */ UsersComponent.prototype.store; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5pZGVudGl0eS8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3VzZXJzL3VzZXJzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBVyxNQUFNLHNCQUFzQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFtQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUE4QixXQUFXLEVBQWEsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdHLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sR0FBRyxNQUFNLEtBQUssQ0FBQztBQUN0QixPQUFPLEVBQ0wsVUFBVSxFQUNWLFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLFFBQVEsRUFDUixVQUFVLEdBQ1gsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV4QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQ7SUEwQ0Usd0JBQW9CLG1CQUF3QyxFQUFVLEVBQWUsRUFBVSxLQUFZO1FBQXZGLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFBVSxPQUFFLEdBQUYsRUFBRSxDQUFhO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBTztRQXBCM0csdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBSXBDLGNBQVMsR0FBd0I7WUFDL0IsT0FBTyxFQUFFLFVBQVU7U0FDcEIsQ0FBQztRQUlGLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFFekIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQixjQUFTOzs7OztRQUFxQyxVQUFDLEtBQUssRUFBRSxJQUFJLElBQUssT0FBQSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssRUFBN0IsQ0FBNkIsRUFBQztJQU1pQixDQUFDO0lBSi9HLHNCQUFJLHNDQUFVOzs7O1FBQWQ7WUFBQSxpQkFFQztZQURDLE9BQU8sR0FBRzs7O1lBQUMscUJBQU0sbUJBQUEsQ0FBQyxtQkFBQSxLQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsRUFBYSxDQUFDLENBQUMsUUFBUSxFQUFlLEdBQUEsR0FBRSxFQUFFLENBQUMsQ0FBQztRQUMxRixDQUFDOzs7T0FBQTs7Ozs7SUFJRCxpQ0FBUTs7OztJQUFSLFVBQVMsS0FBSztRQUNaLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUM5QixJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDYixDQUFDOzs7O0lBRUQsa0NBQVM7OztJQUFUO1FBQUEsaUJBcUJDO1FBcEJDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDeEIsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLElBQUksRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDMUYsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLElBQUksRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN0RyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksSUFBSSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDNUQsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLElBQUksRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2xFLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxJQUFJLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUMxRSxjQUFjLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDckYsZ0JBQWdCLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdkYsU0FBUyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUN0QixJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUc7Ozs7WUFBQyxVQUFBLElBQUk7O2dCQUNqQixPQUFBLEtBQUksQ0FBQyxFQUFFLENBQUMsS0FBSztvQkFDWCxHQUFDLElBQUksQ0FBQyxJQUFJLElBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRzs7O3dCQUFDLGNBQU0sT0FBQSxLQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSTs7Ozt3QkFBQyxVQUFBLFFBQVEsSUFBSSxPQUFBLFFBQVEsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEVBQUUsRUFBdkIsQ0FBdUIsRUFBQyxFQUFoRSxDQUFnRSxFQUFDLENBQUM7d0JBQzVGO1lBRkYsQ0FFRSxFQUNILENBQ0Y7U0FDRixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUU7WUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN4RztJQUNILENBQUM7Ozs7SUFFRCxrQ0FBUzs7O0lBQVQ7UUFDRSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7SUFDN0IsQ0FBQzs7OztJQUVELDhCQUFLOzs7SUFBTDtRQUNFLElBQUksQ0FBQyxRQUFRLEdBQUcsbUJBQUEsRUFBRSxFQUFxQixDQUFDO1FBQ3hDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxtQkFBQSxFQUFFLEVBQXVCLENBQUM7UUFDbkQsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7Ozs7O0lBRUQsK0JBQU07Ozs7SUFBTixVQUFPLEVBQVU7UUFBakIsaUJBYUM7UUFaQyxJQUFJLENBQUMsS0FBSzthQUNQLFFBQVEsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQzthQUM3QixJQUFJLENBQ0gsU0FBUzs7O1FBQUMsY0FBTSxPQUFBLEtBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQXpDLENBQXlDLEVBQUMsRUFDMUQsS0FBSyxDQUFDLGVBQWUsQ0FBQyxFQUN0QixJQUFJLENBQUMsQ0FBQyxDQUFDLENBQ1I7YUFDQSxTQUFTOzs7O1FBQUMsVUFBQyxLQUFxQjtZQUMvQixLQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7WUFDbkMsS0FBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQztZQUNqRCxLQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbkIsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7O0lBRUQsNkJBQUk7OztJQUFKO1FBQUEsaUJBMkJDO1FBMUJDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPO1FBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBRWQsSUFBQSxxQ0FBUzs7WUFDWCxlQUFlLEdBQUcsR0FBRzs7O1FBQ3pCLGNBQU0sT0FBQSxTQUFTLENBQUMsTUFBTTs7OztRQUFDLFVBQUEsSUFBSSxJQUFJLE9BQUEsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQTVCLENBQTRCLEVBQUMsQ0FBQyxHQUFHOzs7O1FBQUMsVUFBQSxJQUFJLElBQUksT0FBQSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFwQixDQUFvQixFQUFDLEVBQXhGLENBQXdGLEdBQzlGLEVBQUUsQ0FDSDtRQUVELElBQUksQ0FBQyxLQUFLO2FBQ1AsUUFBUSxDQUNQLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNkLENBQUMsQ0FBQyxJQUFJLFVBQVUsc0JBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQ2xCLEVBQUUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFDcEIsU0FBUyxFQUFFLGVBQWUsSUFDMUI7WUFDSixDQUFDLENBQUMsSUFBSSxVQUFVLHNCQUNULElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUNsQixTQUFTLEVBQUUsZUFBZSxJQUMxQixDQUNQO2FBQ0EsU0FBUzs7O1FBQUM7WUFDVCxLQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixLQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztRQUM5QixDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7Ozs7OztJQUVELCtCQUFNOzs7OztJQUFOLFVBQU8sRUFBVSxFQUFFLFFBQWdCO1FBQW5DLGlCQVVDO1FBVEMsSUFBSSxDQUFDLG1CQUFtQjthQUNyQixJQUFJLENBQUMsOENBQThDLEVBQUUseUJBQXlCLEVBQUU7WUFDL0UseUJBQXlCLEVBQUUsQ0FBQyxRQUFRLENBQUM7U0FDdEMsQ0FBQzthQUNELFNBQVM7Ozs7UUFBQyxVQUFDLE1BQXNCO1lBQ2hDLElBQUksTUFBTSw0QkFBMkIsRUFBRTtnQkFDckMsS0FBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUN6QztRQUNILENBQUMsRUFBQyxDQUFDO0lBQ1AsQ0FBQzs7Ozs7SUFFRCxxQ0FBWTs7OztJQUFaLFVBQWEsSUFBSTtRQUNmLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDdEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUUxQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDYixDQUFDOzs7O0lBRUQsNEJBQUc7OztJQUFIO1FBQUEsaUJBTUM7UUFMQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsS0FBSzthQUNQLFFBQVEsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDdEMsSUFBSSxDQUFDLFFBQVE7OztRQUFDLGNBQU0sT0FBQSxDQUFDLEtBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLEVBQXRCLENBQXNCLEVBQUMsQ0FBQzthQUM1QyxTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDOztnQkF4SkYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxXQUFXO29CQUNyQixvL1BBQXFDO2lCQUN0Qzs7OztnQkFwQlEsbUJBQW1CO2dCQUVTLFdBQVc7Z0JBQy9CLEtBQUs7OzsrQkF5Qm5CLFNBQVMsU0FBQyxjQUFjLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFOztJQUw1QztRQURDLE1BQU0sQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDOzBDQUN4QixVQUFVO2lEQUFzQjtJQUd2QztRQURDLE1BQU0sQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUM7MENBQzVCLFVBQVU7dURBQVM7SUFnSmxDLHFCQUFDO0NBQUEsQUF6SkQsSUF5SkM7U0FySlksY0FBYzs7O0lBQ3pCLCtCQUN1Qzs7SUFFdkMscUNBQ2dDOztJQUVoQyxzQ0FDK0I7O0lBRS9CLDhCQUFnQjs7SUFFaEIsa0NBQTRCOztJQUU1QiwyQ0FBdUM7O0lBRXZDLCtCQUEyQjs7SUFFM0IsNENBQW9DOztJQUVwQyxxQ0FBb0I7O0lBRXBCLG1DQUVFOztJQUVGLHdDQUF3Qjs7SUFFeEIsaUNBQXlCOztJQUV6QixtQ0FBMkI7O0lBRTNCLG1DQUE2Rjs7Ozs7SUFNakYsNkNBQWdEOzs7OztJQUFFLDRCQUF1Qjs7Ozs7SUFBRSwrQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBQlAgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSwgVG9hc3RlciB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IENvbXBvbmVudCwgVGVtcGxhdGVSZWYsIFRyYWNrQnlGdW5jdGlvbiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1BcnJheSwgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycywgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmluYWxpemUsIHBsdWNrLCBzd2l0Y2hNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgc25xIGZyb20gJ3NucSc7XG5pbXBvcnQge1xuICBDcmVhdGVVc2VyLFxuICBEZWxldGVVc2VyLFxuICBHZXRVc2VyQnlJZCxcbiAgR2V0VXNlclJvbGVzLFxuICBHZXRVc2VycyxcbiAgVXBkYXRlVXNlcixcbn0gZnJvbSAnLi4vLi4vYWN0aW9ucy9pZGVudGl0eS5hY3Rpb25zJztcbmltcG9ydCB7IElkZW50aXR5IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2lkZW50aXR5JztcbmltcG9ydCB7IElkZW50aXR5U3RhdGUgfSBmcm9tICcuLi8uLi9zdGF0ZXMvaWRlbnRpdHkuc3RhdGUnO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLXVzZXJzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VzZXJzLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgVXNlcnNDb21wb25lbnQge1xuICBAU2VsZWN0KElkZW50aXR5U3RhdGUuZ2V0VXNlcnMpXG4gIGRhdGEkOiBPYnNlcnZhYmxlPElkZW50aXR5LlVzZXJJdGVtW10+O1xuXG4gIEBTZWxlY3QoSWRlbnRpdHlTdGF0ZS5nZXRVc2Vyc1RvdGFsQ291bnQpXG4gIHRvdGFsQ291bnQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgQFZpZXdDaGlsZCgnbW9kYWxDb250ZW50JywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIG1vZGFsQ29udGVudDogVGVtcGxhdGVSZWY8YW55PjtcblxuICBmb3JtOiBGb3JtR3JvdXA7XG5cbiAgc2VsZWN0ZWQ6IElkZW50aXR5LlVzZXJJdGVtO1xuXG4gIHNlbGVjdGVkVXNlclJvbGVzOiBJZGVudGl0eS5Sb2xlSXRlbVtdO1xuXG4gIHJvbGVzOiBJZGVudGl0eS5Sb2xlSXRlbVtdO1xuXG4gIHZpc2libGVQZXJtaXNzaW9uczogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByb3ZpZGVyS2V5OiBzdHJpbmc7XG5cbiAgcGFnZVF1ZXJ5OiBBQlAuUGFnZVF1ZXJ5UGFyYW1zID0ge1xuICAgIHNvcnRpbmc6ICd1c2VyTmFtZScsXG4gIH07XG5cbiAgaXNNb2RhbFZpc2libGU6IGJvb2xlYW47XG5cbiAgbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIG1vZGFsQnVzeTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHRyYWNrQnlGbjogVHJhY2tCeUZ1bmN0aW9uPEFic3RyYWN0Q29udHJvbD4gPSAoaW5kZXgsIGl0ZW0pID0+IE9iamVjdC5rZXlzKGl0ZW0pWzBdIHx8IGluZGV4O1xuXG4gIGdldCByb2xlR3JvdXBzKCk6IEZvcm1Hcm91cFtdIHtcbiAgICByZXR1cm4gc25xKCgpID0+ICh0aGlzLmZvcm0uZ2V0KCdyb2xlTmFtZXMnKSBhcyBGb3JtQXJyYXkpLmNvbnRyb2xzIGFzIEZvcm1Hcm91cFtdLCBbXSk7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UsIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIHN0b3JlOiBTdG9yZSkge31cblxuICBvblNlYXJjaCh2YWx1ZSkge1xuICAgIHRoaXMucGFnZVF1ZXJ5LmZpbHRlciA9IHZhbHVlO1xuICAgIHRoaXMuZ2V0KCk7XG4gIH1cblxuICBidWlsZEZvcm0oKSB7XG4gICAgdGhpcy5yb2xlcyA9IHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoSWRlbnRpdHlTdGF0ZS5nZXRSb2xlcyk7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICB1c2VyTmFtZTogW3RoaXMuc2VsZWN0ZWQudXNlck5hbWUgfHwgJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCgyNTYpXV0sXG4gICAgICBlbWFpbDogW3RoaXMuc2VsZWN0ZWQuZW1haWwgfHwgJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLmVtYWlsLCBWYWxpZGF0b3JzLm1heExlbmd0aCgyNTYpXV0sXG4gICAgICBuYW1lOiBbdGhpcy5zZWxlY3RlZC5uYW1lIHx8ICcnLCBbVmFsaWRhdG9ycy5tYXhMZW5ndGgoNjQpXV0sXG4gICAgICBzdXJuYW1lOiBbdGhpcy5zZWxlY3RlZC5zdXJuYW1lIHx8ICcnLCBbVmFsaWRhdG9ycy5tYXhMZW5ndGgoNjQpXV0sXG4gICAgICBwaG9uZU51bWJlcjogW3RoaXMuc2VsZWN0ZWQucGhvbmVOdW1iZXIgfHwgJycsIFtWYWxpZGF0b3JzLm1heExlbmd0aCgxNildXSxcbiAgICAgIGxvY2tvdXRFbmFibGVkOiBbdGhpcy5zZWxlY3RlZC50d29GYWN0b3JFbmFibGVkIHx8ICh0aGlzLnNlbGVjdGVkLmlkID8gZmFsc2UgOiB0cnVlKV0sXG4gICAgICB0d29GYWN0b3JFbmFibGVkOiBbdGhpcy5zZWxlY3RlZC50d29GYWN0b3JFbmFibGVkIHx8ICh0aGlzLnNlbGVjdGVkLmlkID8gZmFsc2UgOiB0cnVlKV0sXG4gICAgICByb2xlTmFtZXM6IHRoaXMuZmIuYXJyYXkoXG4gICAgICAgIHRoaXMucm9sZXMubWFwKHJvbGUgPT5cbiAgICAgICAgICB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgICAgIFtyb2xlLm5hbWVdOiBbISFzbnEoKCkgPT4gdGhpcy5zZWxlY3RlZFVzZXJSb2xlcy5maW5kKHVzZXJSb2xlID0+IHVzZXJSb2xlLmlkID09PSByb2xlLmlkKSldLFxuICAgICAgICAgIH0pLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICB9KTtcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWQudXNlck5hbWUpIHtcbiAgICAgIHRoaXMuZm9ybS5hZGRDb250cm9sKCdwYXNzd29yZCcsIG5ldyBGb3JtQ29udHJvbCgnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDMyKV0pKTtcbiAgICB9XG4gIH1cblxuICBvcGVuTW9kYWwoKSB7XG4gICAgdGhpcy5idWlsZEZvcm0oKTtcbiAgICB0aGlzLmlzTW9kYWxWaXNpYmxlID0gdHJ1ZTtcbiAgfVxuXG4gIG9uQWRkKCkge1xuICAgIHRoaXMuc2VsZWN0ZWQgPSB7fSBhcyBJZGVudGl0eS5Vc2VySXRlbTtcbiAgICB0aGlzLnNlbGVjdGVkVXNlclJvbGVzID0gW10gYXMgSWRlbnRpdHkuUm9sZUl0ZW1bXTtcbiAgICB0aGlzLm9wZW5Nb2RhbCgpO1xuICB9XG5cbiAgb25FZGl0KGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLnN0b3JlXG4gICAgICAuZGlzcGF0Y2gobmV3IEdldFVzZXJCeUlkKGlkKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgR2V0VXNlclJvbGVzKGlkKSkpLFxuICAgICAgICBwbHVjaygnSWRlbnRpdHlTdGF0ZScpLFxuICAgICAgICB0YWtlKDEpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoc3RhdGU6IElkZW50aXR5LlN0YXRlKSA9PiB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBzdGF0ZS5zZWxlY3RlZFVzZXI7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRVc2VyUm9sZXMgPSBzdGF0ZS5zZWxlY3RlZFVzZXJSb2xlcztcbiAgICAgICAgdGhpcy5vcGVuTW9kYWwoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgc2F2ZSgpIHtcbiAgICBpZiAoIXRoaXMuZm9ybS52YWxpZCkgcmV0dXJuO1xuICAgIHRoaXMubW9kYWxCdXN5ID0gdHJ1ZTtcblxuICAgIGNvbnN0IHsgcm9sZU5hbWVzIH0gPSB0aGlzLmZvcm0udmFsdWU7XG4gICAgY29uc3QgbWFwcGVkUm9sZU5hbWVzID0gc25xKFxuICAgICAgKCkgPT4gcm9sZU5hbWVzLmZpbHRlcihyb2xlID0+ICEhcm9sZVtPYmplY3Qua2V5cyhyb2xlKVswXV0pLm1hcChyb2xlID0+IE9iamVjdC5rZXlzKHJvbGUpWzBdKSxcbiAgICAgIFtdLFxuICAgICk7XG5cbiAgICB0aGlzLnN0b3JlXG4gICAgICAuZGlzcGF0Y2goXG4gICAgICAgIHRoaXMuc2VsZWN0ZWQuaWRcbiAgICAgICAgICA/IG5ldyBVcGRhdGVVc2VyKHtcbiAgICAgICAgICAgICAgLi4udGhpcy5mb3JtLnZhbHVlLFxuICAgICAgICAgICAgICBpZDogdGhpcy5zZWxlY3RlZC5pZCxcbiAgICAgICAgICAgICAgcm9sZU5hbWVzOiBtYXBwZWRSb2xlTmFtZXMsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIDogbmV3IENyZWF0ZVVzZXIoe1xuICAgICAgICAgICAgICAuLi50aGlzLmZvcm0udmFsdWUsXG4gICAgICAgICAgICAgIHJvbGVOYW1lczogbWFwcGVkUm9sZU5hbWVzLFxuICAgICAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5tb2RhbEJ1c3kgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pc01vZGFsVmlzaWJsZSA9IGZhbHNlO1xuICAgICAgfSk7XG4gIH1cblxuICBkZWxldGUoaWQ6IHN0cmluZywgdXNlck5hbWU6IHN0cmluZykge1xuICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZVxuICAgICAgLndhcm4oJ0FicElkZW50aXR5OjpVc2VyRGVsZXRpb25Db25maXJtYXRpb25NZXNzYWdlJywgJ0FicElkZW50aXR5OjpBcmVZb3VTdXJlJywge1xuICAgICAgICBtZXNzYWdlTG9jYWxpemF0aW9uUGFyYW1zOiBbdXNlck5hbWVdLFxuICAgICAgfSlcbiAgICAgIC5zdWJzY3JpYmUoKHN0YXR1czogVG9hc3Rlci5TdGF0dXMpID0+IHtcbiAgICAgICAgaWYgKHN0YXR1cyA9PT0gVG9hc3Rlci5TdGF0dXMuY29uZmlybSkge1xuICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IERlbGV0ZVVzZXIoaWQpKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBvblBhZ2VDaGFuZ2UoZGF0YSkge1xuICAgIHRoaXMucGFnZVF1ZXJ5LnNraXBDb3VudCA9IGRhdGEuZmlyc3Q7XG4gICAgdGhpcy5wYWdlUXVlcnkubWF4UmVzdWx0Q291bnQgPSBkYXRhLnJvd3M7XG5cbiAgICB0aGlzLmdldCgpO1xuICB9XG5cbiAgZ2V0KCkge1xuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5zdG9yZVxuICAgICAgLmRpc3BhdGNoKG5ldyBHZXRVc2Vycyh0aGlzLnBhZ2VRdWVyeSkpXG4gICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiAodGhpcy5sb2FkaW5nID0gZmFsc2UpKSlcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5pZGVudGl0eS8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3VzZXJzL3VzZXJzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBVyxNQUFNLHNCQUFzQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFtQixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUE4QixXQUFXLEVBQWEsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdHLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sR0FBRyxNQUFNLEtBQUssQ0FBQztBQUN0QixPQUFPLEVBQ0wsVUFBVSxFQUNWLFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLFFBQVEsRUFDUixVQUFVLEdBQ1gsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV4QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUQ7SUEwQ0Usd0JBQW9CLG1CQUF3QyxFQUFVLEVBQWUsRUFBVSxLQUFZO1FBQXZGLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFBVSxPQUFFLEdBQUYsRUFBRSxDQUFhO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBTztRQXBCM0csdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBSXBDLGNBQVMsR0FBd0I7WUFDL0IsT0FBTyxFQUFFLFVBQVU7U0FDcEIsQ0FBQztRQUlGLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFFekIs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QUs7OzsrQkF5Qm5CLFNBQVMsU0FBQyxjQUFjLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFOztJQUw1QztRQURDLE1BQU0sQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDOzBDQUN4QixVQUFVO2lEQUFzQjtJQUd2QztRQURDLE1BQU0sQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUM7MENBQzVCLFVBQVU7dURBQVM7SUFnSmxDLHFCQUFDO0NBQUEsQUF6SkQsSUF5SkM7U0FySlksY0FBYzs7O0lBQ3pCLCtCQUN1Qzs7SUFFdkMscUNBQ2dDOztJQUVoQyxzQ0FDK0I7O0lBRS9CLDhCQUFnQjs7SUFFaEIsa0NBQTRCOztJQUU1QiwyQ0FBdUM7O0lBRXZDLCtCQUEyQjs7SUFFM0IsNENBQW9DOztJQUVwQyxxQ0FBb0I7O0lBRXBCLG1DQUVFOztJQUVGLHdDQUF3Qjs7SUFFeEIsaUNBQXlCOztJQUV6QixtQ0FBMkI7O0lBRTNCLG1DQUE2Rjs7Ozs7SUFNakYsNkNBQWdEOzs7OztJQUFFLDRCQUF1Qjs7Ozs7SUFBRSwrQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBQlAgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSwgVG9hc3RlciB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IENvbXBvbmVudCwgVGVtcGxhdGVSZWYsIFRyYWNrQnlGdW5jdGlvbiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1BcnJheSwgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycywgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmluYWxpemUsIHBsdWNrLCBzd2l0Y2hNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgc25xIGZyb20gJ3NucSc7XG5pbXBvcnQge1xuICBDcmVhdGVVc2VyLFxuICBEZWxldGVVc2VyLFxuICBHZXRVc2VyQnlJZCxcbiAgR2V0VXNlclJvbGVzLFxuICBHZXRVc2VycyxcbiAgVXBkYXRlVXNlcixcbn0gZnJvbSAnLi4vLi4vYWN0aW9ucy9pZGVudGl0eS5hY3Rpb25zJztcbmltcG9ydCB7IElkZW50aXR5IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2lkZW50aXR5JztcbmltcG9ydCB7IElkZW50aXR5U3RhdGUgfSBmcm9tICcuLi8uLi9zdGF0ZXMvaWRlbnRpdHkuc3RhdGUnO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLXVzZXJzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3VzZXJzLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgVXNlcnNDb21wb25lbnQge1xuICBAU2VsZWN0KElkZW50aXR5U3RhdGUuZ2V0VXNlcnMpXG4gIGRhdGEkOiBPYnNlcnZhYmxlPElkZW50aXR5LlVzZXJJdGVtW10+O1xuXG4gIEBTZWxlY3QoSWRlbnRpdHlTdGF0ZS5nZXRVc2Vyc1RvdGFsQ291bnQpXG4gIHRvdGFsQ291bnQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgQFZpZXdDaGlsZCgnbW9kYWxDb250ZW50JywgeyBzdGF0aWM6IGZhbHNlIH0pXG4gIG1vZGFsQ29udGVudDogVGVtcGxhdGVSZWY8YW55PjtcblxuICBmb3JtOiBGb3JtR3JvdXA7XG5cbiAgc2VsZWN0ZWQ6IElkZW50aXR5LlVzZXJJdGVtO1xuXG4gIHNlbGVjdGVkVXNlclJvbGVzOiBJZGVudGl0eS5Sb2xlSXRlbVtdO1xuXG4gIHJvbGVzOiBJZGVudGl0eS5Sb2xlSXRlbVtdO1xuXG4gIHZpc2libGVQZXJtaXNzaW9uczogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByb3ZpZGVyS2V5OiBzdHJpbmc7XG5cbiAgcGFnZVF1ZXJ5OiBBQlAuUGFnZVF1ZXJ5UGFyYW1zID0ge1xuICAgIHNvcnRpbmc6ICd1c2VyTmFtZScsXG4gIH07XG5cbiAgaXNNb2RhbFZpc2libGU6IGJvb2xlYW47XG5cbiAgbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIG1vZGFsQnVzeTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHRyYWNrQnlGbjogVHJhY2tCeUZ1bmN0aW9uPEFic3RyYWN0Q29udHJvbD4gPSAoaW5kZXgsIGl0ZW0pID0+IE9iamVjdC5rZXlzKGl0ZW0pWzBdIHx8IGluZGV4O1xuXG4gIGdldCByb2xlR3JvdXBzKCk6IEZvcm1Hcm91cFtdIHtcbiAgICByZXR1cm4gc25xKCgpID0+ICh0aGlzLmZvcm0uZ2V0KCdyb2xlTmFtZXMnKSBhcyBGb3JtQXJyYXkpLmNvbnRyb2xzIGFzIEZvcm1Hcm91cFtdLCBbXSk7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UsIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLCBwcml2YXRlIHN0b3JlOiBTdG9yZSkge31cblxuICBvblNlYXJjaCh2YWx1ZSkge1xuICAgIHRoaXMucGFnZVF1ZXJ5LmZpbHRlciA9IHZhbHVlO1xuICAgIHRoaXMuZ2V0KCk7XG4gIH1cblxuICBidWlsZEZvcm0oKSB7XG4gICAgdGhpcy5yb2xlcyA9IHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoSWRlbnRpdHlTdGF0ZS5nZXRSb2xlcyk7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICB1c2VyTmFtZTogW3RoaXMuc2VsZWN0ZWQudXNlck5hbWUgfHwgJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCgyNTYpXV0sXG4gICAgICBlbWFpbDogW3RoaXMuc2VsZWN0ZWQuZW1haWwgfHwgJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLmVtYWlsLCBWYWxpZGF0b3JzLm1heExlbmd0aCgyNTYpXV0sXG4gICAgICBuYW1lOiBbdGhpcy5zZWxlY3RlZC5uYW1lIHx8ICcnLCBbVmFsaWRhdG9ycy5tYXhMZW5ndGgoNjQpXV0sXG4gICAgICBzdXJuYW1lOiBbdGhpcy5zZWxlY3RlZC5zdXJuYW1lIHx8ICcnLCBbVmFsaWRhdG9ycy5tYXhMZW5ndGgoNjQpXV0sXG4gICAgICBwaG9uZU51bWJlcjogW3RoaXMuc2VsZWN0ZWQucGhvbmVOdW1iZXIgfHwgJycsIFtWYWxpZGF0b3JzLm1heExlbmd0aCgxNildXSxcbiAgICAgIGxvY2tvdXRFbmFibGVkOiBbdGhpcy5zZWxlY3RlZC50d29GYWN0b3JFbmFibGVkIHx8ICh0aGlzLnNlbGVjdGVkLmlkID8gZmFsc2UgOiB0cnVlKV0sXG4gICAgICB0d29GYWN0b3JFbmFibGVkOiBbdGhpcy5zZWxlY3RlZC50d29GYWN0b3JFbmFibGVkIHx8ICh0aGlzLnNlbGVjdGVkLmlkID8gZmFsc2UgOiB0cnVlKV0sXG4gICAgICByb2xlTmFtZXM6IHRoaXMuZmIuYXJyYXkoXG4gICAgICAgIHRoaXMucm9sZXMubWFwKHJvbGUgPT5cbiAgICAgICAgICB0aGlzLmZiLmdyb3VwKHtcbiAgICAgICAgICAgIFtyb2xlLm5hbWVdOiBbISFzbnEoKCkgPT4gdGhpcy5zZWxlY3RlZFVzZXJSb2xlcy5maW5kKHVzZXJSb2xlID0+IHVzZXJSb2xlLmlkID09PSByb2xlLmlkKSldLFxuICAgICAgICAgIH0pLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICB9KTtcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWQudXNlck5hbWUpIHtcbiAgICAgIHRoaXMuZm9ybS5hZGRDb250cm9sKCdwYXNzd29yZCcsIG5ldyBGb3JtQ29udHJvbCgnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDMyKV0pKTtcbiAgICB9XG4gIH1cblxuICBvcGVuTW9kYWwoKSB7XG4gICAgdGhpcy5idWlsZEZvcm0oKTtcbiAgICB0aGlzLmlzTW9kYWxWaXNpYmxlID0gdHJ1ZTtcbiAgfVxuXG4gIG9uQWRkKCkge1xuICAgIHRoaXMuc2VsZWN0ZWQgPSB7fSBhcyBJZGVudGl0eS5Vc2VySXRlbTtcbiAgICB0aGlzLnNlbGVjdGVkVXNlclJvbGVzID0gW10gYXMgSWRlbnRpdHkuUm9sZUl0ZW1bXTtcbiAgICB0aGlzLm9wZW5Nb2RhbCgpO1xuICB9XG5cbiAgb25FZGl0KGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLnN0b3JlXG4gICAgICAuZGlzcGF0Y2gobmV3IEdldFVzZXJCeUlkKGlkKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgR2V0VXNlclJvbGVzKGlkKSkpLFxuICAgICAgICBwbHVjaygnSWRlbnRpdHlTdGF0ZScpLFxuICAgICAgICB0YWtlKDEpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoc3RhdGU6IElkZW50aXR5LlN0YXRlKSA9PiB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWQgPSBzdGF0ZS5zZWxlY3RlZFVzZXI7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRVc2VyUm9sZXMgPSBzdGF0ZS5zZWxlY3RlZFVzZXJSb2xlcztcbiAgICAgICAgdGhpcy5vcGVuTW9kYWwoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgc2F2ZSgpIHtcbiAgICBpZiAoIXRoaXMuZm9ybS52YWxpZCkgcmV0dXJuO1xuICAgIHRoaXMubW9kYWxCdXN5ID0gdHJ1ZTtcblxuICAgIGNvbnN0IHsgcm9sZU5hbWVzIH0gPSB0aGlzLmZvcm0udmFsdWU7XG4gICAgY29uc3QgbWFwcGVkUm9sZU5hbWVzID0gc25xKFxuICAgICAgKCkgPT4gcm9sZU5hbWVzLmZpbHRlcihyb2xlID0+ICEhcm9sZVtPYmplY3Qua2V5cyhyb2xlKVswXV0pLm1hcChyb2xlID0+IE9iamVjdC5rZXlzKHJvbGUpWzBdKSxcbiAgICAgIFtdLFxuICAgICk7XG5cbiAgICB0aGlzLnN0b3JlXG4gICAgICAuZGlzcGF0Y2goXG4gICAgICAgIHRoaXMuc2VsZWN0ZWQuaWRcbiAgICAgICAgICA/IG5ldyBVcGRhdGVVc2VyKHtcbiAgICAgICAgICAgICAgLi4udGhpcy5mb3JtLnZhbHVlLFxuICAgICAgICAgICAgICBpZDogdGhpcy5zZWxlY3RlZC5pZCxcbiAgICAgICAgICAgICAgcm9sZU5hbWVzOiBtYXBwZWRSb2xlTmFtZXMsXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIDogbmV3IENyZWF0ZVVzZXIoe1xuICAgICAgICAgICAgICAuLi50aGlzLmZvcm0udmFsdWUsXG4gICAgICAgICAgICAgIHJvbGVOYW1lczogbWFwcGVkUm9sZU5hbWVzLFxuICAgICAgICAgICAgfSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5tb2RhbEJ1c3kgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5pc01vZGFsVmlzaWJsZSA9IGZhbHNlO1xuICAgICAgfSk7XG4gIH1cblxuICBkZWxldGUoaWQ6IHN0cmluZywgdXNlck5hbWU6IHN0cmluZykge1xuICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZVxuICAgICAgLndhcm4oJ0FicElkZW50aXR5OjpVc2VyRGVsZXRpb25Db25maXJtYXRpb25NZXNzYWdlJywgJ0FicElkZW50aXR5OjpBcmVZb3VTdXJlJywge1xuICAgICAgICBtZXNzYWdlTG9jYWxpemF0aW9uUGFyYW1zOiBbdXNlck5hbWVdLFxuICAgICAgfSlcbiAgICAgIC5zdWJzY3JpYmUoKHN0YXR1czogVG9hc3Rlci5TdGF0dXMpID0+IHtcbiAgICAgICAgaWYgKHN0YXR1cyA9PT0gVG9hc3Rlci5TdGF0dXMuY29uZmlybSkge1xuICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gobmV3IERlbGV0ZVVzZXIoaWQpKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBvblBhZ2VDaGFuZ2UoZGF0YSkge1xuICAgIHRoaXMucGFnZVF1ZXJ5LnNraXBDb3VudCA9IGRhdGEuZmlyc3Q7XG4gICAgdGhpcy5wYWdlUXVlcnkubWF4UmVzdWx0Q291bnQgPSBkYXRhLnJvd3M7XG5cbiAgICB0aGlzLmdldCgpO1xuICB9XG5cbiAgZ2V0KCkge1xuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5zdG9yZVxuICAgICAgLmRpc3BhdGNoKG5ldyBHZXRVc2Vycyh0aGlzLnBhZ2VRdWVyeSkpXG4gICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiAodGhpcy5sb2FkaW5nID0gZmFsc2UpKSlcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/esm5/lib/identity.module.js b/npm/ng-packs/dist/identity/esm5/lib/identity.module.js index 186f760334..69695612cf 100644 --- a/npm/ng-packs/dist/identity/esm5/lib/identity.module.js +++ b/npm/ng-packs/dist/identity/esm5/lib/identity.module.js @@ -14,7 +14,6 @@ import { UsersComponent } from './components/users/users.component'; import { PermissionManagementModule } from '@abp/ng.permission-management'; import { TableModule } from 'primeng/table'; import { NgxValidateCoreModule } from '@ngx-validate/core'; -import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar'; var IdentityModule = /** @class */ (function () { function IdentityModule() { } @@ -31,11 +30,16 @@ var IdentityModule = /** @class */ (function () { NgbDropdownModule, PermissionManagementModule, NgxValidateCoreModule, - PerfectScrollbarModule, ], },] } ]; return IdentityModule; }()); export { IdentityModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRlbnRpdHkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5pZGVudGl0eS8iLCJzb3VyY2VzIjpbImxpYi9pZGVudGl0eS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRS9EO0lBQUE7SUFlNkIsQ0FBQzs7Z0JBZjdCLFFBQVEsU0FBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsY0FBYyxDQUFDO29CQUM5QyxPQUFPLEVBQUU7d0JBQ1AsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDO3dCQUN0QyxVQUFVO3dCQUNWLHFCQUFxQjt3QkFDckIsZUFBZTt3QkFDZixpQkFBaUI7d0JBQ2pCLFdBQVc7d0JBQ1gsaUJBQWlCO3dCQUNqQiwwQkFBMEI7d0JBQzFCLHFCQUFxQjt3QkFDckIsc0JBQXNCO3FCQUN2QjtpQkFDRjs7SUFDNEIscUJBQUM7Q0FBQSxBQWY5QixJQWU4QjtTQUFqQixjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd4c01vZHVsZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IFJvbGVzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JvbGVzL3JvbGVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJZGVudGl0eVJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2lkZW50aXR5LXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IElkZW50aXR5U3RhdGUgfSBmcm9tICcuL3N0YXRlcy9pZGVudGl0eS5zdGF0ZSc7XG5pbXBvcnQgeyBOZ2JUYWJzZXRNb2R1bGUsIE5nYkRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgVGhlbWVTaGFyZWRNb2R1bGUgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBVc2Vyc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy91c2Vycy91c2Vycy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGVybWlzc2lvbk1hbmFnZW1lbnRNb2R1bGUgfSBmcm9tICdAYWJwL25nLnBlcm1pc3Npb24tbWFuYWdlbWVudCc7XG5pbXBvcnQgeyBUYWJsZU1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdGFibGUnO1xuaW1wb3J0IHsgTmd4VmFsaWRhdGVDb3JlTW9kdWxlIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcbmltcG9ydCB7IFBlcmZlY3RTY3JvbGxiYXJNb2R1bGUgfSBmcm9tICduZ3gtcGVyZmVjdC1zY3JvbGxiYXInO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtSb2xlc0NvbXBvbmVudCwgVXNlcnNDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgTmd4c01vZHVsZS5mb3JGZWF0dXJlKFtJZGVudGl0eVN0YXRlXSksXG4gICAgQ29yZU1vZHVsZSxcbiAgICBJZGVudGl0eVJvdXRpbmdNb2R1bGUsXG4gICAgTmdiVGFic2V0TW9kdWxlLFxuICAgIFRoZW1lU2hhcmVkTW9kdWxlLFxuICAgIFRhYmxlTW9kdWxlLFxuICAgIE5nYkRyb3Bkb3duTW9kdWxlLFxuICAgIFBlcm1pc3Npb25NYW5hZ2VtZW50TW9kdWxlLFxuICAgIE5neFZhbGlkYXRlQ29yZU1vZHVsZSxcbiAgICBQZXJmZWN0U2Nyb2xsYmFyTW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBJZGVudGl0eU1vZHVsZSB7fVxuIl19 \ No newline at end of file +/** + * @return {?} + */ +export function IdentityProviders() { + return []; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRlbnRpdHkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5pZGVudGl0eS8iLCJzb3VyY2VzIjpbImxpYi9pZGVudGl0eS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLFFBQVEsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMzRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRTNEO0lBQUE7SUFjNkIsQ0FBQzs7Z0JBZDdCLFFBQVEsU0FBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsY0FBYyxDQUFDO29CQUM5QyxPQUFPLEVBQUU7d0JBQ1AsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDO3dCQUN0QyxVQUFVO3dCQUNWLHFCQUFxQjt3QkFDckIsZUFBZTt3QkFDZixpQkFBaUI7d0JBQ2pCLFdBQVc7d0JBQ1gsaUJBQWlCO3dCQUNqQiwwQkFBMEI7d0JBQzFCLHFCQUFxQjtxQkFDdEI7aUJBQ0Y7O0lBQzRCLHFCQUFDO0NBQUEsQUFkOUIsSUFjOEI7U0FBakIsY0FBYzs7OztBQUUzQixNQUFNLFVBQVUsaUJBQWlCO0lBQy9CLE9BQU8sRUFBRSxDQUFDO0FBQ1osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgTmdNb2R1bGUsIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3hzTW9kdWxlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgUm9sZXNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcm9sZXMvcm9sZXMuY29tcG9uZW50JztcbmltcG9ydCB7IElkZW50aXR5Um91dGluZ01vZHVsZSB9IGZyb20gJy4vaWRlbnRpdHktcm91dGluZy5tb2R1bGUnO1xuaW1wb3J0IHsgSWRlbnRpdHlTdGF0ZSB9IGZyb20gJy4vc3RhdGVzL2lkZW50aXR5LnN0YXRlJztcbmltcG9ydCB7IE5nYlRhYnNldE1vZHVsZSwgTmdiRHJvcGRvd25Nb2R1bGUgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IFVzZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3VzZXJzL3VzZXJzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uTWFuYWdlbWVudE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50JztcbmltcG9ydCB7IFRhYmxlTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XG5pbXBvcnQgeyBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtSb2xlc0NvbXBvbmVudCwgVXNlcnNDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgTmd4c01vZHVsZS5mb3JGZWF0dXJlKFtJZGVudGl0eVN0YXRlXSksXG4gICAgQ29yZU1vZHVsZSxcbiAgICBJZGVudGl0eVJvdXRpbmdNb2R1bGUsXG4gICAgTmdiVGFic2V0TW9kdWxlLFxuICAgIFRoZW1lU2hhcmVkTW9kdWxlLFxuICAgIFRhYmxlTW9kdWxlLFxuICAgIE5nYkRyb3Bkb3duTW9kdWxlLFxuICAgIFBlcm1pc3Npb25NYW5hZ2VtZW50TW9kdWxlLFxuICAgIE5neFZhbGlkYXRlQ29yZU1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgSWRlbnRpdHlNb2R1bGUge31cblxuZXhwb3J0IGZ1bmN0aW9uIElkZW50aXR5UHJvdmlkZXJzKCk6IFByb3ZpZGVyW10ge1xuICByZXR1cm4gW107XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/esm5/lib/root-identity.module.js b/npm/ng-packs/dist/identity/esm5/lib/root-identity.module.js deleted file mode 100644 index 294c5c6ca4..0000000000 --- a/npm/ng-packs/dist/identity/esm5/lib/root-identity.module.js +++ /dev/null @@ -1,27 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { NgModule } from '@angular/core'; -var RootIdentityModule = /** @class */ (function () { - function RootIdentityModule() { - } - /** - * @return {?} - */ - RootIdentityModule.forRoot = /** - * @return {?} - */ - function () { - return { - ngModule: RootIdentityModule, - providers: [], - }; - }; - RootIdentityModule.decorators = [ - { type: NgModule, args: [{},] } - ]; - return RootIdentityModule; -}()); -export { RootIdentityModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1pZGVudGl0eS5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLmlkZW50aXR5LyIsInNvdXJjZXMiOlsibGliL3Jvb3QtaWRlbnRpdHkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RDtJQUFBO0lBUUEsQ0FBQzs7OztJQU5RLDBCQUFPOzs7SUFBZDtRQUNFLE9BQU87WUFDTCxRQUFRLEVBQUUsa0JBQWtCO1lBQzVCLFNBQVMsRUFBRSxFQUFFO1NBQ2QsQ0FBQztJQUNKLENBQUM7O2dCQVBGLFFBQVEsU0FBQyxFQUFFOztJQVFaLHlCQUFDO0NBQUEsQUFSRCxJQVFDO1NBUFksa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQE5nTW9kdWxlKHt9KVxuZXhwb3J0IGNsYXNzIFJvb3RJZGVudGl0eU1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnMge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogUm9vdElkZW50aXR5TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXSxcbiAgICB9O1xuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/esm5/public-api.js b/npm/ng-packs/dist/identity/esm5/public-api.js index acd44ac98e..bd87001daf 100644 --- a/npm/ng-packs/dist/identity/esm5/public-api.js +++ b/npm/ng-packs/dist/identity/esm5/public-api.js @@ -5,8 +5,7 @@ /* * Public API Surface of identity */ -export { RootIdentityModule } from './lib/root-identity.module'; -export { IdentityModule } from './lib/identity.module'; +export { IdentityProviders, IdentityModule } from './lib/identity.module'; export { GetRoles, GetRoleById, DeleteRole, CreateRole, UpdateRole, GetUsers, GetUserById, DeleteUser, CreateUser, UpdateUser, GetUserRoles } from './lib/actions/identity.actions'; export { RolesComponent } from './lib/components/roles/roles.component'; export { IDENTITY_ROUTES } from './lib/constants/routes'; @@ -14,4 +13,4 @@ export {} from './lib/models/identity'; export { RoleResolver } from './lib/resolvers/roles.resolver'; export { IdentityService } from './lib/services/identity.service'; export { IdentityState } from './lib/states/identity.state'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuaWRlbnRpdHkvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxtQ0FBYyw0QkFBNEIsQ0FBQztBQUMzQywrQkFBYyx1QkFBdUIsQ0FBQztBQUN0QyxtSkFBYyxnQ0FBZ0MsQ0FBQztBQUMvQywrQkFBYyx3Q0FBd0MsQ0FBQztBQUN2RCxnQ0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxlQUFjLHVCQUF1QixDQUFDO0FBQ3RDLDZCQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGdDQUFjLGlDQUFpQyxDQUFDO0FBQ2hELDhCQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBpZGVudGl0eVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3Jvb3QtaWRlbnRpdHkubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2lkZW50aXR5Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zL2lkZW50aXR5LmFjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9yb2xlcy9yb2xlcy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzL3JvdXRlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaWRlbnRpdHknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcmVzb2x2ZXJzL3JvbGVzLnJlc29sdmVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2lkZW50aXR5LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc3RhdGVzL2lkZW50aXR5LnN0YXRlJztcbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuaWRlbnRpdHkvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxrREFBYyx1QkFBdUIsQ0FBQztBQUN0QyxtSkFBYyxnQ0FBZ0MsQ0FBQztBQUMvQywrQkFBYyx3Q0FBd0MsQ0FBQztBQUN2RCxnQ0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxlQUFjLHVCQUF1QixDQUFDO0FBQ3RDLDZCQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGdDQUFjLGlDQUFpQyxDQUFDO0FBQ2hELDhCQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBpZGVudGl0eVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2lkZW50aXR5Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zL2lkZW50aXR5LmFjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9yb2xlcy9yb2xlcy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzL3JvdXRlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvaWRlbnRpdHknO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcmVzb2x2ZXJzL3JvbGVzLnJlc29sdmVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2lkZW50aXR5LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc3RhdGVzL2lkZW50aXR5LnN0YXRlJztcbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/fesm2015/abp-ng.identity.js b/npm/ng-packs/dist/identity/fesm2015/abp-ng.identity.js index ae9c547f08..db89f7b336 100644 --- a/npm/ng-packs/dist/identity/fesm2015/abp-ng.identity.js +++ b/npm/ng-packs/dist/identity/fesm2015/abp-ng.identity.js @@ -1,5 +1,5 @@ -import { NgModule, Injectable, ɵɵdefineInjectable, ɵɵinject, Component, ViewChild } from '@angular/core'; import { RestService, DynamicLayoutComponent, AuthGuard, PermissionGuard, CoreModule } from '@abp/ng.core'; +import { Injectable, ɵɵdefineInjectable, ɵɵinject, Component, ViewChild, NgModule } from '@angular/core'; import { Action, Selector, State, Store, Select, NgxsModule } from '@ngxs/store'; import { __decorate, __metadata } from 'tslib'; import { ConfirmationService, ThemeSharedModule } from '@abp/ng.theme.shared'; @@ -12,26 +12,6 @@ import { NgbTabsetModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; import { PermissionManagementModule } from '@abp/ng.permission-management'; import { TableModule } from 'primeng/table'; import { NgxValidateCoreModule } from '@ngx-validate/core'; -import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar'; - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class RootIdentityModule { - /** - * @return {?} - */ - static forRoot() { - return { - ngModule: RootIdentityModule, - providers: [], - }; - } -} -RootIdentityModule.decorators = [ - { type: NgModule, args: [{},] } -]; /** * @fileoverview added by tsickle @@ -1088,7 +1068,7 @@ class UsersComponent { UsersComponent.decorators = [ { type: Component, args: [{ selector: 'abp-users', - template: "
\n
\n
\n
\n
{{ 'AbpIdentity::Users' | abpLocalization }}
\n
\n
\n \n {{ 'AbpIdentity::NewUser' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n {{ 'AbpIdentity::UserName' | abpLocalization }}\n {{ 'AbpIdentity::EmailAddress' | abpLocalization }}\n {{ 'AbpIdentity::PhoneNumber' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.userName }}\n {{ data.email }}\n {{ data.phoneNumber }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}

\n
\n\n \n \n
\n \n \n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n
\n
\n\n \n \n {{\n 'AbpIdentity::Save' | abpLocalization\n }}\n \n
\n\n\n" + template: "
\n
\n
\n
\n
{{ 'AbpIdentity::Users' | abpLocalization }}
\n
\n
\n \n {{ 'AbpIdentity::NewUser' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n {{ 'AbpIdentity::UserName' | abpLocalization }}\n {{ 'AbpIdentity::EmailAddress' | abpLocalization }}\n {{ 'AbpIdentity::PhoneNumber' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.userName }}\n {{ data.email }}\n {{ data.phoneNumber }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}

\n
\n\n \n
\n \n \n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n
\n\n \n \n {{\n 'AbpIdentity::Save' | abpLocalization\n }}\n \n
\n\n\n" }] } ]; /** @nocollapse */ @@ -1247,10 +1227,15 @@ IdentityModule.decorators = [ NgbDropdownModule, PermissionManagementModule, NgxValidateCoreModule, - PerfectScrollbarModule, ], },] } ]; +/** + * @return {?} + */ +function IdentityProviders() { + return []; +} /** * @fileoverview added by tsickle @@ -1393,5 +1378,5 @@ var Identity; * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { CreateRole, CreateUser, DeleteRole, DeleteUser, GetRoleById, GetRoles, GetUserById, GetUserRoles, GetUsers, IDENTITY_ROUTES, IdentityModule, IdentityService, IdentityState, RoleResolver, RolesComponent, RootIdentityModule, UpdateRole, UpdateUser, UsersComponent as ɵb, IdentityRoutingModule as ɵc, UserResolver as ɵd }; +export { CreateRole, CreateUser, DeleteRole, DeleteUser, GetRoleById, GetRoles, GetUserById, GetUserRoles, GetUsers, IDENTITY_ROUTES, IdentityModule, IdentityProviders, IdentityService, IdentityState, RoleResolver, RolesComponent, UpdateRole, UpdateUser, UsersComponent as ɵb, IdentityRoutingModule as ɵc, UserResolver as ɵd }; //# sourceMappingURL=abp-ng.identity.js.map diff --git a/npm/ng-packs/dist/identity/fesm2015/abp-ng.identity.js.map b/npm/ng-packs/dist/identity/fesm2015/abp-ng.identity.js.map index c5795fcb71..ac41beb8a6 100644 --- a/npm/ng-packs/dist/identity/fesm2015/abp-ng.identity.js.map +++ b/npm/ng-packs/dist/identity/fesm2015/abp-ng.identity.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.identity.js","sources":["ng://@abp/ng.identity/lib/root-identity.module.ts","ng://@abp/ng.identity/lib/actions/identity.actions.ts","ng://@abp/ng.identity/lib/services/identity.service.ts","ng://@abp/ng.identity/lib/states/identity.state.ts","ng://@abp/ng.identity/lib/components/roles/roles.component.ts","ng://@abp/ng.identity/lib/resolvers/roles.resolver.ts","ng://@abp/ng.identity/lib/components/users/users.component.ts","ng://@abp/ng.identity/lib/resolvers/users.resolver.ts","ng://@abp/ng.identity/lib/identity-routing.module.ts","ng://@abp/ng.identity/lib/identity.module.ts","ng://@abp/ng.identity/lib/constants/routes.ts","ng://@abp/ng.identity/lib/models/identity.ts"],"sourcesContent":["import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootIdentityModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootIdentityModule,\n providers: [],\n };\n }\n}\n","import { Identity } from '../models/identity';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetRoles {\n static readonly type = '[Identity] Get Roles';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetRoleById {\n static readonly type = '[Identity] Get Role By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteRole {\n static readonly type = '[Identity] Delete Role';\n constructor(public payload: string) {}\n}\n\nexport class CreateRole {\n static readonly type = '[Identity] Create Role';\n constructor(public payload: Identity.RoleSaveRequest) {}\n}\n\nexport class UpdateRole {\n static readonly type = '[Identity] Update Role';\n constructor(public payload: Identity.RoleItem) {}\n}\n\nexport class GetUsers {\n static readonly type = '[Identity] Get Users';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetUserById {\n static readonly type = '[Identity] Get User By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteUser {\n static readonly type = '[Identity] Delete User';\n constructor(public payload: string) {}\n}\n\nexport class CreateUser {\n static readonly type = '[Identity] Create User';\n constructor(public payload: Identity.UserSaveRequest) {}\n}\n\nexport class UpdateUser {\n static readonly type = '[Identity] Update User';\n constructor(public payload: Identity.UserSaveRequest & { id: string }) {}\n}\n\nexport class GetUserRoles {\n static readonly type = '[Identity] Get User Roles';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { Identity } from '../models/identity';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class IdentityService {\n constructor(private rest: RestService) {}\n\n getRoles(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/roles',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getRoleById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteRole(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createRole(body: Identity.RoleSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/roles',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateRole(body: Identity.RoleItem): Observable {\n const url = `/api/identity/roles/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getUsers(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/users',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getUserById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n getUserRoles(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}/roles`,\n };\n\n return this.rest.request(request);\n }\n\n deleteUser(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createUser(body: Identity.UserSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/users',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateUser(body: Identity.UserItem): Observable {\n const url = `/api/identity/users/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap, pluck } from 'rxjs/operators';\nimport {\n CreateRole,\n CreateUser,\n DeleteRole,\n DeleteUser,\n GetRoleById,\n GetRoles,\n GetUserById,\n GetUsers,\n UpdateRole,\n UpdateUser,\n GetUserRoles,\n} from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityService } from '../services/identity.service';\n\n@State({\n name: 'IdentityState',\n defaults: { roles: {}, selectedRole: {}, users: {}, selectedUser: {} } as Identity.State,\n})\nexport class IdentityState {\n @Selector()\n static getRoles({ roles }: Identity.State): Identity.RoleItem[] {\n return roles.items;\n }\n\n @Selector()\n static getRolesTotalCount({ roles }: Identity.State): number {\n return roles.totalCount;\n }\n\n @Selector()\n static getUsers({ users }: Identity.State): Identity.UserItem[] {\n return users.items;\n }\n\n @Selector()\n static getUsersTotalCount({ users }: Identity.State): number {\n return users.totalCount;\n }\n\n constructor(private identityService: IdentityService) {}\n\n @Action(GetRoles)\n getRoles({ patchState }: StateContext, { payload }: GetRoles) {\n return this.identityService.getRoles(payload).pipe(\n tap(roles =>\n patchState({\n roles,\n }),\n ),\n );\n }\n\n @Action(GetRoleById)\n getRole({ patchState }: StateContext, { payload }: GetRoleById) {\n return this.identityService.getRoleById(payload).pipe(\n tap(selectedRole =>\n patchState({\n selectedRole,\n }),\n ),\n );\n }\n\n @Action(DeleteRole)\n deleteRole({ dispatch }: StateContext, { payload }: GetRoleById) {\n return this.identityService.deleteRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(CreateRole)\n addRole({ dispatch }: StateContext, { payload }: CreateRole) {\n return this.identityService.createRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(UpdateRole)\n updateRole({ getState, dispatch }: StateContext, { payload }: UpdateRole) {\n return dispatch(new GetRoleById(payload.id)).pipe(\n switchMap(() => this.identityService.updateRole({ ...getState().selectedRole, ...payload })),\n switchMap(() => dispatch(new GetRoles())),\n );\n }\n\n @Action(GetUsers)\n getUsers({ patchState }: StateContext, { payload }: GetUsers) {\n return this.identityService.getUsers(payload).pipe(\n tap(users =>\n patchState({\n users,\n }),\n ),\n );\n }\n\n @Action(GetUserById)\n getUser({ patchState }: StateContext, { payload }: GetUserById) {\n return this.identityService.getUserById(payload).pipe(\n tap(selectedUser =>\n patchState({\n selectedUser,\n }),\n ),\n );\n }\n\n @Action(DeleteUser)\n deleteUser({ dispatch }: StateContext, { payload }: GetUserById) {\n return this.identityService.deleteUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(CreateUser)\n addUser({ dispatch }: StateContext, { payload }: CreateUser) {\n return this.identityService.createUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(UpdateUser)\n updateUser({ getState, dispatch }: StateContext, { payload }: UpdateUser) {\n return dispatch(new GetUserById(payload.id)).pipe(\n switchMap(() => this.identityService.updateUser({ ...getState().selectedUser, ...payload })),\n switchMap(() => dispatch(new GetUsers())),\n );\n }\n\n @Action(GetUserRoles)\n getUserRoles({ patchState }: StateContext, { payload }: GetUserRoles) {\n return this.identityService.getUserRoles(payload).pipe(\n pluck('items'),\n tap(selectedUserRoles =>\n patchState({\n selectedUserRoles,\n }),\n ),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck } from 'rxjs/operators';\nimport { CreateRole, DeleteRole, GetRoleById, GetRoles, UpdateRole } from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n\n@Component({\n selector: 'abp-roles',\n templateUrl: './roles.component.html',\n})\nexport class RolesComponent {\n @Select(IdentityState.getRoles)\n data$: Observable;\n\n @Select(IdentityState.getRolesTotalCount)\n totalCount$: Observable;\n\n form: FormGroup;\n\n selected: Identity.RoleItem;\n\n isModalVisible: boolean;\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n createForm() {\n this.form = this.fb.group({\n name: new FormControl({ value: this.selected.name || '', disabled: this.selected.isStatic }, [\n Validators.required,\n Validators.maxLength(256),\n ]),\n isDefault: [this.selected.isDefault || false],\n isPublic: [this.selected.isPublic || false],\n });\n }\n\n openModal() {\n this.createForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.RoleItem;\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetRoleById(id))\n .pipe(pluck('IdentityState', 'selectedRole'))\n .subscribe(selectedRole => {\n this.selected = selectedRole;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateRole({ ...this.form.value, id: this.selected.id })\n : new CreateRole(this.form.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpIdentity::RoleDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteRole(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetRoles(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetRoles } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class RoleResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const roles = this.store.selectSnapshot(IdentityState.getRoles);\n return roles && roles.length ? null : this.store.dispatch(new GetRoles());\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, TrackByFunction, ViewChild } from '@angular/core';\nimport { AbstractControl, FormArray, FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport {\n CreateUser,\n DeleteUser,\n GetUserById,\n GetUserRoles,\n GetUsers,\n UpdateUser,\n} from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n@Component({\n selector: 'abp-users',\n templateUrl: './users.component.html',\n})\nexport class UsersComponent {\n @Select(IdentityState.getUsers)\n data$: Observable;\n\n @Select(IdentityState.getUsersTotalCount)\n totalCount$: Observable;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n selected: Identity.UserItem;\n\n selectedUserRoles: Identity.RoleItem[];\n\n roles: Identity.RoleItem[];\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'userName',\n };\n\n isModalVisible: boolean;\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (index, item) => Object.keys(item)[0] || index;\n\n get roleGroups(): FormGroup[] {\n return snq(() => (this.form.get('roleNames') as FormArray).controls as FormGroup[], []);\n }\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n buildForm() {\n this.roles = this.store.selectSnapshot(IdentityState.getRoles);\n this.form = this.fb.group({\n userName: [this.selected.userName || '', [Validators.required, Validators.maxLength(256)]],\n email: [this.selected.email || '', [Validators.required, Validators.email, Validators.maxLength(256)]],\n name: [this.selected.name || '', [Validators.maxLength(64)]],\n surname: [this.selected.surname || '', [Validators.maxLength(64)]],\n phoneNumber: [this.selected.phoneNumber || '', [Validators.maxLength(16)]],\n lockoutEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n twoFactorEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n roleNames: this.fb.array(\n this.roles.map(role =>\n this.fb.group({\n [role.name]: [!!snq(() => this.selectedUserRoles.find(userRole => userRole.id === role.id))],\n }),\n ),\n ),\n });\n if (!this.selected.userName) {\n this.form.addControl('password', new FormControl('', [Validators.required, Validators.maxLength(32)]));\n }\n }\n\n openModal() {\n this.buildForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.UserItem;\n this.selectedUserRoles = [] as Identity.RoleItem[];\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetUserById(id))\n .pipe(\n switchMap(() => this.store.dispatch(new GetUserRoles(id))),\n pluck('IdentityState'),\n take(1),\n )\n .subscribe((state: Identity.State) => {\n this.selected = state.selectedUser;\n this.selectedUserRoles = state.selectedUserRoles;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n const { roleNames } = this.form.value;\n const mappedRoleNames = snq(\n () => roleNames.filter(role => !!role[Object.keys(role)[0]]).map(role => Object.keys(role)[0]),\n [],\n );\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateUser({\n ...this.form.value,\n id: this.selected.id,\n roleNames: mappedRoleNames,\n })\n : new CreateUser({\n ...this.form.value,\n roleNames: mappedRoleNames,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, userName: string) {\n this.confirmationService\n .warn('AbpIdentity::UserDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [userName],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteUser(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetUsers(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetUsers } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class UserResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const users = this.store.selectSnapshot(IdentityState.getUsers);\n return users && users.length ? null : this.store.dispatch(new GetUsers());\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { RoleResolver } from './resolvers/roles.resolver';\nimport { DynamicLayoutComponent, AuthGuard, PermissionGuard } from '@abp/ng.core';\nimport { UsersComponent } from './components/users/users.component';\nimport { UserResolver } from './resolvers/users.resolver';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'roles', pathMatch: 'full' },\n {\n path: 'roles',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Roles' },\n children: [{ path: '', component: RolesComponent, resolve: [RoleResolver] }],\n },\n {\n path: 'users',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Users' },\n children: [\n {\n path: '',\n component: UsersComponent,\n resolve: [RoleResolver, UserResolver],\n },\n ],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [RoleResolver, UserResolver],\n})\nexport class IdentityRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { IdentityRoutingModule } from './identity-routing.module';\nimport { IdentityState } from './states/identity.state';\nimport { NgbTabsetModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { UsersComponent } from './components/users/users.component';\nimport { PermissionManagementModule } from '@abp/ng.permission-management';\nimport { TableModule } from 'primeng/table';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\n\n@NgModule({\n declarations: [RolesComponent, UsersComponent],\n imports: [\n NgxsModule.forFeature([IdentityState]),\n CoreModule,\n IdentityRoutingModule,\n NgbTabsetModule,\n ThemeSharedModule,\n TableModule,\n NgbDropdownModule,\n PermissionManagementModule,\n NgxValidateCoreModule,\n PerfectScrollbarModule,\n ],\n})\nexport class IdentityModule {}\n","import { eLayoutType, ABP } from '@abp/ng.core';\n\nexport const IDENTITY_ROUTES = {\n routes: [\n {\n name: 'AbpUiNavigation::Menu:Administration',\n path: '',\n order: 1,\n wrapper: true,\n },\n {\n name: 'AbpIdentity::Menu:IdentityManagement',\n path: 'identity',\n order: 1,\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-id-card-o',\n children: [\n { path: 'roles', name: 'AbpIdentity::Roles', order: 2, requiredPolicy: 'AbpIdentity.Roles' },\n { path: 'users', name: 'AbpIdentity::Users', order: 1, requiredPolicy: 'AbpIdentity.Users' },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","import { ABP } from '@abp/ng.core';\n\nexport namespace Identity {\n export interface State {\n roles: RoleResponse;\n users: UserResponse;\n selectedRole: RoleItem;\n selectedUser: UserItem;\n selectedUserRoles: RoleItem[];\n }\n\n export type RoleResponse = ABP.PagedResponse;\n\n export interface RoleSaveRequest {\n name: string;\n isDefault: boolean;\n isPublic: boolean;\n }\n\n export interface RoleItem extends RoleSaveRequest {\n isStatic: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export type UserResponse = ABP.PagedResponse;\n\n export interface UserItem extends User {\n tenantId: string;\n emailConfirmed: boolean;\n phoneNumberConfirmed: boolean;\n isLockedOut: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export interface User {\n userName: string;\n name: string;\n surname: string;\n email: string;\n phoneNumber: string;\n twoFactorEnabled: true;\n lockoutEnabled: true;\n }\n\n export interface UserSaveRequest extends User {\n password: string;\n roleNames: string[];\n }\n}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.identity.js","sources":["ng://@abp/ng.identity/lib/actions/identity.actions.ts","ng://@abp/ng.identity/lib/services/identity.service.ts","ng://@abp/ng.identity/lib/states/identity.state.ts","ng://@abp/ng.identity/lib/components/roles/roles.component.ts","ng://@abp/ng.identity/lib/resolvers/roles.resolver.ts","ng://@abp/ng.identity/lib/components/users/users.component.ts","ng://@abp/ng.identity/lib/resolvers/users.resolver.ts","ng://@abp/ng.identity/lib/identity-routing.module.ts","ng://@abp/ng.identity/lib/identity.module.ts","ng://@abp/ng.identity/lib/constants/routes.ts","ng://@abp/ng.identity/lib/models/identity.ts"],"sourcesContent":["import { Identity } from '../models/identity';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetRoles {\n static readonly type = '[Identity] Get Roles';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetRoleById {\n static readonly type = '[Identity] Get Role By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteRole {\n static readonly type = '[Identity] Delete Role';\n constructor(public payload: string) {}\n}\n\nexport class CreateRole {\n static readonly type = '[Identity] Create Role';\n constructor(public payload: Identity.RoleSaveRequest) {}\n}\n\nexport class UpdateRole {\n static readonly type = '[Identity] Update Role';\n constructor(public payload: Identity.RoleItem) {}\n}\n\nexport class GetUsers {\n static readonly type = '[Identity] Get Users';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetUserById {\n static readonly type = '[Identity] Get User By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteUser {\n static readonly type = '[Identity] Delete User';\n constructor(public payload: string) {}\n}\n\nexport class CreateUser {\n static readonly type = '[Identity] Create User';\n constructor(public payload: Identity.UserSaveRequest) {}\n}\n\nexport class UpdateUser {\n static readonly type = '[Identity] Update User';\n constructor(public payload: Identity.UserSaveRequest & { id: string }) {}\n}\n\nexport class GetUserRoles {\n static readonly type = '[Identity] Get User Roles';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { Identity } from '../models/identity';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class IdentityService {\n constructor(private rest: RestService) {}\n\n getRoles(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/roles',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getRoleById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteRole(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createRole(body: Identity.RoleSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/roles',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateRole(body: Identity.RoleItem): Observable {\n const url = `/api/identity/roles/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getUsers(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/users',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getUserById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n getUserRoles(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}/roles`,\n };\n\n return this.rest.request(request);\n }\n\n deleteUser(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createUser(body: Identity.UserSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/users',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateUser(body: Identity.UserItem): Observable {\n const url = `/api/identity/users/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap, pluck } from 'rxjs/operators';\nimport {\n CreateRole,\n CreateUser,\n DeleteRole,\n DeleteUser,\n GetRoleById,\n GetRoles,\n GetUserById,\n GetUsers,\n UpdateRole,\n UpdateUser,\n GetUserRoles,\n} from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityService } from '../services/identity.service';\n\n@State({\n name: 'IdentityState',\n defaults: { roles: {}, selectedRole: {}, users: {}, selectedUser: {} } as Identity.State,\n})\nexport class IdentityState {\n @Selector()\n static getRoles({ roles }: Identity.State): Identity.RoleItem[] {\n return roles.items;\n }\n\n @Selector()\n static getRolesTotalCount({ roles }: Identity.State): number {\n return roles.totalCount;\n }\n\n @Selector()\n static getUsers({ users }: Identity.State): Identity.UserItem[] {\n return users.items;\n }\n\n @Selector()\n static getUsersTotalCount({ users }: Identity.State): number {\n return users.totalCount;\n }\n\n constructor(private identityService: IdentityService) {}\n\n @Action(GetRoles)\n getRoles({ patchState }: StateContext, { payload }: GetRoles) {\n return this.identityService.getRoles(payload).pipe(\n tap(roles =>\n patchState({\n roles,\n }),\n ),\n );\n }\n\n @Action(GetRoleById)\n getRole({ patchState }: StateContext, { payload }: GetRoleById) {\n return this.identityService.getRoleById(payload).pipe(\n tap(selectedRole =>\n patchState({\n selectedRole,\n }),\n ),\n );\n }\n\n @Action(DeleteRole)\n deleteRole({ dispatch }: StateContext, { payload }: GetRoleById) {\n return this.identityService.deleteRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(CreateRole)\n addRole({ dispatch }: StateContext, { payload }: CreateRole) {\n return this.identityService.createRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(UpdateRole)\n updateRole({ getState, dispatch }: StateContext, { payload }: UpdateRole) {\n return dispatch(new GetRoleById(payload.id)).pipe(\n switchMap(() => this.identityService.updateRole({ ...getState().selectedRole, ...payload })),\n switchMap(() => dispatch(new GetRoles())),\n );\n }\n\n @Action(GetUsers)\n getUsers({ patchState }: StateContext, { payload }: GetUsers) {\n return this.identityService.getUsers(payload).pipe(\n tap(users =>\n patchState({\n users,\n }),\n ),\n );\n }\n\n @Action(GetUserById)\n getUser({ patchState }: StateContext, { payload }: GetUserById) {\n return this.identityService.getUserById(payload).pipe(\n tap(selectedUser =>\n patchState({\n selectedUser,\n }),\n ),\n );\n }\n\n @Action(DeleteUser)\n deleteUser({ dispatch }: StateContext, { payload }: GetUserById) {\n return this.identityService.deleteUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(CreateUser)\n addUser({ dispatch }: StateContext, { payload }: CreateUser) {\n return this.identityService.createUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(UpdateUser)\n updateUser({ getState, dispatch }: StateContext, { payload }: UpdateUser) {\n return dispatch(new GetUserById(payload.id)).pipe(\n switchMap(() => this.identityService.updateUser({ ...getState().selectedUser, ...payload })),\n switchMap(() => dispatch(new GetUsers())),\n );\n }\n\n @Action(GetUserRoles)\n getUserRoles({ patchState }: StateContext, { payload }: GetUserRoles) {\n return this.identityService.getUserRoles(payload).pipe(\n pluck('items'),\n tap(selectedUserRoles =>\n patchState({\n selectedUserRoles,\n }),\n ),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck } from 'rxjs/operators';\nimport { CreateRole, DeleteRole, GetRoleById, GetRoles, UpdateRole } from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n\n@Component({\n selector: 'abp-roles',\n templateUrl: './roles.component.html',\n})\nexport class RolesComponent {\n @Select(IdentityState.getRoles)\n data$: Observable;\n\n @Select(IdentityState.getRolesTotalCount)\n totalCount$: Observable;\n\n form: FormGroup;\n\n selected: Identity.RoleItem;\n\n isModalVisible: boolean;\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n createForm() {\n this.form = this.fb.group({\n name: new FormControl({ value: this.selected.name || '', disabled: this.selected.isStatic }, [\n Validators.required,\n Validators.maxLength(256),\n ]),\n isDefault: [this.selected.isDefault || false],\n isPublic: [this.selected.isPublic || false],\n });\n }\n\n openModal() {\n this.createForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.RoleItem;\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetRoleById(id))\n .pipe(pluck('IdentityState', 'selectedRole'))\n .subscribe(selectedRole => {\n this.selected = selectedRole;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateRole({ ...this.form.value, id: this.selected.id })\n : new CreateRole(this.form.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpIdentity::RoleDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteRole(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetRoles(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetRoles } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class RoleResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const roles = this.store.selectSnapshot(IdentityState.getRoles);\n return roles && roles.length ? null : this.store.dispatch(new GetRoles());\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, TrackByFunction, ViewChild } from '@angular/core';\nimport { AbstractControl, FormArray, FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport {\n CreateUser,\n DeleteUser,\n GetUserById,\n GetUserRoles,\n GetUsers,\n UpdateUser,\n} from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n@Component({\n selector: 'abp-users',\n templateUrl: './users.component.html',\n})\nexport class UsersComponent {\n @Select(IdentityState.getUsers)\n data$: Observable;\n\n @Select(IdentityState.getUsersTotalCount)\n totalCount$: Observable;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n selected: Identity.UserItem;\n\n selectedUserRoles: Identity.RoleItem[];\n\n roles: Identity.RoleItem[];\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'userName',\n };\n\n isModalVisible: boolean;\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (index, item) => Object.keys(item)[0] || index;\n\n get roleGroups(): FormGroup[] {\n return snq(() => (this.form.get('roleNames') as FormArray).controls as FormGroup[], []);\n }\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n buildForm() {\n this.roles = this.store.selectSnapshot(IdentityState.getRoles);\n this.form = this.fb.group({\n userName: [this.selected.userName || '', [Validators.required, Validators.maxLength(256)]],\n email: [this.selected.email || '', [Validators.required, Validators.email, Validators.maxLength(256)]],\n name: [this.selected.name || '', [Validators.maxLength(64)]],\n surname: [this.selected.surname || '', [Validators.maxLength(64)]],\n phoneNumber: [this.selected.phoneNumber || '', [Validators.maxLength(16)]],\n lockoutEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n twoFactorEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n roleNames: this.fb.array(\n this.roles.map(role =>\n this.fb.group({\n [role.name]: [!!snq(() => this.selectedUserRoles.find(userRole => userRole.id === role.id))],\n }),\n ),\n ),\n });\n if (!this.selected.userName) {\n this.form.addControl('password', new FormControl('', [Validators.required, Validators.maxLength(32)]));\n }\n }\n\n openModal() {\n this.buildForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.UserItem;\n this.selectedUserRoles = [] as Identity.RoleItem[];\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetUserById(id))\n .pipe(\n switchMap(() => this.store.dispatch(new GetUserRoles(id))),\n pluck('IdentityState'),\n take(1),\n )\n .subscribe((state: Identity.State) => {\n this.selected = state.selectedUser;\n this.selectedUserRoles = state.selectedUserRoles;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n const { roleNames } = this.form.value;\n const mappedRoleNames = snq(\n () => roleNames.filter(role => !!role[Object.keys(role)[0]]).map(role => Object.keys(role)[0]),\n [],\n );\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateUser({\n ...this.form.value,\n id: this.selected.id,\n roleNames: mappedRoleNames,\n })\n : new CreateUser({\n ...this.form.value,\n roleNames: mappedRoleNames,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, userName: string) {\n this.confirmationService\n .warn('AbpIdentity::UserDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [userName],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteUser(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetUsers(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetUsers } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class UserResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const users = this.store.selectSnapshot(IdentityState.getUsers);\n return users && users.length ? null : this.store.dispatch(new GetUsers());\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { RoleResolver } from './resolvers/roles.resolver';\nimport { DynamicLayoutComponent, AuthGuard, PermissionGuard } from '@abp/ng.core';\nimport { UsersComponent } from './components/users/users.component';\nimport { UserResolver } from './resolvers/users.resolver';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'roles', pathMatch: 'full' },\n {\n path: 'roles',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Roles' },\n children: [{ path: '', component: RolesComponent, resolve: [RoleResolver] }],\n },\n {\n path: 'users',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Users' },\n children: [\n {\n path: '',\n component: UsersComponent,\n resolve: [RoleResolver, UserResolver],\n },\n ],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [RoleResolver, UserResolver],\n})\nexport class IdentityRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { NgModule, Provider } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { IdentityRoutingModule } from './identity-routing.module';\nimport { IdentityState } from './states/identity.state';\nimport { NgbTabsetModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { UsersComponent } from './components/users/users.component';\nimport { PermissionManagementModule } from '@abp/ng.permission-management';\nimport { TableModule } from 'primeng/table';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\n\n@NgModule({\n declarations: [RolesComponent, UsersComponent],\n imports: [\n NgxsModule.forFeature([IdentityState]),\n CoreModule,\n IdentityRoutingModule,\n NgbTabsetModule,\n ThemeSharedModule,\n TableModule,\n NgbDropdownModule,\n PermissionManagementModule,\n NgxValidateCoreModule,\n ],\n})\nexport class IdentityModule {}\n\nexport function IdentityProviders(): Provider[] {\n return [];\n}\n","import { eLayoutType, ABP } from '@abp/ng.core';\n\nexport const IDENTITY_ROUTES = {\n routes: [\n {\n name: 'AbpUiNavigation::Menu:Administration',\n path: '',\n order: 1,\n wrapper: true,\n },\n {\n name: 'AbpIdentity::Menu:IdentityManagement',\n path: 'identity',\n order: 1,\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-id-card-o',\n children: [\n { path: 'roles', name: 'AbpIdentity::Roles', order: 2, requiredPolicy: 'AbpIdentity.Roles' },\n { path: 'users', name: 'AbpIdentity::Users', order: 1, requiredPolicy: 'AbpIdentity.Users' },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","import { ABP } from '@abp/ng.core';\n\nexport namespace Identity {\n export interface State {\n roles: RoleResponse;\n users: UserResponse;\n selectedRole: RoleItem;\n selectedUser: UserItem;\n selectedUserRoles: RoleItem[];\n }\n\n export type RoleResponse = ABP.PagedResponse;\n\n export interface RoleSaveRequest {\n name: string;\n isDefault: boolean;\n isPublic: boolean;\n }\n\n export interface RoleItem extends RoleSaveRequest {\n isStatic: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export type UserResponse = ABP.PagedResponse;\n\n export interface UserItem extends User {\n tenantId: string;\n emailConfirmed: boolean;\n phoneNumberConfirmed: boolean;\n isLockedOut: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export interface User {\n userName: string;\n name: string;\n surname: string;\n email: string;\n phoneNumber: string;\n twoFactorEnabled: true;\n lockoutEnabled: true;\n }\n\n export interface UserSaveRequest extends User {\n password: string;\n roleNames: string[];\n }\n}\n"],"names":["tslib_1.__decorate"],"mappings":";;;;;;;;;;;;;;;;;;;AAGA,MAAa,QAAQ;;;;IAEnB,YAAmB,OAA6B;QAA7B,YAAO,GAAP,OAAO,CAAsB;KAAI;;AADpC,aAAI,GAAG,sBAAsB,CAAC;;;IAA9C,cAA8C;;IAClC,2BAAoC;;AAGlD,MAAa,WAAW;;;;IAEtB,YAAmB,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;KAAI;;AADtB,gBAAI,GAAG,2BAA2B,CAAC;;;IAAnD,iBAAmD;;IACvC,8BAAsB;;AAGpC,MAAa,UAAU;;;;IAErB,YAAmB,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;KAAI;;AADtB,eAAI,GAAG,wBAAwB,CAAC;;;IAAhD,gBAAgD;;IACpC,6BAAsB;;AAGpC,MAAa,UAAU;;;;IAErB,YAAmB,OAAiC;QAAjC,YAAO,GAAP,OAAO,CAA0B;KAAI;;AADxC,eAAI,GAAG,wBAAwB,CAAC;;;IAAhD,gBAAgD;;IACpC,6BAAwC;;AAGtD,MAAa,UAAU;;;;IAErB,YAAmB,OAA0B;QAA1B,YAAO,GAAP,OAAO,CAAmB;KAAI;;AADjC,eAAI,GAAG,wBAAwB,CAAC;;;IAAhD,gBAAgD;;IACpC,6BAAiC;;AAG/C,MAAa,QAAQ;;;;IAEnB,YAAmB,OAA6B;QAA7B,YAAO,GAAP,OAAO,CAAsB;KAAI;;AADpC,aAAI,GAAG,sBAAsB,CAAC;;;IAA9C,cAA8C;;IAClC,2BAAoC;;AAGlD,MAAa,WAAW;;;;IAEtB,YAAmB,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;KAAI;;AADtB,gBAAI,GAAG,2BAA2B,CAAC;;;IAAnD,iBAAmD;;IACvC,8BAAsB;;AAGpC,MAAa,UAAU;;;;IAErB,YAAmB,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;KAAI;;AADtB,eAAI,GAAG,wBAAwB,CAAC;;;IAAhD,gBAAgD;;IACpC,6BAAsB;;AAGpC,MAAa,UAAU;;;;IAErB,YAAmB,OAAiC;QAAjC,YAAO,GAAP,OAAO,CAA0B;KAAI;;AADxC,eAAI,GAAG,wBAAwB,CAAC;;;IAAhD,gBAAgD;;IACpC,6BAAwC;;AAGtD,MAAa,UAAU;;;;IAErB,YAAmB,OAAkD;QAAlD,YAAO,GAAP,OAAO,CAA2C;KAAI;;AADzD,eAAI,GAAG,wBAAwB,CAAC;;;IAAhD,gBAAgD;;IACpC,6BAAyD;;AAGvE,MAAa,YAAY;;;;IAEvB,YAAmB,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;KAAI;;AADtB,iBAAI,GAAG,2BAA2B,CAAC;;;IAAnD,kBAAmD;;IACvC,+BAAsB;;;;;;;ACvDpC,MAQa,eAAe;;;;IAC1B,YAAoB,IAAiB;QAAjB,SAAI,GAAJ,IAAI,CAAa;KAAI;;;;;IAEzC,QAAQ,CAAC,MAAM,sBAAG,EAAE,EAAuB;;cACnC,OAAO,GAAuB;YAClC,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,qBAAqB;YAC1B,MAAM;SACP;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA8B,OAAO,CAAC,CAAC;KAChE;;;;;IAED,WAAW,CAAC,EAAU;;cACd,OAAO,GAAuB;YAClC,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,uBAAuB,EAAE,EAAE;SACjC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA0B,OAAO,CAAC,CAAC;KAC5D;;;;;IAED,UAAU,CAAC,EAAU;;cACb,OAAO,GAAuB;YAClC,MAAM,EAAE,QAAQ;YAChB,GAAG,EAAE,uBAAuB,EAAE,EAAE;SACjC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA0B,OAAO,CAAC,CAAC;KAC5D;;;;;IAED,UAAU,CAAC,IAA8B;;cACjC,OAAO,GAA2C;YACtD,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,qBAAqB;YAC1B,IAAI;SACL;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA8C,OAAO,CAAC,CAAC;KAChF;;;;;IAED,UAAU,CAAC,IAAuB;;cAC1B,GAAG,GAAG,uBAAuB,IAAI,CAAC,EAAE,EAAE;QAC5C,OAAO,IAAI,CAAC,EAAE,CAAC;;cAET,OAAO,GAAoC;YAC/C,MAAM,EAAE,KAAK;YACb,GAAG;YACH,IAAI;SACL;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAuC,OAAO,CAAC,CAAC;KACzE;;;;;IAED,QAAQ,CAAC,MAAM,sBAAG,EAAE,EAAuB;;cACnC,OAAO,GAAuB;YAClC,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,qBAAqB;YAC1B,MAAM;SACP;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA8B,OAAO,CAAC,CAAC;KAChE;;;;;IAED,WAAW,CAAC,EAAU;;cACd,OAAO,GAAuB;YAClC,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,uBAAuB,EAAE,EAAE;SACjC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA0B,OAAO,CAAC,CAAC;KAC5D;;;;;IAED,YAAY,CAAC,EAAU;;cACf,OAAO,GAAuB;YAClC,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,uBAAuB,EAAE,QAAQ;SACvC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA8B,OAAO,CAAC,CAAC;KAChE;;;;;IAED,UAAU,CAAC,EAAU;;cACb,OAAO,GAAuB;YAClC,MAAM,EAAE,QAAQ;YAChB,GAAG,EAAE,uBAAuB,EAAE,EAAE;SACjC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAa,OAAO,CAAC,CAAC;KAC/C;;;;;IAED,UAAU,CAAC,IAA8B;;cACjC,OAAO,GAA2C;YACtD,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,qBAAqB;YAC1B,IAAI;SACL;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA8C,OAAO,CAAC,CAAC;KAChF;;;;;IAED,UAAU,CAAC,IAAuB;;cAC1B,GAAG,GAAG,uBAAuB,IAAI,CAAC,EAAE,EAAE;QAC5C,OAAO,IAAI,CAAC,EAAE,CAAC;;cAET,OAAO,GAAoC;YAC/C,MAAM,EAAE,KAAK;YACb,GAAG;YACH,IAAI;SACL;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAuC,OAAO,CAAC,CAAC;KACzE;;;YAnHF,UAAU,SAAC;gBACV,UAAU,EAAE,MAAM;aACnB;;;;YALQ,WAAW;;;;;;;;IAON,+BAAyB;;;;;;;ICa1B,aAAa,SAAb,aAAa;;;;IAqBxB,YAAoB,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;KAAI;;;;;IAnBxD,OAAO,QAAQ,CAAC,EAAE,KAAK,EAAkB;QACvC,OAAO,KAAK,CAAC,KAAK,CAAC;KACpB;;;;;IAGD,OAAO,kBAAkB,CAAC,EAAE,KAAK,EAAkB;QACjD,OAAO,KAAK,CAAC,UAAU,CAAC;KACzB;;;;;IAGD,OAAO,QAAQ,CAAC,EAAE,KAAK,EAAkB;QACvC,OAAO,KAAK,CAAC,KAAK,CAAC;KACpB;;;;;IAGD,OAAO,kBAAkB,CAAC,EAAE,KAAK,EAAkB;QACjD,OAAO,KAAK,CAAC,UAAU,CAAC;KACzB;;;;;;IAKD,QAAQ,CAAC,EAAE,UAAU,EAAgC,EAAE,EAAE,OAAO,EAAY;QAC1E,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAChD,GAAG;;;;QAAC,KAAK,IACP,UAAU,CAAC;YACT,KAAK;SACN,CAAC,EACH,CACF,CAAC;KACH;;;;;;IAGD,OAAO,CAAC,EAAE,UAAU,EAAgC,EAAE,EAAE,OAAO,EAAe;QAC5E,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CACnD,GAAG;;;;QAAC,YAAY,IACd,UAAU,CAAC;YACT,YAAY;SACb,CAAC,EACH,CACF,CAAC;KACH;;;;;;IAGD,UAAU,CAAC,EAAE,QAAQ,EAAgC,EAAE,EAAE,OAAO,EAAe;QAC7E,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS;;;QAAC,MAAM,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,EAAC,CAAC,CAAC;KACjG;;;;;;IAGD,OAAO,CAAC,EAAE,QAAQ,EAAgC,EAAE,EAAE,OAAO,EAAc;QACzE,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS;;;QAAC,MAAM,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,EAAC,CAAC,CAAC;KACjG;;;;;;IAGD,UAAU,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAgC,EAAE,EAAE,OAAO,EAAc;QACtF,OAAO,QAAQ,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAC/C,SAAS;;;QAAC,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,mBAAM,QAAQ,EAAE,CAAC,YAAY,EAAK,OAAO,EAAG,EAAC,EAC5F,SAAS;;;QAAC,MAAM,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,EAAC,CAC1C,CAAC;KACH;;;;;;IAGD,QAAQ,CAAC,EAAE,UAAU,EAAgC,EAAE,EAAE,OAAO,EAAY;QAC1E,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAChD,GAAG;;;;QAAC,KAAK,IACP,UAAU,CAAC;YACT,KAAK;SACN,CAAC,EACH,CACF,CAAC;KACH;;;;;;IAGD,OAAO,CAAC,EAAE,UAAU,EAAgC,EAAE,EAAE,OAAO,EAAe;QAC5E,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CACnD,GAAG;;;;QAAC,YAAY,IACd,UAAU,CAAC;YACT,YAAY;SACb,CAAC,EACH,CACF,CAAC;KACH;;;;;;IAGD,UAAU,CAAC,EAAE,QAAQ,EAAgC,EAAE,EAAE,OAAO,EAAe;QAC7E,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS;;;QAAC,MAAM,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,EAAC,CAAC,CAAC;KACjG;;;;;;IAGD,OAAO,CAAC,EAAE,QAAQ,EAAgC,EAAE,EAAE,OAAO,EAAc;QACzE,OAAO,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS;;;QAAC,MAAM,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,EAAC,CAAC,CAAC;KACjG;;;;;;IAGD,UAAU,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAgC,EAAE,EAAE,OAAO,EAAc;QACtF,OAAO,QAAQ,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAC/C,SAAS;;;QAAC,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,mBAAM,QAAQ,EAAE,CAAC,YAAY,EAAK,OAAO,EAAG,EAAC,EAC5F,SAAS;;;QAAC,MAAM,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,EAAC,CAC1C,CAAC;KACH;;;;;;IAGD,YAAY,CAAC,EAAE,UAAU,EAAgC,EAAE,EAAE,OAAO,EAAgB;QAClF,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CACpD,KAAK,CAAC,OAAO,CAAC,EACd,GAAG;;;;QAAC,iBAAiB,IACnB,UAAU,CAAC;YACT,iBAAiB;SAClB,CAAC,EACH,CACF,CAAC;KACH;CACF,CAAA;AA1FCA;IADC,MAAM,CAAC,QAAQ,CAAC;;6CACmD,QAAQ;;6CAQ3E;AAGDA;IADC,MAAM,CAAC,WAAW,CAAC;;6CAC+C,WAAW;;4CAQ7E;AAGDA;IADC,MAAM,CAAC,UAAU,CAAC;;6CACiD,WAAW;;+CAE9E;AAGDA;IADC,MAAM,CAAC,UAAU,CAAC;;6CAC8C,UAAU;;4CAE1E;AAGDA;IADC,MAAM,CAAC,UAAU,CAAC;;6CAC2D,UAAU;;+CAKvF;AAGDA;IADC,MAAM,CAAC,QAAQ,CAAC;;6CACmD,QAAQ;;6CAQ3E;AAGDA;IADC,MAAM,CAAC,WAAW,CAAC;;6CAC+C,WAAW;;4CAQ7E;AAGDA;IADC,MAAM,CAAC,UAAU,CAAC;;6CACiD,WAAW;;+CAE9E;AAGDA;IADC,MAAM,CAAC,UAAU,CAAC;;6CAC8C,UAAU;;4CAE1E;AAGDA;IADC,MAAM,CAAC,UAAU,CAAC;;6CAC2D,UAAU;;+CAKvF;AAGDA;IADC,MAAM,CAAC,YAAY,CAAC;;6CACmD,YAAY;;iDASnF;AA/GDA;IADC,QAAQ,EAAE;;;;mCAGV;AAGDA;IADC,QAAQ,EAAE;;;;6CAGV;AAGDA;IADC,QAAQ,EAAE;;;;mCAGV;AAGDA;IADC,QAAQ,EAAE;;;;6CAGV;AAnBU,aAAa;IAJzB,KAAK,CAAiB;QACrB,IAAI,EAAE,eAAe;QACrB,QAAQ,qBAAE,EAAE,KAAK,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,EAAkB;KACzF,CAAC;qCAsBqC,eAAe;GArBzC,aAAa,CAkHzB;;;;;;IA7Fa,wCAAwC;;;;;;;MC5BzC,cAAc;;;;;;IA4BzB,YAAoB,mBAAwC,EAAU,EAAe,EAAU,KAAY;QAAvF,wBAAmB,GAAnB,mBAAmB,CAAqB;QAAU,OAAE,GAAF,EAAE,CAAa;QAAU,UAAK,GAAL,KAAK,CAAO;QAf3G,uBAAkB,GAAY,KAAK,CAAC;QAIpC,cAAS,GAAwB;YAC/B,OAAO,EAAE,MAAM;SAChB,CAAC;QAEF,YAAO,GAAY,KAAK,CAAC;QAEzB,cAAS,GAAY,KAAK,CAAC;KAKoF;;;;;IAE/G,QAAQ,CAAC,KAAK;QACZ,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,GAAG,EAAE,CAAC;KACZ;;;;IAED,UAAU;QACR,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YACxB,IAAI,EAAE,IAAI,WAAW,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE;gBAC3F,UAAU,CAAC,QAAQ;gBACnB,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC;aAC1B,CAAC;YACF,SAAS,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,KAAK,CAAC;YAC7C,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,KAAK,CAAC;SAC5C,CAAC,CAAC;KACJ;;;;IAED,SAAS;QACP,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;KAC5B;;;;IAED,KAAK;QACH,IAAI,CAAC,QAAQ,sBAAG,EAAE,EAAqB,CAAC;QACxC,IAAI,CAAC,SAAS,EAAE,CAAC;KAClB;;;;;IAED,MAAM,CAAC,EAAU;QACf,IAAI,CAAC,KAAK;aACP,QAAQ,CAAC,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;aAC7B,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;aAC5C,SAAS;;;;QAAC,YAAY;YACrB,IAAI,CAAC,QAAQ,GAAG,YAAY,CAAC;YAC7B,IAAI,CAAC,SAAS,EAAE,CAAC;SAClB,EAAC,CAAC;KACN;;;;IAED,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,IAAI,CAAC,KAAK;aACP,QAAQ,CACP,IAAI,CAAC,QAAQ,CAAC,EAAE;cACZ,IAAI,UAAU,mBAAM,IAAI,CAAC,IAAI,CAAC,KAAK,IAAE,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAG;cAC5D,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CACpC;aACA,SAAS;;;QAAC;YACT,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;SAC7B,EAAC,CAAC;KACN;;;;;;IAED,MAAM,CAAC,EAAU,EAAE,IAAY;QAC7B,IAAI,CAAC,mBAAmB;aACrB,IAAI,CAAC,8CAA8C,EAAE,yBAAyB,EAAE;YAC/E,yBAAyB,EAAE,CAAC,IAAI,CAAC;SAClC,CAAC;aACD,SAAS;;;;QAAC,CAAC,MAAsB;YAChC,IAAI,MAAM,8BAA6B;gBACrC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;aACzC;SACF,EAAC,CAAC;KACN;;;;;IAED,YAAY,CAAC,IAAI;QACf,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;QACtC,IAAI,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC;QAE1C,IAAI,CAAC,GAAG,EAAE,CAAC;KACZ;;;;IAED,GAAG;QACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,KAAK;aACP,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACtC,IAAI,CAAC,QAAQ;;;QAAC,OAAO,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,EAAC,CAAC;aAC5C,SAAS,EAAE,CAAC;KAChB;;;YA/GF,SAAS,SAAC;gBACT,QAAQ,EAAE,WAAW;gBACrB,yzIAAqC;aACtC;;;;YAbQ,mBAAmB;YAEnB,WAAW;YACH,KAAK;;;2BAoCnB,SAAS,SAAC,cAAc,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;;AAvB5CA;IADC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;8BACxB,UAAU;6CAAsB;AAGvCA;IADC,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC;8BAC5B,UAAU;mDAAS;;;IAJhC,+BACuC;;IAEvC,qCACgC;;IAEhC,8BAAgB;;IAEhB,kCAA4B;;IAE5B,wCAAwB;;IAExB,4CAAoC;;IAEpC,qCAAoB;;IAEpB,mCAEE;;IAEF,iCAAyB;;IAEzB,mCAA2B;;IAE3B,sCAC+B;;;;;IAEnB,6CAAgD;;;;;IAAE,4BAAuB;;;;;IAAE,+BAAoB;;;;;;;AC3C7G,MAQa,YAAY;;;;IACvB,YAAoB,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;KAAI;;;;IAEpC,OAAO;;cACC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC;QAC/D,OAAO,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;KAC3E;;;YAPF,UAAU;;;;YALF,KAAK;;;;;;;IAOA,6BAAoB;;;;;;;MCarB,cAAc;;;;;;IAsCzB,YAAoB,mBAAwC,EAAU,EAAe,EAAU,KAAY;QAAvF,wBAAmB,GAAnB,mBAAmB,CAAqB;QAAU,OAAE,GAAF,EAAE,CAAa;QAAU,UAAK,GAAL,KAAK,CAAO;QApB3G,uBAAkB,GAAY,KAAK,CAAC;QAIpC,cAAS,GAAwB;YAC/B,OAAO,EAAE,UAAU;SACpB,CAAC;QAIF,YAAO,GAAY,KAAK,CAAC;QAEzB,cAAS,GAAY,KAAK,CAAC;QAE3B,cAAS;;;;;QAAqC,CAAC,KAAK,EAAE,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,EAAC;KAMkB;;;;IAJ/G,IAAI,UAAU;QACZ,OAAO,GAAG;;;QAAC,yBAAM,oBAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAe,QAAQ,EAAe,GAAE,EAAE,CAAC,CAAC;KACzF;;;;;IAID,QAAQ,CAAC,KAAK;QACZ,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,GAAG,EAAE,CAAC;KACZ;;;;IAED,SAAS;QACP,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC/D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YACxB,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1F,KAAK,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YACtG,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;YAC5D,OAAO,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;YAClE,WAAW,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1E,cAAc,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,KAAK,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC;YACrF,gBAAgB,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,KAAK,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC;YACvF,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CACtB,IAAI,CAAC,KAAK,CAAC,GAAG;;;;YAAC,IAAI,IACjB,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;gBACZ,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG;;;oBAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI;;;;oBAAC,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,EAAC,EAAC,CAAC;aAC7F,CAAC,EACH,CACF;SACF,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC3B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,WAAW,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;SACxG;KACF;;;;IAED,SAAS;QACP,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;KAC5B;;;;IAED,KAAK;QACH,IAAI,CAAC,QAAQ,sBAAG,EAAE,EAAqB,CAAC;QACxC,IAAI,CAAC,iBAAiB,sBAAG,EAAE,EAAuB,CAAC;QACnD,IAAI,CAAC,SAAS,EAAE,CAAC;KAClB;;;;;IAED,MAAM,CAAC,EAAU;QACf,IAAI,CAAC,KAAK;aACP,QAAQ,CAAC,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;aAC7B,IAAI,CACH,SAAS;;;QAAC,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC,EAAC,EAC1D,KAAK,CAAC,eAAe,CAAC,EACtB,IAAI,CAAC,CAAC,CAAC,CACR;aACA,SAAS;;;;QAAC,CAAC,KAAqB;YAC/B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC;YACnC,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAC;YACjD,IAAI,CAAC,SAAS,EAAE,CAAC;SAClB,EAAC,CAAC;KACN;;;;IAED,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;cAEhB,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK;;cAC/B,eAAe,GAAG,GAAG;;;QACzB,MAAM,SAAS,CAAC,MAAM;;;;QAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC,CAAC,GAAG;;;;QAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAC,GAC9F,EAAE,CACH;QAED,IAAI,CAAC,KAAK;aACP,QAAQ,CACP,IAAI,CAAC,QAAQ,CAAC,EAAE;cACZ,IAAI,UAAU,mBACT,IAAI,CAAC,IAAI,CAAC,KAAK,IAClB,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EACpB,SAAS,EAAE,eAAe,IAC1B;cACF,IAAI,UAAU,mBACT,IAAI,CAAC,IAAI,CAAC,KAAK,IAClB,SAAS,EAAE,eAAe,IAC1B,CACP;aACA,SAAS;;;QAAC;YACT,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;SAC7B,EAAC,CAAC;KACN;;;;;;IAED,MAAM,CAAC,EAAU,EAAE,QAAgB;QACjC,IAAI,CAAC,mBAAmB;aACrB,IAAI,CAAC,8CAA8C,EAAE,yBAAyB,EAAE;YAC/E,yBAAyB,EAAE,CAAC,QAAQ,CAAC;SACtC,CAAC;aACD,SAAS;;;;QAAC,CAAC,MAAsB;YAChC,IAAI,MAAM,8BAA6B;gBACrC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;aACzC;SACF,EAAC,CAAC;KACN;;;;;IAED,YAAY,CAAC,IAAI;QACf,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;QACtC,IAAI,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC;QAE1C,IAAI,CAAC,GAAG,EAAE,CAAC;KACZ;;;;IAED,GAAG;QACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,KAAK;aACP,QAAQ,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACtC,IAAI,CAAC,QAAQ;;;QAAC,OAAO,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,EAAC,CAAC;aAC5C,SAAS,EAAE,CAAC;KAChB;;;YAxJF,SAAS,SAAC;gBACT,QAAQ,EAAE,WAAW;gBACrB,kuPAAqC;aACtC;;;;YApBQ,mBAAmB;YAES,WAAW;YAC/B,KAAK;;;2BAyBnB,SAAS,SAAC,cAAc,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;;AAL5CA;IADC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;8BACxB,UAAU;6CAAsB;AAGvCA;IADC,MAAM,CAAC,aAAa,CAAC,kBAAkB,CAAC;8BAC5B,UAAU;mDAAS;;;IAJhC,+BACuC;;IAEvC,qCACgC;;IAEhC,sCAC+B;;IAE/B,8BAAgB;;IAEhB,kCAA4B;;IAE5B,2CAAuC;;IAEvC,+BAA2B;;IAE3B,4CAAoC;;IAEpC,qCAAoB;;IAEpB,mCAEE;;IAEF,wCAAwB;;IAExB,iCAAyB;;IAEzB,mCAA2B;;IAE3B,mCAA6F;;;;;IAMjF,6CAAgD;;;;;IAAE,4BAAuB;;;;;IAAE,+BAAoB;;;;;;;AC5D7G,MAQa,YAAY;;;;IACvB,YAAoB,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;KAAI;;;;IAEpC,OAAO;;cACC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC;QAC/D,OAAO,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;KAC3E;;;YAPF,UAAU;;;;YALF,KAAK;;;;;;;IAOA,6BAAoB;;;;;;;ACTlC,WAcU,EAAE,cAAc,EAAE,mBAAmB,EAAE,OAOvC,EAAE,cAAc,EAAE,mBAAmB,EAAE;;MAb3C,MAAM,GAAW;IACrB,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE;IACpD;QACE,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,sBAAsB;QACjC,WAAW,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC;QACzC,IAAI,IAAyC;QAC7C,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;KAC7E;IACD;QACE,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,sBAAsB;QACjC,WAAW,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC;QACzC,IAAI,IAAyC;QAC7C,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,EAAE;gBACR,SAAS,EAAE,cAAc;gBACzB,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;aACtC;SACF;KACF;CACF;AAOD,MAAa,qBAAqB;;;YALjC,QAAQ,SAAC;gBACR,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACxC,OAAO,EAAE,CAAC,YAAY,CAAC;gBACvB,SAAS,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;aACxC;;;;;;;ACpCD,MA2Ba,cAAc;;;YAd1B,QAAQ,SAAC;gBACR,YAAY,EAAE,CAAC,cAAc,EAAE,cAAc,CAAC;gBAC9C,OAAO,EAAE;oBACP,UAAU,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC,CAAC;oBACtC,UAAU;oBACV,qBAAqB;oBACrB,eAAe;oBACf,iBAAiB;oBACjB,WAAW;oBACX,iBAAiB;oBACjB,0BAA0B;oBAC1B,qBAAqB;iBACtB;aACF;;;;;AAGD,SAAgB,iBAAiB;IAC/B,OAAO,EAAE,CAAC;CACX;;;;;;;AC7BD,MAAa,eAAe,GAAG;IAC7B,MAAM,qBAAE;QACN;YACE,IAAI,EAAE,sCAAsC;YAC5C,IAAI,EAAE,EAAE;YACR,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,IAAI;SACd;QACD;YACE,IAAI,EAAE,sCAAsC;YAC5C,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,CAAC;YACR,UAAU,EAAE,sCAAsC;YAClD,MAAM;YACN,SAAS,EAAE,iBAAiB;YAC5B,QAAQ,EAAE;gBACR,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,cAAc,EAAE,mBAAmB,EAAE;gBAC5F,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,cAAc,EAAE,mBAAmB,EAAE;aAC7F;SACF;KACF,EAAmB;IACpB,QAAQ,EAAE,EAAE;CACb;;;;;;ACtBD,IAAiB,QAAQ,CAgDxB;AAhDD,WAAiB,QAAQ;;;;IACvB,oBAMC;;;;QALC,sBAAoB;;QACpB,sBAAoB;;QACpB,6BAAuB;;QACvB,6BAAuB;;QACvB,kCAA8B;;;;;IAKhC,8BAIC;;;;QAHC,+BAAa;;QACb,oCAAmB;;QACnB,mCAAkB;;;;;IAGpB,uBAIC;;;;QAHC,4BAAkB;;QAClB,oCAAyB;;QACzB,sBAAW;;;;;IAKb,uBAOC;;;;QANC,4BAAiB;;QACjB,kCAAwB;;QACxB,wCAA8B;;QAC9B,+BAAqB;;QACrB,oCAAyB;;QACzB,sBAAW;;;;;IAGb,mBAQC;;;;QAPC,wBAAiB;;QACjB,oBAAa;;QACb,uBAAgB;;QAChB,qBAAc;;QACd,2BAAoB;;QACpB,gCAAuB;;QACvB,8BAAqB;;;;;IAGvB,8BAGC;;;;QAFC,mCAAiB;;QACjB,oCAAoB;;CAEvB,EAhDgB,QAAQ,KAAR,QAAQ,QAgDxB;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/fesm5/abp-ng.identity.js b/npm/ng-packs/dist/identity/fesm5/abp-ng.identity.js index 1e1814a7b0..2e972aa4fe 100644 --- a/npm/ng-packs/dist/identity/fesm5/abp-ng.identity.js +++ b/npm/ng-packs/dist/identity/fesm5/abp-ng.identity.js @@ -1,5 +1,5 @@ -import { NgModule, Injectable, ɵɵdefineInjectable, ɵɵinject, Component, ViewChild } from '@angular/core'; import { RestService, DynamicLayoutComponent, AuthGuard, PermissionGuard, CoreModule } from '@abp/ng.core'; +import { Injectable, ɵɵdefineInjectable, ɵɵinject, Component, ViewChild, NgModule } from '@angular/core'; import { Action, Selector, State, Store, Select, NgxsModule } from '@ngxs/store'; import { __assign, __decorate, __metadata } from 'tslib'; import { ConfirmationService, ThemeSharedModule } from '@abp/ng.theme.shared'; @@ -12,32 +12,6 @@ import { NgbTabsetModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; import { PermissionManagementModule } from '@abp/ng.permission-management'; import { TableModule } from 'primeng/table'; import { NgxValidateCoreModule } from '@ngx-validate/core'; -import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar'; - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var RootIdentityModule = /** @class */ (function () { - function RootIdentityModule() { - } - /** - * @return {?} - */ - RootIdentityModule.forRoot = /** - * @return {?} - */ - function () { - return { - ngModule: RootIdentityModule, - providers: [], - }; - }; - RootIdentityModule.decorators = [ - { type: NgModule, args: [{},] } - ]; - return RootIdentityModule; -}()); /** * @fileoverview added by tsickle @@ -1295,7 +1269,7 @@ var UsersComponent = /** @class */ (function () { UsersComponent.decorators = [ { type: Component, args: [{ selector: 'abp-users', - template: "
\n
\n
\n
\n
{{ 'AbpIdentity::Users' | abpLocalization }}
\n
\n
\n \n {{ 'AbpIdentity::NewUser' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n {{ 'AbpIdentity::UserName' | abpLocalization }}\n {{ 'AbpIdentity::EmailAddress' | abpLocalization }}\n {{ 'AbpIdentity::PhoneNumber' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.userName }}\n {{ data.email }}\n {{ data.phoneNumber }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}

\n
\n\n \n \n
\n \n \n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n
\n
\n\n \n \n {{\n 'AbpIdentity::Save' | abpLocalization\n }}\n \n
\n\n\n" + template: "
\n
\n
\n
\n
{{ 'AbpIdentity::Users' | abpLocalization }}
\n
\n
\n \n {{ 'AbpIdentity::NewUser' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n {{ 'AbpIdentity::UserName' | abpLocalization }}\n {{ 'AbpIdentity::EmailAddress' | abpLocalization }}\n {{ 'AbpIdentity::PhoneNumber' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpIdentity::Actions' | abpLocalization }}\n \n
\n \n \n \n
\n
\n \n {{ data.userName }}\n {{ data.email }}\n {{ data.phoneNumber }}\n \n
\n \n
\n
\n\n\n \n

{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}

\n
\n\n \n
\n \n \n \n
\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n
\n\n
\n
\n\n
\n \n \n
\n\n
\n \n \n
\n\n
\n \n \n
\n
\n
\n
\n \n \n
\n \n \n \n
\n \n
\n
\n
\n
\n
\n\n \n \n {{\n 'AbpIdentity::Save' | abpLocalization\n }}\n \n
\n\n\n" }] } ]; /** @nocollapse */ @@ -1461,12 +1435,17 @@ var IdentityModule = /** @class */ (function () { NgbDropdownModule, PermissionManagementModule, NgxValidateCoreModule, - PerfectScrollbarModule, ], },] } ]; return IdentityModule; }()); +/** + * @return {?} + */ +function IdentityProviders() { + return []; +} /** * @fileoverview added by tsickle @@ -1609,5 +1588,5 @@ var Identity; * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { CreateRole, CreateUser, DeleteRole, DeleteUser, GetRoleById, GetRoles, GetUserById, GetUserRoles, GetUsers, IDENTITY_ROUTES, IdentityModule, IdentityService, IdentityState, RoleResolver, RolesComponent, RootIdentityModule, UpdateRole, UpdateUser, UsersComponent as ɵb, IdentityRoutingModule as ɵc, UserResolver as ɵd }; +export { CreateRole, CreateUser, DeleteRole, DeleteUser, GetRoleById, GetRoles, GetUserById, GetUserRoles, GetUsers, IDENTITY_ROUTES, IdentityModule, IdentityProviders, IdentityService, IdentityState, RoleResolver, RolesComponent, UpdateRole, UpdateUser, UsersComponent as ɵb, IdentityRoutingModule as ɵc, UserResolver as ɵd }; //# sourceMappingURL=abp-ng.identity.js.map diff --git a/npm/ng-packs/dist/identity/fesm5/abp-ng.identity.js.map b/npm/ng-packs/dist/identity/fesm5/abp-ng.identity.js.map index 3dfa266a36..f4a2013ab1 100644 --- a/npm/ng-packs/dist/identity/fesm5/abp-ng.identity.js.map +++ b/npm/ng-packs/dist/identity/fesm5/abp-ng.identity.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.identity.js","sources":["ng://@abp/ng.identity/lib/root-identity.module.ts","ng://@abp/ng.identity/lib/actions/identity.actions.ts","ng://@abp/ng.identity/lib/services/identity.service.ts","ng://@abp/ng.identity/lib/states/identity.state.ts","ng://@abp/ng.identity/lib/components/roles/roles.component.ts","ng://@abp/ng.identity/lib/resolvers/roles.resolver.ts","ng://@abp/ng.identity/lib/components/users/users.component.ts","ng://@abp/ng.identity/lib/resolvers/users.resolver.ts","ng://@abp/ng.identity/lib/identity-routing.module.ts","ng://@abp/ng.identity/lib/identity.module.ts","ng://@abp/ng.identity/lib/constants/routes.ts","ng://@abp/ng.identity/lib/models/identity.ts"],"sourcesContent":["import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootIdentityModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootIdentityModule,\n providers: [],\n };\n }\n}\n","import { Identity } from '../models/identity';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetRoles {\n static readonly type = '[Identity] Get Roles';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetRoleById {\n static readonly type = '[Identity] Get Role By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteRole {\n static readonly type = '[Identity] Delete Role';\n constructor(public payload: string) {}\n}\n\nexport class CreateRole {\n static readonly type = '[Identity] Create Role';\n constructor(public payload: Identity.RoleSaveRequest) {}\n}\n\nexport class UpdateRole {\n static readonly type = '[Identity] Update Role';\n constructor(public payload: Identity.RoleItem) {}\n}\n\nexport class GetUsers {\n static readonly type = '[Identity] Get Users';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetUserById {\n static readonly type = '[Identity] Get User By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteUser {\n static readonly type = '[Identity] Delete User';\n constructor(public payload: string) {}\n}\n\nexport class CreateUser {\n static readonly type = '[Identity] Create User';\n constructor(public payload: Identity.UserSaveRequest) {}\n}\n\nexport class UpdateUser {\n static readonly type = '[Identity] Update User';\n constructor(public payload: Identity.UserSaveRequest & { id: string }) {}\n}\n\nexport class GetUserRoles {\n static readonly type = '[Identity] Get User Roles';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { Identity } from '../models/identity';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class IdentityService {\n constructor(private rest: RestService) {}\n\n getRoles(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/roles',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getRoleById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteRole(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createRole(body: Identity.RoleSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/roles',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateRole(body: Identity.RoleItem): Observable {\n const url = `/api/identity/roles/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getUsers(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/users',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getUserById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n getUserRoles(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}/roles`,\n };\n\n return this.rest.request(request);\n }\n\n deleteUser(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createUser(body: Identity.UserSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/users',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateUser(body: Identity.UserItem): Observable {\n const url = `/api/identity/users/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap, pluck } from 'rxjs/operators';\nimport {\n CreateRole,\n CreateUser,\n DeleteRole,\n DeleteUser,\n GetRoleById,\n GetRoles,\n GetUserById,\n GetUsers,\n UpdateRole,\n UpdateUser,\n GetUserRoles,\n} from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityService } from '../services/identity.service';\n\n@State({\n name: 'IdentityState',\n defaults: { roles: {}, selectedRole: {}, users: {}, selectedUser: {} } as Identity.State,\n})\nexport class IdentityState {\n @Selector()\n static getRoles({ roles }: Identity.State): Identity.RoleItem[] {\n return roles.items;\n }\n\n @Selector()\n static getRolesTotalCount({ roles }: Identity.State): number {\n return roles.totalCount;\n }\n\n @Selector()\n static getUsers({ users }: Identity.State): Identity.UserItem[] {\n return users.items;\n }\n\n @Selector()\n static getUsersTotalCount({ users }: Identity.State): number {\n return users.totalCount;\n }\n\n constructor(private identityService: IdentityService) {}\n\n @Action(GetRoles)\n getRoles({ patchState }: StateContext, { payload }: GetRoles) {\n return this.identityService.getRoles(payload).pipe(\n tap(roles =>\n patchState({\n roles,\n }),\n ),\n );\n }\n\n @Action(GetRoleById)\n getRole({ patchState }: StateContext, { payload }: GetRoleById) {\n return this.identityService.getRoleById(payload).pipe(\n tap(selectedRole =>\n patchState({\n selectedRole,\n }),\n ),\n );\n }\n\n @Action(DeleteRole)\n deleteRole({ dispatch }: StateContext, { payload }: GetRoleById) {\n return this.identityService.deleteRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(CreateRole)\n addRole({ dispatch }: StateContext, { payload }: CreateRole) {\n return this.identityService.createRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(UpdateRole)\n updateRole({ getState, dispatch }: StateContext, { payload }: UpdateRole) {\n return dispatch(new GetRoleById(payload.id)).pipe(\n switchMap(() => this.identityService.updateRole({ ...getState().selectedRole, ...payload })),\n switchMap(() => dispatch(new GetRoles())),\n );\n }\n\n @Action(GetUsers)\n getUsers({ patchState }: StateContext, { payload }: GetUsers) {\n return this.identityService.getUsers(payload).pipe(\n tap(users =>\n patchState({\n users,\n }),\n ),\n );\n }\n\n @Action(GetUserById)\n getUser({ patchState }: StateContext, { payload }: GetUserById) {\n return this.identityService.getUserById(payload).pipe(\n tap(selectedUser =>\n patchState({\n selectedUser,\n }),\n ),\n );\n }\n\n @Action(DeleteUser)\n deleteUser({ dispatch }: StateContext, { payload }: GetUserById) {\n return this.identityService.deleteUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(CreateUser)\n addUser({ dispatch }: StateContext, { payload }: CreateUser) {\n return this.identityService.createUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(UpdateUser)\n updateUser({ getState, dispatch }: StateContext, { payload }: UpdateUser) {\n return dispatch(new GetUserById(payload.id)).pipe(\n switchMap(() => this.identityService.updateUser({ ...getState().selectedUser, ...payload })),\n switchMap(() => dispatch(new GetUsers())),\n );\n }\n\n @Action(GetUserRoles)\n getUserRoles({ patchState }: StateContext, { payload }: GetUserRoles) {\n return this.identityService.getUserRoles(payload).pipe(\n pluck('items'),\n tap(selectedUserRoles =>\n patchState({\n selectedUserRoles,\n }),\n ),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck } from 'rxjs/operators';\nimport { CreateRole, DeleteRole, GetRoleById, GetRoles, UpdateRole } from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n\n@Component({\n selector: 'abp-roles',\n templateUrl: './roles.component.html',\n})\nexport class RolesComponent {\n @Select(IdentityState.getRoles)\n data$: Observable;\n\n @Select(IdentityState.getRolesTotalCount)\n totalCount$: Observable;\n\n form: FormGroup;\n\n selected: Identity.RoleItem;\n\n isModalVisible: boolean;\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n createForm() {\n this.form = this.fb.group({\n name: new FormControl({ value: this.selected.name || '', disabled: this.selected.isStatic }, [\n Validators.required,\n Validators.maxLength(256),\n ]),\n isDefault: [this.selected.isDefault || false],\n isPublic: [this.selected.isPublic || false],\n });\n }\n\n openModal() {\n this.createForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.RoleItem;\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetRoleById(id))\n .pipe(pluck('IdentityState', 'selectedRole'))\n .subscribe(selectedRole => {\n this.selected = selectedRole;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateRole({ ...this.form.value, id: this.selected.id })\n : new CreateRole(this.form.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpIdentity::RoleDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteRole(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetRoles(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetRoles } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class RoleResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const roles = this.store.selectSnapshot(IdentityState.getRoles);\n return roles && roles.length ? null : this.store.dispatch(new GetRoles());\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, TrackByFunction, ViewChild } from '@angular/core';\nimport { AbstractControl, FormArray, FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport {\n CreateUser,\n DeleteUser,\n GetUserById,\n GetUserRoles,\n GetUsers,\n UpdateUser,\n} from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n@Component({\n selector: 'abp-users',\n templateUrl: './users.component.html',\n})\nexport class UsersComponent {\n @Select(IdentityState.getUsers)\n data$: Observable;\n\n @Select(IdentityState.getUsersTotalCount)\n totalCount$: Observable;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n selected: Identity.UserItem;\n\n selectedUserRoles: Identity.RoleItem[];\n\n roles: Identity.RoleItem[];\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'userName',\n };\n\n isModalVisible: boolean;\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (index, item) => Object.keys(item)[0] || index;\n\n get roleGroups(): FormGroup[] {\n return snq(() => (this.form.get('roleNames') as FormArray).controls as FormGroup[], []);\n }\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n buildForm() {\n this.roles = this.store.selectSnapshot(IdentityState.getRoles);\n this.form = this.fb.group({\n userName: [this.selected.userName || '', [Validators.required, Validators.maxLength(256)]],\n email: [this.selected.email || '', [Validators.required, Validators.email, Validators.maxLength(256)]],\n name: [this.selected.name || '', [Validators.maxLength(64)]],\n surname: [this.selected.surname || '', [Validators.maxLength(64)]],\n phoneNumber: [this.selected.phoneNumber || '', [Validators.maxLength(16)]],\n lockoutEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n twoFactorEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n roleNames: this.fb.array(\n this.roles.map(role =>\n this.fb.group({\n [role.name]: [!!snq(() => this.selectedUserRoles.find(userRole => userRole.id === role.id))],\n }),\n ),\n ),\n });\n if (!this.selected.userName) {\n this.form.addControl('password', new FormControl('', [Validators.required, Validators.maxLength(32)]));\n }\n }\n\n openModal() {\n this.buildForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.UserItem;\n this.selectedUserRoles = [] as Identity.RoleItem[];\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetUserById(id))\n .pipe(\n switchMap(() => this.store.dispatch(new GetUserRoles(id))),\n pluck('IdentityState'),\n take(1),\n )\n .subscribe((state: Identity.State) => {\n this.selected = state.selectedUser;\n this.selectedUserRoles = state.selectedUserRoles;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n const { roleNames } = this.form.value;\n const mappedRoleNames = snq(\n () => roleNames.filter(role => !!role[Object.keys(role)[0]]).map(role => Object.keys(role)[0]),\n [],\n );\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateUser({\n ...this.form.value,\n id: this.selected.id,\n roleNames: mappedRoleNames,\n })\n : new CreateUser({\n ...this.form.value,\n roleNames: mappedRoleNames,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, userName: string) {\n this.confirmationService\n .warn('AbpIdentity::UserDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [userName],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteUser(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetUsers(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetUsers } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class UserResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const users = this.store.selectSnapshot(IdentityState.getUsers);\n return users && users.length ? null : this.store.dispatch(new GetUsers());\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { RoleResolver } from './resolvers/roles.resolver';\nimport { DynamicLayoutComponent, AuthGuard, PermissionGuard } from '@abp/ng.core';\nimport { UsersComponent } from './components/users/users.component';\nimport { UserResolver } from './resolvers/users.resolver';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'roles', pathMatch: 'full' },\n {\n path: 'roles',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Roles' },\n children: [{ path: '', component: RolesComponent, resolve: [RoleResolver] }],\n },\n {\n path: 'users',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Users' },\n children: [\n {\n path: '',\n component: UsersComponent,\n resolve: [RoleResolver, UserResolver],\n },\n ],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [RoleResolver, UserResolver],\n})\nexport class IdentityRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { IdentityRoutingModule } from './identity-routing.module';\nimport { IdentityState } from './states/identity.state';\nimport { NgbTabsetModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { UsersComponent } from './components/users/users.component';\nimport { PermissionManagementModule } from '@abp/ng.permission-management';\nimport { TableModule } from 'primeng/table';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\n\n@NgModule({\n declarations: [RolesComponent, UsersComponent],\n imports: [\n NgxsModule.forFeature([IdentityState]),\n CoreModule,\n IdentityRoutingModule,\n NgbTabsetModule,\n ThemeSharedModule,\n TableModule,\n NgbDropdownModule,\n PermissionManagementModule,\n NgxValidateCoreModule,\n PerfectScrollbarModule,\n ],\n})\nexport class IdentityModule {}\n","import { eLayoutType, ABP } from '@abp/ng.core';\n\nexport const IDENTITY_ROUTES = {\n routes: [\n {\n name: 'AbpUiNavigation::Menu:Administration',\n path: '',\n order: 1,\n wrapper: true,\n },\n {\n name: 'AbpIdentity::Menu:IdentityManagement',\n path: 'identity',\n order: 1,\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-id-card-o',\n children: [\n { path: 'roles', name: 'AbpIdentity::Roles', order: 2, requiredPolicy: 'AbpIdentity.Roles' },\n { path: 'users', name: 'AbpIdentity::Users', order: 1, requiredPolicy: 'AbpIdentity.Users' },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","import { ABP } from '@abp/ng.core';\n\nexport namespace Identity {\n export interface State {\n roles: RoleResponse;\n users: UserResponse;\n selectedRole: RoleItem;\n selectedUser: UserItem;\n selectedUserRoles: RoleItem[];\n }\n\n export type RoleResponse = ABP.PagedResponse;\n\n export interface RoleSaveRequest {\n name: string;\n isDefault: boolean;\n isPublic: boolean;\n }\n\n export interface RoleItem extends RoleSaveRequest {\n isStatic: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export type UserResponse = ABP.PagedResponse;\n\n export interface UserItem extends User {\n tenantId: string;\n emailConfirmed: boolean;\n phoneNumberConfirmed: boolean;\n isLockedOut: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export interface User {\n userName: string;\n name: string;\n surname: string;\n email: string;\n phoneNumber: string;\n twoFactorEnabled: true;\n lockoutEnabled: true;\n }\n\n export interface UserSaveRequest extends User {\n password: string;\n roleNames: string[];\n }\n}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.identity.js","sources":["ng://@abp/ng.identity/lib/actions/identity.actions.ts","ng://@abp/ng.identity/lib/services/identity.service.ts","ng://@abp/ng.identity/lib/states/identity.state.ts","ng://@abp/ng.identity/lib/components/roles/roles.component.ts","ng://@abp/ng.identity/lib/resolvers/roles.resolver.ts","ng://@abp/ng.identity/lib/components/users/users.component.ts","ng://@abp/ng.identity/lib/resolvers/users.resolver.ts","ng://@abp/ng.identity/lib/identity-routing.module.ts","ng://@abp/ng.identity/lib/identity.module.ts","ng://@abp/ng.identity/lib/constants/routes.ts","ng://@abp/ng.identity/lib/models/identity.ts"],"sourcesContent":["import { Identity } from '../models/identity';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetRoles {\n static readonly type = '[Identity] Get Roles';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetRoleById {\n static readonly type = '[Identity] Get Role By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteRole {\n static readonly type = '[Identity] Delete Role';\n constructor(public payload: string) {}\n}\n\nexport class CreateRole {\n static readonly type = '[Identity] Create Role';\n constructor(public payload: Identity.RoleSaveRequest) {}\n}\n\nexport class UpdateRole {\n static readonly type = '[Identity] Update Role';\n constructor(public payload: Identity.RoleItem) {}\n}\n\nexport class GetUsers {\n static readonly type = '[Identity] Get Users';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetUserById {\n static readonly type = '[Identity] Get User By Id';\n constructor(public payload: string) {}\n}\n\nexport class DeleteUser {\n static readonly type = '[Identity] Delete User';\n constructor(public payload: string) {}\n}\n\nexport class CreateUser {\n static readonly type = '[Identity] Create User';\n constructor(public payload: Identity.UserSaveRequest) {}\n}\n\nexport class UpdateUser {\n static readonly type = '[Identity] Update User';\n constructor(public payload: Identity.UserSaveRequest & { id: string }) {}\n}\n\nexport class GetUserRoles {\n static readonly type = '[Identity] Get User Roles';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { Identity } from '../models/identity';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class IdentityService {\n constructor(private rest: RestService) {}\n\n getRoles(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/roles',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getRoleById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteRole(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/roles/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createRole(body: Identity.RoleSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/roles',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateRole(body: Identity.RoleItem): Observable {\n const url = `/api/identity/roles/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getUsers(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/identity/users',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getUserById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n getUserRoles(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/identity/users/${id}/roles`,\n };\n\n return this.rest.request(request);\n }\n\n deleteUser(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/identity/users/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createUser(body: Identity.UserSaveRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: '/api/identity/users',\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateUser(body: Identity.UserItem): Observable {\n const url = `/api/identity/users/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap, pluck } from 'rxjs/operators';\nimport {\n CreateRole,\n CreateUser,\n DeleteRole,\n DeleteUser,\n GetRoleById,\n GetRoles,\n GetUserById,\n GetUsers,\n UpdateRole,\n UpdateUser,\n GetUserRoles,\n} from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityService } from '../services/identity.service';\n\n@State({\n name: 'IdentityState',\n defaults: { roles: {}, selectedRole: {}, users: {}, selectedUser: {} } as Identity.State,\n})\nexport class IdentityState {\n @Selector()\n static getRoles({ roles }: Identity.State): Identity.RoleItem[] {\n return roles.items;\n }\n\n @Selector()\n static getRolesTotalCount({ roles }: Identity.State): number {\n return roles.totalCount;\n }\n\n @Selector()\n static getUsers({ users }: Identity.State): Identity.UserItem[] {\n return users.items;\n }\n\n @Selector()\n static getUsersTotalCount({ users }: Identity.State): number {\n return users.totalCount;\n }\n\n constructor(private identityService: IdentityService) {}\n\n @Action(GetRoles)\n getRoles({ patchState }: StateContext, { payload }: GetRoles) {\n return this.identityService.getRoles(payload).pipe(\n tap(roles =>\n patchState({\n roles,\n }),\n ),\n );\n }\n\n @Action(GetRoleById)\n getRole({ patchState }: StateContext, { payload }: GetRoleById) {\n return this.identityService.getRoleById(payload).pipe(\n tap(selectedRole =>\n patchState({\n selectedRole,\n }),\n ),\n );\n }\n\n @Action(DeleteRole)\n deleteRole({ dispatch }: StateContext, { payload }: GetRoleById) {\n return this.identityService.deleteRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(CreateRole)\n addRole({ dispatch }: StateContext, { payload }: CreateRole) {\n return this.identityService.createRole(payload).pipe(switchMap(() => dispatch(new GetRoles())));\n }\n\n @Action(UpdateRole)\n updateRole({ getState, dispatch }: StateContext, { payload }: UpdateRole) {\n return dispatch(new GetRoleById(payload.id)).pipe(\n switchMap(() => this.identityService.updateRole({ ...getState().selectedRole, ...payload })),\n switchMap(() => dispatch(new GetRoles())),\n );\n }\n\n @Action(GetUsers)\n getUsers({ patchState }: StateContext, { payload }: GetUsers) {\n return this.identityService.getUsers(payload).pipe(\n tap(users =>\n patchState({\n users,\n }),\n ),\n );\n }\n\n @Action(GetUserById)\n getUser({ patchState }: StateContext, { payload }: GetUserById) {\n return this.identityService.getUserById(payload).pipe(\n tap(selectedUser =>\n patchState({\n selectedUser,\n }),\n ),\n );\n }\n\n @Action(DeleteUser)\n deleteUser({ dispatch }: StateContext, { payload }: GetUserById) {\n return this.identityService.deleteUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(CreateUser)\n addUser({ dispatch }: StateContext, { payload }: CreateUser) {\n return this.identityService.createUser(payload).pipe(switchMap(() => dispatch(new GetUsers())));\n }\n\n @Action(UpdateUser)\n updateUser({ getState, dispatch }: StateContext, { payload }: UpdateUser) {\n return dispatch(new GetUserById(payload.id)).pipe(\n switchMap(() => this.identityService.updateUser({ ...getState().selectedUser, ...payload })),\n switchMap(() => dispatch(new GetUsers())),\n );\n }\n\n @Action(GetUserRoles)\n getUserRoles({ patchState }: StateContext, { payload }: GetUserRoles) {\n return this.identityService.getUserRoles(payload).pipe(\n pluck('items'),\n tap(selectedUserRoles =>\n patchState({\n selectedUserRoles,\n }),\n ),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck } from 'rxjs/operators';\nimport { CreateRole, DeleteRole, GetRoleById, GetRoles, UpdateRole } from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n\n@Component({\n selector: 'abp-roles',\n templateUrl: './roles.component.html',\n})\nexport class RolesComponent {\n @Select(IdentityState.getRoles)\n data$: Observable;\n\n @Select(IdentityState.getRolesTotalCount)\n totalCount$: Observable;\n\n form: FormGroup;\n\n selected: Identity.RoleItem;\n\n isModalVisible: boolean;\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n createForm() {\n this.form = this.fb.group({\n name: new FormControl({ value: this.selected.name || '', disabled: this.selected.isStatic }, [\n Validators.required,\n Validators.maxLength(256),\n ]),\n isDefault: [this.selected.isDefault || false],\n isPublic: [this.selected.isPublic || false],\n });\n }\n\n openModal() {\n this.createForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.RoleItem;\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetRoleById(id))\n .pipe(pluck('IdentityState', 'selectedRole'))\n .subscribe(selectedRole => {\n this.selected = selectedRole;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateRole({ ...this.form.value, id: this.selected.id })\n : new CreateRole(this.form.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpIdentity::RoleDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteRole(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetRoles(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetRoles } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class RoleResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const roles = this.store.selectSnapshot(IdentityState.getRoles);\n return roles && roles.length ? null : this.store.dispatch(new GetRoles());\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, TrackByFunction, ViewChild } from '@angular/core';\nimport { AbstractControl, FormArray, FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport snq from 'snq';\nimport {\n CreateUser,\n DeleteUser,\n GetUserById,\n GetUserRoles,\n GetUsers,\n UpdateUser,\n} from '../../actions/identity.actions';\nimport { Identity } from '../../models/identity';\nimport { IdentityState } from '../../states/identity.state';\n@Component({\n selector: 'abp-users',\n templateUrl: './users.component.html',\n})\nexport class UsersComponent {\n @Select(IdentityState.getUsers)\n data$: Observable;\n\n @Select(IdentityState.getUsersTotalCount)\n totalCount$: Observable;\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n selected: Identity.UserItem;\n\n selectedUserRoles: Identity.RoleItem[];\n\n roles: Identity.RoleItem[];\n\n visiblePermissions: boolean = false;\n\n providerKey: string;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'userName',\n };\n\n isModalVisible: boolean;\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (index, item) => Object.keys(item)[0] || index;\n\n get roleGroups(): FormGroup[] {\n return snq(() => (this.form.get('roleNames') as FormArray).controls as FormGroup[], []);\n }\n\n constructor(private confirmationService: ConfirmationService, private fb: FormBuilder, private store: Store) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n buildForm() {\n this.roles = this.store.selectSnapshot(IdentityState.getRoles);\n this.form = this.fb.group({\n userName: [this.selected.userName || '', [Validators.required, Validators.maxLength(256)]],\n email: [this.selected.email || '', [Validators.required, Validators.email, Validators.maxLength(256)]],\n name: [this.selected.name || '', [Validators.maxLength(64)]],\n surname: [this.selected.surname || '', [Validators.maxLength(64)]],\n phoneNumber: [this.selected.phoneNumber || '', [Validators.maxLength(16)]],\n lockoutEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n twoFactorEnabled: [this.selected.twoFactorEnabled || (this.selected.id ? false : true)],\n roleNames: this.fb.array(\n this.roles.map(role =>\n this.fb.group({\n [role.name]: [!!snq(() => this.selectedUserRoles.find(userRole => userRole.id === role.id))],\n }),\n ),\n ),\n });\n if (!this.selected.userName) {\n this.form.addControl('password', new FormControl('', [Validators.required, Validators.maxLength(32)]));\n }\n }\n\n openModal() {\n this.buildForm();\n this.isModalVisible = true;\n }\n\n onAdd() {\n this.selected = {} as Identity.UserItem;\n this.selectedUserRoles = [] as Identity.RoleItem[];\n this.openModal();\n }\n\n onEdit(id: string) {\n this.store\n .dispatch(new GetUserById(id))\n .pipe(\n switchMap(() => this.store.dispatch(new GetUserRoles(id))),\n pluck('IdentityState'),\n take(1),\n )\n .subscribe((state: Identity.State) => {\n this.selected = state.selectedUser;\n this.selectedUserRoles = state.selectedUserRoles;\n this.openModal();\n });\n }\n\n save() {\n if (!this.form.valid) return;\n this.modalBusy = true;\n\n const { roleNames } = this.form.value;\n const mappedRoleNames = snq(\n () => roleNames.filter(role => !!role[Object.keys(role)[0]]).map(role => Object.keys(role)[0]),\n [],\n );\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateUser({\n ...this.form.value,\n id: this.selected.id,\n roleNames: mappedRoleNames,\n })\n : new CreateUser({\n ...this.form.value,\n roleNames: mappedRoleNames,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, userName: string) {\n this.confirmationService\n .warn('AbpIdentity::UserDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {\n messageLocalizationParams: [userName],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteUser(id));\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetUsers(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetUsers } from '../actions/identity.actions';\nimport { Identity } from '../models/identity';\nimport { IdentityState } from '../states/identity.state';\n\n@Injectable()\nexport class UserResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const users = this.store.selectSnapshot(IdentityState.getUsers);\n return users && users.length ? null : this.store.dispatch(new GetUsers());\n }\n}\n","import { NgModule } from '@angular/core';\nimport { Routes, RouterModule } from '@angular/router';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { RoleResolver } from './resolvers/roles.resolver';\nimport { DynamicLayoutComponent, AuthGuard, PermissionGuard } from '@abp/ng.core';\nimport { UsersComponent } from './components/users/users.component';\nimport { UserResolver } from './resolvers/users.resolver';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'roles', pathMatch: 'full' },\n {\n path: 'roles',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Roles' },\n children: [{ path: '', component: RolesComponent, resolve: [RoleResolver] }],\n },\n {\n path: 'users',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpIdentity.Users' },\n children: [\n {\n path: '',\n component: UsersComponent,\n resolve: [RoleResolver, UserResolver],\n },\n ],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [RoleResolver, UserResolver],\n})\nexport class IdentityRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { NgModule, Provider } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { RolesComponent } from './components/roles/roles.component';\nimport { IdentityRoutingModule } from './identity-routing.module';\nimport { IdentityState } from './states/identity.state';\nimport { NgbTabsetModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { UsersComponent } from './components/users/users.component';\nimport { PermissionManagementModule } from '@abp/ng.permission-management';\nimport { TableModule } from 'primeng/table';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\n\n@NgModule({\n declarations: [RolesComponent, UsersComponent],\n imports: [\n NgxsModule.forFeature([IdentityState]),\n CoreModule,\n IdentityRoutingModule,\n NgbTabsetModule,\n ThemeSharedModule,\n TableModule,\n NgbDropdownModule,\n PermissionManagementModule,\n NgxValidateCoreModule,\n ],\n})\nexport class IdentityModule {}\n\nexport function IdentityProviders(): Provider[] {\n return [];\n}\n","import { eLayoutType, ABP } from '@abp/ng.core';\n\nexport const IDENTITY_ROUTES = {\n routes: [\n {\n name: 'AbpUiNavigation::Menu:Administration',\n path: '',\n order: 1,\n wrapper: true,\n },\n {\n name: 'AbpIdentity::Menu:IdentityManagement',\n path: 'identity',\n order: 1,\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-id-card-o',\n children: [\n { path: 'roles', name: 'AbpIdentity::Roles', order: 2, requiredPolicy: 'AbpIdentity.Roles' },\n { path: 'users', name: 'AbpIdentity::Users', order: 1, requiredPolicy: 'AbpIdentity.Users' },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","import { ABP } from '@abp/ng.core';\n\nexport namespace Identity {\n export interface State {\n roles: RoleResponse;\n users: UserResponse;\n selectedRole: RoleItem;\n selectedUser: UserItem;\n selectedUserRoles: RoleItem[];\n }\n\n export type RoleResponse = ABP.PagedResponse;\n\n export interface RoleSaveRequest {\n name: string;\n isDefault: boolean;\n isPublic: boolean;\n }\n\n export interface RoleItem extends RoleSaveRequest {\n isStatic: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export type UserResponse = ABP.PagedResponse;\n\n export interface UserItem extends User {\n tenantId: string;\n emailConfirmed: boolean;\n phoneNumberConfirmed: boolean;\n isLockedOut: boolean;\n concurrencyStamp: string;\n id: string;\n }\n\n export interface User {\n userName: string;\n name: string;\n surname: string;\n email: string;\n phoneNumber: string;\n twoFactorEnabled: true;\n lockoutEnabled: true;\n }\n\n export interface UserSaveRequest extends User {\n password: string;\n roleNames: string[];\n }\n}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/identity/lib/identity.module.d.ts b/npm/ng-packs/dist/identity/lib/identity.module.d.ts index 2f607750cd..e54523e1bb 100644 --- a/npm/ng-packs/dist/identity/lib/identity.module.d.ts +++ b/npm/ng-packs/dist/identity/lib/identity.module.d.ts @@ -1,2 +1,4 @@ +import { Provider } from '@angular/core'; export declare class IdentityModule { } +export declare function IdentityProviders(): Provider[]; diff --git a/npm/ng-packs/dist/identity/lib/root-identity.module.d.ts b/npm/ng-packs/dist/identity/lib/root-identity.module.d.ts deleted file mode 100644 index 4729506ce6..0000000000 --- a/npm/ng-packs/dist/identity/lib/root-identity.module.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { ModuleWithProviders } from '@angular/core'; -export declare class RootIdentityModule { - static forRoot(): ModuleWithProviders; -} diff --git a/npm/ng-packs/dist/identity/public-api.d.ts b/npm/ng-packs/dist/identity/public-api.d.ts index 1d8e510195..f6ead168bc 100644 --- a/npm/ng-packs/dist/identity/public-api.d.ts +++ b/npm/ng-packs/dist/identity/public-api.d.ts @@ -1,4 +1,3 @@ -export * from './lib/root-identity.module'; export * from './lib/identity.module'; export * from './lib/actions/identity.actions'; export * from './lib/components/roles/roles.component'; diff --git a/npm/ng-packs/dist/permission-management/abp-ng.permission-management.metadata.json b/npm/ng-packs/dist/permission-management/abp-ng.permission-management.metadata.json index 67781c7e2e..33e98f54b5 100644 --- a/npm/ng-packs/dist/permission-management/abp-ng.permission-management.metadata.json +++ b/npm/ng-packs/dist/permission-management/abp-ng.permission-management.metadata.json @@ -1 +1 @@ -{"__symbolic":"module","version":4,"exports":[{"from":"./lib/permission-management.state"}],"metadata":{"RootPermissionManagementModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":2,"character":1},"arguments":[{}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"RootPermissionManagementModule"},"providers":[]}}}},"PermissionManagementModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":8,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ɵa"}],"imports":[{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":10,"character":12},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ThemeSharedModule","line":10,"character":24},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"NgxsModule","line":10,"character":43},"member":"forFeature"},"arguments":[[{"__symbolic":"reference","name":"ɵb"}]]},{"__symbolic":"reference","module":"ngx-perfect-scrollbar","name":"PerfectScrollbarModule","line":10,"character":95}],"exports":[{"__symbolic":"reference","name":"ɵa"}]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":20,"character":1},"arguments":[{"selector":"abp-permission-management","template":"\n \n \n

{{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - {{ data.entityName }}

\n
\n \n
\n \n \n
\n\n
\n
\n
\n
    \n \n
  • \n {{ group?.displayName }}\n
  • \n
    \n
\n
\n
\n

{{ selectedGroup?.displayName }}

\n
\n
\n
\n \n \n
\n
\n \n \n \n {{ permission.displayName }}\n {{ provider.providerName }}: {{ provider.providerKey }}\n
\n \n
\n
\n \n
\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n
\n"}]}],"members":{"providerName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}}]}],"providerKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":49,"character":3}}]}],"groups$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":52,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵb"},"member":"getPermissionGroups"}]}]}],"entityName$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":55,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵb"},"member":"getEntitiyDisplayName"}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":88,"character":29},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":88,"character":54}]}],"ngOnInit":[{"__symbolic":"method"}],"getChecked":[{"__symbolic":"method"}],"isGrantedByRole":[{"__symbolic":"method"}],"onClickCheckbox":[{"__symbolic":"method"}],"setTabCheckboxState":[{"__symbolic":"method"}],"setGrantCheckboxState":[{"__symbolic":"method"}],"onClickSelectThisTab":[{"__symbolic":"method"}],"onClickSelectAll":[{"__symbolic":"method"}],"onChangeGroup":[{"__symbolic":"method"}],"submit":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"initModal":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":6,"character":1},"arguments":[{"name":"PermissionManagementState","defaults":{"permissionRes":{}}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵc"}]}],"permissionManagementGet":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":23,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵd"}]}]}],"permissionManagementUpdate":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":34,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵe"}]}]}]},"statics":{"getPermissionGroups":{"__symbolic":"function","parameters":["permissionRes"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"permissionRes"},"member":"groups"},"right":[]}},"getEntitiyDisplayName":{"__symbolic":"function","parameters":["permissionRes"],"value":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"permissionRes"},"member":"entityDisplayName"}}}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.core","name":"RestService","line":9,"character":28}]}],"getPermissions":[{"__symbolic":"method"}],"updatePermissions":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵd":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵf"},"member":"GrantedProvider"}]}]},"statics":{"type":"[PermissionManagement] Get Permissions"}},"ɵe":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":9,"character":30,"module":"./lib/actions/permission-management.actions"}]}]},"statics":{"type":"[PermissionManagement] Update Permissions"}}},"origins":{"RootPermissionManagementModule":"./lib/root-permission-management.module","PermissionManagementModule":"./lib/permission-management.module","ɵa":"./lib/components/permission-management.component","ɵb":"./lib/states/permission-management.state","ɵc":"./lib/services/permission-management.service","ɵd":"./lib/actions/permission-management.actions","ɵe":"./lib/actions/permission-management.actions","ɵf":"./lib/models/permission-management"},"importAs":"@abp/ng.permission-management"} \ No newline at end of file +{"__symbolic":"module","version":4,"exports":[{"from":"./lib/permission-management.state"}],"metadata":{"PermissionManagementModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":7,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ɵa"}],"imports":[{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":9,"character":12},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ThemeSharedModule","line":9,"character":24},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"NgxsModule","line":9,"character":43},"member":"forFeature"},"arguments":[[{"__symbolic":"reference","name":"ɵb"}]]}],"exports":[{"__symbolic":"reference","name":"ɵa"}]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":20,"character":1},"arguments":[{"selector":"abp-permission-management","template":"\n \n \n

{{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - {{ data.entityName }}

\n
\n \n
\n \n \n
\n\n
\n
\n
\n
    \n
  • \n {{ group?.displayName }}\n
  • \n
\n
\n
\n

{{ selectedGroup?.displayName }}

\n
\n
\n
\n \n \n
\n
\n \n \n {{ permission.displayName }}\n {{ provider.providerName }}: {{ provider.providerKey }}\n
\n
\n
\n \n
\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n
\n"}]}],"members":{"providerName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}}]}],"providerKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":49,"character":3}}]}],"groups$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":52,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵb"},"member":"getPermissionGroups"}]}]}],"entityName$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":55,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵb"},"member":"getEntitiyDisplayName"}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":88,"character":29},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":88,"character":54}]}],"ngOnInit":[{"__symbolic":"method"}],"getChecked":[{"__symbolic":"method"}],"isGrantedByRole":[{"__symbolic":"method"}],"onClickCheckbox":[{"__symbolic":"method"}],"setTabCheckboxState":[{"__symbolic":"method"}],"setGrantCheckboxState":[{"__symbolic":"method"}],"onClickSelectThisTab":[{"__symbolic":"method"}],"onClickSelectAll":[{"__symbolic":"method"}],"onChangeGroup":[{"__symbolic":"method"}],"submit":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"initModal":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":6,"character":1},"arguments":[{"name":"PermissionManagementState","defaults":{"permissionRes":{}}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵc"}]}],"permissionManagementGet":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":23,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵd"}]}]}],"permissionManagementUpdate":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":34,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵe"}]}]}]},"statics":{"getPermissionGroups":{"__symbolic":"function","parameters":["permissionRes"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"permissionRes"},"member":"groups"},"right":[]}},"getEntitiyDisplayName":{"__symbolic":"function","parameters":["permissionRes"],"value":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"permissionRes"},"member":"entityDisplayName"}}}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.core","name":"RestService","line":9,"character":28}]}],"getPermissions":[{"__symbolic":"method"}],"updatePermissions":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵd":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵf"},"member":"GrantedProvider"}]}]},"statics":{"type":"[PermissionManagement] Get Permissions"}},"ɵe":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":9,"character":30,"module":"./lib/actions/permission-management.actions"}]}]},"statics":{"type":"[PermissionManagement] Update Permissions"}}},"origins":{"PermissionManagementModule":"./lib/permission-management.module","ɵa":"./lib/components/permission-management.component","ɵb":"./lib/states/permission-management.state","ɵc":"./lib/services/permission-management.service","ɵd":"./lib/actions/permission-management.actions","ɵe":"./lib/actions/permission-management.actions","ɵf":"./lib/models/permission-management"},"importAs":"@abp/ng.permission-management"} \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.js b/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.js index d3d04be1cb..598f3ff1ed 100644 --- a/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.js +++ b/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.js @@ -1,8 +1,8 @@ (function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@abp/ng.core'), require('@abp/ng.theme.shared'), require('@ngxs/store'), require('rxjs'), require('rxjs/operators'), require('ngx-perfect-scrollbar')) : - typeof define === 'function' && define.amd ? define('@abp/ng.permission-management', ['exports', '@angular/core', '@abp/ng.core', '@abp/ng.theme.shared', '@ngxs/store', 'rxjs', 'rxjs/operators', 'ngx-perfect-scrollbar'], factory) : - (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng['permission-management'] = {}), global.ng.core, global.ng_core, global.ng_theme_shared, global.store, global.rxjs, global.rxjs.operators, global.ngxPerfectScrollbar)); -}(this, function (exports, core, ng_core, ng_theme_shared, store, rxjs, operators, ngxPerfectScrollbar) { 'use strict'; + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@abp/ng.core'), require('@abp/ng.theme.shared'), require('@angular/core'), require('@ngxs/store'), require('rxjs'), require('rxjs/operators')) : + typeof define === 'function' && define.amd ? define('@abp/ng.permission-management', ['exports', '@abp/ng.core', '@abp/ng.theme.shared', '@angular/core', '@ngxs/store', 'rxjs', 'rxjs/operators'], factory) : + (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng['permission-management'] = {}), global.ng_core, global.ng_theme_shared, global.ng.core, global.store, global.rxjs, global.rxjs.operators)); +}(this, function (exports, ng_core, ng_theme_shared, core, store, rxjs, operators) { 'use strict'; /*! ***************************************************************************** Copyright (c) Microsoft Corporation. All rights reserved. @@ -201,31 +201,6 @@ return (mod && mod.__esModule) ? mod : { default: mod }; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var RootPermissionManagementModule = /** @class */ (function () { - function RootPermissionManagementModule() { - } - /** - * @return {?} - */ - RootPermissionManagementModule.forRoot = /** - * @return {?} - */ - function () { - return { - ngModule: RootPermissionManagementModule, - providers: [], - }; - }; - RootPermissionManagementModule.decorators = [ - { type: core.NgModule, args: [{},] } - ]; - return RootPermissionManagementModule; - }()); - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -818,7 +793,7 @@ PermissionManagementComponent.decorators = [ { type: core.Component, args: [{ selector: 'abp-permission-management', - template: "\n \n \n

{{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - {{ data.entityName }}

\n
\n \n
\n \n \n
\n\n
\n
\n
\n
    \n \n
  • \n {{ group?.displayName }}\n
  • \n
    \n
\n
\n
\n

{{ selectedGroup?.displayName }}

\n
\n
\n
\n \n \n
\n
\n \n \n \n {{ permission.displayName }}\n {{ provider.providerName }}: {{ provider.providerKey }}\n
\n \n
\n
\n \n
\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n
\n" + template: "\n \n \n

{{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - {{ data.entityName }}

\n
\n \n
\n \n \n
\n\n
\n
\n
\n
    \n
  • \n {{ group?.displayName }}\n
  • \n
\n
\n
\n

{{ selectedGroup?.displayName }}

\n
\n
\n
\n \n \n
\n
\n \n \n {{ permission.displayName }}\n {{ provider.providerName }}: {{ provider.providerKey }}\n
\n
\n
\n \n
\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n
\n" }] } ]; /** @nocollapse */ @@ -923,7 +898,7 @@ PermissionManagementModule.decorators = [ { type: core.NgModule, args: [{ declarations: [PermissionManagementComponent], - imports: [ng_core.CoreModule, ng_theme_shared.ThemeSharedModule, store.NgxsModule.forFeature([PermissionManagementState]), ngxPerfectScrollbar.PerfectScrollbarModule], + imports: [ng_core.CoreModule, ng_theme_shared.ThemeSharedModule, store.NgxsModule.forFeature([PermissionManagementState])], exports: [PermissionManagementComponent], },] } ]; @@ -1032,7 +1007,6 @@ exports.PermissionManagementModule = PermissionManagementModule; exports.PermissionManagementService = PermissionManagementService; exports.PermissionManagementState = PermissionManagementState; - exports.RootPermissionManagementModule = RootPermissionManagementModule; exports.UpdatePermissions = UpdatePermissions; exports.ɵa = PermissionManagementComponent; exports.ɵb = PermissionManagementState; diff --git a/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.js.map b/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.js.map index b221849c1f..bda6d59fa8 100644 --- a/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.js.map +++ b/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.permission-management.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.permission-management/lib/root-permission-management.module.ts","ng://@abp/ng.permission-management/lib/actions/permission-management.actions.ts","ng://@abp/ng.permission-management/lib/services/permission-management.service.ts","ng://@abp/ng.permission-management/lib/states/permission-management.state.ts","ng://@abp/ng.permission-management/lib/components/permission-management.component.ts","ng://@abp/ng.permission-management/lib/permission-management.module.ts","ng://@abp/ng.permission-management/lib/models/permission-management.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootPermissionManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootPermissionManagementModule,\n providers: [],\n };\n }\n}\n","import { PermissionManagement } from '../models/permission-management';\n\nexport class GetPermissions {\n static readonly type = '[PermissionManagement] Get Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider) {}\n}\n\nexport class UpdatePermissions {\n static readonly type = '[PermissionManagement] Update Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Observable } from 'rxjs';\nimport { PermissionManagement } from '../models/permission-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionManagementService {\n constructor(private rest: RestService) {}\n\n getPermissions(params: PermissionManagement.GrantedProvider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/permissions',\n params,\n };\n\n return this.rest.request(request);\n }\n\n updatePermissions({\n permissions,\n providerKey,\n providerName,\n }: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/permissions',\n body: { permissions },\n params: { providerKey, providerName },\n };\n\n return this.rest.request(request);\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementService } from '../services/permission-management.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'PermissionManagementState',\n defaults: { permissionRes: {} } as PermissionManagement.State,\n})\nexport class PermissionManagementState {\n @Selector()\n static getPermissionGroups({ permissionRes }: PermissionManagement.State) {\n return permissionRes.groups || [];\n }\n\n @Selector()\n static getEntitiyDisplayName({ permissionRes }: PermissionManagement.State): string {\n return permissionRes.entityDisplayName;\n }\n\n constructor(private permissionManagementService: PermissionManagementService) {}\n\n @Action(GetPermissions)\n permissionManagementGet({ patchState }: StateContext, { payload }: GetPermissions) {\n return this.permissionManagementService.getPermissions(payload).pipe(\n tap(permissionResponse =>\n patchState({\n permissionRes: permissionResponse,\n }),\n ),\n );\n }\n\n @Action(UpdatePermissions)\n permissionManagementUpdate(_, { payload }: UpdatePermissions) {\n return this.permissionManagementService.updatePermissions(payload);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n Renderer2,\n SimpleChanges,\n TrackByFunction,\n} from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { from, Observable } from 'rxjs';\nimport { map, pluck, take } from 'rxjs/operators';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementState } from '../states/permission-management.state';\n\ntype PermissionWithMargin = PermissionManagement.Permission & { margin: number };\n\n@Component({\n selector: 'abp-permission-management',\n templateUrl: './permission-management.component.html',\n})\nexport class PermissionManagementComponent implements OnInit, OnChanges {\n @Input()\n providerName: string;\n\n @Input()\n providerKey: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n if (!this.selectedGroup) return;\n\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (!value) {\n this.selectedGroup = null;\n }\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(PermissionManagementState.getPermissionGroups)\n groups$: Observable;\n\n @Select(PermissionManagementState.getEntitiyDisplayName)\n entityName$: Observable;\n\n selectedGroup: PermissionManagement.Group;\n\n permissions: PermissionManagement.Permission[] = [];\n\n selectThisTab: boolean = false;\n\n selectAllTab: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n get selectedGroupPermissions$(): Observable {\n return this.groups$.pipe(\n map(groups =>\n this.selectedGroup ? groups.find(group => group.name === this.selectedGroup.name).permissions : [],\n ),\n map(permissions =>\n permissions.map(\n permission =>\n (({\n ...permission,\n margin: findMargin(permissions, permission),\n isGranted: this.permissions.find(per => per.name === permission.name).isGranted,\n } as any) as PermissionWithMargin),\n ),\n ),\n );\n }\n\n constructor(private store: Store, private renderer: Renderer2) {}\n\n ngOnInit(): void {}\n\n getChecked(name: string) {\n return (this.permissions.find(per => per.name === name) || { isGranted: false }).isGranted;\n }\n\n isGrantedByRole(grantedProviders: PermissionManagement.GrantedProvider[]): boolean {\n if (grantedProviders.length) {\n return grantedProviders.findIndex(p => p.providerName === 'Role') > -1;\n }\n return false;\n }\n\n onClickCheckbox(clickedPermission: PermissionManagement.Permission, value) {\n if (clickedPermission.isGranted && this.isGrantedByRole(clickedPermission.grantedProviders)) return;\n\n setTimeout(() => {\n this.permissions = this.permissions.map(per => {\n if (clickedPermission.name === per.name) {\n return { ...per, isGranted: !per.isGranted };\n } else if (clickedPermission.name === per.parentName && clickedPermission.isGranted) {\n return { ...per, isGranted: false };\n } else if (clickedPermission.parentName === per.name && !clickedPermission.isGranted) {\n return { ...per, isGranted: true };\n }\n\n return per;\n });\n\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }, 0);\n }\n\n setTabCheckboxState() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n const selectedPermissions = permissions.filter(per => per.isGranted);\n const element = document.querySelector('#select-all-in-this-tabs') as any;\n\n if (selectedPermissions.length === permissions.length) {\n element.indeterminate = false;\n this.selectThisTab = true;\n } else if (selectedPermissions.length === 0) {\n element.indeterminate = false;\n this.selectThisTab = false;\n } else {\n element.indeterminate = true;\n }\n });\n }\n\n setGrantCheckboxState() {\n const selectedAllPermissions = this.permissions.filter(per => per.isGranted);\n const checkboxElement = document.querySelector('#select-all-in-all-tabs') as any;\n\n if (selectedAllPermissions.length === this.permissions.length) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = true;\n } else if (selectedAllPermissions.length === 0) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = false;\n } else {\n checkboxElement.indeterminate = true;\n }\n }\n\n onClickSelectThisTab() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n permissions.forEach(permission => {\n if (permission.isGranted && this.isGrantedByRole(permission.grantedProviders)) return;\n\n const index = this.permissions.findIndex(per => per.name === permission.name);\n\n this.permissions = [\n ...this.permissions.slice(0, index),\n { ...this.permissions[index], isGranted: !this.selectThisTab },\n ...this.permissions.slice(index + 1),\n ];\n });\n });\n\n this.setGrantCheckboxState();\n }\n\n onClickSelectAll() {\n this.permissions = this.permissions.map(permission => ({ ...permission, isGranted: !this.selectAllTab }));\n\n this.selectThisTab = !this.selectAllTab;\n }\n\n onChangeGroup(group: PermissionManagement.Group) {\n this.selectedGroup = group;\n this.setTabCheckboxState();\n }\n\n submit() {\n this.modalBusy = true;\n const unchangedPermissions = getPermissions(\n this.store.selectSnapshot(PermissionManagementState.getPermissionGroups),\n );\n\n const changedPermissions: PermissionManagement.MinimumPermission[] = this.permissions\n .filter(per =>\n unchangedPermissions.find(unchanged => unchanged.name === per.name).isGranted === per.isGranted ? false : true,\n )\n .map(({ name, isGranted }) => ({ name, isGranted }));\n\n if (changedPermissions.length) {\n this.store\n .dispatch(\n new UpdatePermissions({\n providerKey: this.providerKey,\n providerName: this.providerName,\n permissions: changedPermissions,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n } else {\n this.modalBusy = false;\n this.visible = false;\n }\n }\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.store\n .dispatch(new GetPermissions({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('PermissionManagementState', 'permissionRes'))\n .subscribe((permissionRes: PermissionManagement.Response) => {\n this.selectedGroup = permissionRes.groups[0];\n this.permissions = getPermissions(permissionRes.groups);\n\n this.visible = true;\n });\n }\n\n initModal() {\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n\nfunction findMargin(permissions: PermissionManagement.Permission[], permission: PermissionManagement.Permission) {\n const parentPermission = permissions.find(per => per.name === permission.parentName);\n\n if (parentPermission && parentPermission.parentName) {\n let margin = 20;\n return (margin += findMargin(permissions, parentPermission));\n }\n\n return parentPermission ? 20 : 0;\n}\n\nfunction getPermissions(groups: PermissionManagement.Group[]): PermissionManagement.Permission[] {\n return groups.reduce((acc, val) => [...acc, ...val.permissions], []);\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { PermissionManagementComponent } from './components/permission-management.component';\nimport { PermissionManagementState } from './states/permission-management.state';\nimport { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\n\n@NgModule({\n declarations: [PermissionManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState]), PerfectScrollbarModule],\n exports: [PermissionManagementComponent],\n})\nexport class PermissionManagementModule {}\n","export namespace PermissionManagement {\n export interface State {\n permissionRes: Response;\n }\n\n export interface Response {\n entityDisplayName: string;\n groups: Group[];\n }\n\n export interface Group {\n name: string;\n displayName: string;\n permissions: Permission[];\n }\n\n export interface MinimumPermission {\n name: string;\n isGranted: boolean;\n }\n\n export interface Permission extends MinimumPermission {\n displayName: string;\n parentName: string;\n allowedProviders: string[];\n grantedProviders: GrantedProvider[];\n }\n\n export interface GrantedProvider {\n providerName: string;\n providerKey: string;\n }\n\n export interface UpdateRequest {\n permissions: MinimumPermission[];\n }\n}\n"],"names":["NgModule","Injectable","RestService","tap","tslib_1.__decorate","Action","Selector","State","EventEmitter","map","take","pluck","Component","Store","Renderer2","Input","Output","Select","Observable","CoreModule","ThemeSharedModule","NgxsModule","PerfectScrollbarModule"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.permission-management.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.permission-management/lib/actions/permission-management.actions.ts","ng://@abp/ng.permission-management/lib/services/permission-management.service.ts","ng://@abp/ng.permission-management/lib/states/permission-management.state.ts","ng://@abp/ng.permission-management/lib/components/permission-management.component.ts","ng://@abp/ng.permission-management/lib/permission-management.module.ts","ng://@abp/ng.permission-management/lib/models/permission-management.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { PermissionManagement } from '../models/permission-management';\n\nexport class GetPermissions {\n static readonly type = '[PermissionManagement] Get Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider) {}\n}\n\nexport class UpdatePermissions {\n static readonly type = '[PermissionManagement] Update Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Observable } from 'rxjs';\nimport { PermissionManagement } from '../models/permission-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionManagementService {\n constructor(private rest: RestService) {}\n\n getPermissions(params: PermissionManagement.GrantedProvider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/permissions',\n params,\n };\n\n return this.rest.request(request);\n }\n\n updatePermissions({\n permissions,\n providerKey,\n providerName,\n }: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/permissions',\n body: { permissions },\n params: { providerKey, providerName },\n };\n\n return this.rest.request(request);\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementService } from '../services/permission-management.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'PermissionManagementState',\n defaults: { permissionRes: {} } as PermissionManagement.State,\n})\nexport class PermissionManagementState {\n @Selector()\n static getPermissionGroups({ permissionRes }: PermissionManagement.State) {\n return permissionRes.groups || [];\n }\n\n @Selector()\n static getEntitiyDisplayName({ permissionRes }: PermissionManagement.State): string {\n return permissionRes.entityDisplayName;\n }\n\n constructor(private permissionManagementService: PermissionManagementService) {}\n\n @Action(GetPermissions)\n permissionManagementGet({ patchState }: StateContext, { payload }: GetPermissions) {\n return this.permissionManagementService.getPermissions(payload).pipe(\n tap(permissionResponse =>\n patchState({\n permissionRes: permissionResponse,\n }),\n ),\n );\n }\n\n @Action(UpdatePermissions)\n permissionManagementUpdate(_, { payload }: UpdatePermissions) {\n return this.permissionManagementService.updatePermissions(payload);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n Renderer2,\n SimpleChanges,\n TrackByFunction,\n} from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { from, Observable } from 'rxjs';\nimport { map, pluck, take } from 'rxjs/operators';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementState } from '../states/permission-management.state';\n\ntype PermissionWithMargin = PermissionManagement.Permission & { margin: number };\n\n@Component({\n selector: 'abp-permission-management',\n templateUrl: './permission-management.component.html',\n})\nexport class PermissionManagementComponent implements OnInit, OnChanges {\n @Input()\n providerName: string;\n\n @Input()\n providerKey: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n if (!this.selectedGroup) return;\n\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (!value) {\n this.selectedGroup = null;\n }\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(PermissionManagementState.getPermissionGroups)\n groups$: Observable;\n\n @Select(PermissionManagementState.getEntitiyDisplayName)\n entityName$: Observable;\n\n selectedGroup: PermissionManagement.Group;\n\n permissions: PermissionManagement.Permission[] = [];\n\n selectThisTab: boolean = false;\n\n selectAllTab: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n get selectedGroupPermissions$(): Observable {\n return this.groups$.pipe(\n map(groups =>\n this.selectedGroup ? groups.find(group => group.name === this.selectedGroup.name).permissions : [],\n ),\n map(permissions =>\n permissions.map(\n permission =>\n (({\n ...permission,\n margin: findMargin(permissions, permission),\n isGranted: this.permissions.find(per => per.name === permission.name).isGranted,\n } as any) as PermissionWithMargin),\n ),\n ),\n );\n }\n\n constructor(private store: Store, private renderer: Renderer2) {}\n\n ngOnInit(): void {}\n\n getChecked(name: string) {\n return (this.permissions.find(per => per.name === name) || { isGranted: false }).isGranted;\n }\n\n isGrantedByRole(grantedProviders: PermissionManagement.GrantedProvider[]): boolean {\n if (grantedProviders.length) {\n return grantedProviders.findIndex(p => p.providerName === 'Role') > -1;\n }\n return false;\n }\n\n onClickCheckbox(clickedPermission: PermissionManagement.Permission, value) {\n if (clickedPermission.isGranted && this.isGrantedByRole(clickedPermission.grantedProviders)) return;\n\n setTimeout(() => {\n this.permissions = this.permissions.map(per => {\n if (clickedPermission.name === per.name) {\n return { ...per, isGranted: !per.isGranted };\n } else if (clickedPermission.name === per.parentName && clickedPermission.isGranted) {\n return { ...per, isGranted: false };\n } else if (clickedPermission.parentName === per.name && !clickedPermission.isGranted) {\n return { ...per, isGranted: true };\n }\n\n return per;\n });\n\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }, 0);\n }\n\n setTabCheckboxState() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n const selectedPermissions = permissions.filter(per => per.isGranted);\n const element = document.querySelector('#select-all-in-this-tabs') as any;\n\n if (selectedPermissions.length === permissions.length) {\n element.indeterminate = false;\n this.selectThisTab = true;\n } else if (selectedPermissions.length === 0) {\n element.indeterminate = false;\n this.selectThisTab = false;\n } else {\n element.indeterminate = true;\n }\n });\n }\n\n setGrantCheckboxState() {\n const selectedAllPermissions = this.permissions.filter(per => per.isGranted);\n const checkboxElement = document.querySelector('#select-all-in-all-tabs') as any;\n\n if (selectedAllPermissions.length === this.permissions.length) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = true;\n } else if (selectedAllPermissions.length === 0) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = false;\n } else {\n checkboxElement.indeterminate = true;\n }\n }\n\n onClickSelectThisTab() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n permissions.forEach(permission => {\n if (permission.isGranted && this.isGrantedByRole(permission.grantedProviders)) return;\n\n const index = this.permissions.findIndex(per => per.name === permission.name);\n\n this.permissions = [\n ...this.permissions.slice(0, index),\n { ...this.permissions[index], isGranted: !this.selectThisTab },\n ...this.permissions.slice(index + 1),\n ];\n });\n });\n\n this.setGrantCheckboxState();\n }\n\n onClickSelectAll() {\n this.permissions = this.permissions.map(permission => ({ ...permission, isGranted: !this.selectAllTab }));\n\n this.selectThisTab = !this.selectAllTab;\n }\n\n onChangeGroup(group: PermissionManagement.Group) {\n this.selectedGroup = group;\n this.setTabCheckboxState();\n }\n\n submit() {\n this.modalBusy = true;\n const unchangedPermissions = getPermissions(\n this.store.selectSnapshot(PermissionManagementState.getPermissionGroups),\n );\n\n const changedPermissions: PermissionManagement.MinimumPermission[] = this.permissions\n .filter(per =>\n unchangedPermissions.find(unchanged => unchanged.name === per.name).isGranted === per.isGranted ? false : true,\n )\n .map(({ name, isGranted }) => ({ name, isGranted }));\n\n if (changedPermissions.length) {\n this.store\n .dispatch(\n new UpdatePermissions({\n providerKey: this.providerKey,\n providerName: this.providerName,\n permissions: changedPermissions,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n } else {\n this.modalBusy = false;\n this.visible = false;\n }\n }\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.store\n .dispatch(new GetPermissions({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('PermissionManagementState', 'permissionRes'))\n .subscribe((permissionRes: PermissionManagement.Response) => {\n this.selectedGroup = permissionRes.groups[0];\n this.permissions = getPermissions(permissionRes.groups);\n\n this.visible = true;\n });\n }\n\n initModal() {\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n\nfunction findMargin(permissions: PermissionManagement.Permission[], permission: PermissionManagement.Permission) {\n const parentPermission = permissions.find(per => per.name === permission.parentName);\n\n if (parentPermission && parentPermission.parentName) {\n let margin = 20;\n return (margin += findMargin(permissions, parentPermission));\n }\n\n return parentPermission ? 20 : 0;\n}\n\nfunction getPermissions(groups: PermissionManagement.Group[]): PermissionManagement.Permission[] {\n return groups.reduce((acc, val) => [...acc, ...val.permissions], []);\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { PermissionManagementComponent } from './components/permission-management.component';\nimport { PermissionManagementState } from './states/permission-management.state';\n\n@NgModule({\n declarations: [PermissionManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState])],\n exports: [PermissionManagementComponent],\n})\nexport class PermissionManagementModule {}\n","export namespace PermissionManagement {\n export interface State {\n permissionRes: Response;\n }\n\n export interface Response {\n entityDisplayName: string;\n groups: Group[];\n }\n\n export interface Group {\n name: string;\n displayName: string;\n permissions: Permission[];\n }\n\n export interface MinimumPermission {\n name: string;\n isGranted: boolean;\n }\n\n export interface Permission extends MinimumPermission {\n displayName: string;\n parentName: string;\n allowedProviders: string[];\n grantedProviders: GrantedProvider[];\n }\n\n export interface GrantedProvider {\n providerName: string;\n providerKey: string;\n }\n\n export interface UpdateRequest {\n permissions: MinimumPermission[];\n }\n}\n"],"names":["Injectable","RestService","tap","tslib_1.__decorate","Action","Selector","State","EventEmitter","map","take","pluck","Component","Store","Renderer2","Input","Output","Select","Observable","NgModule","CoreModule","ThemeSharedModule","NgxsModule"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.min.js b/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.min.js index 82f307aaaf..d28cdea033 100644 --- a/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.min.js +++ b/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.min.js @@ -1,2 +1,2 @@ -!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@angular/core"),require("@abp/ng.core"),require("@abp/ng.theme.shared"),require("@ngxs/store"),require("rxjs"),require("rxjs/operators"),require("ngx-perfect-scrollbar")):"function"==typeof define&&define.amd?define("@abp/ng.permission-management",["exports","@angular/core","@abp/ng.core","@abp/ng.theme.shared","@ngxs/store","rxjs","rxjs/operators","ngx-perfect-scrollbar"],n):n(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng["permission-management"]={}),e.ng.core,e.ng_core,e.ng_theme_shared,e.store,e.rxjs,e.rxjs.operators,e.ngxPerfectScrollbar)}(this,function(e,n,t,i,r,s,o,a){"use strict";var c=function(){return(c=Object.assign||function(e){for(var n,t=1,i=arguments.length;t=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(n,t,o):r(n,t))||o);return s>3&&o&&Object.defineProperty(n,t,o),o}function p(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}function u(e,n){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var i,r,s=t.call(e),o=[];try{for(;(void 0===n||n-- >0)&&!(i=s.next()).done;)o.push(i.value)}catch(e){r={error:e}}finally{try{i&&!i.done&&(t=s.return)&&t.call(s)}finally{if(r)throw r.error}}return o}function m(){for(var e=[],n=0;n-1},e.prototype.onClickCheckbox=function(e,n){var t=this;e.isGranted&&this.isGrantedByRole(e.grantedProviders)||setTimeout(function(){t.permissions=t.permissions.map(function(n){return e.name===n.name?c({},n,{isGranted:!n.isGranted}):e.name===n.parentName&&e.isGranted?c({},n,{isGranted:!1}):e.parentName!==n.name||e.isGranted?n:c({},n,{isGranted:!0})}),t.setTabCheckboxState(),t.setGrantCheckboxState()},0)},e.prototype.setTabCheckboxState=function(){var e=this;this.selectedGroupPermissions$.pipe(o.take(1)).subscribe(function(n){var t=n.filter(function(e){return e.isGranted}),i=document.querySelector("#select-all-in-this-tabs");t.length===n.length?(i.indeterminate=!1,e.selectThisTab=!0):0===t.length?(i.indeterminate=!1,e.selectThisTab=!1):i.indeterminate=!0})},e.prototype.setGrantCheckboxState=function(){var e=this.permissions.filter(function(e){return e.isGranted}),n=document.querySelector("#select-all-in-all-tabs");e.length===this.permissions.length?(n.indeterminate=!1,this.selectAllTab=!0):0===e.length?(n.indeterminate=!1,this.selectAllTab=!1):n.indeterminate=!0},e.prototype.onClickSelectThisTab=function(){var e=this;this.selectedGroupPermissions$.pipe(o.take(1)).subscribe(function(n){n.forEach(function(n){if(!n.isGranted||!e.isGrantedByRole(n.grantedProviders)){var t=e.permissions.findIndex(function(e){return e.name===n.name});e.permissions=m(e.permissions.slice(0,t),[c({},e.permissions[t],{isGranted:!e.selectThisTab})],e.permissions.slice(t+1))}})}),this.setGrantCheckboxState()},e.prototype.onClickSelectAll=function(){var e=this;this.permissions=this.permissions.map(function(n){return c({},n,{isGranted:!e.selectAllTab})}),this.selectThisTab=!this.selectAllTab},e.prototype.onChangeGroup=function(e){this.selectedGroup=e,this.setTabCheckboxState()},e.prototype.submit=function(){var e=this;this.modalBusy=!0;var n=G(this.store.selectSnapshot(g.getPermissionGroups)),t=this.permissions.filter(function(e){return n.find(function(n){return n.name===e.name}).isGranted!==e.isGranted}).map(function(e){return{name:e.name,isGranted:e.isGranted}});t.length?this.store.dispatch(new f({providerKey:this.providerKey,providerName:this.providerName,permissions:t})).subscribe(function(){e.modalBusy=!1,e.visible=!1}):(this.modalBusy=!1,this.visible=!1)},e.prototype.openModal=function(){var e=this;if(!this.providerKey||!this.providerName)throw new Error("Provider Key and Provider Name are required.");this.store.dispatch(new b({providerKey:this.providerKey,providerName:this.providerName})).pipe(o.pluck("PermissionManagementState","permissionRes")).subscribe(function(n){e.selectedGroup=n.groups[0],e.permissions=G(n.groups),e.visible=!0})},e.prototype.initModal=function(){this.setTabCheckboxState(),this.setGrantCheckboxState()},e.prototype.ngOnChanges=function(e){var n=e.visible;n&&(n.currentValue?this.openModal():!1===n.currentValue&&this.visible&&(this.visible=!1))},e.decorators=[{type:n.Component,args:[{selector:"abp-permission-management",template:'\n \n \n

{{ \'AbpPermissionManagement::Permissions\' | abpLocalization }} - {{ data.entityName }}

\n
\n \n
\n \n \n
\n\n
\n
\n
\n \n
\n
\n

{{ selectedGroup?.displayName }}

\n
\n
\n
\n \n \n
\n
\n \n \n \n {{ permission.displayName }}\n {{ provider.providerName }}: {{ provider.providerKey }}\n
\n \n
\n
\n \n
\n \n \n {{ \'AbpIdentity::Save\' | abpLocalization }}\n \n
\n
\n'}]}],e.ctorParameters=function(){return[{type:r.Store},{type:n.Renderer2}]},e.propDecorators={providerName:[{type:n.Input}],providerKey:[{type:n.Input}],visible:[{type:n.Input}],visibleChange:[{type:n.Output}]},l([r.Select(g.getPermissionGroups),p("design:type",s.Observable)],e.prototype,"groups$",void 0),l([r.Select(g.getEntitiyDisplayName),p("design:type",s.Observable)],e.prototype,"entityName$",void 0),e}();function v(e,n){var t=e.find(function(e){return e.name===n.parentName});return t&&t.parentName?20+v(e,t):t?20:0}function G(e){return e.reduce(function(e,n){return m(e,n.permissions)},[])}var P,k=function(){function e(){}return e.decorators=[{type:n.NgModule,args:[{declarations:[y],imports:[t.CoreModule,i.ThemeSharedModule,r.NgxsModule.forFeature([g]),a.PerfectScrollbarModule],exports:[y]}]}],e}();!function(e){function n(){}function t(){}function i(){}function r(){}function s(){}function o(){}function a(){}e.State=n,e.Response=t,e.Group=i,e.MinimumPermission=r,e.Permission=s,e.GrantedProvider=o,e.UpdateRequest=a}(P||(P={})),e.GetPermissions=b,e.PermissionManagementComponent=y,e.PermissionManagementModule=k,e.PermissionManagementService=h,e.PermissionManagementState=g,e.RootPermissionManagementModule=d,e.UpdatePermissions=f,e.ɵa=y,e.ɵb=g,e.ɵc=h,e.ɵd=b,e.ɵe=f,Object.defineProperty(e,"__esModule",{value:!0})}); +!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@abp/ng.core"),require("@abp/ng.theme.shared"),require("@angular/core"),require("@ngxs/store"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("@abp/ng.permission-management",["exports","@abp/ng.core","@abp/ng.theme.shared","@angular/core","@ngxs/store","rxjs","rxjs/operators"],n):n(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng["permission-management"]={}),e.ng_core,e.ng_theme_shared,e.ng.core,e.store,e.rxjs,e.rxjs.operators)}(this,function(e,n,t,i,r,s,o){"use strict";var a=function(){return(a=Object.assign||function(e){for(var n,t=1,i=arguments.length;t=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(n,t,o):r(n,t))||o);return s>3&&o&&Object.defineProperty(n,t,o),o}function c(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}function l(e,n){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var i,r,s=t.call(e),o=[];try{for(;(void 0===n||n-- >0)&&!(i=s.next()).done;)o.push(i.value)}catch(e){r={error:e}}finally{try{i&&!i.done&&(t=s.return)&&t.call(s)}finally{if(r)throw r.error}}return o}function u(){for(var e=[],n=0;n-1},e.prototype.onClickCheckbox=function(e,n){var t=this;e.isGranted&&this.isGrantedByRole(e.grantedProviders)||setTimeout(function(){t.permissions=t.permissions.map(function(n){return e.name===n.name?a({},n,{isGranted:!n.isGranted}):e.name===n.parentName&&e.isGranted?a({},n,{isGranted:!1}):e.parentName!==n.name||e.isGranted?n:a({},n,{isGranted:!0})}),t.setTabCheckboxState(),t.setGrantCheckboxState()},0)},e.prototype.setTabCheckboxState=function(){var e=this;this.selectedGroupPermissions$.pipe(o.take(1)).subscribe(function(n){var t=n.filter(function(e){return e.isGranted}),i=document.querySelector("#select-all-in-this-tabs");t.length===n.length?(i.indeterminate=!1,e.selectThisTab=!0):0===t.length?(i.indeterminate=!1,e.selectThisTab=!1):i.indeterminate=!0})},e.prototype.setGrantCheckboxState=function(){var e=this.permissions.filter(function(e){return e.isGranted}),n=document.querySelector("#select-all-in-all-tabs");e.length===this.permissions.length?(n.indeterminate=!1,this.selectAllTab=!0):0===e.length?(n.indeterminate=!1,this.selectAllTab=!1):n.indeterminate=!0},e.prototype.onClickSelectThisTab=function(){var e=this;this.selectedGroupPermissions$.pipe(o.take(1)).subscribe(function(n){n.forEach(function(n){if(!n.isGranted||!e.isGrantedByRole(n.grantedProviders)){var t=e.permissions.findIndex(function(e){return e.name===n.name});e.permissions=u(e.permissions.slice(0,t),[a({},e.permissions[t],{isGranted:!e.selectThisTab})],e.permissions.slice(t+1))}})}),this.setGrantCheckboxState()},e.prototype.onClickSelectAll=function(){var e=this;this.permissions=this.permissions.map(function(n){return a({},n,{isGranted:!e.selectAllTab})}),this.selectThisTab=!this.selectAllTab},e.prototype.onChangeGroup=function(e){this.selectedGroup=e,this.setTabCheckboxState()},e.prototype.submit=function(){var e=this;this.modalBusy=!0;var n=g(this.store.selectSnapshot(f.getPermissionGroups)),t=this.permissions.filter(function(e){return n.find(function(n){return n.name===e.name}).isGranted!==e.isGranted}).map(function(e){return{name:e.name,isGranted:e.isGranted}});t.length?this.store.dispatch(new d({providerKey:this.providerKey,providerName:this.providerName,permissions:t})).subscribe(function(){e.modalBusy=!1,e.visible=!1}):(this.modalBusy=!1,this.visible=!1)},e.prototype.openModal=function(){var e=this;if(!this.providerKey||!this.providerName)throw new Error("Provider Key and Provider Name are required.");this.store.dispatch(new m({providerKey:this.providerKey,providerName:this.providerName})).pipe(o.pluck("PermissionManagementState","permissionRes")).subscribe(function(n){e.selectedGroup=n.groups[0],e.permissions=g(n.groups),e.visible=!0})},e.prototype.initModal=function(){this.setTabCheckboxState(),this.setGrantCheckboxState()},e.prototype.ngOnChanges=function(e){var n=e.visible;n&&(n.currentValue?this.openModal():!1===n.currentValue&&this.visible&&(this.visible=!1))},e.decorators=[{type:i.Component,args:[{selector:"abp-permission-management",template:'\n \n \n

{{ \'AbpPermissionManagement::Permissions\' | abpLocalization }} - {{ data.entityName }}

\n
\n \n
\n \n \n
\n\n
\n
\n
\n \n
\n
\n

{{ selectedGroup?.displayName }}

\n
\n
\n
\n \n \n
\n
\n \n \n {{ permission.displayName }}\n {{ provider.providerName }}: {{ provider.providerKey }}\n
\n
\n
\n \n
\n \n \n {{ \'AbpIdentity::Save\' | abpLocalization }}\n \n
\n
\n'}]}],e.ctorParameters=function(){return[{type:r.Store},{type:i.Renderer2}]},e.propDecorators={providerName:[{type:i.Input}],providerKey:[{type:i.Input}],visible:[{type:i.Input}],visibleChange:[{type:i.Output}]},p([r.Select(f.getPermissionGroups),c("design:type",s.Observable)],e.prototype,"groups$",void 0),p([r.Select(f.getEntitiyDisplayName),c("design:type",s.Observable)],e.prototype,"entityName$",void 0),e}();function y(e,n){var t=e.find(function(e){return e.name===n.parentName});return t&&t.parentName?20+y(e,t):t?20:0}function g(e){return e.reduce(function(e,n){return u(e,n.permissions)},[])}var v,G=function(){function e(){}return e.decorators=[{type:i.NgModule,args:[{declarations:[h],imports:[n.CoreModule,t.ThemeSharedModule,r.NgxsModule.forFeature([f])],exports:[h]}]}],e}();!function(e){function n(){}function t(){}function i(){}function r(){}function s(){}function o(){}function a(){}e.State=n,e.Response=t,e.Group=i,e.MinimumPermission=r,e.Permission=s,e.GrantedProvider=o,e.UpdateRequest=a}(v||(v={})),e.GetPermissions=m,e.PermissionManagementComponent=h,e.PermissionManagementModule=G,e.PermissionManagementService=b,e.PermissionManagementState=f,e.UpdatePermissions=d,e.ɵa=h,e.ɵb=f,e.ɵc=b,e.ɵd=m,e.ɵe=d,Object.defineProperty(e,"__esModule",{value:!0})}); //# sourceMappingURL=abp-ng.permission-management.umd.min.js.map \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.min.js.map b/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.min.js.map index 6d0a556bba..7f392f42f5 100644 --- a/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.min.js.map +++ b/npm/ng-packs/dist/permission-management/bundles/abp-ng.permission-management.umd.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.permission-management/lib/root-permission-management.module.ts","ng://@abp/ng.permission-management/lib/actions/permission-management.actions.ts","ng://@abp/ng.permission-management/lib/services/permission-management.service.ts","ng://@abp/ng.permission-management/lib/states/permission-management.state.ts","ng://@abp/ng.permission-management/lib/components/permission-management.component.ts","ng://@abp/ng.permission-management/lib/permission-management.module.ts","ng://@abp/ng.permission-management/lib/models/permission-management.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__metadata","metadataKey","metadataValue","metadata","__read","o","m","Symbol","iterator","e","ar","next","done","push","value","error","__spread","concat","RootPermissionManagementModule","forRoot","ngModule","providers","NgModule","args","GetPermissions","payload","type","UpdatePermissions","PermissionManagementService","rest","getPermissions","params","request","method","url","updatePermissions","_a","body","permissions","providerKey","providerName","Injectable","providedIn","RestService","PermissionManagementState","permissionManagementService","getPermissionGroups","permissionRes","groups","getEntitiyDisplayName","entityDisplayName","permissionManagementGet","_b","patchState","pipe","tap","permissionResponse","permissionManagementUpdate","_","tslib_1.__decorate","Action","Selector","State","name","defaults","PermissionManagementComponent","store","renderer","visibleChange","EventEmitter","selectThisTab","selectAllTab","modalBusy","trackByFn","item","_visible","selectedGroup","emit","_this","groups$","map","find","group","permission","margin","findMargin","isGranted","per","ngOnInit","getChecked","isGrantedByRole","grantedProviders","findIndex","onClickCheckbox","clickedPermission","setTimeout","parentName","setTabCheckboxState","setGrantCheckboxState","selectedGroupPermissions$","take","subscribe","selectedPermissions","filter","element","document","querySelector","indeterminate","selectedAllPermissions","checkboxElement","onClickSelectThisTab","forEach","index","slice","onClickSelectAll","onChangeGroup","submit","unchangedPermissions","selectSnapshot","changedPermissions","unchanged","dispatch","visible","openModal","Error","pluck","initModal","ngOnChanges","currentValue","Component","selector","template","Store","Renderer2","Input","Output","Select","Observable","parentPermission","reduce","acc","val","PermissionManagement","PermissionManagementModule","declarations","imports","CoreModule","ThemeSharedModule","NgxsModule","forFeature","PerfectScrollbarModule","exports","Response","Group","MinimumPermission","Permission","GrantedProvider","UpdateRequest"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootPermissionManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootPermissionManagementModule,\n providers: [],\n };\n }\n}\n","import { PermissionManagement } from '../models/permission-management';\n\nexport class GetPermissions {\n static readonly type = '[PermissionManagement] Get Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider) {}\n}\n\nexport class UpdatePermissions {\n static readonly type = '[PermissionManagement] Update Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Observable } from 'rxjs';\nimport { PermissionManagement } from '../models/permission-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionManagementService {\n constructor(private rest: RestService) {}\n\n getPermissions(params: PermissionManagement.GrantedProvider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/permissions',\n params,\n };\n\n return this.rest.request(request);\n }\n\n updatePermissions({\n permissions,\n providerKey,\n providerName,\n }: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/permissions',\n body: { permissions },\n params: { providerKey, providerName },\n };\n\n return this.rest.request(request);\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementService } from '../services/permission-management.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'PermissionManagementState',\n defaults: { permissionRes: {} } as PermissionManagement.State,\n})\nexport class PermissionManagementState {\n @Selector()\n static getPermissionGroups({ permissionRes }: PermissionManagement.State) {\n return permissionRes.groups || [];\n }\n\n @Selector()\n static getEntitiyDisplayName({ permissionRes }: PermissionManagement.State): string {\n return permissionRes.entityDisplayName;\n }\n\n constructor(private permissionManagementService: PermissionManagementService) {}\n\n @Action(GetPermissions)\n permissionManagementGet({ patchState }: StateContext, { payload }: GetPermissions) {\n return this.permissionManagementService.getPermissions(payload).pipe(\n tap(permissionResponse =>\n patchState({\n permissionRes: permissionResponse,\n }),\n ),\n );\n }\n\n @Action(UpdatePermissions)\n permissionManagementUpdate(_, { payload }: UpdatePermissions) {\n return this.permissionManagementService.updatePermissions(payload);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n Renderer2,\n SimpleChanges,\n TrackByFunction,\n} from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { from, Observable } from 'rxjs';\nimport { map, pluck, take } from 'rxjs/operators';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementState } from '../states/permission-management.state';\n\ntype PermissionWithMargin = PermissionManagement.Permission & { margin: number };\n\n@Component({\n selector: 'abp-permission-management',\n templateUrl: './permission-management.component.html',\n})\nexport class PermissionManagementComponent implements OnInit, OnChanges {\n @Input()\n providerName: string;\n\n @Input()\n providerKey: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n if (!this.selectedGroup) return;\n\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (!value) {\n this.selectedGroup = null;\n }\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(PermissionManagementState.getPermissionGroups)\n groups$: Observable;\n\n @Select(PermissionManagementState.getEntitiyDisplayName)\n entityName$: Observable;\n\n selectedGroup: PermissionManagement.Group;\n\n permissions: PermissionManagement.Permission[] = [];\n\n selectThisTab: boolean = false;\n\n selectAllTab: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n get selectedGroupPermissions$(): Observable {\n return this.groups$.pipe(\n map(groups =>\n this.selectedGroup ? groups.find(group => group.name === this.selectedGroup.name).permissions : [],\n ),\n map(permissions =>\n permissions.map(\n permission =>\n (({\n ...permission,\n margin: findMargin(permissions, permission),\n isGranted: this.permissions.find(per => per.name === permission.name).isGranted,\n } as any) as PermissionWithMargin),\n ),\n ),\n );\n }\n\n constructor(private store: Store, private renderer: Renderer2) {}\n\n ngOnInit(): void {}\n\n getChecked(name: string) {\n return (this.permissions.find(per => per.name === name) || { isGranted: false }).isGranted;\n }\n\n isGrantedByRole(grantedProviders: PermissionManagement.GrantedProvider[]): boolean {\n if (grantedProviders.length) {\n return grantedProviders.findIndex(p => p.providerName === 'Role') > -1;\n }\n return false;\n }\n\n onClickCheckbox(clickedPermission: PermissionManagement.Permission, value) {\n if (clickedPermission.isGranted && this.isGrantedByRole(clickedPermission.grantedProviders)) return;\n\n setTimeout(() => {\n this.permissions = this.permissions.map(per => {\n if (clickedPermission.name === per.name) {\n return { ...per, isGranted: !per.isGranted };\n } else if (clickedPermission.name === per.parentName && clickedPermission.isGranted) {\n return { ...per, isGranted: false };\n } else if (clickedPermission.parentName === per.name && !clickedPermission.isGranted) {\n return { ...per, isGranted: true };\n }\n\n return per;\n });\n\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }, 0);\n }\n\n setTabCheckboxState() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n const selectedPermissions = permissions.filter(per => per.isGranted);\n const element = document.querySelector('#select-all-in-this-tabs') as any;\n\n if (selectedPermissions.length === permissions.length) {\n element.indeterminate = false;\n this.selectThisTab = true;\n } else if (selectedPermissions.length === 0) {\n element.indeterminate = false;\n this.selectThisTab = false;\n } else {\n element.indeterminate = true;\n }\n });\n }\n\n setGrantCheckboxState() {\n const selectedAllPermissions = this.permissions.filter(per => per.isGranted);\n const checkboxElement = document.querySelector('#select-all-in-all-tabs') as any;\n\n if (selectedAllPermissions.length === this.permissions.length) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = true;\n } else if (selectedAllPermissions.length === 0) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = false;\n } else {\n checkboxElement.indeterminate = true;\n }\n }\n\n onClickSelectThisTab() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n permissions.forEach(permission => {\n if (permission.isGranted && this.isGrantedByRole(permission.grantedProviders)) return;\n\n const index = this.permissions.findIndex(per => per.name === permission.name);\n\n this.permissions = [\n ...this.permissions.slice(0, index),\n { ...this.permissions[index], isGranted: !this.selectThisTab },\n ...this.permissions.slice(index + 1),\n ];\n });\n });\n\n this.setGrantCheckboxState();\n }\n\n onClickSelectAll() {\n this.permissions = this.permissions.map(permission => ({ ...permission, isGranted: !this.selectAllTab }));\n\n this.selectThisTab = !this.selectAllTab;\n }\n\n onChangeGroup(group: PermissionManagement.Group) {\n this.selectedGroup = group;\n this.setTabCheckboxState();\n }\n\n submit() {\n this.modalBusy = true;\n const unchangedPermissions = getPermissions(\n this.store.selectSnapshot(PermissionManagementState.getPermissionGroups),\n );\n\n const changedPermissions: PermissionManagement.MinimumPermission[] = this.permissions\n .filter(per =>\n unchangedPermissions.find(unchanged => unchanged.name === per.name).isGranted === per.isGranted ? false : true,\n )\n .map(({ name, isGranted }) => ({ name, isGranted }));\n\n if (changedPermissions.length) {\n this.store\n .dispatch(\n new UpdatePermissions({\n providerKey: this.providerKey,\n providerName: this.providerName,\n permissions: changedPermissions,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n } else {\n this.modalBusy = false;\n this.visible = false;\n }\n }\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.store\n .dispatch(new GetPermissions({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('PermissionManagementState', 'permissionRes'))\n .subscribe((permissionRes: PermissionManagement.Response) => {\n this.selectedGroup = permissionRes.groups[0];\n this.permissions = getPermissions(permissionRes.groups);\n\n this.visible = true;\n });\n }\n\n initModal() {\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n\nfunction findMargin(permissions: PermissionManagement.Permission[], permission: PermissionManagement.Permission) {\n const parentPermission = permissions.find(per => per.name === permission.parentName);\n\n if (parentPermission && parentPermission.parentName) {\n let margin = 20;\n return (margin += findMargin(permissions, parentPermission));\n }\n\n return parentPermission ? 20 : 0;\n}\n\nfunction getPermissions(groups: PermissionManagement.Group[]): PermissionManagement.Permission[] {\n return groups.reduce((acc, val) => [...acc, ...val.permissions], []);\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { PermissionManagementComponent } from './components/permission-management.component';\nimport { PermissionManagementState } from './states/permission-management.state';\nimport { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\n\n@NgModule({\n declarations: [PermissionManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState]), PerfectScrollbarModule],\n exports: [PermissionManagementComponent],\n})\nexport class PermissionManagementModule {}\n","export namespace PermissionManagement {\n export interface State {\n permissionRes: Response;\n }\n\n export interface Response {\n entityDisplayName: string;\n groups: Group[];\n }\n\n export interface Group {\n name: string;\n displayName: string;\n permissions: Permission[];\n }\n\n export interface MinimumPermission {\n name: string;\n isGranted: boolean;\n }\n\n export interface Permission extends MinimumPermission {\n displayName: string;\n parentName: string;\n allowedProviders: string[];\n grantedProviders: GrantedProvider[];\n }\n\n export interface GrantedProvider {\n providerName: string;\n providerKey: string;\n }\n\n export interface UpdateRequest {\n permissions: MinimumPermission[];\n }\n}\n"]} \ No newline at end of file +{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.permission-management/lib/actions/permission-management.actions.ts","ng://@abp/ng.permission-management/lib/services/permission-management.service.ts","ng://@abp/ng.permission-management/lib/states/permission-management.state.ts","ng://@abp/ng.permission-management/lib/components/permission-management.component.ts","ng://@abp/ng.permission-management/lib/permission-management.module.ts","ng://@abp/ng.permission-management/lib/models/permission-management.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__metadata","metadataKey","metadataValue","metadata","__read","o","m","Symbol","iterator","e","ar","next","done","push","value","error","__spread","concat","GetPermissions","payload","type","UpdatePermissions","PermissionManagementService","rest","getPermissions","params","request","method","url","updatePermissions","_a","body","permissions","providerKey","providerName","Injectable","args","providedIn","RestService","PermissionManagementState","permissionManagementService","getPermissionGroups","permissionRes","groups","getEntitiyDisplayName","entityDisplayName","permissionManagementGet","_b","patchState","pipe","tap","permissionResponse","permissionManagementUpdate","_","tslib_1.__decorate","Action","Selector","State","name","defaults","PermissionManagementComponent","store","renderer","visibleChange","EventEmitter","selectThisTab","selectAllTab","modalBusy","trackByFn","item","_visible","selectedGroup","emit","_this","groups$","map","find","group","permission","margin","findMargin","isGranted","per","ngOnInit","getChecked","isGrantedByRole","grantedProviders","findIndex","onClickCheckbox","clickedPermission","setTimeout","parentName","setTabCheckboxState","setGrantCheckboxState","selectedGroupPermissions$","take","subscribe","selectedPermissions","filter","element","document","querySelector","indeterminate","selectedAllPermissions","checkboxElement","onClickSelectThisTab","forEach","index","slice","onClickSelectAll","onChangeGroup","submit","unchangedPermissions","selectSnapshot","changedPermissions","unchanged","dispatch","visible","openModal","Error","pluck","initModal","ngOnChanges","currentValue","Component","selector","template","Store","Renderer2","Input","Output","Select","Observable","parentPermission","reduce","acc","val","PermissionManagement","PermissionManagementModule","NgModule","declarations","imports","CoreModule","ThemeSharedModule","NgxsModule","forFeature","exports","Response","Group","MinimumPermission","Permission","GrantedProvider","UpdateRequest"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { PermissionManagement } from '../models/permission-management';\n\nexport class GetPermissions {\n static readonly type = '[PermissionManagement] Get Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider) {}\n}\n\nexport class UpdatePermissions {\n static readonly type = '[PermissionManagement] Update Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Observable } from 'rxjs';\nimport { PermissionManagement } from '../models/permission-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionManagementService {\n constructor(private rest: RestService) {}\n\n getPermissions(params: PermissionManagement.GrantedProvider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/permissions',\n params,\n };\n\n return this.rest.request(request);\n }\n\n updatePermissions({\n permissions,\n providerKey,\n providerName,\n }: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/permissions',\n body: { permissions },\n params: { providerKey, providerName },\n };\n\n return this.rest.request(request);\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementService } from '../services/permission-management.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'PermissionManagementState',\n defaults: { permissionRes: {} } as PermissionManagement.State,\n})\nexport class PermissionManagementState {\n @Selector()\n static getPermissionGroups({ permissionRes }: PermissionManagement.State) {\n return permissionRes.groups || [];\n }\n\n @Selector()\n static getEntitiyDisplayName({ permissionRes }: PermissionManagement.State): string {\n return permissionRes.entityDisplayName;\n }\n\n constructor(private permissionManagementService: PermissionManagementService) {}\n\n @Action(GetPermissions)\n permissionManagementGet({ patchState }: StateContext, { payload }: GetPermissions) {\n return this.permissionManagementService.getPermissions(payload).pipe(\n tap(permissionResponse =>\n patchState({\n permissionRes: permissionResponse,\n }),\n ),\n );\n }\n\n @Action(UpdatePermissions)\n permissionManagementUpdate(_, { payload }: UpdatePermissions) {\n return this.permissionManagementService.updatePermissions(payload);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n Renderer2,\n SimpleChanges,\n TrackByFunction,\n} from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { from, Observable } from 'rxjs';\nimport { map, pluck, take } from 'rxjs/operators';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementState } from '../states/permission-management.state';\n\ntype PermissionWithMargin = PermissionManagement.Permission & { margin: number };\n\n@Component({\n selector: 'abp-permission-management',\n templateUrl: './permission-management.component.html',\n})\nexport class PermissionManagementComponent implements OnInit, OnChanges {\n @Input()\n providerName: string;\n\n @Input()\n providerKey: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n if (!this.selectedGroup) return;\n\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (!value) {\n this.selectedGroup = null;\n }\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(PermissionManagementState.getPermissionGroups)\n groups$: Observable;\n\n @Select(PermissionManagementState.getEntitiyDisplayName)\n entityName$: Observable;\n\n selectedGroup: PermissionManagement.Group;\n\n permissions: PermissionManagement.Permission[] = [];\n\n selectThisTab: boolean = false;\n\n selectAllTab: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n get selectedGroupPermissions$(): Observable {\n return this.groups$.pipe(\n map(groups =>\n this.selectedGroup ? groups.find(group => group.name === this.selectedGroup.name).permissions : [],\n ),\n map(permissions =>\n permissions.map(\n permission =>\n (({\n ...permission,\n margin: findMargin(permissions, permission),\n isGranted: this.permissions.find(per => per.name === permission.name).isGranted,\n } as any) as PermissionWithMargin),\n ),\n ),\n );\n }\n\n constructor(private store: Store, private renderer: Renderer2) {}\n\n ngOnInit(): void {}\n\n getChecked(name: string) {\n return (this.permissions.find(per => per.name === name) || { isGranted: false }).isGranted;\n }\n\n isGrantedByRole(grantedProviders: PermissionManagement.GrantedProvider[]): boolean {\n if (grantedProviders.length) {\n return grantedProviders.findIndex(p => p.providerName === 'Role') > -1;\n }\n return false;\n }\n\n onClickCheckbox(clickedPermission: PermissionManagement.Permission, value) {\n if (clickedPermission.isGranted && this.isGrantedByRole(clickedPermission.grantedProviders)) return;\n\n setTimeout(() => {\n this.permissions = this.permissions.map(per => {\n if (clickedPermission.name === per.name) {\n return { ...per, isGranted: !per.isGranted };\n } else if (clickedPermission.name === per.parentName && clickedPermission.isGranted) {\n return { ...per, isGranted: false };\n } else if (clickedPermission.parentName === per.name && !clickedPermission.isGranted) {\n return { ...per, isGranted: true };\n }\n\n return per;\n });\n\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }, 0);\n }\n\n setTabCheckboxState() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n const selectedPermissions = permissions.filter(per => per.isGranted);\n const element = document.querySelector('#select-all-in-this-tabs') as any;\n\n if (selectedPermissions.length === permissions.length) {\n element.indeterminate = false;\n this.selectThisTab = true;\n } else if (selectedPermissions.length === 0) {\n element.indeterminate = false;\n this.selectThisTab = false;\n } else {\n element.indeterminate = true;\n }\n });\n }\n\n setGrantCheckboxState() {\n const selectedAllPermissions = this.permissions.filter(per => per.isGranted);\n const checkboxElement = document.querySelector('#select-all-in-all-tabs') as any;\n\n if (selectedAllPermissions.length === this.permissions.length) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = true;\n } else if (selectedAllPermissions.length === 0) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = false;\n } else {\n checkboxElement.indeterminate = true;\n }\n }\n\n onClickSelectThisTab() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n permissions.forEach(permission => {\n if (permission.isGranted && this.isGrantedByRole(permission.grantedProviders)) return;\n\n const index = this.permissions.findIndex(per => per.name === permission.name);\n\n this.permissions = [\n ...this.permissions.slice(0, index),\n { ...this.permissions[index], isGranted: !this.selectThisTab },\n ...this.permissions.slice(index + 1),\n ];\n });\n });\n\n this.setGrantCheckboxState();\n }\n\n onClickSelectAll() {\n this.permissions = this.permissions.map(permission => ({ ...permission, isGranted: !this.selectAllTab }));\n\n this.selectThisTab = !this.selectAllTab;\n }\n\n onChangeGroup(group: PermissionManagement.Group) {\n this.selectedGroup = group;\n this.setTabCheckboxState();\n }\n\n submit() {\n this.modalBusy = true;\n const unchangedPermissions = getPermissions(\n this.store.selectSnapshot(PermissionManagementState.getPermissionGroups),\n );\n\n const changedPermissions: PermissionManagement.MinimumPermission[] = this.permissions\n .filter(per =>\n unchangedPermissions.find(unchanged => unchanged.name === per.name).isGranted === per.isGranted ? false : true,\n )\n .map(({ name, isGranted }) => ({ name, isGranted }));\n\n if (changedPermissions.length) {\n this.store\n .dispatch(\n new UpdatePermissions({\n providerKey: this.providerKey,\n providerName: this.providerName,\n permissions: changedPermissions,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n } else {\n this.modalBusy = false;\n this.visible = false;\n }\n }\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.store\n .dispatch(new GetPermissions({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('PermissionManagementState', 'permissionRes'))\n .subscribe((permissionRes: PermissionManagement.Response) => {\n this.selectedGroup = permissionRes.groups[0];\n this.permissions = getPermissions(permissionRes.groups);\n\n this.visible = true;\n });\n }\n\n initModal() {\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n\nfunction findMargin(permissions: PermissionManagement.Permission[], permission: PermissionManagement.Permission) {\n const parentPermission = permissions.find(per => per.name === permission.parentName);\n\n if (parentPermission && parentPermission.parentName) {\n let margin = 20;\n return (margin += findMargin(permissions, parentPermission));\n }\n\n return parentPermission ? 20 : 0;\n}\n\nfunction getPermissions(groups: PermissionManagement.Group[]): PermissionManagement.Permission[] {\n return groups.reduce((acc, val) => [...acc, ...val.permissions], []);\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { PermissionManagementComponent } from './components/permission-management.component';\nimport { PermissionManagementState } from './states/permission-management.state';\n\n@NgModule({\n declarations: [PermissionManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState])],\n exports: [PermissionManagementComponent],\n})\nexport class PermissionManagementModule {}\n","export namespace PermissionManagement {\n export interface State {\n permissionRes: Response;\n }\n\n export interface Response {\n entityDisplayName: string;\n groups: Group[];\n }\n\n export interface Group {\n name: string;\n displayName: string;\n permissions: Permission[];\n }\n\n export interface MinimumPermission {\n name: string;\n isGranted: boolean;\n }\n\n export interface Permission extends MinimumPermission {\n displayName: string;\n parentName: string;\n allowedProviders: string[];\n grantedProviders: GrantedProvider[];\n }\n\n export interface GrantedProvider {\n providerName: string;\n providerKey: string;\n }\n\n export interface UpdateRequest {\n permissions: MinimumPermission[];\n }\n}\n"]} \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/esm2015/abp-ng.permission-management.js b/npm/ng-packs/dist/permission-management/esm2015/abp-ng.permission-management.js index 3743c8495f..a8be4b0a6d 100644 --- a/npm/ng-packs/dist/permission-management/esm2015/abp-ng.permission-management.js +++ b/npm/ng-packs/dist/permission-management/esm2015/abp-ng.permission-management.js @@ -5,9 +5,9 @@ /** * Generated bundle index. Do not edit. */ -export { RootPermissionManagementModule, PermissionManagementModule, GetPermissions, UpdatePermissions, PermissionManagementComponent, PermissionManagementService, PermissionManagementState } from './public-api'; +export { PermissionManagementModule, GetPermissions, UpdatePermissions, PermissionManagementComponent, PermissionManagementService, PermissionManagementState } from './public-api'; export { GetPermissions as ɵd, UpdatePermissions as ɵe } from './lib/actions/permission-management.actions'; export { PermissionManagementComponent as ɵa } from './lib/components/permission-management.component'; export { PermissionManagementService as ɵc } from './lib/services/permission-management.service'; export { PermissionManagementState as ɵb } from './lib/states/permission-management.state'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnBlcm1pc3Npb24tbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsiYWJwLW5nLnBlcm1pc3Npb24tbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEscU1BQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQ3pHLE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUVyRyxPQUFPLEVBQUMsMkJBQTJCLElBQUksRUFBRSxFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDL0YsT0FBTyxFQUFDLHlCQUF5QixJQUFJLEVBQUUsRUFBQyxNQUFNLDBDQUEwQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0dldFBlcm1pc3Npb25zIGFzIMm1ZCxVcGRhdGVQZXJtaXNzaW9ucyBhcyDJtWV9IGZyb20gJy4vbGliL2FjdGlvbnMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LmFjdGlvbnMnO1xuZXhwb3J0IHtQZXJtaXNzaW9uTWFuYWdlbWVudENvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LmNvbXBvbmVudCc7XG5leHBvcnQge1Blcm1pc3Npb25NYW5hZ2VtZW50IGFzIMm1Zn0gZnJvbSAnLi9saWIvbW9kZWxzL3Blcm1pc3Npb24tbWFuYWdlbWVudCc7XG5leHBvcnQge1Blcm1pc3Npb25NYW5hZ2VtZW50U2VydmljZSBhcyDJtWN9IGZyb20gJy4vbGliL3NlcnZpY2VzL3Blcm1pc3Npb24tbWFuYWdlbWVudC5zZXJ2aWNlJztcbmV4cG9ydCB7UGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZSBhcyDJtWJ9IGZyb20gJy4vbGliL3N0YXRlcy9wZXJtaXNzaW9uLW1hbmFnZW1lbnQuc3RhdGUnOyJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnBlcm1pc3Npb24tbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsiYWJwLW5nLnBlcm1pc3Npb24tbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEscUtBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQ3pHLE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUVyRyxPQUFPLEVBQUMsMkJBQTJCLElBQUksRUFBRSxFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDL0YsT0FBTyxFQUFDLHlCQUF5QixJQUFJLEVBQUUsRUFBQyxNQUFNLDBDQUEwQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0dldFBlcm1pc3Npb25zIGFzIMm1ZCxVcGRhdGVQZXJtaXNzaW9ucyBhcyDJtWV9IGZyb20gJy4vbGliL2FjdGlvbnMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LmFjdGlvbnMnO1xuZXhwb3J0IHtQZXJtaXNzaW9uTWFuYWdlbWVudENvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LmNvbXBvbmVudCc7XG5leHBvcnQge1Blcm1pc3Npb25NYW5hZ2VtZW50IGFzIMm1Zn0gZnJvbSAnLi9saWIvbW9kZWxzL3Blcm1pc3Npb24tbWFuYWdlbWVudCc7XG5leHBvcnQge1Blcm1pc3Npb25NYW5hZ2VtZW50U2VydmljZSBhcyDJtWN9IGZyb20gJy4vbGliL3NlcnZpY2VzL3Blcm1pc3Npb24tbWFuYWdlbWVudC5zZXJ2aWNlJztcbmV4cG9ydCB7UGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZSBhcyDJtWJ9IGZyb20gJy4vbGliL3N0YXRlcy9wZXJtaXNzaW9uLW1hbmFnZW1lbnQuc3RhdGUnOyJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/esm2015/lib/components/permission-management.component.js b/npm/ng-packs/dist/permission-management/esm2015/lib/components/permission-management.component.js index 4e2c0fdbf2..fa54b73d4b 100644 --- a/npm/ng-packs/dist/permission-management/esm2015/lib/components/permission-management.component.js +++ b/npm/ng-packs/dist/permission-management/esm2015/lib/components/permission-management.component.js @@ -327,7 +327,7 @@ export class PermissionManagementComponent { PermissionManagementComponent.decorators = [ { type: Component, args: [{ selector: 'abp-permission-management', - template: "\n \n \n

{{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - {{ data.entityName }}

\n
\n \n
\n \n \n
\n\n
\n
\n
\n
    \n \n
  • \n {{ group?.displayName }}\n
  • \n
    \n
\n
\n
\n

{{ selectedGroup?.displayName }}

\n
\n
\n
\n \n \n
\n
\n \n \n \n {{ permission.displayName }}\n {{ provider.providerName }}: {{ provider.providerKey }}\n
\n \n
\n
\n \n
\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n
\n" + template: "\n \n \n

{{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - {{ data.entityName }}

\n
\n \n
\n \n \n
\n\n
\n
\n
\n
    \n
  • \n {{ group?.displayName }}\n
  • \n
\n
\n
\n

{{ selectedGroup?.displayName }}

\n
\n
\n
\n \n \n
\n
\n \n \n {{ permission.displayName }}\n {{ provider.providerName }}: {{ provider.providerKey }}\n
\n
\n
\n \n
\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n
\n" }] } ]; /** @nocollapse */ @@ -419,4 +419,4 @@ function getPermissions(groups) { */ (acc, val) => [...acc, ...val.permissions]), []); } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi1tYW5hZ2VtZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUdWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBUSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRTdGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBUWxGLE1BQU0sT0FBTyw2QkFBNkI7Ozs7O0lBZ0V4QyxZQUFvQixLQUFZLEVBQVUsUUFBbUI7UUFBekMsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUFVLGFBQVEsR0FBUixRQUFRLENBQVc7UUF0QzdELGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQVU1QyxnQkFBVyxHQUFzQyxFQUFFLENBQUM7UUFFcEQsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFFL0IsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFFOUIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQixjQUFTOzs7OztRQUFnRCxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUM7SUFvQmhCLENBQUM7Ozs7SUF2RGpFLElBQ0ksT0FBTztRQUNU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L0QsU0FBUyxVQUFVLENBQUMsV0FBOEMsRUFBRSxVQUEyQzs7VUFDdkcsZ0JBQWdCLEdBQUcsV0FBVyxDQUFDLElBQUk7Ozs7SUFBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssVUFBVSxDQUFDLFVBQVUsRUFBQztJQUVwRixJQUFJLGdCQUFnQixJQUFJLGdCQUFnQixDQUFDLFVBQVUsRUFBRTs7WUFDL0MsTUFBTSxHQUFHLEVBQUU7UUFDZixPQUFPLENBQUMsTUFBTSxJQUFJLFVBQVUsQ0FBQyxXQUFXLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO0tBQzlEO0lBRUQsT0FBTyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDbkMsQ0FBQzs7Ozs7QUFFRCxTQUFTLGNBQWMsQ0FBQyxNQUFvQztJQUMxRCxPQUFPLE1BQU0sQ0FBQyxNQUFNOzs7OztJQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEdBQUcsRUFBRSxHQUFHLEdBQUcsQ0FBQyxXQUFXLENBQUMsR0FBRSxFQUFFLENBQUMsQ0FBQztBQUN2RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRyYWNrQnlGdW5jdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwLCBwbHVjaywgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEdldFBlcm1pc3Npb25zLCBVcGRhdGVQZXJtaXNzaW9ucyB9IGZyb20gJy4uL2FjdGlvbnMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LmFjdGlvbnMnO1xuaW1wb3J0IHsgUGVybWlzc2lvbk1hbmFnZW1lbnQgfSBmcm9tICcuLi9tb2RlbHMvcGVybWlzc2lvbi1tYW5hZ2VtZW50JztcbmltcG9ydCB7IFBlcm1pc3Npb25NYW5hZ2VtZW50U3RhdGUgfSBmcm9tICcuLi9zdGF0ZXMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LnN0YXRlJztcblxudHlwZSBQZXJtaXNzaW9uV2l0aE1hcmdpbiA9IFBlcm1pc3Npb25NYW5hZ2VtZW50LlBlcm1pc3Npb24gJiB7IG1hcmdpbjogbnVtYmVyIH07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1wZXJtaXNzaW9uLW1hbmFnZW1lbnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vcGVybWlzc2lvbi1tYW5hZ2VtZW50LmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgUGVybWlzc2lvbk1hbmFnZW1lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpXG4gIHByb3ZpZGVyTmFtZTogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHByb3ZpZGVyS2V5OiBzdHJpbmc7XG5cbiAgcHJvdGVjdGVkIF92aXNpYmxlO1xuXG4gIEBJbnB1dCgpXG4gIGdldCB2aXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl92aXNpYmxlO1xuICB9XG5cbiAgc2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWRHcm91cCkgcmV0dXJuO1xuXG4gICAgdGhpcy5fdmlzaWJsZSA9IHZhbHVlO1xuICAgIHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KHZhbHVlKTtcblxuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRHcm91cCA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgQE91dHB1dCgpXG4gIHZpc2libGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgQFNlbGVjdChQZXJtaXNzaW9uTWFuYWdlbWVudFN0YXRlLmdldFBlcm1pc3Npb25Hcm91cHMpXG4gIGdyb3VwcyQ6IE9ic2VydmFibGU8UGVybWlzc2lvbk1hbmFnZW1lbnQuR3JvdXBbXT47XG5cbiAgQFNlbGVjdChQZXJtaXNzaW9uTWFuYWdlbWVudFN0YXRlLmdldEVudGl0aXlEaXNwbGF5TmFtZSlcbiAgZW50aXR5TmFtZSQ6IE9ic2VydmFibGU8c3RyaW5nPjtcblxuICBzZWxlY3RlZEdyb3VwOiBQZXJtaXNzaW9uTWFuYWdlbWVudC5Hcm91cDtcblxuICBwZXJtaXNzaW9uczogUGVybWlzc2lvbk1hbmFnZW1lbnQuUGVybWlzc2lvbltdID0gW107XG5cbiAgc2VsZWN0VGhpc1RhYjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHNlbGVjdEFsbFRhYjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIG1vZGFsQnVzeTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHRyYWNrQnlGbjogVHJhY2tCeUZ1bmN0aW9uPFBlcm1pc3Npb25NYW5hZ2VtZW50Lkdyb3VwPiA9IChfLCBpdGVtKSA9PiBpdGVtLm5hbWU7XG5cbiAgZ2V0IHNlbGVjdGVkR3JvdXBQZXJtaXNzaW9ucyQoKTogT2JzZXJ2YWJsZTxQZXJtaXNzaW9uV2l0aE1hcmdpbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuZ3JvdXBzJC5waXBlKFxuICAgICAgbWFwKGdyb3VwcyA9PlxuICAgICAgICB0aGlzLnNlbGVjdGVkR3JvdXAgPyBncm91cHMuZmluZChncm91cCA9PiBncm91cC5uYW1lID09PSB0aGlzLnNlbGVjdGVkR3JvdXAubmFtZSkucGVybWlzc2lvbnMgOiBbXSxcbiAgICAgICksXG4gICAgICBtYXA8UGVybWlzc2lvbk1hbmFnZW1lbnQuUGVybWlzc2lvbltdLCBQZXJtaXNzaW9uV2l0aE1hcmdpbltdPihwZXJtaXNzaW9ucyA9PlxuICAgICAgICBwZXJtaXNzaW9ucy5tYXAoXG4gICAgICAgICAgcGVybWlzc2lvbiA9PlxuICAgICAgICAgICAgKCh7XG4gICAgICAgICAgICAgIC4uLnBlcm1pc3Npb24sXG4gICAgICAgICAgICAgIG1hcmdpbjogZmluZE1hcmdpbihwZXJtaXNzaW9ucywgcGVybWlzc2lvbiksXG4gICAgICAgICAgICAgIGlzR3JhbnRlZDogdGhpcy5wZXJtaXNzaW9ucy5maW5kKHBlciA9PiBwZXIubmFtZSA9PT0gcGVybWlzc2lvbi5uYW1lKS5pc0dyYW50ZWQsXG4gICAgICAgICAgICB9IGFzIGFueSkgYXMgUGVybWlzc2lvbldpdGhNYXJnaW4pLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmUsIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgZ2V0Q2hlY2tlZChuYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gKHRoaXMucGVybWlzc2lvbnMuZmluZChwZXIgPT4gcGVyLm5hbWUgPT09IG5hbWUpIHx8IHsgaXNHcmFudGVkOiBmYWxzZSB9KS5pc0dyYW50ZWQ7XG4gIH1cblxuICBpc0dyYW50ZWRCeVJvbGUoZ3JhbnRlZFByb3ZpZGVyczogUGVybWlzc2lvbk1hbmFnZW1lbnQuR3JhbnRlZFByb3ZpZGVyW10pOiBib29sZWFuIHtcbiAgICBpZiAoZ3JhbnRlZFByb3ZpZGVycy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBncmFudGVkUHJvdmlkZXJzLmZpbmRJbmRleChwID0+IHAucHJvdmlkZXJOYW1lID09PSAnUm9sZScpID4gLTE7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIG9uQ2xpY2tDaGVja2JveChjbGlja2VkUGVybWlzc2lvbjogUGVybWlzc2lvbk1hbmFnZW1lbnQuUGVybWlzc2lvbiwgdmFsdWUpIHtcbiAgICBpZiAoY2xpY2tlZFBlcm1pc3Npb24uaXNHcmFudGVkICYmIHRoaXMuaXNHcmFudGVkQnlSb2xlKGNsaWNrZWRQZXJtaXNzaW9uLmdyYW50ZWRQcm92aWRlcnMpKSByZXR1cm47XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucGVybWlzc2lvbnMgPSB0aGlzLnBlcm1pc3Npb25zLm1hcChwZXIgPT4ge1xuICAgICAgICBpZiAoY2xpY2tlZFBlcm1pc3Npb24ubmFtZSA9PT0gcGVyLm5hbWUpIHtcbiAgICAgICAgICByZXR1cm4geyAuLi5wZXIsIGlzR3JhbnRlZDogIXBlci5pc0dyYW50ZWQgfTtcbiAgICAgICAgfSBlbHNlIGlmIChjbGlja2VkUGVybWlzc2lvbi5uYW1lID09PSBwZXIucGFyZW50TmFtZSAmJiBjbGlja2VkUGVybWlzc2lvbi5pc0dyYW50ZWQpIHtcbiAgICAgICAgICByZXR1cm4geyAuLi5wZXIsIGlzR3JhbnRlZDogZmFsc2UgfTtcbiAgICAgICAgfSBlbHNlIGlmIChjbGlja2VkUGVybWlzc2lvbi5wYXJlbnROYW1lID09PSBwZXIubmFtZSAmJiAhY2xpY2tlZFBlcm1pc3Npb24uaXNHcmFudGVkKSB7XG4gICAgICAgICAgcmV0dXJuIHsgLi4ucGVyLCBpc0dyYW50ZWQ6IHRydWUgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwZXI7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5zZXRUYWJDaGVja2JveFN0YXRlKCk7XG4gICAgICB0aGlzLnNldEdyYW50Q2hlY2tib3hTdGF0ZSgpO1xuICAgIH0sIDApO1xuICB9XG5cbiAgc2V0VGFiQ2hlY2tib3hTdGF0ZSgpIHtcbiAgICB0aGlzLnNlbGVjdGVkR3JvdXBQZXJtaXNzaW9ucyQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUocGVybWlzc2lvbnMgPT4ge1xuICAgICAgY29uc3Qgc2VsZWN0ZWRQZXJtaXNzaW9ucyA9IHBlcm1pc3Npb25zLmZpbHRlcihwZXIgPT4gcGVyLmlzR3JhbnRlZCk7XG4gICAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI3NlbGVjdC1hbGwtaW4tdGhpcy10YWJzJykgYXMgYW55O1xuXG4gICAgICBpZiAoc2VsZWN0ZWRQZXJtaXNzaW9ucy5sZW5ndGggPT09IHBlcm1pc3Npb25zLmxlbmd0aCkge1xuICAgICAgICBlbGVtZW50LmluZGV0ZXJtaW5hdGUgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zZWxlY3RUaGlzVGFiID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSBpZiAoc2VsZWN0ZWRQZXJtaXNzaW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgZWxlbWVudC5pbmRldGVybWluYXRlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2VsZWN0VGhpc1RhYiA9IGZhbHNlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZWxlbWVudC5pbmRldGVybWluYXRlID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHNldEdyYW50Q2hlY2tib3hTdGF0ZSgpIHtcbiAgICBjb25zdCBzZWxlY3RlZEFsbFBlcm1pc3Npb25zID0gdGhpcy5wZXJtaXNzaW9ucy5maWx0ZXIocGVyID0+IHBlci5pc0dyYW50ZWQpO1xuICAgIGNvbnN0IGNoZWNrYm94RWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNzZWxlY3QtYWxsLWluLWFsbC10YWJzJykgYXMgYW55O1xuXG4gICAgaWYgKHNlbGVjdGVkQWxsUGVybWlzc2lvbnMubGVuZ3RoID09PSB0aGlzLnBlcm1pc3Npb25zLmxlbmd0aCkge1xuICAgICAgY2hlY2tib3hFbGVtZW50LmluZGV0ZXJtaW5hdGUgPSBmYWxzZTtcbiAgICAgIHRoaXMuc2VsZWN0QWxsVGFiID0gdHJ1ZTtcbiAgICB9IGVsc2UgaWYgKHNlbGVjdGVkQWxsUGVybWlzc2lvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICBjaGVja2JveEVsZW1lbnQuaW5kZXRlcm1pbmF0ZSA9IGZhbHNlO1xuICAgICAgdGhpcy5zZWxlY3RBbGxUYWIgPSBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgY2hlY2tib3hFbGVtZW50LmluZGV0ZXJtaW5hdGUgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2xpY2tTZWxlY3RUaGlzVGFiKCkge1xuICAgIHRoaXMuc2VsZWN0ZWRHcm91cFBlcm1pc3Npb25zJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShwZXJtaXNzaW9ucyA9PiB7XG4gICAgICBwZXJtaXNzaW9ucy5mb3JFYWNoKHBlcm1pc3Npb24gPT4ge1xuICAgICAgICBpZiAocGVybWlzc2lvbi5pc0dyYW50ZWQgJiYgdGhpcy5pc0dyYW50ZWRCeVJvbGUocGVybWlzc2lvbi5ncmFudGVkUHJvdmlkZXJzKSkgcmV0dXJuO1xuXG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5wZXJtaXNzaW9ucy5maW5kSW5kZXgocGVyID0+IHBlci5uYW1lID09PSBwZXJtaXNzaW9uLm5hbWUpO1xuXG4gICAgICAgIHRoaXMucGVybWlzc2lvbnMgPSBbXG4gICAgICAgICAgLi4udGhpcy5wZXJtaXNzaW9ucy5zbGljZSgwLCBpbmRleCksXG4gICAgICAgICAgeyAuLi50aGlzLnBlcm1pc3Npb25zW2luZGV4XSwgaXNHcmFudGVkOiAhdGhpcy5zZWxlY3RUaGlzVGFiIH0sXG4gICAgICAgICAgLi4udGhpcy5wZXJtaXNzaW9ucy5zbGljZShpbmRleCArIDEpLFxuICAgICAgICBdO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnNldEdyYW50Q2hlY2tib3hTdGF0ZSgpO1xuICB9XG5cbiAgb25DbGlja1NlbGVjdEFsbCgpIHtcbiAgICB0aGlzLnBlcm1pc3Npb25zID0gdGhpcy5wZXJtaXNzaW9ucy5tYXAocGVybWlzc2lvbiA9PiAoeyAuLi5wZXJtaXNzaW9uLCBpc0dyYW50ZWQ6ICF0aGlzLnNlbGVjdEFsbFRhYiB9KSk7XG5cbiAgICB0aGlzLnNlbGVjdFRoaXNUYWIgPSAhdGhpcy5zZWxlY3RBbGxUYWI7XG4gIH1cblxuICBvbkNoYW5nZUdyb3VwKGdyb3VwOiBQZXJtaXNzaW9uTWFuYWdlbWVudC5Hcm91cCkge1xuICAgIHRoaXMuc2VsZWN0ZWRHcm91cCA9IGdyb3VwO1xuICAgIHRoaXMuc2V0VGFiQ2hlY2tib3hTdGF0ZSgpO1xuICB9XG5cbiAgc3VibWl0KCkge1xuICAgIHRoaXMubW9kYWxCdXN5ID0gdHJ1ZTtcbiAgICBjb25zdCB1bmNoYW5nZWRQZXJtaXNzaW9ucyA9IGdldFBlcm1pc3Npb25zKFxuICAgICAgdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChQZXJtaXNzaW9uTWFuYWdlbWVudFN0YXRlLmdldFBlcm1pc3Npb25Hcm91cHMpLFxuICAgICk7XG5cbiAgICBjb25zdCBjaGFuZ2VkUGVybWlzc2lvbnM6IFBlcm1pc3Npb25NYW5hZ2VtZW50Lk1pbmltdW1QZXJtaXNzaW9uW10gPSB0aGlzLnBlcm1pc3Npb25zXG4gICAgICAuZmlsdGVyKHBlciA9PlxuICAgICAgICB1bmNoYW5nZWRQZXJtaXNzaW9ucy5maW5kKHVuY2hhbmdlZCA9PiB1bmNoYW5nZWQubmFtZSA9PT0gcGVyLm5hbWUpLmlzR3JhbnRlZCA9PT0gcGVyLmlzR3JhbnRlZCA/IGZhbHNlIDogdHJ1ZSxcbiAgICAgIClcbiAgICAgIC5tYXAoKHsgbmFtZSwgaXNHcmFudGVkIH0pID0+ICh7IG5hbWUsIGlzR3JhbnRlZCB9KSk7XG5cbiAgICBpZiAoY2hhbmdlZFBlcm1pc3Npb25zLmxlbmd0aCkge1xuICAgICAgdGhpcy5zdG9yZVxuICAgICAgICAuZGlzcGF0Y2goXG4gICAgICAgICAgbmV3IFVwZGF0ZVBlcm1pc3Npb25zKHtcbiAgICAgICAgICAgIHByb3ZpZGVyS2V5OiB0aGlzLnByb3ZpZGVyS2V5LFxuICAgICAgICAgICAgcHJvdmlkZXJOYW1lOiB0aGlzLnByb3ZpZGVyTmFtZSxcbiAgICAgICAgICAgIHBlcm1pc3Npb25zOiBjaGFuZ2VkUGVybWlzc2lvbnMsXG4gICAgICAgICAgfSksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5tb2RhbEJ1c3kgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubW9kYWxCdXN5ID0gZmFsc2U7XG4gICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBvcGVuTW9kYWwoKSB7XG4gICAgaWYgKCF0aGlzLnByb3ZpZGVyS2V5IHx8ICF0aGlzLnByb3ZpZGVyTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdQcm92aWRlciBLZXkgYW5kIFByb3ZpZGVyIE5hbWUgYXJlIHJlcXVpcmVkLicpO1xuICAgIH1cblxuICAgIHRoaXMuc3RvcmVcbiAgICAgIC5kaXNwYXRjaChuZXcgR2V0UGVybWlzc2lvbnMoeyBwcm92aWRlcktleTogdGhpcy5wcm92aWRlcktleSwgcHJvdmlkZXJOYW1lOiB0aGlzLnByb3ZpZGVyTmFtZSB9KSlcbiAgICAgIC5waXBlKHBsdWNrKCdQZXJtaXNzaW9uTWFuYWdlbWVudFN0YXRlJywgJ3Blcm1pc3Npb25SZXMnKSlcbiAgICAgIC5zdWJzY3JpYmUoKHBlcm1pc3Npb25SZXM6IFBlcm1pc3Npb25NYW5hZ2VtZW50LlJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRHcm91cCA9IHBlcm1pc3Npb25SZXMuZ3JvdXBzWzBdO1xuICAgICAgICB0aGlzLnBlcm1pc3Npb25zID0gZ2V0UGVybWlzc2lvbnMocGVybWlzc2lvblJlcy5ncm91cHMpO1xuXG4gICAgICAgIHRoaXMudmlzaWJsZSA9IHRydWU7XG4gICAgICB9KTtcbiAgfVxuXG4gIGluaXRNb2RhbCgpIHtcbiAgICB0aGlzLnNldFRhYkNoZWNrYm94U3RhdGUoKTtcbiAgICB0aGlzLnNldEdyYW50Q2hlY2tib3hTdGF0ZSgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoeyB2aXNpYmxlIH06IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoIXZpc2libGUpIHJldHVybjtcblxuICAgIGlmICh2aXNpYmxlLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy5vcGVuTW9kYWwoKTtcbiAgICB9IGVsc2UgaWYgKHZpc2libGUuY3VycmVudFZhbHVlID09PSBmYWxzZSAmJiB0aGlzLnZpc2libGUpIHtcbiAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBmaW5kTWFyZ2luKHBlcm1pc3Npb25zOiBQZXJtaXNzaW9uTWFuYWdlbWVudC5QZXJtaXNzaW9uW10sIHBlcm1pc3Npb246IFBlcm1pc3Npb25NYW5hZ2VtZW50LlBlcm1pc3Npb24pIHtcbiAgY29uc3QgcGFyZW50UGVybWlzc2lvbiA9IHBlcm1pc3Npb25zLmZpbmQocGVyID0+IHBlci5uYW1lID09PSBwZXJtaXNzaW9uLnBhcmVudE5hbWUpO1xuXG4gIGlmIChwYXJlbnRQZXJtaXNzaW9uICYmIHBhcmVudFBlcm1pc3Npb24ucGFyZW50TmFtZSkge1xuICAgIGxldCBtYXJnaW4gPSAyMDtcbiAgICByZXR1cm4gKG1hcmdpbiArPSBmaW5kTWFyZ2luKHBlcm1pc3Npb25zLCBwYXJlbnRQZXJtaXNzaW9uKSk7XG4gIH1cblxuICByZXR1cm4gcGFyZW50UGVybWlzc2lvbiA/IDIwIDogMDtcbn1cblxuZnVuY3Rpb24gZ2V0UGVybWlzc2lvbnMoZ3JvdXBzOiBQZXJtaXNzaW9uTWFuYWdlbWVudC5Hcm91cFtdKTogUGVybWlzc2lvbk1hbmFnZW1lbnQuUGVybWlzc2lvbltdIHtcbiAgcmV0dXJuIGdyb3Vwcy5yZWR1Y2UoKGFjYywgdmFsKSA9PiBbLi4uYWNjLCAuLi52YWwucGVybWlzc2lvbnNdLCBbXSk7XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi1tYW5hZ2VtZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUdWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBUSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRTdGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBUWxGLE1BQU0sT0FBTyw2QkFBNkI7Ozs7O0lBZ0V4QyxZQUFvQixLQUFZLEVBQVUsUUFBbUI7UUFBekMsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUFVLGFBQVEsR0FBUixRQUFRLENBQVc7UUF0QzdELGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQVU1QyxnQkFBVyxHQUFzQyxFQUFFLENBQUM7UUFFcEQsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFFL0IsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFFOUIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQixjQUFTOzs7OztRQUFnRCxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUM7SUFvQmhCLENBQUM7Ozs7SUF2RGpFLElBQ0ksT0FBTztRQUNU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L0QsU0FBUyxVQUFVLENBQUMsV0FBOEMsRUFBRSxVQUEyQzs7VUFDdkcsZ0JBQWdCLEdBQUcsV0FBVyxDQUFDLElBQUk7Ozs7SUFBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssVUFBVSxDQUFDLFVBQVUsRUFBQztJQUVwRixJQUFJLGdCQUFnQixJQUFJLGdCQUFnQixDQUFDLFVBQVUsRUFBRTs7WUFDL0MsTUFBTSxHQUFHLEVBQUU7UUFDZixPQUFPLENBQUMsTUFBTSxJQUFJLFVBQVUsQ0FBQyxXQUFXLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO0tBQzlEO0lBRUQsT0FBTyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDbkMsQ0FBQzs7Ozs7QUFFRCxTQUFTLGNBQWMsQ0FBQyxNQUFvQztJQUMxRCxPQUFPLE1BQU0sQ0FBQyxNQUFNOzs7OztJQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEdBQUcsRUFBRSxHQUFHLEdBQUcsQ0FBQyxXQUFXLENBQUMsR0FBRSxFQUFFLENBQUMsQ0FBQztBQUN2RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBSZW5kZXJlcjIsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRyYWNrQnlGdW5jdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwLCBwbHVjaywgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEdldFBlcm1pc3Npb25zLCBVcGRhdGVQZXJtaXNzaW9ucyB9IGZyb20gJy4uL2FjdGlvbnMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LmFjdGlvbnMnO1xuaW1wb3J0IHsgUGVybWlzc2lvbk1hbmFnZW1lbnQgfSBmcm9tICcuLi9tb2RlbHMvcGVybWlzc2lvbi1tYW5hZ2VtZW50JztcbmltcG9ydCB7IFBlcm1pc3Npb25NYW5hZ2VtZW50U3RhdGUgfSBmcm9tICcuLi9zdGF0ZXMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LnN0YXRlJztcblxudHlwZSBQZXJtaXNzaW9uV2l0aE1hcmdpbiA9IFBlcm1pc3Npb25NYW5hZ2VtZW50LlBlcm1pc3Npb24gJiB7IG1hcmdpbjogbnVtYmVyIH07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1wZXJtaXNzaW9uLW1hbmFnZW1lbnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vcGVybWlzc2lvbi1tYW5hZ2VtZW50LmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgUGVybWlzc2lvbk1hbmFnZW1lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpXG4gIHByb3ZpZGVyTmFtZTogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHByb3ZpZGVyS2V5OiBzdHJpbmc7XG5cbiAgcHJvdGVjdGVkIF92aXNpYmxlO1xuXG4gIEBJbnB1dCgpXG4gIGdldCB2aXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl92aXNpYmxlO1xuICB9XG5cbiAgc2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWRHcm91cCkgcmV0dXJuO1xuXG4gICAgdGhpcy5fdmlzaWJsZSA9IHZhbHVlO1xuICAgIHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KHZhbHVlKTtcblxuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRHcm91cCA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgQE91dHB1dCgpXG4gIHZpc2libGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgQFNlbGVjdChQZXJtaXNzaW9uTWFuYWdlbWVudFN0YXRlLmdldFBlcm1pc3Npb25Hcm91cHMpXG4gIGdyb3VwcyQ6IE9ic2VydmFibGU8UGVybWlzc2lvbk1hbmFnZW1lbnQuR3JvdXBbXT47XG5cbiAgQFNlbGVjdChQZXJtaXNzaW9uTWFuYWdlbWVudFN0YXRlLmdldEVudGl0aXlEaXNwbGF5TmFtZSlcbiAgZW50aXR5TmFtZSQ6IE9ic2VydmFibGU8c3RyaW5nPjtcblxuICBzZWxlY3RlZEdyb3VwOiBQZXJtaXNzaW9uTWFuYWdlbWVudC5Hcm91cDtcblxuICBwZXJtaXNzaW9uczogUGVybWlzc2lvbk1hbmFnZW1lbnQuUGVybWlzc2lvbltdID0gW107XG5cbiAgc2VsZWN0VGhpc1RhYjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHNlbGVjdEFsbFRhYjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIG1vZGFsQnVzeTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHRyYWNrQnlGbjogVHJhY2tCeUZ1bmN0aW9uPFBlcm1pc3Npb25NYW5hZ2VtZW50Lkdyb3VwPiA9IChfLCBpdGVtKSA9PiBpdGVtLm5hbWU7XG5cbiAgZ2V0IHNlbGVjdGVkR3JvdXBQZXJtaXNzaW9ucyQoKTogT2JzZXJ2YWJsZTxQZXJtaXNzaW9uV2l0aE1hcmdpbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuZ3JvdXBzJC5waXBlKFxuICAgICAgbWFwKGdyb3VwcyA9PlxuICAgICAgICB0aGlzLnNlbGVjdGVkR3JvdXAgPyBncm91cHMuZmluZChncm91cCA9PiBncm91cC5uYW1lID09PSB0aGlzLnNlbGVjdGVkR3JvdXAubmFtZSkucGVybWlzc2lvbnMgOiBbXSxcbiAgICAgICksXG4gICAgICBtYXA8UGVybWlzc2lvbk1hbmFnZW1lbnQuUGVybWlzc2lvbltdLCBQZXJtaXNzaW9uV2l0aE1hcmdpbltdPihwZXJtaXNzaW9ucyA9PlxuICAgICAgICBwZXJtaXNzaW9ucy5tYXAoXG4gICAgICAgICAgcGVybWlzc2lvbiA9PlxuICAgICAgICAgICAgKCh7XG4gICAgICAgICAgICAgIC4uLnBlcm1pc3Npb24sXG4gICAgICAgICAgICAgIG1hcmdpbjogZmluZE1hcmdpbihwZXJtaXNzaW9ucywgcGVybWlzc2lvbiksXG4gICAgICAgICAgICAgIGlzR3JhbnRlZDogdGhpcy5wZXJtaXNzaW9ucy5maW5kKHBlciA9PiBwZXIubmFtZSA9PT0gcGVybWlzc2lvbi5uYW1lKS5pc0dyYW50ZWQsXG4gICAgICAgICAgICB9IGFzIGFueSkgYXMgUGVybWlzc2lvbldpdGhNYXJnaW4pLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmUsIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgZ2V0Q2hlY2tlZChuYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gKHRoaXMucGVybWlzc2lvbnMuZmluZChwZXIgPT4gcGVyLm5hbWUgPT09IG5hbWUpIHx8IHsgaXNHcmFudGVkOiBmYWxzZSB9KS5pc0dyYW50ZWQ7XG4gIH1cblxuICBpc0dyYW50ZWRCeVJvbGUoZ3JhbnRlZFByb3ZpZGVyczogUGVybWlzc2lvbk1hbmFnZW1lbnQuR3JhbnRlZFByb3ZpZGVyW10pOiBib29sZWFuIHtcbiAgICBpZiAoZ3JhbnRlZFByb3ZpZGVycy5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBncmFudGVkUHJvdmlkZXJzLmZpbmRJbmRleChwID0+IHAucHJvdmlkZXJOYW1lID09PSAnUm9sZScpID4gLTE7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIG9uQ2xpY2tDaGVja2JveChjbGlja2VkUGVybWlzc2lvbjogUGVybWlzc2lvbk1hbmFnZW1lbnQuUGVybWlzc2lvbiwgdmFsdWUpIHtcbiAgICBpZiAoY2xpY2tlZFBlcm1pc3Npb24uaXNHcmFudGVkICYmIHRoaXMuaXNHcmFudGVkQnlSb2xlKGNsaWNrZWRQZXJtaXNzaW9uLmdyYW50ZWRQcm92aWRlcnMpKSByZXR1cm47XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucGVybWlzc2lvbnMgPSB0aGlzLnBlcm1pc3Npb25zLm1hcChwZXIgPT4ge1xuICAgICAgICBpZiAoY2xpY2tlZFBlcm1pc3Npb24ubmFtZSA9PT0gcGVyLm5hbWUpIHtcbiAgICAgICAgICByZXR1cm4geyAuLi5wZXIsIGlzR3JhbnRlZDogIXBlci5pc0dyYW50ZWQgfTtcbiAgICAgICAgfSBlbHNlIGlmIChjbGlja2VkUGVybWlzc2lvbi5uYW1lID09PSBwZXIucGFyZW50TmFtZSAmJiBjbGlja2VkUGVybWlzc2lvbi5pc0dyYW50ZWQpIHtcbiAgICAgICAgICByZXR1cm4geyAuLi5wZXIsIGlzR3JhbnRlZDogZmFsc2UgfTtcbiAgICAgICAgfSBlbHNlIGlmIChjbGlja2VkUGVybWlzc2lvbi5wYXJlbnROYW1lID09PSBwZXIubmFtZSAmJiAhY2xpY2tlZFBlcm1pc3Npb24uaXNHcmFudGVkKSB7XG4gICAgICAgICAgcmV0dXJuIHsgLi4ucGVyLCBpc0dyYW50ZWQ6IHRydWUgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwZXI7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5zZXRUYWJDaGVja2JveFN0YXRlKCk7XG4gICAgICB0aGlzLnNldEdyYW50Q2hlY2tib3hTdGF0ZSgpO1xuICAgIH0sIDApO1xuICB9XG5cbiAgc2V0VGFiQ2hlY2tib3hTdGF0ZSgpIHtcbiAgICB0aGlzLnNlbGVjdGVkR3JvdXBQZXJtaXNzaW9ucyQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUocGVybWlzc2lvbnMgPT4ge1xuICAgICAgY29uc3Qgc2VsZWN0ZWRQZXJtaXNzaW9ucyA9IHBlcm1pc3Npb25zLmZpbHRlcihwZXIgPT4gcGVyLmlzR3JhbnRlZCk7XG4gICAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI3NlbGVjdC1hbGwtaW4tdGhpcy10YWJzJykgYXMgYW55O1xuXG4gICAgICBpZiAoc2VsZWN0ZWRQZXJtaXNzaW9ucy5sZW5ndGggPT09IHBlcm1pc3Npb25zLmxlbmd0aCkge1xuICAgICAgICBlbGVtZW50LmluZGV0ZXJtaW5hdGUgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zZWxlY3RUaGlzVGFiID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSBpZiAoc2VsZWN0ZWRQZXJtaXNzaW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgZWxlbWVudC5pbmRldGVybWluYXRlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2VsZWN0VGhpc1RhYiA9IGZhbHNlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZWxlbWVudC5pbmRldGVybWluYXRlID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHNldEdyYW50Q2hlY2tib3hTdGF0ZSgpIHtcbiAgICBjb25zdCBzZWxlY3RlZEFsbFBlcm1pc3Npb25zID0gdGhpcy5wZXJtaXNzaW9ucy5maWx0ZXIocGVyID0+IHBlci5pc0dyYW50ZWQpO1xuICAgIGNvbnN0IGNoZWNrYm94RWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNzZWxlY3QtYWxsLWluLWFsbC10YWJzJykgYXMgYW55O1xuXG4gICAgaWYgKHNlbGVjdGVkQWxsUGVybWlzc2lvbnMubGVuZ3RoID09PSB0aGlzLnBlcm1pc3Npb25zLmxlbmd0aCkge1xuICAgICAgY2hlY2tib3hFbGVtZW50LmluZGV0ZXJtaW5hdGUgPSBmYWxzZTtcbiAgICAgIHRoaXMuc2VsZWN0QWxsVGFiID0gdHJ1ZTtcbiAgICB9IGVsc2UgaWYgKHNlbGVjdGVkQWxsUGVybWlzc2lvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICBjaGVja2JveEVsZW1lbnQuaW5kZXRlcm1pbmF0ZSA9IGZhbHNlO1xuICAgICAgdGhpcy5zZWxlY3RBbGxUYWIgPSBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgY2hlY2tib3hFbGVtZW50LmluZGV0ZXJtaW5hdGUgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2xpY2tTZWxlY3RUaGlzVGFiKCkge1xuICAgIHRoaXMuc2VsZWN0ZWRHcm91cFBlcm1pc3Npb25zJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShwZXJtaXNzaW9ucyA9PiB7XG4gICAgICBwZXJtaXNzaW9ucy5mb3JFYWNoKHBlcm1pc3Npb24gPT4ge1xuICAgICAgICBpZiAocGVybWlzc2lvbi5pc0dyYW50ZWQgJiYgdGhpcy5pc0dyYW50ZWRCeVJvbGUocGVybWlzc2lvbi5ncmFudGVkUHJvdmlkZXJzKSkgcmV0dXJuO1xuXG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5wZXJtaXNzaW9ucy5maW5kSW5kZXgocGVyID0+IHBlci5uYW1lID09PSBwZXJtaXNzaW9uLm5hbWUpO1xuXG4gICAgICAgIHRoaXMucGVybWlzc2lvbnMgPSBbXG4gICAgICAgICAgLi4udGhpcy5wZXJtaXNzaW9ucy5zbGljZSgwLCBpbmRleCksXG4gICAgICAgICAgeyAuLi50aGlzLnBlcm1pc3Npb25zW2luZGV4XSwgaXNHcmFudGVkOiAhdGhpcy5zZWxlY3RUaGlzVGFiIH0sXG4gICAgICAgICAgLi4udGhpcy5wZXJtaXNzaW9ucy5zbGljZShpbmRleCArIDEpLFxuICAgICAgICBdO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnNldEdyYW50Q2hlY2tib3hTdGF0ZSgpO1xuICB9XG5cbiAgb25DbGlja1NlbGVjdEFsbCgpIHtcbiAgICB0aGlzLnBlcm1pc3Npb25zID0gdGhpcy5wZXJtaXNzaW9ucy5tYXAocGVybWlzc2lvbiA9PiAoeyAuLi5wZXJtaXNzaW9uLCBpc0dyYW50ZWQ6ICF0aGlzLnNlbGVjdEFsbFRhYiB9KSk7XG5cbiAgICB0aGlzLnNlbGVjdFRoaXNUYWIgPSAhdGhpcy5zZWxlY3RBbGxUYWI7XG4gIH1cblxuICBvbkNoYW5nZUdyb3VwKGdyb3VwOiBQZXJtaXNzaW9uTWFuYWdlbWVudC5Hcm91cCkge1xuICAgIHRoaXMuc2VsZWN0ZWRHcm91cCA9IGdyb3VwO1xuICAgIHRoaXMuc2V0VGFiQ2hlY2tib3hTdGF0ZSgpO1xuICB9XG5cbiAgc3VibWl0KCkge1xuICAgIHRoaXMubW9kYWxCdXN5ID0gdHJ1ZTtcbiAgICBjb25zdCB1bmNoYW5nZWRQZXJtaXNzaW9ucyA9IGdldFBlcm1pc3Npb25zKFxuICAgICAgdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChQZXJtaXNzaW9uTWFuYWdlbWVudFN0YXRlLmdldFBlcm1pc3Npb25Hcm91cHMpLFxuICAgICk7XG5cbiAgICBjb25zdCBjaGFuZ2VkUGVybWlzc2lvbnM6IFBlcm1pc3Npb25NYW5hZ2VtZW50Lk1pbmltdW1QZXJtaXNzaW9uW10gPSB0aGlzLnBlcm1pc3Npb25zXG4gICAgICAuZmlsdGVyKHBlciA9PlxuICAgICAgICB1bmNoYW5nZWRQZXJtaXNzaW9ucy5maW5kKHVuY2hhbmdlZCA9PiB1bmNoYW5nZWQubmFtZSA9PT0gcGVyLm5hbWUpLmlzR3JhbnRlZCA9PT0gcGVyLmlzR3JhbnRlZCA/IGZhbHNlIDogdHJ1ZSxcbiAgICAgIClcbiAgICAgIC5tYXAoKHsgbmFtZSwgaXNHcmFudGVkIH0pID0+ICh7IG5hbWUsIGlzR3JhbnRlZCB9KSk7XG5cbiAgICBpZiAoY2hhbmdlZFBlcm1pc3Npb25zLmxlbmd0aCkge1xuICAgICAgdGhpcy5zdG9yZVxuICAgICAgICAuZGlzcGF0Y2goXG4gICAgICAgICAgbmV3IFVwZGF0ZVBlcm1pc3Npb25zKHtcbiAgICAgICAgICAgIHByb3ZpZGVyS2V5OiB0aGlzLnByb3ZpZGVyS2V5LFxuICAgICAgICAgICAgcHJvdmlkZXJOYW1lOiB0aGlzLnByb3ZpZGVyTmFtZSxcbiAgICAgICAgICAgIHBlcm1pc3Npb25zOiBjaGFuZ2VkUGVybWlzc2lvbnMsXG4gICAgICAgICAgfSksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5tb2RhbEJ1c3kgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubW9kYWxCdXN5ID0gZmFsc2U7XG4gICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBvcGVuTW9kYWwoKSB7XG4gICAgaWYgKCF0aGlzLnByb3ZpZGVyS2V5IHx8ICF0aGlzLnByb3ZpZGVyTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdQcm92aWRlciBLZXkgYW5kIFByb3ZpZGVyIE5hbWUgYXJlIHJlcXVpcmVkLicpO1xuICAgIH1cblxuICAgIHRoaXMuc3RvcmVcbiAgICAgIC5kaXNwYXRjaChuZXcgR2V0UGVybWlzc2lvbnMoeyBwcm92aWRlcktleTogdGhpcy5wcm92aWRlcktleSwgcHJvdmlkZXJOYW1lOiB0aGlzLnByb3ZpZGVyTmFtZSB9KSlcbiAgICAgIC5waXBlKHBsdWNrKCdQZXJtaXNzaW9uTWFuYWdlbWVudFN0YXRlJywgJ3Blcm1pc3Npb25SZXMnKSlcbiAgICAgIC5zdWJzY3JpYmUoKHBlcm1pc3Npb25SZXM6IFBlcm1pc3Npb25NYW5hZ2VtZW50LlJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRHcm91cCA9IHBlcm1pc3Npb25SZXMuZ3JvdXBzWzBdO1xuICAgICAgICB0aGlzLnBlcm1pc3Npb25zID0gZ2V0UGVybWlzc2lvbnMocGVybWlzc2lvblJlcy5ncm91cHMpO1xuXG4gICAgICAgIHRoaXMudmlzaWJsZSA9IHRydWU7XG4gICAgICB9KTtcbiAgfVxuXG4gIGluaXRNb2RhbCgpIHtcbiAgICB0aGlzLnNldFRhYkNoZWNrYm94U3RhdGUoKTtcbiAgICB0aGlzLnNldEdyYW50Q2hlY2tib3hTdGF0ZSgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoeyB2aXNpYmxlIH06IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoIXZpc2libGUpIHJldHVybjtcblxuICAgIGlmICh2aXNpYmxlLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy5vcGVuTW9kYWwoKTtcbiAgICB9IGVsc2UgaWYgKHZpc2libGUuY3VycmVudFZhbHVlID09PSBmYWxzZSAmJiB0aGlzLnZpc2libGUpIHtcbiAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBmaW5kTWFyZ2luKHBlcm1pc3Npb25zOiBQZXJtaXNzaW9uTWFuYWdlbWVudC5QZXJtaXNzaW9uW10sIHBlcm1pc3Npb246IFBlcm1pc3Npb25NYW5hZ2VtZW50LlBlcm1pc3Npb24pIHtcbiAgY29uc3QgcGFyZW50UGVybWlzc2lvbiA9IHBlcm1pc3Npb25zLmZpbmQocGVyID0+IHBlci5uYW1lID09PSBwZXJtaXNzaW9uLnBhcmVudE5hbWUpO1xuXG4gIGlmIChwYXJlbnRQZXJtaXNzaW9uICYmIHBhcmVudFBlcm1pc3Npb24ucGFyZW50TmFtZSkge1xuICAgIGxldCBtYXJnaW4gPSAyMDtcbiAgICByZXR1cm4gKG1hcmdpbiArPSBmaW5kTWFyZ2luKHBlcm1pc3Npb25zLCBwYXJlbnRQZXJtaXNzaW9uKSk7XG4gIH1cblxuICByZXR1cm4gcGFyZW50UGVybWlzc2lvbiA/IDIwIDogMDtcbn1cblxuZnVuY3Rpb24gZ2V0UGVybWlzc2lvbnMoZ3JvdXBzOiBQZXJtaXNzaW9uTWFuYWdlbWVudC5Hcm91cFtdKTogUGVybWlzc2lvbk1hbmFnZW1lbnQuUGVybWlzc2lvbltdIHtcbiAgcmV0dXJuIGdyb3Vwcy5yZWR1Y2UoKGFjYywgdmFsKSA9PiBbLi4uYWNjLCAuLi52YWwucGVybWlzc2lvbnNdLCBbXSk7XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/esm2015/lib/permission-management.module.js b/npm/ng-packs/dist/permission-management/esm2015/lib/permission-management.module.js index d9a5774915..f1e276ecb3 100644 --- a/npm/ng-packs/dist/permission-management/esm2015/lib/permission-management.module.js +++ b/npm/ng-packs/dist/permission-management/esm2015/lib/permission-management.module.js @@ -8,14 +8,13 @@ import { NgModule } from '@angular/core'; import { NgxsModule } from '@ngxs/store'; import { PermissionManagementComponent } from './components/permission-management.component'; import { PermissionManagementState } from './states/permission-management.state'; -import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar'; export class PermissionManagementModule { } PermissionManagementModule.decorators = [ { type: NgModule, args: [{ declarations: [PermissionManagementComponent], - imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState]), PerfectScrollbarModule], + imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState])], exports: [PermissionManagementComponent], },] } ]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi1tYW5hZ2VtZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL3Blcm1pc3Npb24tbWFuYWdlbWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzdGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBTy9ELE1BQU0sT0FBTywwQkFBMEI7OztZQUx0QyxRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFLENBQUMsNkJBQTZCLENBQUM7Z0JBQzdDLE9BQU8sRUFBRSxDQUFDLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMseUJBQXlCLENBQUMsQ0FBQyxFQUFFLHNCQUFzQixDQUFDO2dCQUNwSCxPQUFPLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQzthQUN6QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgVGhlbWVTaGFyZWRNb2R1bGUgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd4c01vZHVsZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IFBlcm1pc3Npb25NYW5hZ2VtZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Blcm1pc3Npb24tbWFuYWdlbWVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZSB9IGZyb20gJy4vc3RhdGVzL3Blcm1pc3Npb24tbWFuYWdlbWVudC5zdGF0ZSc7XG5pbXBvcnQgeyBQZXJmZWN0U2Nyb2xsYmFyTW9kdWxlIH0gZnJvbSAnbmd4LXBlcmZlY3Qtc2Nyb2xsYmFyJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbUGVybWlzc2lvbk1hbmFnZW1lbnRDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29yZU1vZHVsZSwgVGhlbWVTaGFyZWRNb2R1bGUsIE5neHNNb2R1bGUuZm9yRmVhdHVyZShbUGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZV0pLCBQZXJmZWN0U2Nyb2xsYmFyTW9kdWxlXSxcbiAgZXhwb3J0czogW1Blcm1pc3Npb25NYW5hZ2VtZW50Q29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgUGVybWlzc2lvbk1hbmFnZW1lbnRNb2R1bGUge31cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi1tYW5hZ2VtZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL3Blcm1pc3Npb24tbWFuYWdlbWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzdGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBT2pGLE1BQU0sT0FBTywwQkFBMEI7OztZQUx0QyxRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFLENBQUMsNkJBQTZCLENBQUM7Z0JBQzdDLE9BQU8sRUFBRSxDQUFDLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMseUJBQXlCLENBQUMsQ0FBQyxDQUFDO2dCQUM1RixPQUFPLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQzthQUN6QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgVGhlbWVTaGFyZWRNb2R1bGUgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd4c01vZHVsZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IFBlcm1pc3Npb25NYW5hZ2VtZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Blcm1pc3Npb24tbWFuYWdlbWVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZSB9IGZyb20gJy4vc3RhdGVzL3Blcm1pc3Npb24tbWFuYWdlbWVudC5zdGF0ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1Blcm1pc3Npb25NYW5hZ2VtZW50Q29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvcmVNb2R1bGUsIFRoZW1lU2hhcmVkTW9kdWxlLCBOZ3hzTW9kdWxlLmZvckZlYXR1cmUoW1Blcm1pc3Npb25NYW5hZ2VtZW50U3RhdGVdKV0sXG4gIGV4cG9ydHM6IFtQZXJtaXNzaW9uTWFuYWdlbWVudENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFBlcm1pc3Npb25NYW5hZ2VtZW50TW9kdWxlIHt9XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/esm2015/lib/root-permission-management.module.js b/npm/ng-packs/dist/permission-management/esm2015/lib/root-permission-management.module.js deleted file mode 100644 index bc99d2c309..0000000000 --- a/npm/ng-packs/dist/permission-management/esm2015/lib/root-permission-management.module.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { NgModule } from '@angular/core'; -export class RootPermissionManagementModule { - /** - * @return {?} - */ - static forRoot() { - return { - ngModule: RootPermissionManagementModule, - providers: [], - }; - } -} -RootPermissionManagementModule.decorators = [ - { type: NgModule, args: [{},] } -]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1wZXJtaXNzaW9uLW1hbmFnZW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5wZXJtaXNzaW9uLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvcm9vdC1wZXJtaXNzaW9uLW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUc5RCxNQUFNLE9BQU8sOEJBQThCOzs7O0lBQ3pDLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSw4QkFBOEI7WUFDeEMsU0FBUyxFQUFFLEVBQUU7U0FDZCxDQUFDO0lBQ0osQ0FBQzs7O1lBUEYsUUFBUSxTQUFDLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ATmdNb2R1bGUoe30pXG5leHBvcnQgY2xhc3MgUm9vdFBlcm1pc3Npb25NYW5hZ2VtZW50TW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVycyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBSb290UGVybWlzc2lvbk1hbmFnZW1lbnRNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/esm2015/public-api.js b/npm/ng-packs/dist/permission-management/esm2015/public-api.js index 35502dc49e..9d041be370 100644 --- a/npm/ng-packs/dist/permission-management/esm2015/public-api.js +++ b/npm/ng-packs/dist/permission-management/esm2015/public-api.js @@ -5,11 +5,10 @@ /* * Public API Surface of permission-management */ -export { RootPermissionManagementModule } from './lib/root-permission-management.module'; export { PermissionManagementModule } from './lib/permission-management.module'; export { GetPermissions, UpdatePermissions } from './lib/actions'; export { PermissionManagementComponent } from './lib/components'; export {} from './lib/models'; export { PermissionManagementService } from './lib/services'; export { PermissionManagementState } from './lib/states'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsK0NBQWMseUNBQXlDLENBQUM7QUFDeEQsMkNBQWMsb0NBQW9DLENBQUM7QUFDbkQsa0RBQWMsZUFBZSxDQUFDO0FBQzlCLDhDQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGVBQWMsY0FBYyxDQUFDO0FBQzdCLDRDQUFjLGdCQUFnQixDQUFDO0FBQy9CLDBDQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgcGVybWlzc2lvbi1tYW5hZ2VtZW50XG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvcm9vdC1wZXJtaXNzaW9uLW1hbmFnZW1lbnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Blcm1pc3Npb24tbWFuYWdlbWVudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYWN0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zdGF0ZXMnO1xuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsMkNBQWMsb0NBQW9DLENBQUM7QUFDbkQsa0RBQWMsZUFBZSxDQUFDO0FBQzlCLDhDQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGVBQWMsY0FBYyxDQUFDO0FBQzdCLDRDQUFjLGdCQUFnQixDQUFDO0FBQy9CLDBDQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgcGVybWlzc2lvbi1tYW5hZ2VtZW50XG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGVybWlzc2lvbi1tYW5hZ2VtZW50Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXRlcyc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/esm5/abp-ng.permission-management.js b/npm/ng-packs/dist/permission-management/esm5/abp-ng.permission-management.js index 3743c8495f..a8be4b0a6d 100644 --- a/npm/ng-packs/dist/permission-management/esm5/abp-ng.permission-management.js +++ b/npm/ng-packs/dist/permission-management/esm5/abp-ng.permission-management.js @@ -5,9 +5,9 @@ /** * Generated bundle index. Do not edit. */ -export { RootPermissionManagementModule, PermissionManagementModule, GetPermissions, UpdatePermissions, PermissionManagementComponent, PermissionManagementService, PermissionManagementState } from './public-api'; +export { PermissionManagementModule, GetPermissions, UpdatePermissions, PermissionManagementComponent, PermissionManagementService, PermissionManagementState } from './public-api'; export { GetPermissions as ɵd, UpdatePermissions as ɵe } from './lib/actions/permission-management.actions'; export { PermissionManagementComponent as ɵa } from './lib/components/permission-management.component'; export { PermissionManagementService as ɵc } from './lib/services/permission-management.service'; export { PermissionManagementState as ɵb } from './lib/states/permission-management.state'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnBlcm1pc3Npb24tbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsiYWJwLW5nLnBlcm1pc3Npb24tbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEscU1BQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQ3pHLE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUVyRyxPQUFPLEVBQUMsMkJBQTJCLElBQUksRUFBRSxFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDL0YsT0FBTyxFQUFDLHlCQUF5QixJQUFJLEVBQUUsRUFBQyxNQUFNLDBDQUEwQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0dldFBlcm1pc3Npb25zIGFzIMm1ZCxVcGRhdGVQZXJtaXNzaW9ucyBhcyDJtWV9IGZyb20gJy4vbGliL2FjdGlvbnMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LmFjdGlvbnMnO1xuZXhwb3J0IHtQZXJtaXNzaW9uTWFuYWdlbWVudENvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LmNvbXBvbmVudCc7XG5leHBvcnQge1Blcm1pc3Npb25NYW5hZ2VtZW50IGFzIMm1Zn0gZnJvbSAnLi9saWIvbW9kZWxzL3Blcm1pc3Npb24tbWFuYWdlbWVudCc7XG5leHBvcnQge1Blcm1pc3Npb25NYW5hZ2VtZW50U2VydmljZSBhcyDJtWN9IGZyb20gJy4vbGliL3NlcnZpY2VzL3Blcm1pc3Npb24tbWFuYWdlbWVudC5zZXJ2aWNlJztcbmV4cG9ydCB7UGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZSBhcyDJtWJ9IGZyb20gJy4vbGliL3N0YXRlcy9wZXJtaXNzaW9uLW1hbmFnZW1lbnQuc3RhdGUnOyJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnBlcm1pc3Npb24tbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsiYWJwLW5nLnBlcm1pc3Npb24tbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEscUtBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLGlCQUFpQixJQUFJLEVBQUUsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQ3pHLE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUVyRyxPQUFPLEVBQUMsMkJBQTJCLElBQUksRUFBRSxFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDL0YsT0FBTyxFQUFDLHlCQUF5QixJQUFJLEVBQUUsRUFBQyxNQUFNLDBDQUEwQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0dldFBlcm1pc3Npb25zIGFzIMm1ZCxVcGRhdGVQZXJtaXNzaW9ucyBhcyDJtWV9IGZyb20gJy4vbGliL2FjdGlvbnMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LmFjdGlvbnMnO1xuZXhwb3J0IHtQZXJtaXNzaW9uTWFuYWdlbWVudENvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LmNvbXBvbmVudCc7XG5leHBvcnQge1Blcm1pc3Npb25NYW5hZ2VtZW50IGFzIMm1Zn0gZnJvbSAnLi9saWIvbW9kZWxzL3Blcm1pc3Npb24tbWFuYWdlbWVudCc7XG5leHBvcnQge1Blcm1pc3Npb25NYW5hZ2VtZW50U2VydmljZSBhcyDJtWN9IGZyb20gJy4vbGliL3NlcnZpY2VzL3Blcm1pc3Npb24tbWFuYWdlbWVudC5zZXJ2aWNlJztcbmV4cG9ydCB7UGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZSBhcyDJtWJ9IGZyb20gJy4vbGliL3N0YXRlcy9wZXJtaXNzaW9uLW1hbmFnZW1lbnQuc3RhdGUnOyJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/esm5/lib/components/permission-management.component.js b/npm/ng-packs/dist/permission-management/esm5/lib/components/permission-management.component.js index 729f703b4a..b7189a6d9e 100644 --- a/npm/ng-packs/dist/permission-management/esm5/lib/components/permission-management.component.js +++ b/npm/ng-packs/dist/permission-management/esm5/lib/components/permission-management.component.js @@ -392,7 +392,7 @@ var PermissionManagementComponent = /** @class */ (function () { PermissionManagementComponent.decorators = [ { type: Component, args: [{ selector: 'abp-permission-management', - template: "\n \n \n

{{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - {{ data.entityName }}

\n
\n \n
\n \n \n
\n\n
\n
\n
\n
    \n \n
  • \n {{ group?.displayName }}\n
  • \n
    \n
\n
\n
\n

{{ selectedGroup?.displayName }}

\n
\n
\n
\n \n \n
\n
\n \n \n \n {{ permission.displayName }}\n {{ provider.providerName }}: {{ provider.providerKey }}\n
\n \n
\n
\n \n
\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n
\n" + template: "\n \n \n

{{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - {{ data.entityName }}

\n
\n \n
\n \n \n
\n\n
\n
\n
\n
    \n
  • \n {{ group?.displayName }}\n
  • \n
\n
\n
\n

{{ selectedGroup?.displayName }}

\n
\n
\n
\n \n \n
\n
\n \n \n {{ permission.displayName }}\n {{ provider.providerName }}: {{ provider.providerKey }}\n
\n
\n
\n \n
\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n
\n" }] } ]; /** @nocollapse */ @@ -487,4 +487,4 @@ function getPermissions(groups) { */ function (acc, val) { return tslib_1.__spread(acc, val.permissions); }), []); } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi1tYW5hZ2VtZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUdWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBUSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRTdGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBSWxGO0lBb0VFLHVDQUFvQixLQUFZLEVBQVUsUUFBbUI7UUFBekMsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUFVLGFBQVEsR0FBUixRQUFRLENBQVc7UUF0QzdELGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQVU1QyxnQkFBVyxHQUFzQyxFQUFFLENBQUM7UUFFcEQsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFFL0IsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFFOUIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQixjQUFTOzs7OztRQUFnRCxVQUFDLENBQUMsRUFBRSxJQUFJLElBQUssT0FBQSxJQUFJLENBQUMsSUFBSSxFQUFULENBQVMsRUFBQztJQW9CaEIsQ0FBQztJQXZEakUsc0JBQ0ksa0RBQU87Ozs7UUFEWDtZQUVFLE9BQU8sSUFB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ImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBUcmFja0J5RnVuY3Rpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgcGx1Y2ssIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBHZXRQZXJtaXNzaW9ucywgVXBkYXRlUGVybWlzc2lvbnMgfSBmcm9tICcuLi9hY3Rpb25zL3Blcm1pc3Npb24tbWFuYWdlbWVudC5hY3Rpb25zJztcbmltcG9ydCB7IFBlcm1pc3Npb25NYW5hZ2VtZW50IH0gZnJvbSAnLi4vbW9kZWxzL3Blcm1pc3Npb24tbWFuYWdlbWVudCc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uTWFuYWdlbWVudFN0YXRlIH0gZnJvbSAnLi4vc3RhdGVzL3Blcm1pc3Npb24tbWFuYWdlbWVudC5zdGF0ZSc7XG5cbnR5cGUgUGVybWlzc2lvbldpdGhNYXJnaW4gPSBQZXJtaXNzaW9uTWFuYWdlbWVudC5QZXJtaXNzaW9uICYgeyBtYXJnaW46IG51bWJlciB9O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtcGVybWlzc2lvbi1tYW5hZ2VtZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Blcm1pc3Npb24tbWFuYWdlbWVudC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFBlcm1pc3Npb25NYW5hZ2VtZW50Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKVxuICBwcm92aWRlck5hbWU6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwcm92aWRlcktleTogc3RyaW5nO1xuXG4gIHByb3RlY3RlZCBfdmlzaWJsZTtcblxuICBASW5wdXQoKVxuICBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcbiAgfVxuXG4gIHNldCB2aXNpYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkR3JvdXApIHJldHVybjtcblxuICAgIHRoaXMuX3Zpc2libGUgPSB2YWx1ZTtcbiAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG5cbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkR3JvdXAgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIEBPdXRwdXQoKVxuICB2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIEBTZWxlY3QoUGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZS5nZXRQZXJtaXNzaW9uR3JvdXBzKVxuICBncm91cHMkOiBPYnNlcnZhYmxlPFBlcm1pc3Npb25NYW5hZ2VtZW50Lkdyb3VwW10+O1xuXG4gIEBTZWxlY3QoUGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZS5nZXRFbnRpdGl5RGlzcGxheU5hbWUpXG4gIGVudGl0eU5hbWUkOiBPYnNlcnZhYmxlPHN0cmluZz47XG5cbiAgc2VsZWN0ZWRHcm91cDogUGVybWlzc2lvbk1hbmFnZW1lbnQuR3JvdXA7XG5cbiAgcGVybWlzc2lvbnM6IFBlcm1pc3Npb25NYW5hZ2VtZW50LlBlcm1pc3Npb25bXSA9IFtdO1xuXG4gIHNlbGVjdFRoaXNUYWI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBzZWxlY3RBbGxUYWI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBtb2RhbEJ1c3k6IGJvb2xlYW4gPSBmYWxzZTtcblxuICB0cmFja0J5Rm46IFRyYWNrQnlGdW5jdGlvbjxQZXJtaXNzaW9uTWFuYWdlbWVudC5Hcm91cD4gPSAoXywgaXRlbSkgPT4gaXRlbS5uYW1lO1xuXG4gIGdldCBzZWxlY3RlZEdyb3VwUGVybWlzc2lvbnMkKCk6IE9ic2VydmFibGU8UGVybWlzc2lvbldpdGhNYXJnaW5bXT4ge1xuICAgIHJldHVybiB0aGlzLmdyb3VwcyQucGlwZShcbiAgICAgIG1hcChncm91cHMgPT5cbiAgICAgICAgdGhpcy5zZWxlY3RlZEdyb3VwID8gZ3JvdXBzLmZpbmQoZ3JvdXAgPT4gZ3JvdXAubmFtZSA9PT0gdGhpcy5zZWxlY3RlZEdyb3VwLm5hbWUpLnBlcm1pc3Npb25zIDogW10sXG4gICAgICApLFxuICAgICAgbWFwPFBlcm1pc3Npb25NYW5hZ2VtZW50LlBlcm1pc3Npb25bXSwgUGVybWlzc2lvbldpdGhNYXJnaW5bXT4ocGVybWlzc2lvbnMgPT5cbiAgICAgICAgcGVybWlzc2lvbnMubWFwKFxuICAgICAgICAgIHBlcm1pc3Npb24gPT5cbiAgICAgICAgICAgICgoe1xuICAgICAgICAgICAgICAuLi5wZXJtaXNzaW9uLFxuICAgICAgICAgICAgICBtYXJnaW46IGZpbmRNYXJnaW4ocGVybWlzc2lvbnMsIHBlcm1pc3Npb24pLFxuICAgICAgICAgICAgICBpc0dyYW50ZWQ6IHRoaXMucGVybWlzc2lvbnMuZmluZChwZXIgPT4gcGVyLm5hbWUgPT09IHBlcm1pc3Npb24ubmFtZSkuaXNHcmFudGVkLFxuICAgICAgICAgICAgfSBhcyBhbnkpIGFzIFBlcm1pc3Npb25XaXRoTWFyZ2luKSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlLCBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIGdldENoZWNrZWQobmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuICh0aGlzLnBlcm1pc3Npb25zLmZpbmQocGVyID0+IHBlci5uYW1lID09PSBuYW1lKSB8fCB7IGlzR3JhbnRlZDogZmFsc2UgfSkuaXNHcmFudGVkO1xuICB9XG5cbiAgaXNHcmFudGVkQnlSb2xlKGdyYW50ZWRQcm92aWRlcnM6IFBlcm1pc3Npb25NYW5hZ2VtZW50LkdyYW50ZWRQcm92aWRlcltdKTogYm9vbGVhbiB7XG4gICAgaWYgKGdyYW50ZWRQcm92aWRlcnMubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gZ3JhbnRlZFByb3ZpZGVycy5maW5kSW5kZXgocCA9PiBwLnByb3ZpZGVyTmFtZSA9PT0gJ1JvbGUnKSA+IC0xO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBvbkNsaWNrQ2hlY2tib3goY2xpY2tlZFBlcm1pc3Npb246IFBlcm1pc3Npb25NYW5hZ2VtZW50LlBlcm1pc3Npb24sIHZhbHVlKSB7XG4gICAgaWYgKGNsaWNrZWRQZXJtaXNzaW9uLmlzR3JhbnRlZCAmJiB0aGlzLmlzR3JhbnRlZEJ5Um9sZShjbGlja2VkUGVybWlzc2lvbi5ncmFudGVkUHJvdmlkZXJzKSkgcmV0dXJuO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnBlcm1pc3Npb25zID0gdGhpcy5wZXJtaXNzaW9ucy5tYXAocGVyID0+IHtcbiAgICAgICAgaWYgKGNsaWNrZWRQZXJtaXNzaW9uLm5hbWUgPT09IHBlci5uYW1lKSB7XG4gICAgICAgICAgcmV0dXJuIHsgLi4ucGVyLCBpc0dyYW50ZWQ6ICFwZXIuaXNHcmFudGVkIH07XG4gICAgICAgIH0gZWxzZSBpZiAoY2xpY2tlZFBlcm1pc3Npb24ubmFtZSA9PT0gcGVyLnBhcmVudE5hbWUgJiYgY2xpY2tlZFBlcm1pc3Npb24uaXNHcmFudGVkKSB7XG4gICAgICAgICAgcmV0dXJuIHsgLi4ucGVyLCBpc0dyYW50ZWQ6IGZhbHNlIH07XG4gICAgICAgIH0gZWxzZSBpZiAoY2xpY2tlZFBlcm1pc3Npb24ucGFyZW50TmFtZSA9PT0gcGVyLm5hbWUgJiYgIWNsaWNrZWRQZXJtaXNzaW9uLmlzR3JhbnRlZCkge1xuICAgICAgICAgIHJldHVybiB7IC4uLnBlciwgaXNHcmFudGVkOiB0cnVlIH07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcGVyO1xuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuc2V0VGFiQ2hlY2tib3hTdGF0ZSgpO1xuICAgICAgdGhpcy5zZXRHcmFudENoZWNrYm94U3RhdGUoKTtcbiAgICB9LCAwKTtcbiAgfVxuXG4gIHNldFRhYkNoZWNrYm94U3RhdGUoKSB7XG4gICAgdGhpcy5zZWxlY3RlZEdyb3VwUGVybWlzc2lvbnMkLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKHBlcm1pc3Npb25zID0+IHtcbiAgICAgIGNvbnN0IHNlbGVjdGVkUGVybWlzc2lvbnMgPSBwZXJtaXNzaW9ucy5maWx0ZXIocGVyID0+IHBlci5pc0dyYW50ZWQpO1xuICAgICAgY29uc3QgZWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNzZWxlY3QtYWxsLWluLXRoaXMtdGFicycpIGFzIGFueTtcblxuICAgICAgaWYgKHNlbGVjdGVkUGVybWlzc2lvbnMubGVuZ3RoID09PSBwZXJtaXNzaW9ucy5sZW5ndGgpIHtcbiAgICAgICAgZWxlbWVudC5pbmRldGVybWluYXRlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2VsZWN0VGhpc1RhYiA9IHRydWU7XG4gICAgICB9IGVsc2UgaWYgKHNlbGVjdGVkUGVybWlzc2lvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIGVsZW1lbnQuaW5kZXRlcm1pbmF0ZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNlbGVjdFRoaXNUYWIgPSBmYWxzZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVsZW1lbnQuaW5kZXRlcm1pbmF0ZSA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBzZXRHcmFudENoZWNrYm94U3RhdGUoKSB7XG4gICAgY29uc3Qgc2VsZWN0ZWRBbGxQZXJtaXNzaW9ucyA9IHRoaXMucGVybWlzc2lvbnMuZmlsdGVyKHBlciA9PiBwZXIuaXNHcmFudGVkKTtcbiAgICBjb25zdCBjaGVja2JveEVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjc2VsZWN0LWFsbC1pbi1hbGwtdGFicycpIGFzIGFueTtcblxuICAgIGlmIChzZWxlY3RlZEFsbFBlcm1pc3Npb25zLmxlbmd0aCA9PT0gdGhpcy5wZXJtaXNzaW9ucy5sZW5ndGgpIHtcbiAgICAgIGNoZWNrYm94RWxlbWVudC5pbmRldGVybWluYXRlID0gZmFsc2U7XG4gICAgICB0aGlzLnNlbGVjdEFsbFRhYiA9IHRydWU7XG4gICAgfSBlbHNlIGlmIChzZWxlY3RlZEFsbFBlcm1pc3Npb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgY2hlY2tib3hFbGVtZW50LmluZGV0ZXJtaW5hdGUgPSBmYWxzZTtcbiAgICAgIHRoaXMuc2VsZWN0QWxsVGFiID0gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNoZWNrYm94RWxlbWVudC5pbmRldGVybWluYXRlID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBvbkNsaWNrU2VsZWN0VGhpc1RhYigpIHtcbiAgICB0aGlzLnNlbGVjdGVkR3JvdXBQZXJtaXNzaW9ucyQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUocGVybWlzc2lvbnMgPT4ge1xuICAgICAgcGVybWlzc2lvbnMuZm9yRWFjaChwZXJtaXNzaW9uID0+IHtcbiAgICAgICAgaWYgKHBlcm1pc3Npb24uaXNHcmFudGVkICYmIHRoaXMuaXNHcmFudGVkQnlSb2xlKHBlcm1pc3Npb24uZ3JhbnRlZFByb3ZpZGVycykpIHJldHVybjtcblxuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMucGVybWlzc2lvbnMuZmluZEluZGV4KHBlciA9PiBwZXIubmFtZSA9PT0gcGVybWlzc2lvbi5uYW1lKTtcblxuICAgICAgICB0aGlzLnBlcm1pc3Npb25zID0gW1xuICAgICAgICAgIC4uLnRoaXMucGVybWlzc2lvbnMuc2xpY2UoMCwgaW5kZXgpLFxuICAgICAgICAgIHsgLi4udGhpcy5wZXJtaXNzaW9uc1tpbmRleF0sIGlzR3JhbnRlZDogIXRoaXMuc2VsZWN0VGhpc1RhYiB9LFxuICAgICAgICAgIC4uLnRoaXMucGVybWlzc2lvbnMuc2xpY2UoaW5kZXggKyAxKSxcbiAgICAgICAgXTtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgdGhpcy5zZXRHcmFudENoZWNrYm94U3RhdGUoKTtcbiAgfVxuXG4gIG9uQ2xpY2tTZWxlY3RBbGwoKSB7XG4gICAgdGhpcy5wZXJtaXNzaW9ucyA9IHRoaXMucGVybWlzc2lvbnMubWFwKHBlcm1pc3Npb24gPT4gKHsgLi4ucGVybWlzc2lvbiwgaXNHcmFudGVkOiAhdGhpcy5zZWxlY3RBbGxUYWIgfSkpO1xuXG4gICAgdGhpcy5zZWxlY3RUaGlzVGFiID0gIXRoaXMuc2VsZWN0QWxsVGFiO1xuICB9XG5cbiAgb25DaGFuZ2VHcm91cChncm91cDogUGVybWlzc2lvbk1hbmFnZW1lbnQuR3JvdXApIHtcbiAgICB0aGlzLnNlbGVjdGVkR3JvdXAgPSBncm91cDtcbiAgICB0aGlzLnNldFRhYkNoZWNrYm94U3RhdGUoKTtcbiAgfVxuXG4gIHN1Ym1pdCgpIHtcbiAgICB0aGlzLm1vZGFsQnVzeSA9IHRydWU7XG4gICAgY29uc3QgdW5jaGFuZ2VkUGVybWlzc2lvbnMgPSBnZXRQZXJtaXNzaW9ucyhcbiAgICAgIHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoUGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZS5nZXRQZXJtaXNzaW9uR3JvdXBzKSxcbiAgICApO1xuXG4gICAgY29uc3QgY2hhbmdlZFBlcm1pc3Npb25zOiBQZXJtaXNzaW9uTWFuYWdlbWVudC5NaW5pbXVtUGVybWlzc2lvbltdID0gdGhpcy5wZXJtaXNzaW9uc1xuICAgICAgLmZpbHRlcihwZXIgPT5cbiAgICAgICAgdW5jaGFuZ2VkUGVybWlzc2lvbnMuZmluZCh1bmNoYW5nZWQgPT4gdW5jaGFuZ2VkLm5hbWUgPT09IHBlci5uYW1lKS5pc0dyYW50ZWQgPT09IHBlci5pc0dyYW50ZWQgPyBmYWxzZSA6IHRydWUsXG4gICAgICApXG4gICAgICAubWFwKCh7IG5hbWUsIGlzR3JhbnRlZCB9KSA9PiAoeyBuYW1lLCBpc0dyYW50ZWQgfSkpO1xuXG4gICAgaWYgKGNoYW5nZWRQZXJtaXNzaW9ucy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuc3RvcmVcbiAgICAgICAgLmRpc3BhdGNoKFxuICAgICAgICAgIG5ldyBVcGRhdGVQZXJtaXNzaW9ucyh7XG4gICAgICAgICAgICBwcm92aWRlcktleTogdGhpcy5wcm92aWRlcktleSxcbiAgICAgICAgICAgIHByb3ZpZGVyTmFtZTogdGhpcy5wcm92aWRlck5hbWUsXG4gICAgICAgICAgICBwZXJtaXNzaW9uczogY2hhbmdlZFBlcm1pc3Npb25zLFxuICAgICAgICAgIH0pLFxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMubW9kYWxCdXN5ID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1vZGFsQnVzeSA9IGZhbHNlO1xuICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgb3Blbk1vZGFsKCkge1xuICAgIGlmICghdGhpcy5wcm92aWRlcktleSB8fCAhdGhpcy5wcm92aWRlck5hbWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignUHJvdmlkZXIgS2V5IGFuZCBQcm92aWRlciBOYW1lIGFyZSByZXF1aXJlZC4nKTtcbiAgICB9XG5cbiAgICB0aGlzLnN0b3JlXG4gICAgICAuZGlzcGF0Y2gobmV3IEdldFBlcm1pc3Npb25zKHsgcHJvdmlkZXJLZXk6IHRoaXMucHJvdmlkZXJLZXksIHByb3ZpZGVyTmFtZTogdGhpcy5wcm92aWRlck5hbWUgfSkpXG4gICAgICAucGlwZShwbHVjaygnUGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZScsICdwZXJtaXNzaW9uUmVzJykpXG4gICAgICAuc3Vic2NyaWJlKChwZXJtaXNzaW9uUmVzOiBQZXJtaXNzaW9uTWFuYWdlbWVudC5SZXNwb25zZSkgPT4ge1xuICAgICAgICB0aGlzLnNlbGVjdGVkR3JvdXAgPSBwZXJtaXNzaW9uUmVzLmdyb3Vwc1swXTtcbiAgICAgICAgdGhpcy5wZXJtaXNzaW9ucyA9IGdldFBlcm1pc3Npb25zKHBlcm1pc3Npb25SZXMuZ3JvdXBzKTtcblxuICAgICAgICB0aGlzLnZpc2libGUgPSB0cnVlO1xuICAgICAgfSk7XG4gIH1cblxuICBpbml0TW9kYWwoKSB7XG4gICAgdGhpcy5zZXRUYWJDaGVja2JveFN0YXRlKCk7XG4gICAgdGhpcy5zZXRHcmFudENoZWNrYm94U3RhdGUoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKHsgdmlzaWJsZSB9OiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKCF2aXNpYmxlKSByZXR1cm47XG5cbiAgICBpZiAodmlzaWJsZS5jdXJyZW50VmFsdWUpIHtcbiAgICAgIHRoaXMub3Blbk1vZGFsKCk7XG4gICAgfSBlbHNlIGlmICh2aXNpYmxlLmN1cnJlbnRWYWx1ZSA9PT0gZmFsc2UgJiYgdGhpcy52aXNpYmxlKSB7XG4gICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gZmluZE1hcmdpbihwZXJtaXNzaW9uczogUGVybWlzc2lvbk1hbmFnZW1lbnQuUGVybWlzc2lvbltdLCBwZXJtaXNzaW9uOiBQZXJtaXNzaW9uTWFuYWdlbWVudC5QZXJtaXNzaW9uKSB7XG4gIGNvbnN0IHBhcmVudFBlcm1pc3Npb24gPSBwZXJtaXNzaW9ucy5maW5kKHBlciA9PiBwZXIubmFtZSA9PT0gcGVybWlzc2lvbi5wYXJlbnROYW1lKTtcblxuICBpZiAocGFyZW50UGVybWlzc2lvbiAmJiBwYXJlbnRQZXJtaXNzaW9uLnBhcmVudE5hbWUpIHtcbiAgICBsZXQgbWFyZ2luID0gMjA7XG4gICAgcmV0dXJuIChtYXJnaW4gKz0gZmluZE1hcmdpbihwZXJtaXNzaW9ucywgcGFyZW50UGVybWlzc2lvbikpO1xuICB9XG5cbiAgcmV0dXJuIHBhcmVudFBlcm1pc3Npb24gPyAyMCA6IDA7XG59XG5cbmZ1bmN0aW9uIGdldFBlcm1pc3Npb25zKGdyb3VwczogUGVybWlzc2lvbk1hbmFnZW1lbnQuR3JvdXBbXSk6IFBlcm1pc3Npb25NYW5hZ2VtZW50LlBlcm1pc3Npb25bXSB7XG4gIHJldHVybiBncm91cHMucmVkdWNlKChhY2MsIHZhbCkgPT4gWy4uLmFjYywgLi4udmFsLnBlcm1pc3Npb25zXSwgW10pO1xufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi1tYW5hZ2VtZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvcGVybWlzc2lvbi1tYW5hZ2VtZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUdWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBUSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRTdGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBSWxGO0lBb0VFLHVDQUFvQixLQUFZLEVBQVUsUUFBbUI7UUFBekMsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUFVLGFBQVEsR0FBUixRQUFRLENBQVc7UUF0QzdELGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQVU1QyxnQkFBVyxHQUFzQyxFQUFFLENBQUM7UUFFcEQsa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFFL0IsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFFOUIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQixjQUFTOzs7OztRQUFnRCxVQUFDLENBQUMsRUFBRSxJQUFJLElBQUssT0FBQSxJQUFJLENBQUMsSUFBSSxFQUFULENBQVMsRUFBQztJQW9CaEIsQ0FBQztJQXZEakUsc0JBQ0ksa0RBQU87Ozs7UUFEWDtZQUVFLE9BQU8sSUFB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ImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBUcmFja0J5RnVuY3Rpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgcGx1Y2ssIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBHZXRQZXJtaXNzaW9ucywgVXBkYXRlUGVybWlzc2lvbnMgfSBmcm9tICcuLi9hY3Rpb25zL3Blcm1pc3Npb24tbWFuYWdlbWVudC5hY3Rpb25zJztcbmltcG9ydCB7IFBlcm1pc3Npb25NYW5hZ2VtZW50IH0gZnJvbSAnLi4vbW9kZWxzL3Blcm1pc3Npb24tbWFuYWdlbWVudCc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uTWFuYWdlbWVudFN0YXRlIH0gZnJvbSAnLi4vc3RhdGVzL3Blcm1pc3Npb24tbWFuYWdlbWVudC5zdGF0ZSc7XG5cbnR5cGUgUGVybWlzc2lvbldpdGhNYXJnaW4gPSBQZXJtaXNzaW9uTWFuYWdlbWVudC5QZXJtaXNzaW9uICYgeyBtYXJnaW46IG51bWJlciB9O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtcGVybWlzc2lvbi1tYW5hZ2VtZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Blcm1pc3Npb24tbWFuYWdlbWVudC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFBlcm1pc3Npb25NYW5hZ2VtZW50Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKVxuICBwcm92aWRlck5hbWU6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwcm92aWRlcktleTogc3RyaW5nO1xuXG4gIHByb3RlY3RlZCBfdmlzaWJsZTtcblxuICBASW5wdXQoKVxuICBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcbiAgfVxuXG4gIHNldCB2aXNpYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkR3JvdXApIHJldHVybjtcblxuICAgIHRoaXMuX3Zpc2libGUgPSB2YWx1ZTtcbiAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG5cbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkR3JvdXAgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIEBPdXRwdXQoKVxuICB2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIEBTZWxlY3QoUGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZS5nZXRQZXJtaXNzaW9uR3JvdXBzKVxuICBncm91cHMkOiBPYnNlcnZhYmxlPFBlcm1pc3Npb25NYW5hZ2VtZW50Lkdyb3VwW10+O1xuXG4gIEBTZWxlY3QoUGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZS5nZXRFbnRpdGl5RGlzcGxheU5hbWUpXG4gIGVudGl0eU5hbWUkOiBPYnNlcnZhYmxlPHN0cmluZz47XG5cbiAgc2VsZWN0ZWRHcm91cDogUGVybWlzc2lvbk1hbmFnZW1lbnQuR3JvdXA7XG5cbiAgcGVybWlzc2lvbnM6IFBlcm1pc3Npb25NYW5hZ2VtZW50LlBlcm1pc3Npb25bXSA9IFtdO1xuXG4gIHNlbGVjdFRoaXNUYWI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBzZWxlY3RBbGxUYWI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBtb2RhbEJ1c3k6IGJvb2xlYW4gPSBmYWxzZTtcblxuICB0cmFja0J5Rm46IFRyYWNrQnlGdW5jdGlvbjxQZXJtaXNzaW9uTWFuYWdlbWVudC5Hcm91cD4gPSAoXywgaXRlbSkgPT4gaXRlbS5uYW1lO1xuXG4gIGdldCBzZWxlY3RlZEdyb3VwUGVybWlzc2lvbnMkKCk6IE9ic2VydmFibGU8UGVybWlzc2lvbldpdGhNYXJnaW5bXT4ge1xuICAgIHJldHVybiB0aGlzLmdyb3VwcyQucGlwZShcbiAgICAgIG1hcChncm91cHMgPT5cbiAgICAgICAgdGhpcy5zZWxlY3RlZEdyb3VwID8gZ3JvdXBzLmZpbmQoZ3JvdXAgPT4gZ3JvdXAubmFtZSA9PT0gdGhpcy5zZWxlY3RlZEdyb3VwLm5hbWUpLnBlcm1pc3Npb25zIDogW10sXG4gICAgICApLFxuICAgICAgbWFwPFBlcm1pc3Npb25NYW5hZ2VtZW50LlBlcm1pc3Npb25bXSwgUGVybWlzc2lvbldpdGhNYXJnaW5bXT4ocGVybWlzc2lvbnMgPT5cbiAgICAgICAgcGVybWlzc2lvbnMubWFwKFxuICAgICAgICAgIHBlcm1pc3Npb24gPT5cbiAgICAgICAgICAgICgoe1xuICAgICAgICAgICAgICAuLi5wZXJtaXNzaW9uLFxuICAgICAgICAgICAgICBtYXJnaW46IGZpbmRNYXJnaW4ocGVybWlzc2lvbnMsIHBlcm1pc3Npb24pLFxuICAgICAgICAgICAgICBpc0dyYW50ZWQ6IHRoaXMucGVybWlzc2lvbnMuZmluZChwZXIgPT4gcGVyLm5hbWUgPT09IHBlcm1pc3Npb24ubmFtZSkuaXNHcmFudGVkLFxuICAgICAgICAgICAgfSBhcyBhbnkpIGFzIFBlcm1pc3Npb25XaXRoTWFyZ2luKSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlLCBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIGdldENoZWNrZWQobmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuICh0aGlzLnBlcm1pc3Npb25zLmZpbmQocGVyID0+IHBlci5uYW1lID09PSBuYW1lKSB8fCB7IGlzR3JhbnRlZDogZmFsc2UgfSkuaXNHcmFudGVkO1xuICB9XG5cbiAgaXNHcmFudGVkQnlSb2xlKGdyYW50ZWRQcm92aWRlcnM6IFBlcm1pc3Npb25NYW5hZ2VtZW50LkdyYW50ZWRQcm92aWRlcltdKTogYm9vbGVhbiB7XG4gICAgaWYgKGdyYW50ZWRQcm92aWRlcnMubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gZ3JhbnRlZFByb3ZpZGVycy5maW5kSW5kZXgocCA9PiBwLnByb3ZpZGVyTmFtZSA9PT0gJ1JvbGUnKSA+IC0xO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBvbkNsaWNrQ2hlY2tib3goY2xpY2tlZFBlcm1pc3Npb246IFBlcm1pc3Npb25NYW5hZ2VtZW50LlBlcm1pc3Npb24sIHZhbHVlKSB7XG4gICAgaWYgKGNsaWNrZWRQZXJtaXNzaW9uLmlzR3JhbnRlZCAmJiB0aGlzLmlzR3JhbnRlZEJ5Um9sZShjbGlja2VkUGVybWlzc2lvbi5ncmFudGVkUHJvdmlkZXJzKSkgcmV0dXJuO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnBlcm1pc3Npb25zID0gdGhpcy5wZXJtaXNzaW9ucy5tYXAocGVyID0+IHtcbiAgICAgICAgaWYgKGNsaWNrZWRQZXJtaXNzaW9uLm5hbWUgPT09IHBlci5uYW1lKSB7XG4gICAgICAgICAgcmV0dXJuIHsgLi4ucGVyLCBpc0dyYW50ZWQ6ICFwZXIuaXNHcmFudGVkIH07XG4gICAgICAgIH0gZWxzZSBpZiAoY2xpY2tlZFBlcm1pc3Npb24ubmFtZSA9PT0gcGVyLnBhcmVudE5hbWUgJiYgY2xpY2tlZFBlcm1pc3Npb24uaXNHcmFudGVkKSB7XG4gICAgICAgICAgcmV0dXJuIHsgLi4ucGVyLCBpc0dyYW50ZWQ6IGZhbHNlIH07XG4gICAgICAgIH0gZWxzZSBpZiAoY2xpY2tlZFBlcm1pc3Npb24ucGFyZW50TmFtZSA9PT0gcGVyLm5hbWUgJiYgIWNsaWNrZWRQZXJtaXNzaW9uLmlzR3JhbnRlZCkge1xuICAgICAgICAgIHJldHVybiB7IC4uLnBlciwgaXNHcmFudGVkOiB0cnVlIH07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcGVyO1xuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuc2V0VGFiQ2hlY2tib3hTdGF0ZSgpO1xuICAgICAgdGhpcy5zZXRHcmFudENoZWNrYm94U3RhdGUoKTtcbiAgICB9LCAwKTtcbiAgfVxuXG4gIHNldFRhYkNoZWNrYm94U3RhdGUoKSB7XG4gICAgdGhpcy5zZWxlY3RlZEdyb3VwUGVybWlzc2lvbnMkLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKHBlcm1pc3Npb25zID0+IHtcbiAgICAgIGNvbnN0IHNlbGVjdGVkUGVybWlzc2lvbnMgPSBwZXJtaXNzaW9ucy5maWx0ZXIocGVyID0+IHBlci5pc0dyYW50ZWQpO1xuICAgICAgY29uc3QgZWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNzZWxlY3QtYWxsLWluLXRoaXMtdGFicycpIGFzIGFueTtcblxuICAgICAgaWYgKHNlbGVjdGVkUGVybWlzc2lvbnMubGVuZ3RoID09PSBwZXJtaXNzaW9ucy5sZW5ndGgpIHtcbiAgICAgICAgZWxlbWVudC5pbmRldGVybWluYXRlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2VsZWN0VGhpc1RhYiA9IHRydWU7XG4gICAgICB9IGVsc2UgaWYgKHNlbGVjdGVkUGVybWlzc2lvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIGVsZW1lbnQuaW5kZXRlcm1pbmF0ZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLnNlbGVjdFRoaXNUYWIgPSBmYWxzZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVsZW1lbnQuaW5kZXRlcm1pbmF0ZSA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBzZXRHcmFudENoZWNrYm94U3RhdGUoKSB7XG4gICAgY29uc3Qgc2VsZWN0ZWRBbGxQZXJtaXNzaW9ucyA9IHRoaXMucGVybWlzc2lvbnMuZmlsdGVyKHBlciA9PiBwZXIuaXNHcmFudGVkKTtcbiAgICBjb25zdCBjaGVja2JveEVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjc2VsZWN0LWFsbC1pbi1hbGwtdGFicycpIGFzIGFueTtcblxuICAgIGlmIChzZWxlY3RlZEFsbFBlcm1pc3Npb25zLmxlbmd0aCA9PT0gdGhpcy5wZXJtaXNzaW9ucy5sZW5ndGgpIHtcbiAgICAgIGNoZWNrYm94RWxlbWVudC5pbmRldGVybWluYXRlID0gZmFsc2U7XG4gICAgICB0aGlzLnNlbGVjdEFsbFRhYiA9IHRydWU7XG4gICAgfSBlbHNlIGlmIChzZWxlY3RlZEFsbFBlcm1pc3Npb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgY2hlY2tib3hFbGVtZW50LmluZGV0ZXJtaW5hdGUgPSBmYWxzZTtcbiAgICAgIHRoaXMuc2VsZWN0QWxsVGFiID0gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNoZWNrYm94RWxlbWVudC5pbmRldGVybWluYXRlID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBvbkNsaWNrU2VsZWN0VGhpc1RhYigpIHtcbiAgICB0aGlzLnNlbGVjdGVkR3JvdXBQZXJtaXNzaW9ucyQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUocGVybWlzc2lvbnMgPT4ge1xuICAgICAgcGVybWlzc2lvbnMuZm9yRWFjaChwZXJtaXNzaW9uID0+IHtcbiAgICAgICAgaWYgKHBlcm1pc3Npb24uaXNHcmFudGVkICYmIHRoaXMuaXNHcmFudGVkQnlSb2xlKHBlcm1pc3Npb24uZ3JhbnRlZFByb3ZpZGVycykpIHJldHVybjtcblxuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMucGVybWlzc2lvbnMuZmluZEluZGV4KHBlciA9PiBwZXIubmFtZSA9PT0gcGVybWlzc2lvbi5uYW1lKTtcblxuICAgICAgICB0aGlzLnBlcm1pc3Npb25zID0gW1xuICAgICAgICAgIC4uLnRoaXMucGVybWlzc2lvbnMuc2xpY2UoMCwgaW5kZXgpLFxuICAgICAgICAgIHsgLi4udGhpcy5wZXJtaXNzaW9uc1tpbmRleF0sIGlzR3JhbnRlZDogIXRoaXMuc2VsZWN0VGhpc1RhYiB9LFxuICAgICAgICAgIC4uLnRoaXMucGVybWlzc2lvbnMuc2xpY2UoaW5kZXggKyAxKSxcbiAgICAgICAgXTtcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgdGhpcy5zZXRHcmFudENoZWNrYm94U3RhdGUoKTtcbiAgfVxuXG4gIG9uQ2xpY2tTZWxlY3RBbGwoKSB7XG4gICAgdGhpcy5wZXJtaXNzaW9ucyA9IHRoaXMucGVybWlzc2lvbnMubWFwKHBlcm1pc3Npb24gPT4gKHsgLi4ucGVybWlzc2lvbiwgaXNHcmFudGVkOiAhdGhpcy5zZWxlY3RBbGxUYWIgfSkpO1xuXG4gICAgdGhpcy5zZWxlY3RUaGlzVGFiID0gIXRoaXMuc2VsZWN0QWxsVGFiO1xuICB9XG5cbiAgb25DaGFuZ2VHcm91cChncm91cDogUGVybWlzc2lvbk1hbmFnZW1lbnQuR3JvdXApIHtcbiAgICB0aGlzLnNlbGVjdGVkR3JvdXAgPSBncm91cDtcbiAgICB0aGlzLnNldFRhYkNoZWNrYm94U3RhdGUoKTtcbiAgfVxuXG4gIHN1Ym1pdCgpIHtcbiAgICB0aGlzLm1vZGFsQnVzeSA9IHRydWU7XG4gICAgY29uc3QgdW5jaGFuZ2VkUGVybWlzc2lvbnMgPSBnZXRQZXJtaXNzaW9ucyhcbiAgICAgIHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoUGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZS5nZXRQZXJtaXNzaW9uR3JvdXBzKSxcbiAgICApO1xuXG4gICAgY29uc3QgY2hhbmdlZFBlcm1pc3Npb25zOiBQZXJtaXNzaW9uTWFuYWdlbWVudC5NaW5pbXVtUGVybWlzc2lvbltdID0gdGhpcy5wZXJtaXNzaW9uc1xuICAgICAgLmZpbHRlcihwZXIgPT5cbiAgICAgICAgdW5jaGFuZ2VkUGVybWlzc2lvbnMuZmluZCh1bmNoYW5nZWQgPT4gdW5jaGFuZ2VkLm5hbWUgPT09IHBlci5uYW1lKS5pc0dyYW50ZWQgPT09IHBlci5pc0dyYW50ZWQgPyBmYWxzZSA6IHRydWUsXG4gICAgICApXG4gICAgICAubWFwKCh7IG5hbWUsIGlzR3JhbnRlZCB9KSA9PiAoeyBuYW1lLCBpc0dyYW50ZWQgfSkpO1xuXG4gICAgaWYgKGNoYW5nZWRQZXJtaXNzaW9ucy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuc3RvcmVcbiAgICAgICAgLmRpc3BhdGNoKFxuICAgICAgICAgIG5ldyBVcGRhdGVQZXJtaXNzaW9ucyh7XG4gICAgICAgICAgICBwcm92aWRlcktleTogdGhpcy5wcm92aWRlcktleSxcbiAgICAgICAgICAgIHByb3ZpZGVyTmFtZTogdGhpcy5wcm92aWRlck5hbWUsXG4gICAgICAgICAgICBwZXJtaXNzaW9uczogY2hhbmdlZFBlcm1pc3Npb25zLFxuICAgICAgICAgIH0pLFxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMubW9kYWxCdXN5ID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1vZGFsQnVzeSA9IGZhbHNlO1xuICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgb3Blbk1vZGFsKCkge1xuICAgIGlmICghdGhpcy5wcm92aWRlcktleSB8fCAhdGhpcy5wcm92aWRlck5hbWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignUHJvdmlkZXIgS2V5IGFuZCBQcm92aWRlciBOYW1lIGFyZSByZXF1aXJlZC4nKTtcbiAgICB9XG5cbiAgICB0aGlzLnN0b3JlXG4gICAgICAuZGlzcGF0Y2gobmV3IEdldFBlcm1pc3Npb25zKHsgcHJvdmlkZXJLZXk6IHRoaXMucHJvdmlkZXJLZXksIHByb3ZpZGVyTmFtZTogdGhpcy5wcm92aWRlck5hbWUgfSkpXG4gICAgICAucGlwZShwbHVjaygnUGVybWlzc2lvbk1hbmFnZW1lbnRTdGF0ZScsICdwZXJtaXNzaW9uUmVzJykpXG4gICAgICAuc3Vic2NyaWJlKChwZXJtaXNzaW9uUmVzOiBQZXJtaXNzaW9uTWFuYWdlbWVudC5SZXNwb25zZSkgPT4ge1xuICAgICAgICB0aGlzLnNlbGVjdGVkR3JvdXAgPSBwZXJtaXNzaW9uUmVzLmdyb3Vwc1swXTtcbiAgICAgICAgdGhpcy5wZXJtaXNzaW9ucyA9IGdldFBlcm1pc3Npb25zKHBlcm1pc3Npb25SZXMuZ3JvdXBzKTtcblxuICAgICAgICB0aGlzLnZpc2libGUgPSB0cnVlO1xuICAgICAgfSk7XG4gIH1cblxuICBpbml0TW9kYWwoKSB7XG4gICAgdGhpcy5zZXRUYWJDaGVja2JveFN0YXRlKCk7XG4gICAgdGhpcy5zZXRHcmFudENoZWNrYm94U3RhdGUoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKHsgdmlzaWJsZSB9OiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKCF2aXNpYmxlKSByZXR1cm47XG5cbiAgICBpZiAodmlzaWJsZS5jdXJyZW50VmFsdWUpIHtcbiAgICAgIHRoaXMub3Blbk1vZGFsKCk7XG4gICAgfSBlbHNlIGlmICh2aXNpYmxlLmN1cnJlbnRWYWx1ZSA9PT0gZmFsc2UgJiYgdGhpcy52aXNpYmxlKSB7XG4gICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gZmluZE1hcmdpbihwZXJtaXNzaW9uczogUGVybWlzc2lvbk1hbmFnZW1lbnQuUGVybWlzc2lvbltdLCBwZXJtaXNzaW9uOiBQZXJtaXNzaW9uTWFuYWdlbWVudC5QZXJtaXNzaW9uKSB7XG4gIGNvbnN0IHBhcmVudFBlcm1pc3Npb24gPSBwZXJtaXNzaW9ucy5maW5kKHBlciA9PiBwZXIubmFtZSA9PT0gcGVybWlzc2lvbi5wYXJlbnROYW1lKTtcblxuICBpZiAocGFyZW50UGVybWlzc2lvbiAmJiBwYXJlbnRQZXJtaXNzaW9uLnBhcmVudE5hbWUpIHtcbiAgICBsZXQgbWFyZ2luID0gMjA7XG4gICAgcmV0dXJuIChtYXJnaW4gKz0gZmluZE1hcmdpbihwZXJtaXNzaW9ucywgcGFyZW50UGVybWlzc2lvbikpO1xuICB9XG5cbiAgcmV0dXJuIHBhcmVudFBlcm1pc3Npb24gPyAyMCA6IDA7XG59XG5cbmZ1bmN0aW9uIGdldFBlcm1pc3Npb25zKGdyb3VwczogUGVybWlzc2lvbk1hbmFnZW1lbnQuR3JvdXBbXSk6IFBlcm1pc3Npb25NYW5hZ2VtZW50LlBlcm1pc3Npb25bXSB7XG4gIHJldHVybiBncm91cHMucmVkdWNlKChhY2MsIHZhbCkgPT4gWy4uLmFjYywgLi4udmFsLnBlcm1pc3Npb25zXSwgW10pO1xufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/esm5/lib/permission-management.module.js b/npm/ng-packs/dist/permission-management/esm5/lib/permission-management.module.js index 755e939953..c421f1502f 100644 --- a/npm/ng-packs/dist/permission-management/esm5/lib/permission-management.module.js +++ b/npm/ng-packs/dist/permission-management/esm5/lib/permission-management.module.js @@ -8,18 +8,17 @@ import { NgModule } from '@angular/core'; import { NgxsModule } from '@ngxs/store'; import { PermissionManagementComponent } from './components/permission-management.component'; import { PermissionManagementState } from './states/permission-management.state'; -import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar'; var PermissionManagementModule = /** @class */ (function () { function PermissionManagementModule() { } PermissionManagementModule.decorators = [ { type: NgModule, args: [{ declarations: [PermissionManagementComponent], - imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState]), PerfectScrollbarModule], + imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState])], exports: [PermissionManagementComponent], },] } ]; return PermissionManagementModule; }()); export { PermissionManagementModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi1tYW5hZ2VtZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL3Blcm1pc3Npb24tbWFuYWdlbWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzdGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRS9EO0lBQUE7SUFLeUMsQ0FBQzs7Z0JBTHpDLFFBQVEsU0FBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztvQkFDN0MsT0FBTyxFQUFFLENBQUMsVUFBVSxFQUFFLGlCQUFpQixFQUFFLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLEVBQUUsc0JBQXNCLENBQUM7b0JBQ3BILE9BQU8sRUFBRSxDQUFDLDZCQUE2QixDQUFDO2lCQUN6Qzs7SUFDd0MsaUNBQUM7Q0FBQSxBQUwxQyxJQUswQztTQUE3QiwwQkFBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JlTW9kdWxlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IFRoZW1lU2hhcmVkTW9kdWxlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5neHNNb2R1bGUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uTWFuYWdlbWVudENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wZXJtaXNzaW9uLW1hbmFnZW1lbnQuY29tcG9uZW50JztcbmltcG9ydCB7IFBlcm1pc3Npb25NYW5hZ2VtZW50U3RhdGUgfSBmcm9tICcuL3N0YXRlcy9wZXJtaXNzaW9uLW1hbmFnZW1lbnQuc3RhdGUnO1xuaW1wb3J0IHsgUGVyZmVjdFNjcm9sbGJhck1vZHVsZSB9IGZyb20gJ25neC1wZXJmZWN0LXNjcm9sbGJhcic7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1Blcm1pc3Npb25NYW5hZ2VtZW50Q29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvcmVNb2R1bGUsIFRoZW1lU2hhcmVkTW9kdWxlLCBOZ3hzTW9kdWxlLmZvckZlYXR1cmUoW1Blcm1pc3Npb25NYW5hZ2VtZW50U3RhdGVdKSwgUGVyZmVjdFNjcm9sbGJhck1vZHVsZV0sXG4gIGV4cG9ydHM6IFtQZXJtaXNzaW9uTWFuYWdlbWVudENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFBlcm1pc3Npb25NYW5hZ2VtZW50TW9kdWxlIHt9XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi1tYW5hZ2VtZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL3Blcm1pc3Npb24tbWFuYWdlbWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzdGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRWpGO0lBQUE7SUFLeUMsQ0FBQzs7Z0JBTHpDLFFBQVEsU0FBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyw2QkFBNkIsQ0FBQztvQkFDN0MsT0FBTyxFQUFFLENBQUMsVUFBVSxFQUFFLGlCQUFpQixFQUFFLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQUM7b0JBQzVGLE9BQU8sRUFBRSxDQUFDLDZCQUE2QixDQUFDO2lCQUN6Qzs7SUFDd0MsaUNBQUM7Q0FBQSxBQUwxQyxJQUswQztTQUE3QiwwQkFBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JlTW9kdWxlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IFRoZW1lU2hhcmVkTW9kdWxlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5neHNNb2R1bGUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uTWFuYWdlbWVudENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wZXJtaXNzaW9uLW1hbmFnZW1lbnQuY29tcG9uZW50JztcbmltcG9ydCB7IFBlcm1pc3Npb25NYW5hZ2VtZW50U3RhdGUgfSBmcm9tICcuL3N0YXRlcy9wZXJtaXNzaW9uLW1hbmFnZW1lbnQuc3RhdGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtQZXJtaXNzaW9uTWFuYWdlbWVudENvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb3JlTW9kdWxlLCBUaGVtZVNoYXJlZE1vZHVsZSwgTmd4c01vZHVsZS5mb3JGZWF0dXJlKFtQZXJtaXNzaW9uTWFuYWdlbWVudFN0YXRlXSldLFxuICBleHBvcnRzOiBbUGVybWlzc2lvbk1hbmFnZW1lbnRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBQZXJtaXNzaW9uTWFuYWdlbWVudE1vZHVsZSB7fVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/esm5/lib/root-permission-management.module.js b/npm/ng-packs/dist/permission-management/esm5/lib/root-permission-management.module.js deleted file mode 100644 index 4faa733001..0000000000 --- a/npm/ng-packs/dist/permission-management/esm5/lib/root-permission-management.module.js +++ /dev/null @@ -1,27 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { NgModule } from '@angular/core'; -var RootPermissionManagementModule = /** @class */ (function () { - function RootPermissionManagementModule() { - } - /** - * @return {?} - */ - RootPermissionManagementModule.forRoot = /** - * @return {?} - */ - function () { - return { - ngModule: RootPermissionManagementModule, - providers: [], - }; - }; - RootPermissionManagementModule.decorators = [ - { type: NgModule, args: [{},] } - ]; - return RootPermissionManagementModule; -}()); -export { RootPermissionManagementModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1wZXJtaXNzaW9uLW1hbmFnZW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5wZXJtaXNzaW9uLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvcm9vdC1wZXJtaXNzaW9uLW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RDtJQUFBO0lBUUEsQ0FBQzs7OztJQU5RLHNDQUFPOzs7SUFBZDtRQUNFLE9BQU87WUFDTCxRQUFRLEVBQUUsOEJBQThCO1lBQ3hDLFNBQVMsRUFBRSxFQUFFO1NBQ2QsQ0FBQztJQUNKLENBQUM7O2dCQVBGLFFBQVEsU0FBQyxFQUFFOztJQVFaLHFDQUFDO0NBQUEsQUFSRCxJQVFDO1NBUFksOEJBQThCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQE5nTW9kdWxlKHt9KVxuZXhwb3J0IGNsYXNzIFJvb3RQZXJtaXNzaW9uTWFuYWdlbWVudE1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnMge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogUm9vdFBlcm1pc3Npb25NYW5hZ2VtZW50TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXSxcbiAgICB9O1xuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/esm5/public-api.js b/npm/ng-packs/dist/permission-management/esm5/public-api.js index 35502dc49e..9d041be370 100644 --- a/npm/ng-packs/dist/permission-management/esm5/public-api.js +++ b/npm/ng-packs/dist/permission-management/esm5/public-api.js @@ -5,11 +5,10 @@ /* * Public API Surface of permission-management */ -export { RootPermissionManagementModule } from './lib/root-permission-management.module'; export { PermissionManagementModule } from './lib/permission-management.module'; export { GetPermissions, UpdatePermissions } from './lib/actions'; export { PermissionManagementComponent } from './lib/components'; export {} from './lib/models'; export { PermissionManagementService } from './lib/services'; export { PermissionManagementState } from './lib/states'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsK0NBQWMseUNBQXlDLENBQUM7QUFDeEQsMkNBQWMsb0NBQW9DLENBQUM7QUFDbkQsa0RBQWMsZUFBZSxDQUFDO0FBQzlCLDhDQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGVBQWMsY0FBYyxDQUFDO0FBQzdCLDRDQUFjLGdCQUFnQixDQUFDO0FBQy9CLDBDQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgcGVybWlzc2lvbi1tYW5hZ2VtZW50XG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvcm9vdC1wZXJtaXNzaW9uLW1hbmFnZW1lbnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Blcm1pc3Npb24tbWFuYWdlbWVudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYWN0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zdGF0ZXMnO1xuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcucGVybWlzc2lvbi1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsMkNBQWMsb0NBQW9DLENBQUM7QUFDbkQsa0RBQWMsZUFBZSxDQUFDO0FBQzlCLDhDQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGVBQWMsY0FBYyxDQUFDO0FBQzdCLDRDQUFjLGdCQUFnQixDQUFDO0FBQy9CLDBDQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgcGVybWlzc2lvbi1tYW5hZ2VtZW50XG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGVybWlzc2lvbi1tYW5hZ2VtZW50Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXRlcyc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/fesm2015/abp-ng.permission-management.js b/npm/ng-packs/dist/permission-management/fesm2015/abp-ng.permission-management.js index a43dfcc507..570777bfc5 100644 --- a/npm/ng-packs/dist/permission-management/fesm2015/abp-ng.permission-management.js +++ b/npm/ng-packs/dist/permission-management/fesm2015/abp-ng.permission-management.js @@ -1,30 +1,10 @@ -import { NgModule, Injectable, ɵɵdefineInjectable, ɵɵinject, EventEmitter, Component, Renderer2, Input, Output } from '@angular/core'; import { RestService, CoreModule } from '@abp/ng.core'; import { ThemeSharedModule } from '@abp/ng.theme.shared'; +import { Injectable, ɵɵdefineInjectable, ɵɵinject, EventEmitter, Component, Renderer2, Input, Output, NgModule } from '@angular/core'; import { Action, Selector, State, Store, Select, NgxsModule } from '@ngxs/store'; import { __decorate, __metadata } from 'tslib'; import { Observable } from 'rxjs'; import { tap, map, take, pluck } from 'rxjs/operators'; -import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar'; - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class RootPermissionManagementModule { - /** - * @return {?} - */ - static forRoot() { - return { - ngModule: RootPermissionManagementModule, - providers: [], - }; - } -} -RootPermissionManagementModule.decorators = [ - { type: NgModule, args: [{},] } -]; /** * @fileoverview added by tsickle @@ -527,7 +507,7 @@ class PermissionManagementComponent { PermissionManagementComponent.decorators = [ { type: Component, args: [{ selector: 'abp-permission-management', - template: "\n \n \n

{{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - {{ data.entityName }}

\n
\n \n
\n \n \n
\n\n
\n
\n
\n
    \n \n
  • \n {{ group?.displayName }}\n
  • \n
    \n
\n
\n
\n

{{ selectedGroup?.displayName }}

\n
\n
\n
\n \n \n
\n
\n \n \n \n {{ permission.displayName }}\n {{ provider.providerName }}: {{ provider.providerKey }}\n
\n \n
\n
\n \n
\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n
\n" + template: "\n \n \n

{{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - {{ data.entityName }}

\n
\n \n
\n \n \n
\n\n
\n
\n
\n
    \n
  • \n {{ group?.displayName }}\n
  • \n
\n
\n
\n

{{ selectedGroup?.displayName }}

\n
\n
\n
\n \n \n
\n
\n \n \n {{ permission.displayName }}\n {{ provider.providerName }}: {{ provider.providerKey }}\n
\n
\n
\n \n
\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n
\n" }] } ]; /** @nocollapse */ @@ -629,7 +609,7 @@ class PermissionManagementModule { PermissionManagementModule.decorators = [ { type: NgModule, args: [{ declarations: [PermissionManagementComponent], - imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState]), PerfectScrollbarModule], + imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState])], exports: [PermissionManagementComponent], },] } ]; @@ -756,5 +736,5 @@ var PermissionManagement; * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { GetPermissions, PermissionManagementComponent, PermissionManagementModule, PermissionManagementService, PermissionManagementState, RootPermissionManagementModule, UpdatePermissions, PermissionManagementComponent as ɵa, PermissionManagementState as ɵb, PermissionManagementService as ɵc, GetPermissions as ɵd, UpdatePermissions as ɵe }; +export { GetPermissions, PermissionManagementComponent, PermissionManagementModule, PermissionManagementService, PermissionManagementState, UpdatePermissions, PermissionManagementComponent as ɵa, PermissionManagementState as ɵb, PermissionManagementService as ɵc, GetPermissions as ɵd, UpdatePermissions as ɵe }; //# sourceMappingURL=abp-ng.permission-management.js.map diff --git a/npm/ng-packs/dist/permission-management/fesm2015/abp-ng.permission-management.js.map b/npm/ng-packs/dist/permission-management/fesm2015/abp-ng.permission-management.js.map index 5592c4d712..90fad6e9ff 100644 --- a/npm/ng-packs/dist/permission-management/fesm2015/abp-ng.permission-management.js.map +++ b/npm/ng-packs/dist/permission-management/fesm2015/abp-ng.permission-management.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.permission-management.js","sources":["ng://@abp/ng.permission-management/lib/root-permission-management.module.ts","ng://@abp/ng.permission-management/lib/actions/permission-management.actions.ts","ng://@abp/ng.permission-management/lib/services/permission-management.service.ts","ng://@abp/ng.permission-management/lib/states/permission-management.state.ts","ng://@abp/ng.permission-management/lib/components/permission-management.component.ts","ng://@abp/ng.permission-management/lib/permission-management.module.ts","ng://@abp/ng.permission-management/lib/models/permission-management.ts"],"sourcesContent":["import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootPermissionManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootPermissionManagementModule,\n providers: [],\n };\n }\n}\n","import { PermissionManagement } from '../models/permission-management';\n\nexport class GetPermissions {\n static readonly type = '[PermissionManagement] Get Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider) {}\n}\n\nexport class UpdatePermissions {\n static readonly type = '[PermissionManagement] Update Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Observable } from 'rxjs';\nimport { PermissionManagement } from '../models/permission-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionManagementService {\n constructor(private rest: RestService) {}\n\n getPermissions(params: PermissionManagement.GrantedProvider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/permissions',\n params,\n };\n\n return this.rest.request(request);\n }\n\n updatePermissions({\n permissions,\n providerKey,\n providerName,\n }: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/permissions',\n body: { permissions },\n params: { providerKey, providerName },\n };\n\n return this.rest.request(request);\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementService } from '../services/permission-management.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'PermissionManagementState',\n defaults: { permissionRes: {} } as PermissionManagement.State,\n})\nexport class PermissionManagementState {\n @Selector()\n static getPermissionGroups({ permissionRes }: PermissionManagement.State) {\n return permissionRes.groups || [];\n }\n\n @Selector()\n static getEntitiyDisplayName({ permissionRes }: PermissionManagement.State): string {\n return permissionRes.entityDisplayName;\n }\n\n constructor(private permissionManagementService: PermissionManagementService) {}\n\n @Action(GetPermissions)\n permissionManagementGet({ patchState }: StateContext, { payload }: GetPermissions) {\n return this.permissionManagementService.getPermissions(payload).pipe(\n tap(permissionResponse =>\n patchState({\n permissionRes: permissionResponse,\n }),\n ),\n );\n }\n\n @Action(UpdatePermissions)\n permissionManagementUpdate(_, { payload }: UpdatePermissions) {\n return this.permissionManagementService.updatePermissions(payload);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n Renderer2,\n SimpleChanges,\n TrackByFunction,\n} from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { from, Observable } from 'rxjs';\nimport { map, pluck, take } from 'rxjs/operators';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementState } from '../states/permission-management.state';\n\ntype PermissionWithMargin = PermissionManagement.Permission & { margin: number };\n\n@Component({\n selector: 'abp-permission-management',\n templateUrl: './permission-management.component.html',\n})\nexport class PermissionManagementComponent implements OnInit, OnChanges {\n @Input()\n providerName: string;\n\n @Input()\n providerKey: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n if (!this.selectedGroup) return;\n\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (!value) {\n this.selectedGroup = null;\n }\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(PermissionManagementState.getPermissionGroups)\n groups$: Observable;\n\n @Select(PermissionManagementState.getEntitiyDisplayName)\n entityName$: Observable;\n\n selectedGroup: PermissionManagement.Group;\n\n permissions: PermissionManagement.Permission[] = [];\n\n selectThisTab: boolean = false;\n\n selectAllTab: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n get selectedGroupPermissions$(): Observable {\n return this.groups$.pipe(\n map(groups =>\n this.selectedGroup ? groups.find(group => group.name === this.selectedGroup.name).permissions : [],\n ),\n map(permissions =>\n permissions.map(\n permission =>\n (({\n ...permission,\n margin: findMargin(permissions, permission),\n isGranted: this.permissions.find(per => per.name === permission.name).isGranted,\n } as any) as PermissionWithMargin),\n ),\n ),\n );\n }\n\n constructor(private store: Store, private renderer: Renderer2) {}\n\n ngOnInit(): void {}\n\n getChecked(name: string) {\n return (this.permissions.find(per => per.name === name) || { isGranted: false }).isGranted;\n }\n\n isGrantedByRole(grantedProviders: PermissionManagement.GrantedProvider[]): boolean {\n if (grantedProviders.length) {\n return grantedProviders.findIndex(p => p.providerName === 'Role') > -1;\n }\n return false;\n }\n\n onClickCheckbox(clickedPermission: PermissionManagement.Permission, value) {\n if (clickedPermission.isGranted && this.isGrantedByRole(clickedPermission.grantedProviders)) return;\n\n setTimeout(() => {\n this.permissions = this.permissions.map(per => {\n if (clickedPermission.name === per.name) {\n return { ...per, isGranted: !per.isGranted };\n } else if (clickedPermission.name === per.parentName && clickedPermission.isGranted) {\n return { ...per, isGranted: false };\n } else if (clickedPermission.parentName === per.name && !clickedPermission.isGranted) {\n return { ...per, isGranted: true };\n }\n\n return per;\n });\n\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }, 0);\n }\n\n setTabCheckboxState() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n const selectedPermissions = permissions.filter(per => per.isGranted);\n const element = document.querySelector('#select-all-in-this-tabs') as any;\n\n if (selectedPermissions.length === permissions.length) {\n element.indeterminate = false;\n this.selectThisTab = true;\n } else if (selectedPermissions.length === 0) {\n element.indeterminate = false;\n this.selectThisTab = false;\n } else {\n element.indeterminate = true;\n }\n });\n }\n\n setGrantCheckboxState() {\n const selectedAllPermissions = this.permissions.filter(per => per.isGranted);\n const checkboxElement = document.querySelector('#select-all-in-all-tabs') as any;\n\n if (selectedAllPermissions.length === this.permissions.length) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = true;\n } else if (selectedAllPermissions.length === 0) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = false;\n } else {\n checkboxElement.indeterminate = true;\n }\n }\n\n onClickSelectThisTab() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n permissions.forEach(permission => {\n if (permission.isGranted && this.isGrantedByRole(permission.grantedProviders)) return;\n\n const index = this.permissions.findIndex(per => per.name === permission.name);\n\n this.permissions = [\n ...this.permissions.slice(0, index),\n { ...this.permissions[index], isGranted: !this.selectThisTab },\n ...this.permissions.slice(index + 1),\n ];\n });\n });\n\n this.setGrantCheckboxState();\n }\n\n onClickSelectAll() {\n this.permissions = this.permissions.map(permission => ({ ...permission, isGranted: !this.selectAllTab }));\n\n this.selectThisTab = !this.selectAllTab;\n }\n\n onChangeGroup(group: PermissionManagement.Group) {\n this.selectedGroup = group;\n this.setTabCheckboxState();\n }\n\n submit() {\n this.modalBusy = true;\n const unchangedPermissions = getPermissions(\n this.store.selectSnapshot(PermissionManagementState.getPermissionGroups),\n );\n\n const changedPermissions: PermissionManagement.MinimumPermission[] = this.permissions\n .filter(per =>\n unchangedPermissions.find(unchanged => unchanged.name === per.name).isGranted === per.isGranted ? false : true,\n )\n .map(({ name, isGranted }) => ({ name, isGranted }));\n\n if (changedPermissions.length) {\n this.store\n .dispatch(\n new UpdatePermissions({\n providerKey: this.providerKey,\n providerName: this.providerName,\n permissions: changedPermissions,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n } else {\n this.modalBusy = false;\n this.visible = false;\n }\n }\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.store\n .dispatch(new GetPermissions({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('PermissionManagementState', 'permissionRes'))\n .subscribe((permissionRes: PermissionManagement.Response) => {\n this.selectedGroup = permissionRes.groups[0];\n this.permissions = getPermissions(permissionRes.groups);\n\n this.visible = true;\n });\n }\n\n initModal() {\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n\nfunction findMargin(permissions: PermissionManagement.Permission[], permission: PermissionManagement.Permission) {\n const parentPermission = permissions.find(per => per.name === permission.parentName);\n\n if (parentPermission && parentPermission.parentName) {\n let margin = 20;\n return (margin += findMargin(permissions, parentPermission));\n }\n\n return parentPermission ? 20 : 0;\n}\n\nfunction getPermissions(groups: PermissionManagement.Group[]): PermissionManagement.Permission[] {\n return groups.reduce((acc, val) => [...acc, ...val.permissions], []);\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { PermissionManagementComponent } from './components/permission-management.component';\nimport { PermissionManagementState } from './states/permission-management.state';\nimport { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\n\n@NgModule({\n declarations: [PermissionManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState]), PerfectScrollbarModule],\n exports: [PermissionManagementComponent],\n})\nexport class PermissionManagementModule {}\n","export namespace PermissionManagement {\n export interface State {\n permissionRes: Response;\n }\n\n export interface Response {\n entityDisplayName: string;\n groups: Group[];\n }\n\n export interface Group {\n name: string;\n displayName: string;\n permissions: Permission[];\n }\n\n export interface MinimumPermission {\n name: string;\n isGranted: boolean;\n }\n\n export interface Permission extends MinimumPermission {\n displayName: string;\n parentName: string;\n allowedProviders: string[];\n grantedProviders: GrantedProvider[];\n }\n\n export interface GrantedProvider {\n providerName: string;\n providerKey: string;\n }\n\n export interface UpdateRequest {\n permissions: MinimumPermission[];\n }\n}\n"],"names":["tslib_1.__decorate"],"mappings":";;;;;;;;;;;;;AAAA,MAGa,8BAA8B;;;;IACzC,OAAO,OAAO;QACZ,OAAO;YACL,QAAQ,EAAE,8BAA8B;YACxC,SAAS,EAAE,EAAE;SACd,CAAC;KACH;;;YAPF,QAAQ,SAAC,EAAE;;;;;;;ACAZ,MAAa,cAAc;;;;IAEzB,YAAmB,OAA6C;QAA7C,YAAO,GAAP,OAAO,CAAsC;KAAI;;AADpD,mBAAI,GAAG,wCAAwC,CAAC;;;IAAhE,oBAAgE;;IACpD,iCAAoD;;AAGlE,MAAa,iBAAiB;;;;IAE5B,YAAmB,OAAkF;QAAlF,YAAO,GAAP,OAAO,CAA2E;KAAI;;AADzF,sBAAI,GAAG,2CAA2C,CAAC;;;IAAnE,uBAAmE;;IACvD,oCAAyF;;;;;;;ACTvG,MAQa,2BAA2B;;;;IACtC,YAAoB,IAAiB;QAAjB,SAAI,GAAJ,IAAI,CAAa;KAAI;;;;;IAEzC,cAAc,CAAC,MAA4C;;cACnD,OAAO,GAAuD;YAClE,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,sBAAsB;YAC3B,MAAM;SACP;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAsE,OAAO,CAAC,CAAC;KACxG;;;;;IAED,iBAAiB,CAAC,EAChB,WAAW,EACX,WAAW,EACX,YAAY,GAC8D;;cACpE,OAAO,GAAqD;YAChE,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,sBAAsB;YAC3B,IAAI,EAAE,EAAE,WAAW,EAAE;YACrB,MAAM,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE;SACtC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA2C,OAAO,CAAC,CAAC;KAC7E;;;YA7BF,UAAU,SAAC;gBACV,UAAU,EAAE,MAAM;aACnB;;;;YANQ,WAAW;;;;;;;;IAQN,2CAAyB;;;;;;;ICC1B,yBAAyB,SAAzB,yBAAyB;;;;IAWpC,YAAoB,2BAAwD;QAAxD,gCAA2B,GAA3B,2BAA2B,CAA6B;KAAI;;;;;IAThF,OAAO,mBAAmB,CAAC,EAAE,aAAa,EAA8B;QACtE,OAAO,aAAa,CAAC,MAAM,IAAI,EAAE,CAAC;KACnC;;;;;IAGD,OAAO,qBAAqB,CAAC,EAAE,aAAa,EAA8B;QACxE,OAAO,aAAa,CAAC,iBAAiB,CAAC;KACxC;;;;;;IAKD,uBAAuB,CAAC,EAAE,UAAU,EAA4C,EAAE,EAAE,OAAO,EAAkB;QAC3G,OAAO,IAAI,CAAC,2BAA2B,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,CAClE,GAAG;;;;QAAC,kBAAkB,IACpB,UAAU,CAAC;YACT,aAAa,EAAE,kBAAkB;SAClC,CAAC,EACH,CACF,CAAC;KACH;;;;;;IAGD,0BAA0B,CAAC,CAAC,EAAE,EAAE,OAAO,EAAqB;QAC1D,OAAO,IAAI,CAAC,2BAA2B,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;KACpE;CACF,CAAA;AAdCA;IADC,MAAM,CAAC,cAAc,CAAC;;6CACwE,cAAc;;wEAQ5G;AAGDA;IADC,MAAM,CAAC,iBAAiB,CAAC;;6CACiB,iBAAiB;;2EAE3D;AAzBDA;IADC,QAAQ,EAAE;;;;0DAGV;AAGDA;IADC,QAAQ,EAAE;;;;4DAGV;AATU,yBAAyB;IAJrC,KAAK,CAA6B;QACjC,IAAI,EAAE,2BAA2B;QACjC,QAAQ,qBAAE,EAAE,aAAa,EAAE,EAAE,EAAE,EAA8B;KAC9D,CAAC;qCAYiD,2BAA2B;GAXjE,yBAAyB,CA4BrC;;;;;;IAjBa,gEAAgE;;;;;;;MCGjE,6BAA6B;;;;;IAgExC,YAAoB,KAAY,EAAU,QAAmB;QAAzC,UAAK,GAAL,KAAK,CAAO;QAAU,aAAQ,GAAR,QAAQ,CAAW;QAtC7D,kBAAa,GAAG,IAAI,YAAY,EAAW,CAAC;QAU5C,gBAAW,GAAsC,EAAE,CAAC;QAEpD,kBAAa,GAAY,KAAK,CAAC;QAE/B,iBAAY,GAAY,KAAK,CAAC;QAE9B,cAAS,GAAY,KAAK,CAAC;QAE3B,cAAS;;;;;QAAgD,CAAC,CAAC,EAAE,IAAI,KAAK,IAAI,CAAC,IAAI,EAAC;KAoBf;;;;IAvDjE,IACI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;KACtB;;;;;IAED,IAAI,OAAO,CAAC,KAAc;QACxB,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAEhC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE/B,IAAI,CAAC,KAAK,EAAE;YACV,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;SAC3B;KACF;;;;IAuBD,IAAI,yBAAyB;QAC3B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CACtB,GAAG;;;;QAAC,MAAM,IACR,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI;;;;QAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,EAAC,CAAC,WAAW,GAAG,EAAE,EACnG,EACD,GAAG;;;;QAA4D,WAAW,IACxE,WAAW,CAAC,GAAG;;;;QACb,UAAU,8DAEH,UAAU,IACb,MAAM,EAAE,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,EAC3C,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;;;;YAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,EAAC,CAAC,SAAS,SAC/C,EACrC,EACF,CACF,CAAC;KACH;;;;IAID,QAAQ,MAAW;;;;;IAEnB,UAAU,CAAC,IAAY;QACrB,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI;;;;QAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,EAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,SAAS,CAAC;KAC5F;;;;;IAED,eAAe,CAAC,gBAAwD;QACtE,IAAI,gBAAgB,CAAC,MAAM,EAAE;YAC3B,OAAO,gBAAgB,CAAC,SAAS;;;;YAAC,CAAC,IAAI,CAAC,CAAC,YAAY,KAAK,MAAM,EAAC,GAAG,CAAC,CAAC,CAAC;SACxE;QACD,OAAO,KAAK,CAAC;KACd;;;;;;IAED,eAAe,CAAC,iBAAkD,EAAE,KAAK;QACvE,IAAI,iBAAiB,CAAC,SAAS,IAAI,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,gBAAgB,CAAC;YAAE,OAAO;QAEpG,UAAU;;;QAAC;YACT,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG;;;;YAAC,GAAG;gBACzC,IAAI,iBAAiB,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,EAAE;oBACvC,yBAAY,GAAG,IAAE,SAAS,EAAE,CAAC,GAAG,CAAC,SAAS,IAAG;iBAC9C;qBAAM,IAAI,iBAAiB,CAAC,IAAI,KAAK,GAAG,CAAC,UAAU,IAAI,iBAAiB,CAAC,SAAS,EAAE;oBACnF,yBAAY,GAAG,IAAE,SAAS,EAAE,KAAK,IAAG;iBACrC;qBAAM,IAAI,iBAAiB,CAAC,UAAU,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE;oBACpF,yBAAY,GAAG,IAAE,SAAS,EAAE,IAAI,IAAG;iBACpC;gBAED,OAAO,GAAG,CAAC;aACZ,EAAC,CAAC;YAEH,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,IAAI,CAAC,qBAAqB,EAAE,CAAC;SAC9B,GAAE,CAAC,CAAC,CAAC;KACP;;;;IAED,mBAAmB;QACjB,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;;;;QAAC,WAAW;;kBAC1D,mBAAmB,GAAG,WAAW,CAAC,MAAM;;;;YAAC,GAAG,IAAI,GAAG,CAAC,SAAS,EAAC;;kBAC9D,OAAO,sBAAG,QAAQ,CAAC,aAAa,CAAC,0BAA0B,CAAC,EAAO;YAEzE,IAAI,mBAAmB,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,EAAE;gBACrD,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC;gBAC9B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;aAC3B;iBAAM,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC3C,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC;gBAC9B,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;aAC5B;iBAAM;gBACL,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;aAC9B;SACF,EAAC,CAAC;KACJ;;;;IAED,qBAAqB;;cACb,sBAAsB,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM;;;;QAAC,GAAG,IAAI,GAAG,CAAC,SAAS,EAAC;;cACtE,eAAe,sBAAG,QAAQ,CAAC,aAAa,CAAC,yBAAyB,CAAC,EAAO;QAEhF,IAAI,sBAAsB,CAAC,MAAM,KAAK,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE;YAC7D,eAAe,CAAC,aAAa,GAAG,KAAK,CAAC;YACtC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;SAC1B;aAAM,IAAI,sBAAsB,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9C,eAAe,CAAC,aAAa,GAAG,KAAK,CAAC;YACtC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;SAC3B;aAAM;YACL,eAAe,CAAC,aAAa,GAAG,IAAI,CAAC;SACtC;KACF;;;;IAED,oBAAoB;QAClB,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;;;;QAAC,WAAW;YAChE,WAAW,CAAC,OAAO;;;;YAAC,UAAU;gBAC5B,IAAI,UAAU,CAAC,SAAS,IAAI,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,gBAAgB,CAAC;oBAAE,OAAO;;sBAEhF,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS;;;;gBAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,EAAC;gBAE7E,IAAI,CAAC,WAAW,GAAG;oBACjB,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;sCAC9B,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAE,SAAS,EAAE,CAAC,IAAI,CAAC,aAAa;oBAC5D,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;iBACrC,CAAC;aACH,EAAC,CAAC;SACJ,EAAC,CAAC;QAEH,IAAI,CAAC,qBAAqB,EAAE,CAAC;KAC9B;;;;IAED,gBAAgB;QACd,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG;;;;QAAC,UAAU,uBAAU,UAAU,IAAE,SAAS,EAAE,CAAC,IAAI,CAAC,YAAY,IAAG,EAAC,CAAC;QAE1G,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;KACzC;;;;;IAED,aAAa,CAAC,KAAiC;QAC7C,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;;;;IAED,MAAM;QACJ,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;;cAChB,oBAAoB,GAAG,cAAc,CACzC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,yBAAyB,CAAC,mBAAmB,CAAC,CACzE;;cAEK,kBAAkB,GAA6C,IAAI,CAAC,WAAW;aAClF,MAAM;;;;QAAC,GAAG,IACT,oBAAoB,CAAC,IAAI;;;;QAAC,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,EAAC,CAAC,SAAS,KAAK,GAAG,CAAC,SAAS,GAAG,KAAK,GAAG,IAAI,EAC/G;aACA,GAAG;;;;QAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAC;QAEtD,IAAI,kBAAkB,CAAC,MAAM,EAAE;YAC7B,IAAI,CAAC,KAAK;iBACP,QAAQ,CACP,IAAI,iBAAiB,CAAC;gBACpB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,WAAW,EAAE,kBAAkB;aAChC,CAAC,CACH;iBACA,SAAS;;;YAAC;gBACT,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;gBACvB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;aACtB,EAAC,CAAC;SACN;aAAM;YACL,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;SACtB;KACF;;;;IAED,SAAS;QACP,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YAC3C,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;SACjE;QAED,IAAI,CAAC,KAAK;aACP,QAAQ,CAAC,IAAI,cAAc,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;aAChG,IAAI,CAAC,KAAK,CAAC,2BAA2B,EAAE,eAAe,CAAC,CAAC;aACzD,SAAS;;;;QAAC,CAAC,aAA4C;YACtD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC7C,IAAI,CAAC,WAAW,GAAG,cAAc,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAExD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;SACrB,EAAC,CAAC;KACN;;;;IAED,SAAS;QACP,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,qBAAqB,EAAE,CAAC;KAC9B;;;;;IAED,WAAW,CAAC,EAAE,OAAO,EAAiB;QACpC,IAAI,CAAC,OAAO;YAAE,OAAO;QAErB,IAAI,OAAO,CAAC,YAAY,EAAE;YACxB,IAAI,CAAC,SAAS,EAAE,CAAC;SAClB;aAAM,IAAI,OAAO,CAAC,YAAY,KAAK,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE;YACzD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;SACtB;KACF;;;YAjOF,SAAS,SAAC;gBACT,QAAQ,EAAE,2BAA2B;gBACrC,s/HAAqD;aACtD;;;;YAZgB,KAAK;YAJpB,SAAS;;;2BAkBR,KAAK;0BAGL,KAAK;sBAKL,KAAK;4BAgBL,MAAM;;AAIPA;IADC,MAAM,CAAC,yBAAyB,CAAC,mBAAmB,CAAC;8BAC7C,UAAU;8DAA+B;AAGlDA;IADC,MAAM,CAAC,yBAAyB,CAAC,qBAAqB,CAAC;8BAC3C,UAAU;kEAAS;;;IA/BhC,qDACqB;;IAErB,oDACoB;;;;;IAEpB,iDAAmB;;IAkBnB,sDAC4C;;IAE5C,gDACkD;;IAElD,oDACgC;;IAEhC,sDAA0C;;IAE1C,oDAAoD;;IAEpD,sDAA+B;;IAE/B,qDAA8B;;IAE9B,kDAA2B;;IAE3B,kDAAgF;;;;;IAoBpE,8CAAoB;;;;;IAAE,iDAA2B;;;;;;;AAgK/D,SAAS,UAAU,CAAC,WAA8C,EAAE,UAA2C;;UACvG,gBAAgB,GAAG,WAAW,CAAC,IAAI;;;;IAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC,UAAU,EAAC;IAEpF,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,UAAU,EAAE;;YAC/C,MAAM,GAAG,EAAE;QACf,QAAQ,MAAM,IAAI,UAAU,CAAC,WAAW,EAAE,gBAAgB,CAAC,EAAE;KAC9D;IAED,OAAO,gBAAgB,GAAG,EAAE,GAAG,CAAC,CAAC;CAClC;;;;;AAED,SAAS,cAAc,CAAC,MAAoC;IAC1D,OAAO,MAAM,CAAC,MAAM;;;;;IAAC,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,GAAG,EAAE,GAAG,GAAG,CAAC,WAAW,CAAC,GAAE,EAAE,CAAC,CAAC;CACtE;;;;;;ACrQD,MAaa,0BAA0B;;;YALtC,QAAQ,SAAC;gBACR,YAAY,EAAE,CAAC,6BAA6B,CAAC;gBAC7C,OAAO,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,yBAAyB,CAAC,CAAC,EAAE,sBAAsB,CAAC;gBACpH,OAAO,EAAE,CAAC,6BAA6B,CAAC;aACzC;;;;;;;;;;;;;;;;;ACZD,IAAiB,oBAAoB,CAoCpC;AApCD,WAAiB,oBAAoB;;;;IACnC,oBAEC;;;;QADC,8BAAwB;;;;;IAG1B,uBAGC;;;;QAFC,qCAA0B;;QAC1B,0BAAgB;;;;;IAGlB,oBAIC;;;;QAHC,qBAAa;;QACb,4BAAoB;;QACpB,4BAA0B;;;;;IAG5B,gCAGC;;;;QAFC,iCAAa;;QACb,sCAAmB;;;;;IAGrB,yBAKC;;;;QAJC,iCAAoB;;QACpB,gCAAmB;;QACnB,sCAA2B;;QAC3B,sCAAoC;;;;;IAGtC,8BAGC;;;;QAFC,uCAAqB;;QACrB,sCAAoB;;;;;IAGtB,4BAEC;;;;QADC,oCAAiC;;CAEpC,EApCgB,oBAAoB,KAApB,oBAAoB,QAoCpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"abp-ng.permission-management.js","sources":["ng://@abp/ng.permission-management/lib/actions/permission-management.actions.ts","ng://@abp/ng.permission-management/lib/services/permission-management.service.ts","ng://@abp/ng.permission-management/lib/states/permission-management.state.ts","ng://@abp/ng.permission-management/lib/components/permission-management.component.ts","ng://@abp/ng.permission-management/lib/permission-management.module.ts","ng://@abp/ng.permission-management/lib/models/permission-management.ts"],"sourcesContent":["import { PermissionManagement } from '../models/permission-management';\n\nexport class GetPermissions {\n static readonly type = '[PermissionManagement] Get Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider) {}\n}\n\nexport class UpdatePermissions {\n static readonly type = '[PermissionManagement] Update Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Observable } from 'rxjs';\nimport { PermissionManagement } from '../models/permission-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionManagementService {\n constructor(private rest: RestService) {}\n\n getPermissions(params: PermissionManagement.GrantedProvider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/permissions',\n params,\n };\n\n return this.rest.request(request);\n }\n\n updatePermissions({\n permissions,\n providerKey,\n providerName,\n }: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/permissions',\n body: { permissions },\n params: { providerKey, providerName },\n };\n\n return this.rest.request(request);\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementService } from '../services/permission-management.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'PermissionManagementState',\n defaults: { permissionRes: {} } as PermissionManagement.State,\n})\nexport class PermissionManagementState {\n @Selector()\n static getPermissionGroups({ permissionRes }: PermissionManagement.State) {\n return permissionRes.groups || [];\n }\n\n @Selector()\n static getEntitiyDisplayName({ permissionRes }: PermissionManagement.State): string {\n return permissionRes.entityDisplayName;\n }\n\n constructor(private permissionManagementService: PermissionManagementService) {}\n\n @Action(GetPermissions)\n permissionManagementGet({ patchState }: StateContext, { payload }: GetPermissions) {\n return this.permissionManagementService.getPermissions(payload).pipe(\n tap(permissionResponse =>\n patchState({\n permissionRes: permissionResponse,\n }),\n ),\n );\n }\n\n @Action(UpdatePermissions)\n permissionManagementUpdate(_, { payload }: UpdatePermissions) {\n return this.permissionManagementService.updatePermissions(payload);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n Renderer2,\n SimpleChanges,\n TrackByFunction,\n} from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { from, Observable } from 'rxjs';\nimport { map, pluck, take } from 'rxjs/operators';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementState } from '../states/permission-management.state';\n\ntype PermissionWithMargin = PermissionManagement.Permission & { margin: number };\n\n@Component({\n selector: 'abp-permission-management',\n templateUrl: './permission-management.component.html',\n})\nexport class PermissionManagementComponent implements OnInit, OnChanges {\n @Input()\n providerName: string;\n\n @Input()\n providerKey: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n if (!this.selectedGroup) return;\n\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (!value) {\n this.selectedGroup = null;\n }\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(PermissionManagementState.getPermissionGroups)\n groups$: Observable;\n\n @Select(PermissionManagementState.getEntitiyDisplayName)\n entityName$: Observable;\n\n selectedGroup: PermissionManagement.Group;\n\n permissions: PermissionManagement.Permission[] = [];\n\n selectThisTab: boolean = false;\n\n selectAllTab: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n get selectedGroupPermissions$(): Observable {\n return this.groups$.pipe(\n map(groups =>\n this.selectedGroup ? groups.find(group => group.name === this.selectedGroup.name).permissions : [],\n ),\n map(permissions =>\n permissions.map(\n permission =>\n (({\n ...permission,\n margin: findMargin(permissions, permission),\n isGranted: this.permissions.find(per => per.name === permission.name).isGranted,\n } as any) as PermissionWithMargin),\n ),\n ),\n );\n }\n\n constructor(private store: Store, private renderer: Renderer2) {}\n\n ngOnInit(): void {}\n\n getChecked(name: string) {\n return (this.permissions.find(per => per.name === name) || { isGranted: false }).isGranted;\n }\n\n isGrantedByRole(grantedProviders: PermissionManagement.GrantedProvider[]): boolean {\n if (grantedProviders.length) {\n return grantedProviders.findIndex(p => p.providerName === 'Role') > -1;\n }\n return false;\n }\n\n onClickCheckbox(clickedPermission: PermissionManagement.Permission, value) {\n if (clickedPermission.isGranted && this.isGrantedByRole(clickedPermission.grantedProviders)) return;\n\n setTimeout(() => {\n this.permissions = this.permissions.map(per => {\n if (clickedPermission.name === per.name) {\n return { ...per, isGranted: !per.isGranted };\n } else if (clickedPermission.name === per.parentName && clickedPermission.isGranted) {\n return { ...per, isGranted: false };\n } else if (clickedPermission.parentName === per.name && !clickedPermission.isGranted) {\n return { ...per, isGranted: true };\n }\n\n return per;\n });\n\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }, 0);\n }\n\n setTabCheckboxState() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n const selectedPermissions = permissions.filter(per => per.isGranted);\n const element = document.querySelector('#select-all-in-this-tabs') as any;\n\n if (selectedPermissions.length === permissions.length) {\n element.indeterminate = false;\n this.selectThisTab = true;\n } else if (selectedPermissions.length === 0) {\n element.indeterminate = false;\n this.selectThisTab = false;\n } else {\n element.indeterminate = true;\n }\n });\n }\n\n setGrantCheckboxState() {\n const selectedAllPermissions = this.permissions.filter(per => per.isGranted);\n const checkboxElement = document.querySelector('#select-all-in-all-tabs') as any;\n\n if (selectedAllPermissions.length === this.permissions.length) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = true;\n } else if (selectedAllPermissions.length === 0) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = false;\n } else {\n checkboxElement.indeterminate = true;\n }\n }\n\n onClickSelectThisTab() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n permissions.forEach(permission => {\n if (permission.isGranted && this.isGrantedByRole(permission.grantedProviders)) return;\n\n const index = this.permissions.findIndex(per => per.name === permission.name);\n\n this.permissions = [\n ...this.permissions.slice(0, index),\n { ...this.permissions[index], isGranted: !this.selectThisTab },\n ...this.permissions.slice(index + 1),\n ];\n });\n });\n\n this.setGrantCheckboxState();\n }\n\n onClickSelectAll() {\n this.permissions = this.permissions.map(permission => ({ ...permission, isGranted: !this.selectAllTab }));\n\n this.selectThisTab = !this.selectAllTab;\n }\n\n onChangeGroup(group: PermissionManagement.Group) {\n this.selectedGroup = group;\n this.setTabCheckboxState();\n }\n\n submit() {\n this.modalBusy = true;\n const unchangedPermissions = getPermissions(\n this.store.selectSnapshot(PermissionManagementState.getPermissionGroups),\n );\n\n const changedPermissions: PermissionManagement.MinimumPermission[] = this.permissions\n .filter(per =>\n unchangedPermissions.find(unchanged => unchanged.name === per.name).isGranted === per.isGranted ? false : true,\n )\n .map(({ name, isGranted }) => ({ name, isGranted }));\n\n if (changedPermissions.length) {\n this.store\n .dispatch(\n new UpdatePermissions({\n providerKey: this.providerKey,\n providerName: this.providerName,\n permissions: changedPermissions,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n } else {\n this.modalBusy = false;\n this.visible = false;\n }\n }\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.store\n .dispatch(new GetPermissions({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('PermissionManagementState', 'permissionRes'))\n .subscribe((permissionRes: PermissionManagement.Response) => {\n this.selectedGroup = permissionRes.groups[0];\n this.permissions = getPermissions(permissionRes.groups);\n\n this.visible = true;\n });\n }\n\n initModal() {\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n\nfunction findMargin(permissions: PermissionManagement.Permission[], permission: PermissionManagement.Permission) {\n const parentPermission = permissions.find(per => per.name === permission.parentName);\n\n if (parentPermission && parentPermission.parentName) {\n let margin = 20;\n return (margin += findMargin(permissions, parentPermission));\n }\n\n return parentPermission ? 20 : 0;\n}\n\nfunction getPermissions(groups: PermissionManagement.Group[]): PermissionManagement.Permission[] {\n return groups.reduce((acc, val) => [...acc, ...val.permissions], []);\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { PermissionManagementComponent } from './components/permission-management.component';\nimport { PermissionManagementState } from './states/permission-management.state';\n\n@NgModule({\n declarations: [PermissionManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState])],\n exports: [PermissionManagementComponent],\n})\nexport class PermissionManagementModule {}\n","export namespace PermissionManagement {\n export interface State {\n permissionRes: Response;\n }\n\n export interface Response {\n entityDisplayName: string;\n groups: Group[];\n }\n\n export interface Group {\n name: string;\n displayName: string;\n permissions: Permission[];\n }\n\n export interface MinimumPermission {\n name: string;\n isGranted: boolean;\n }\n\n export interface Permission extends MinimumPermission {\n displayName: string;\n parentName: string;\n allowedProviders: string[];\n grantedProviders: GrantedProvider[];\n }\n\n export interface GrantedProvider {\n providerName: string;\n providerKey: string;\n }\n\n export interface UpdateRequest {\n permissions: MinimumPermission[];\n }\n}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/fesm5/abp-ng.permission-management.js b/npm/ng-packs/dist/permission-management/fesm5/abp-ng.permission-management.js index 03eaa9e317..3e38c36f70 100644 --- a/npm/ng-packs/dist/permission-management/fesm5/abp-ng.permission-management.js +++ b/npm/ng-packs/dist/permission-management/fesm5/abp-ng.permission-management.js @@ -1,36 +1,10 @@ -import { NgModule, Injectable, ɵɵdefineInjectable, ɵɵinject, EventEmitter, Component, Renderer2, Input, Output } from '@angular/core'; import { RestService, CoreModule } from '@abp/ng.core'; import { ThemeSharedModule } from '@abp/ng.theme.shared'; +import { Injectable, ɵɵdefineInjectable, ɵɵinject, EventEmitter, Component, Renderer2, Input, Output, NgModule } from '@angular/core'; import { Action, Selector, State, Store, Select, NgxsModule } from '@ngxs/store'; import { __decorate, __metadata, __assign, __spread } from 'tslib'; import { Observable } from 'rxjs'; import { tap, map, take, pluck } from 'rxjs/operators'; -import { PerfectScrollbarModule } from 'ngx-perfect-scrollbar'; - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var RootPermissionManagementModule = /** @class */ (function () { - function RootPermissionManagementModule() { - } - /** - * @return {?} - */ - RootPermissionManagementModule.forRoot = /** - * @return {?} - */ - function () { - return { - ngModule: RootPermissionManagementModule, - providers: [], - }; - }; - RootPermissionManagementModule.decorators = [ - { type: NgModule, args: [{},] } - ]; - return RootPermissionManagementModule; -}()); /** * @fileoverview added by tsickle @@ -624,7 +598,7 @@ var PermissionManagementComponent = /** @class */ (function () { PermissionManagementComponent.decorators = [ { type: Component, args: [{ selector: 'abp-permission-management', - template: "\n \n \n

{{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - {{ data.entityName }}

\n
\n \n
\n \n \n
\n\n
\n
\n
\n
    \n \n
  • \n {{ group?.displayName }}\n
  • \n
    \n
\n
\n
\n

{{ selectedGroup?.displayName }}

\n
\n
\n
\n \n \n
\n
\n \n \n \n {{ permission.displayName }}\n {{ provider.providerName }}: {{ provider.providerKey }}\n
\n \n
\n
\n \n
\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n
\n" + template: "\n \n \n

{{ 'AbpPermissionManagement::Permissions' | abpLocalization }} - {{ data.entityName }}

\n
\n \n
\n \n \n
\n\n
\n
\n
\n
    \n
  • \n {{ group?.displayName }}\n
  • \n
\n
\n
\n

{{ selectedGroup?.displayName }}

\n
\n
\n
\n \n \n
\n
\n \n \n {{ permission.displayName }}\n {{ provider.providerName }}: {{ provider.providerKey }}\n
\n
\n
\n \n
\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n
\n" }] } ]; /** @nocollapse */ @@ -729,7 +703,7 @@ var PermissionManagementModule = /** @class */ (function () { PermissionManagementModule.decorators = [ { type: NgModule, args: [{ declarations: [PermissionManagementComponent], - imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState]), PerfectScrollbarModule], + imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState])], exports: [PermissionManagementComponent], },] } ]; @@ -858,5 +832,5 @@ var PermissionManagement; * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { GetPermissions, PermissionManagementComponent, PermissionManagementModule, PermissionManagementService, PermissionManagementState, RootPermissionManagementModule, UpdatePermissions, PermissionManagementComponent as ɵa, PermissionManagementState as ɵb, PermissionManagementService as ɵc, GetPermissions as ɵd, UpdatePermissions as ɵe }; +export { GetPermissions, PermissionManagementComponent, PermissionManagementModule, PermissionManagementService, PermissionManagementState, UpdatePermissions, PermissionManagementComponent as ɵa, PermissionManagementState as ɵb, PermissionManagementService as ɵc, GetPermissions as ɵd, UpdatePermissions as ɵe }; //# sourceMappingURL=abp-ng.permission-management.js.map diff --git a/npm/ng-packs/dist/permission-management/fesm5/abp-ng.permission-management.js.map b/npm/ng-packs/dist/permission-management/fesm5/abp-ng.permission-management.js.map index a8cb227ccd..c9ac84619e 100644 --- a/npm/ng-packs/dist/permission-management/fesm5/abp-ng.permission-management.js.map +++ b/npm/ng-packs/dist/permission-management/fesm5/abp-ng.permission-management.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.permission-management.js","sources":["ng://@abp/ng.permission-management/lib/root-permission-management.module.ts","ng://@abp/ng.permission-management/lib/actions/permission-management.actions.ts","ng://@abp/ng.permission-management/lib/services/permission-management.service.ts","ng://@abp/ng.permission-management/lib/states/permission-management.state.ts","ng://@abp/ng.permission-management/lib/components/permission-management.component.ts","ng://@abp/ng.permission-management/lib/permission-management.module.ts","ng://@abp/ng.permission-management/lib/models/permission-management.ts"],"sourcesContent":["import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootPermissionManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootPermissionManagementModule,\n providers: [],\n };\n }\n}\n","import { PermissionManagement } from '../models/permission-management';\n\nexport class GetPermissions {\n static readonly type = '[PermissionManagement] Get Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider) {}\n}\n\nexport class UpdatePermissions {\n static readonly type = '[PermissionManagement] Update Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Observable } from 'rxjs';\nimport { PermissionManagement } from '../models/permission-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionManagementService {\n constructor(private rest: RestService) {}\n\n getPermissions(params: PermissionManagement.GrantedProvider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/permissions',\n params,\n };\n\n return this.rest.request(request);\n }\n\n updatePermissions({\n permissions,\n providerKey,\n providerName,\n }: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/permissions',\n body: { permissions },\n params: { providerKey, providerName },\n };\n\n return this.rest.request(request);\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementService } from '../services/permission-management.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'PermissionManagementState',\n defaults: { permissionRes: {} } as PermissionManagement.State,\n})\nexport class PermissionManagementState {\n @Selector()\n static getPermissionGroups({ permissionRes }: PermissionManagement.State) {\n return permissionRes.groups || [];\n }\n\n @Selector()\n static getEntitiyDisplayName({ permissionRes }: PermissionManagement.State): string {\n return permissionRes.entityDisplayName;\n }\n\n constructor(private permissionManagementService: PermissionManagementService) {}\n\n @Action(GetPermissions)\n permissionManagementGet({ patchState }: StateContext, { payload }: GetPermissions) {\n return this.permissionManagementService.getPermissions(payload).pipe(\n tap(permissionResponse =>\n patchState({\n permissionRes: permissionResponse,\n }),\n ),\n );\n }\n\n @Action(UpdatePermissions)\n permissionManagementUpdate(_, { payload }: UpdatePermissions) {\n return this.permissionManagementService.updatePermissions(payload);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n Renderer2,\n SimpleChanges,\n TrackByFunction,\n} from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { from, Observable } from 'rxjs';\nimport { map, pluck, take } from 'rxjs/operators';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementState } from '../states/permission-management.state';\n\ntype PermissionWithMargin = PermissionManagement.Permission & { margin: number };\n\n@Component({\n selector: 'abp-permission-management',\n templateUrl: './permission-management.component.html',\n})\nexport class PermissionManagementComponent implements OnInit, OnChanges {\n @Input()\n providerName: string;\n\n @Input()\n providerKey: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n if (!this.selectedGroup) return;\n\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (!value) {\n this.selectedGroup = null;\n }\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(PermissionManagementState.getPermissionGroups)\n groups$: Observable;\n\n @Select(PermissionManagementState.getEntitiyDisplayName)\n entityName$: Observable;\n\n selectedGroup: PermissionManagement.Group;\n\n permissions: PermissionManagement.Permission[] = [];\n\n selectThisTab: boolean = false;\n\n selectAllTab: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n get selectedGroupPermissions$(): Observable {\n return this.groups$.pipe(\n map(groups =>\n this.selectedGroup ? groups.find(group => group.name === this.selectedGroup.name).permissions : [],\n ),\n map(permissions =>\n permissions.map(\n permission =>\n (({\n ...permission,\n margin: findMargin(permissions, permission),\n isGranted: this.permissions.find(per => per.name === permission.name).isGranted,\n } as any) as PermissionWithMargin),\n ),\n ),\n );\n }\n\n constructor(private store: Store, private renderer: Renderer2) {}\n\n ngOnInit(): void {}\n\n getChecked(name: string) {\n return (this.permissions.find(per => per.name === name) || { isGranted: false }).isGranted;\n }\n\n isGrantedByRole(grantedProviders: PermissionManagement.GrantedProvider[]): boolean {\n if (grantedProviders.length) {\n return grantedProviders.findIndex(p => p.providerName === 'Role') > -1;\n }\n return false;\n }\n\n onClickCheckbox(clickedPermission: PermissionManagement.Permission, value) {\n if (clickedPermission.isGranted && this.isGrantedByRole(clickedPermission.grantedProviders)) return;\n\n setTimeout(() => {\n this.permissions = this.permissions.map(per => {\n if (clickedPermission.name === per.name) {\n return { ...per, isGranted: !per.isGranted };\n } else if (clickedPermission.name === per.parentName && clickedPermission.isGranted) {\n return { ...per, isGranted: false };\n } else if (clickedPermission.parentName === per.name && !clickedPermission.isGranted) {\n return { ...per, isGranted: true };\n }\n\n return per;\n });\n\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }, 0);\n }\n\n setTabCheckboxState() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n const selectedPermissions = permissions.filter(per => per.isGranted);\n const element = document.querySelector('#select-all-in-this-tabs') as any;\n\n if (selectedPermissions.length === permissions.length) {\n element.indeterminate = false;\n this.selectThisTab = true;\n } else if (selectedPermissions.length === 0) {\n element.indeterminate = false;\n this.selectThisTab = false;\n } else {\n element.indeterminate = true;\n }\n });\n }\n\n setGrantCheckboxState() {\n const selectedAllPermissions = this.permissions.filter(per => per.isGranted);\n const checkboxElement = document.querySelector('#select-all-in-all-tabs') as any;\n\n if (selectedAllPermissions.length === this.permissions.length) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = true;\n } else if (selectedAllPermissions.length === 0) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = false;\n } else {\n checkboxElement.indeterminate = true;\n }\n }\n\n onClickSelectThisTab() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n permissions.forEach(permission => {\n if (permission.isGranted && this.isGrantedByRole(permission.grantedProviders)) return;\n\n const index = this.permissions.findIndex(per => per.name === permission.name);\n\n this.permissions = [\n ...this.permissions.slice(0, index),\n { ...this.permissions[index], isGranted: !this.selectThisTab },\n ...this.permissions.slice(index + 1),\n ];\n });\n });\n\n this.setGrantCheckboxState();\n }\n\n onClickSelectAll() {\n this.permissions = this.permissions.map(permission => ({ ...permission, isGranted: !this.selectAllTab }));\n\n this.selectThisTab = !this.selectAllTab;\n }\n\n onChangeGroup(group: PermissionManagement.Group) {\n this.selectedGroup = group;\n this.setTabCheckboxState();\n }\n\n submit() {\n this.modalBusy = true;\n const unchangedPermissions = getPermissions(\n this.store.selectSnapshot(PermissionManagementState.getPermissionGroups),\n );\n\n const changedPermissions: PermissionManagement.MinimumPermission[] = this.permissions\n .filter(per =>\n unchangedPermissions.find(unchanged => unchanged.name === per.name).isGranted === per.isGranted ? false : true,\n )\n .map(({ name, isGranted }) => ({ name, isGranted }));\n\n if (changedPermissions.length) {\n this.store\n .dispatch(\n new UpdatePermissions({\n providerKey: this.providerKey,\n providerName: this.providerName,\n permissions: changedPermissions,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n } else {\n this.modalBusy = false;\n this.visible = false;\n }\n }\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.store\n .dispatch(new GetPermissions({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('PermissionManagementState', 'permissionRes'))\n .subscribe((permissionRes: PermissionManagement.Response) => {\n this.selectedGroup = permissionRes.groups[0];\n this.permissions = getPermissions(permissionRes.groups);\n\n this.visible = true;\n });\n }\n\n initModal() {\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n\nfunction findMargin(permissions: PermissionManagement.Permission[], permission: PermissionManagement.Permission) {\n const parentPermission = permissions.find(per => per.name === permission.parentName);\n\n if (parentPermission && parentPermission.parentName) {\n let margin = 20;\n return (margin += findMargin(permissions, parentPermission));\n }\n\n return parentPermission ? 20 : 0;\n}\n\nfunction getPermissions(groups: PermissionManagement.Group[]): PermissionManagement.Permission[] {\n return groups.reduce((acc, val) => [...acc, ...val.permissions], []);\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { PermissionManagementComponent } from './components/permission-management.component';\nimport { PermissionManagementState } from './states/permission-management.state';\nimport { PerfectScrollbarModule } from 'ngx-perfect-scrollbar';\n\n@NgModule({\n declarations: [PermissionManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState]), PerfectScrollbarModule],\n exports: [PermissionManagementComponent],\n})\nexport class PermissionManagementModule {}\n","export namespace PermissionManagement {\n export interface State {\n permissionRes: Response;\n }\n\n export interface Response {\n entityDisplayName: string;\n groups: Group[];\n }\n\n export interface Group {\n name: string;\n displayName: string;\n permissions: Permission[];\n }\n\n export interface MinimumPermission {\n name: string;\n isGranted: boolean;\n }\n\n export interface Permission extends MinimumPermission {\n displayName: string;\n parentName: string;\n allowedProviders: string[];\n grantedProviders: GrantedProvider[];\n }\n\n export interface GrantedProvider {\n providerName: string;\n providerKey: string;\n }\n\n export interface UpdateRequest {\n permissions: MinimumPermission[];\n }\n}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.permission-management.js","sources":["ng://@abp/ng.permission-management/lib/actions/permission-management.actions.ts","ng://@abp/ng.permission-management/lib/services/permission-management.service.ts","ng://@abp/ng.permission-management/lib/states/permission-management.state.ts","ng://@abp/ng.permission-management/lib/components/permission-management.component.ts","ng://@abp/ng.permission-management/lib/permission-management.module.ts","ng://@abp/ng.permission-management/lib/models/permission-management.ts"],"sourcesContent":["import { PermissionManagement } from '../models/permission-management';\n\nexport class GetPermissions {\n static readonly type = '[PermissionManagement] Get Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider) {}\n}\n\nexport class UpdatePermissions {\n static readonly type = '[PermissionManagement] Update Permissions';\n constructor(public payload: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest) {}\n}\n","import { Injectable } from '@angular/core';\nimport { RestService, Rest } from '@abp/ng.core';\nimport { Observable } from 'rxjs';\nimport { PermissionManagement } from '../models/permission-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PermissionManagementService {\n constructor(private rest: RestService) {}\n\n getPermissions(params: PermissionManagement.GrantedProvider): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/abp/permissions',\n params,\n };\n\n return this.rest.request(request);\n }\n\n updatePermissions({\n permissions,\n providerKey,\n providerName,\n }: PermissionManagement.GrantedProvider & PermissionManagement.UpdateRequest): Observable {\n const request: Rest.Request = {\n method: 'PUT',\n url: '/api/abp/permissions',\n body: { permissions },\n params: { providerKey, providerName },\n };\n\n return this.rest.request(request);\n }\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementService } from '../services/permission-management.service';\nimport { tap } from 'rxjs/operators';\n\n@State({\n name: 'PermissionManagementState',\n defaults: { permissionRes: {} } as PermissionManagement.State,\n})\nexport class PermissionManagementState {\n @Selector()\n static getPermissionGroups({ permissionRes }: PermissionManagement.State) {\n return permissionRes.groups || [];\n }\n\n @Selector()\n static getEntitiyDisplayName({ permissionRes }: PermissionManagement.State): string {\n return permissionRes.entityDisplayName;\n }\n\n constructor(private permissionManagementService: PermissionManagementService) {}\n\n @Action(GetPermissions)\n permissionManagementGet({ patchState }: StateContext, { payload }: GetPermissions) {\n return this.permissionManagementService.getPermissions(payload).pipe(\n tap(permissionResponse =>\n patchState({\n permissionRes: permissionResponse,\n }),\n ),\n );\n }\n\n @Action(UpdatePermissions)\n permissionManagementUpdate(_, { payload }: UpdatePermissions) {\n return this.permissionManagementService.updatePermissions(payload);\n }\n}\n","import {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n Renderer2,\n SimpleChanges,\n TrackByFunction,\n} from '@angular/core';\nimport { Select, Store } from '@ngxs/store';\nimport { from, Observable } from 'rxjs';\nimport { map, pluck, take } from 'rxjs/operators';\nimport { GetPermissions, UpdatePermissions } from '../actions/permission-management.actions';\nimport { PermissionManagement } from '../models/permission-management';\nimport { PermissionManagementState } from '../states/permission-management.state';\n\ntype PermissionWithMargin = PermissionManagement.Permission & { margin: number };\n\n@Component({\n selector: 'abp-permission-management',\n templateUrl: './permission-management.component.html',\n})\nexport class PermissionManagementComponent implements OnInit, OnChanges {\n @Input()\n providerName: string;\n\n @Input()\n providerKey: string;\n\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n if (!this.selectedGroup) return;\n\n this._visible = value;\n this.visibleChange.emit(value);\n\n if (!value) {\n this.selectedGroup = null;\n }\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(PermissionManagementState.getPermissionGroups)\n groups$: Observable;\n\n @Select(PermissionManagementState.getEntitiyDisplayName)\n entityName$: Observable;\n\n selectedGroup: PermissionManagement.Group;\n\n permissions: PermissionManagement.Permission[] = [];\n\n selectThisTab: boolean = false;\n\n selectAllTab: boolean = false;\n\n modalBusy: boolean = false;\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n get selectedGroupPermissions$(): Observable {\n return this.groups$.pipe(\n map(groups =>\n this.selectedGroup ? groups.find(group => group.name === this.selectedGroup.name).permissions : [],\n ),\n map(permissions =>\n permissions.map(\n permission =>\n (({\n ...permission,\n margin: findMargin(permissions, permission),\n isGranted: this.permissions.find(per => per.name === permission.name).isGranted,\n } as any) as PermissionWithMargin),\n ),\n ),\n );\n }\n\n constructor(private store: Store, private renderer: Renderer2) {}\n\n ngOnInit(): void {}\n\n getChecked(name: string) {\n return (this.permissions.find(per => per.name === name) || { isGranted: false }).isGranted;\n }\n\n isGrantedByRole(grantedProviders: PermissionManagement.GrantedProvider[]): boolean {\n if (grantedProviders.length) {\n return grantedProviders.findIndex(p => p.providerName === 'Role') > -1;\n }\n return false;\n }\n\n onClickCheckbox(clickedPermission: PermissionManagement.Permission, value) {\n if (clickedPermission.isGranted && this.isGrantedByRole(clickedPermission.grantedProviders)) return;\n\n setTimeout(() => {\n this.permissions = this.permissions.map(per => {\n if (clickedPermission.name === per.name) {\n return { ...per, isGranted: !per.isGranted };\n } else if (clickedPermission.name === per.parentName && clickedPermission.isGranted) {\n return { ...per, isGranted: false };\n } else if (clickedPermission.parentName === per.name && !clickedPermission.isGranted) {\n return { ...per, isGranted: true };\n }\n\n return per;\n });\n\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }, 0);\n }\n\n setTabCheckboxState() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n const selectedPermissions = permissions.filter(per => per.isGranted);\n const element = document.querySelector('#select-all-in-this-tabs') as any;\n\n if (selectedPermissions.length === permissions.length) {\n element.indeterminate = false;\n this.selectThisTab = true;\n } else if (selectedPermissions.length === 0) {\n element.indeterminate = false;\n this.selectThisTab = false;\n } else {\n element.indeterminate = true;\n }\n });\n }\n\n setGrantCheckboxState() {\n const selectedAllPermissions = this.permissions.filter(per => per.isGranted);\n const checkboxElement = document.querySelector('#select-all-in-all-tabs') as any;\n\n if (selectedAllPermissions.length === this.permissions.length) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = true;\n } else if (selectedAllPermissions.length === 0) {\n checkboxElement.indeterminate = false;\n this.selectAllTab = false;\n } else {\n checkboxElement.indeterminate = true;\n }\n }\n\n onClickSelectThisTab() {\n this.selectedGroupPermissions$.pipe(take(1)).subscribe(permissions => {\n permissions.forEach(permission => {\n if (permission.isGranted && this.isGrantedByRole(permission.grantedProviders)) return;\n\n const index = this.permissions.findIndex(per => per.name === permission.name);\n\n this.permissions = [\n ...this.permissions.slice(0, index),\n { ...this.permissions[index], isGranted: !this.selectThisTab },\n ...this.permissions.slice(index + 1),\n ];\n });\n });\n\n this.setGrantCheckboxState();\n }\n\n onClickSelectAll() {\n this.permissions = this.permissions.map(permission => ({ ...permission, isGranted: !this.selectAllTab }));\n\n this.selectThisTab = !this.selectAllTab;\n }\n\n onChangeGroup(group: PermissionManagement.Group) {\n this.selectedGroup = group;\n this.setTabCheckboxState();\n }\n\n submit() {\n this.modalBusy = true;\n const unchangedPermissions = getPermissions(\n this.store.selectSnapshot(PermissionManagementState.getPermissionGroups),\n );\n\n const changedPermissions: PermissionManagement.MinimumPermission[] = this.permissions\n .filter(per =>\n unchangedPermissions.find(unchanged => unchanged.name === per.name).isGranted === per.isGranted ? false : true,\n )\n .map(({ name, isGranted }) => ({ name, isGranted }));\n\n if (changedPermissions.length) {\n this.store\n .dispatch(\n new UpdatePermissions({\n providerKey: this.providerKey,\n providerName: this.providerName,\n permissions: changedPermissions,\n }),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n });\n } else {\n this.modalBusy = false;\n this.visible = false;\n }\n }\n\n openModal() {\n if (!this.providerKey || !this.providerName) {\n throw new Error('Provider Key and Provider Name are required.');\n }\n\n this.store\n .dispatch(new GetPermissions({ providerKey: this.providerKey, providerName: this.providerName }))\n .pipe(pluck('PermissionManagementState', 'permissionRes'))\n .subscribe((permissionRes: PermissionManagement.Response) => {\n this.selectedGroup = permissionRes.groups[0];\n this.permissions = getPermissions(permissionRes.groups);\n\n this.visible = true;\n });\n }\n\n initModal() {\n this.setTabCheckboxState();\n this.setGrantCheckboxState();\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n\nfunction findMargin(permissions: PermissionManagement.Permission[], permission: PermissionManagement.Permission) {\n const parentPermission = permissions.find(per => per.name === permission.parentName);\n\n if (parentPermission && parentPermission.parentName) {\n let margin = 20;\n return (margin += findMargin(permissions, parentPermission));\n }\n\n return parentPermission ? 20 : 0;\n}\n\nfunction getPermissions(groups: PermissionManagement.Group[]): PermissionManagement.Permission[] {\n return groups.reduce((acc, val) => [...acc, ...val.permissions], []);\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { PermissionManagementComponent } from './components/permission-management.component';\nimport { PermissionManagementState } from './states/permission-management.state';\n\n@NgModule({\n declarations: [PermissionManagementComponent],\n imports: [CoreModule, ThemeSharedModule, NgxsModule.forFeature([PermissionManagementState])],\n exports: [PermissionManagementComponent],\n})\nexport class PermissionManagementModule {}\n","export namespace PermissionManagement {\n export interface State {\n permissionRes: Response;\n }\n\n export interface Response {\n entityDisplayName: string;\n groups: Group[];\n }\n\n export interface Group {\n name: string;\n displayName: string;\n permissions: Permission[];\n }\n\n export interface MinimumPermission {\n name: string;\n isGranted: boolean;\n }\n\n export interface Permission extends MinimumPermission {\n displayName: string;\n parentName: string;\n allowedProviders: string[];\n grantedProviders: GrantedProvider[];\n }\n\n export interface GrantedProvider {\n providerName: string;\n providerKey: string;\n }\n\n export interface UpdateRequest {\n permissions: MinimumPermission[];\n }\n}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/permission-management/lib/root-permission-management.module.d.ts b/npm/ng-packs/dist/permission-management/lib/root-permission-management.module.d.ts deleted file mode 100644 index 9156f28744..0000000000 --- a/npm/ng-packs/dist/permission-management/lib/root-permission-management.module.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { ModuleWithProviders } from '@angular/core'; -export declare class RootPermissionManagementModule { - static forRoot(): ModuleWithProviders; -} diff --git a/npm/ng-packs/dist/permission-management/public-api.d.ts b/npm/ng-packs/dist/permission-management/public-api.d.ts index a4f7fa2c23..47632ca4cd 100644 --- a/npm/ng-packs/dist/permission-management/public-api.d.ts +++ b/npm/ng-packs/dist/permission-management/public-api.d.ts @@ -1,4 +1,3 @@ -export * from './lib/root-permission-management.module'; export * from './lib/permission-management.module'; export * from './lib/actions'; export * from './lib/components'; diff --git a/npm/ng-packs/dist/setting-management/abp-ng.setting-management.d.ts b/npm/ng-packs/dist/setting-management/abp-ng.setting-management.d.ts index 7a8413f02b..5f3e971928 100644 --- a/npm/ng-packs/dist/setting-management/abp-ng.setting-management.d.ts +++ b/npm/ng-packs/dist/setting-management/abp-ng.setting-management.d.ts @@ -2,6 +2,6 @@ * Generated bundle index. Do not edit. */ export * from './public-api'; -export { InitialService as ɵb } from './lib/components/services/initial.service'; -export { SettingComponent as ɵa } from './lib/components/setting/setting.component'; -export { SettingManagementRoutingModule as ɵc } from './lib/setting-management-routing.module'; +export { SETTING_MANAGEMENT_ROUTES as ɵc } from './lib/constants/routes'; +export { SettingManagementService as ɵa } from './lib/services/setting-management.service'; +export { SettingManagementRoutingModule as ɵb } from './lib/setting-management-routing.module'; diff --git a/npm/ng-packs/dist/setting-management/abp-ng.setting-management.metadata.json b/npm/ng-packs/dist/setting-management/abp-ng.setting-management.metadata.json index 556144f39b..d56fb0dd1b 100644 --- a/npm/ng-packs/dist/setting-management/abp-ng.setting-management.metadata.json +++ b/npm/ng-packs/dist/setting-management/abp-ng.setting-management.metadata.json @@ -1 +1 @@ -{"__symbolic":"module","version":4,"exports":[{"from":"./lib/routes"}],"metadata":{"RootSettingManagementModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":2,"character":1},"arguments":[{}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"RootSettingManagementModule"},"providers":[]}}}},"SettingManagementModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":7,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ɵa"}],"imports":[{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":9,"character":44},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ThemeSharedModule","line":9,"character":56}],"providers":[{"__symbolic":"reference","name":"ɵb"}]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Self","line":13,"character":15}}]],"parameters":[{"__symbolic":"reference","name":"ɵb"}]}]}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"abp-setting","template":"
\n
\n

{{ 'AbpSettingManagement::Settings' | abpLocalization }}

\n
\n
\n \n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
    \n \n {{ setting.name | abpLocalization }}\n \n
\n
\n
\n
\n
\n

{{ selected.name | abpLocalization }}

\n
\n\n \n
\n
\n
\n
\n
\n
\n
\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵb"}]}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":9,"character":30}]}]}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":13,"character":1},"arguments":[{"imports":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":14,"character":12},"member":"forChild"},"arguments":[[{"path":"","component":{"__symbolic":"reference","module":"@abp/ng.core","name":"DynamicLayoutComponent","line":8,"character":15},"children":[{"path":"","component":{"__symbolic":"reference","name":"ɵa"}}]}]]}],"exports":[{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":15,"character":12}]}]}],"members":{}}},"origins":{"RootSettingManagementModule":"./lib/root-setting-management.module","SettingManagementModule":"./lib/setting-management.module","ɵa":"./lib/components/setting/setting.component","ɵb":"./lib/components/services/initial.service","ɵc":"./lib/setting-management-routing.module"},"importAs":"@abp/ng.setting-management"} \ No newline at end of file +{"__symbolic":"module","version":4,"exports":[{"from":"./lib/routes"}],"metadata":{"SETTING_LAYOUT":{"__symbolic":"reference","name":"SettingLayoutComponent"},"SettingManagementModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":8,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"SETTING_LAYOUT"}],"imports":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":10,"character":44},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ThemeSharedModule","line":10,"character":56}],"entryComponents":[{"__symbolic":"reference","name":"SETTING_LAYOUT"}]}]}],"members":{}},"SettingLayoutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"abp-setting-layout","template":"
\n
\n

{{ 'AbpSettingManagement::Settings' | abpLocalization }}

\n
\n \n
\n
\n
\n
\n\n
\n
\n
\n
\n \n
\n
\n
\n
    \n \n {{ setting.name | abpLocalization }}\n \n
\n
\n
\n
\n \n

{{ settingManagementService.selected.name | abpLocalization }}

\n
\n \n
\n
\n
\n
\n
\n
\n\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":17,"character":89}]}],"ngOnDestroy":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}]},"statics":{"type":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":13,"character":16},"member":"setting"}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":8,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":16,"character":30},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":16,"character":53}]}],"ngOnDestroy":[{"__symbolic":"method"}],"setSettings":[{"__symbolic":"method"}],"checkSelected":[{"__symbolic":"method"}],"setSelected":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":15,"character":1},"arguments":[{"imports":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":16,"character":12},"member":"forChild"},"arguments":[[{"path":"setting-management","component":{"__symbolic":"reference","module":"@abp/ng.core","name":"DynamicLayoutComponent","line":9,"character":15},"children":[{"path":"","component":{"__symbolic":"reference","name":"SettingLayoutComponent"}}],"data":{"routes":{"__symbolic":"reference","name":"ɵc"},"settings":[]}}]]}],"exports":[{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":17,"character":12}]}]}],"members":{}},"ɵc":{"routes":[{"name":"Settings","path":"setting-management","parentName":"AbpUiNavigation::Menu:Administration","layout":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":8,"character":14},"member":"application"},"order":6,"iconClass":"fa fa-cog"}]}},"origins":{"SETTING_LAYOUT":"./lib/components/setting-layout.component","SettingManagementModule":"./lib/setting-management.module","SettingLayoutComponent":"./lib/components/setting-layout.component","ɵa":"./lib/services/setting-management.service","ɵb":"./lib/setting-management-routing.module","ɵc":"./lib/constants/routes"},"importAs":"@abp/ng.setting-management"} \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.js b/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.js index 8f55023469..f3aa2bbd48 100644 --- a/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.js +++ b/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.js @@ -1,327 +1,215 @@ (function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@abp/ng.core'), require('@angular/router'), require('snq'), require('@abp/ng.theme.shared')) : - typeof define === 'function' && define.amd ? define('@abp/ng.setting-management', ['exports', '@angular/core', '@abp/ng.core', '@angular/router', 'snq', '@abp/ng.theme.shared'], factory) : - (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng['setting-management'] = {}), global.ng.core, global.ng_core, global.ng.router, global.snq, global.ng_theme_shared)); -}(this, function (exports, core, ng_core, router, snq, ng_theme_shared) { 'use strict'; - - snq = snq && snq.hasOwnProperty('default') ? snq['default'] : snq; - - /*! ***************************************************************************** - Copyright (c) Microsoft Corporation. All rights reserved. - Licensed under the Apache License, Version 2.0 (the "License"); you may not use - this file except in compliance with the License. You may obtain a copy of the - License at http://www.apache.org/licenses/LICENSE-2.0 - - THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED - WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, - MERCHANTABLITY OR NON-INFRINGEMENT. - - See the Apache Version 2.0 License for specific language governing permissions - and limitations under the License. - ***************************************************************************** */ - /* global Reflect, Promise */ - - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - - function __extends(d, b) { - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - } - - var __assign = function() { - __assign = Object.assign || function __assign(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; - } - return t; - }; - return __assign.apply(this, arguments); - }; - - function __rest(s, e) { - var t = {}; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { - if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) - t[p[i]] = s[p[i]]; - } - return t; - } - - function __decorate(decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; - } - - function __param(paramIndex, decorator) { - return function (target, key) { decorator(target, key, paramIndex); } - } - - function __metadata(metadataKey, metadataValue) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue); - } - - function __awaiter(thisArg, _arguments, P, generator) { - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - } - - function __generator(thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (_) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } - } - - function __exportStar(m, exports) { - for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; - } - - function __values(o) { - var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0; - if (m) return m.call(o); - return { - next: function () { - if (o && i >= o.length) o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - } - - function __read(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); - } - catch (error) { e = { error: error }; } - finally { - try { - if (r && !r.done && (m = i["return"])) m.call(i); - } - finally { if (e) throw e.error; } - } - return ar; - } - - function __spread() { - for (var ar = [], i = 0; i < arguments.length; i++) - ar = ar.concat(__read(arguments[i])); - return ar; - } - - function __spreadArrays() { - for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length; - for (var r = Array(s), k = 0, i = 0; i < il; i++) - for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) - r[k] = a[j]; - return r; - }; - - function __await(v) { - return this instanceof __await ? (this.v = v, this) : new __await(v); - } - - function __asyncGenerator(thisArg, _arguments, generator) { - if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); - var g = generator.apply(thisArg, _arguments || []), i, q = []; - return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i; - function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; } - function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } - function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } - function fulfill(value) { resume("next", value); } - function reject(value) { resume("throw", value); } - function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } - } - - function __asyncDelegator(o) { - var i, p; - return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; - function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; } - } - - function __asyncValues(o) { - if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); - var m = o[Symbol.asyncIterator], i; - return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i); - function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; } - function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); } - } - - function __makeTemplateObject(cooked, raw) { - if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } - return cooked; - }; - - function __importStar(mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; - result.default = mod; - return result; - } - - function __importDefault(mod) { - return (mod && mod.__esModule) ? mod : { default: mod }; - } + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@abp/ng.core'), require('@abp/ng.theme.shared'), require('@angular/core'), require('@angular/router'), require('rxjs'), require('@ngxs/router-plugin'), require('@ngxs/store'), require('rxjs/operators')) : + typeof define === 'function' && define.amd ? define('@abp/ng.setting-management', ['exports', '@abp/ng.core', '@abp/ng.theme.shared', '@angular/core', '@angular/router', 'rxjs', '@ngxs/router-plugin', '@ngxs/store', 'rxjs/operators'], factory) : + (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng['setting-management'] = {}), global.ng_core, global.ng_theme_shared, global.ng.core, global.ng.router, global.rxjs, global.routerPlugin, global.store, global.rxjs.operators)); +}(this, function (exports, ng_core, ng_theme_shared, core, router, rxjs, routerPlugin, store, operators) { 'use strict'; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - var RootSettingManagementModule = /** @class */ (function () { - function RootSettingManagementModule() { + var SettingManagementService = /** @class */ (function () { + function SettingManagementService(router$1, store) { + var _this = this; + this.router = router$1; + this.store = store; + this.settings = []; + this.selected = (/** @type {?} */ ({})); + this.destroy$ = new rxjs.Subject(); + /** @type {?} */ + var timeout; + this.router.events + .pipe(operators.filter((/** + * @param {?} event + * @return {?} + */ + function (event) { return event instanceof router.RouteConfigLoadEnd; })), operators.takeUntil(this.destroy$)) + .subscribe((/** + * @param {?} event + * @return {?} + */ + function (event) { + if (timeout) { + timeout.unsubscribe(); + _this.destroy$.next(); + } + timeout = rxjs.timer(150).subscribe((/** + * @return {?} + */ + function () { + _this.setSettings(); + })); + })); } /** * @return {?} */ - RootSettingManagementModule.forRoot = /** + SettingManagementService.prototype.ngOnDestroy = /** * @return {?} */ function () { - return { - ngModule: RootSettingManagementModule, - providers: [], - }; + this.destroy$.next(); }; - RootSettingManagementModule.decorators = [ - { type: core.NgModule, args: [{},] } - ]; - return RootSettingManagementModule; - }()); - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var InitialService = /** @class */ (function () { - function InitialService(router) { - this.router = router; - this.settings = this.router.config - .map((/** - * @param {?} route - * @return {?} - */ - function (route) { return snq((/** - * @return {?} - */ - function () { return route.data.routes.settings; })); })) - .filter((/** - * @param {?} settings - * @return {?} - */ - function (settings) { return settings && settings.length; })) - .reduce((/** - * @param {?} acc - * @param {?} val + /** + * @return {?} + */ + SettingManagementService.prototype.setSettings = /** + * @return {?} + */ + function () { + var _this = this; + setTimeout((/** * @return {?} */ - function (acc, val) { return __spread(acc, val); }), []) - .sort((/** - * @param {?} a - * @param {?} b + function () { + /** @type {?} */ + var route = _this.router.config.find((/** + * @param {?} r + * @return {?} + */ + function (r) { return r.path === 'setting-management'; })); + _this.settings = route.data.settings.sort((/** + * @param {?} a + * @param {?} b + * @return {?} + */ + function (a, b) { return a.order - b.order; })); + _this.checkSelected(); + }), 0); + }; + /** + * @return {?} + */ + SettingManagementService.prototype.checkSelected = /** + * @return {?} + */ + function () { + var _this = this; + this.selected = this.settings.find((/** + * @param {?} setting * @return {?} */ - function (a, b) { return a.order - b.order; })); - } - InitialService.decorators = [ - { type: core.Injectable } + function (setting) { return setting.url === _this.router.url; })) || ((/** @type {?} */ ({}))); + if (!this.selected.name && this.settings.length) { + this.setSelected(this.settings[0]); + } + }; + /** + * @param {?} selected + * @return {?} + */ + SettingManagementService.prototype.setSelected = /** + * @param {?} selected + * @return {?} + */ + function (selected) { + this.selected = selected; + this.store.dispatch(new routerPlugin.Navigate([selected.url])); + }; + SettingManagementService.decorators = [ + { type: core.Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ - InitialService.ctorParameters = function () { return [ - { type: router.Router } + SettingManagementService.ctorParameters = function () { return [ + { type: router.Router }, + { type: store.Store } ]; }; - return InitialService; + /** @nocollapse */ SettingManagementService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function SettingManagementService_Factory() { return new SettingManagementService(core.ɵɵinject(router.Router), core.ɵɵinject(store.Store)); }, token: SettingManagementService, providedIn: "root" }); + return SettingManagementService; }()); if (false) { /** @type {?} */ - InitialService.prototype.settings; + SettingManagementService.prototype.settings; + /** @type {?} */ + SettingManagementService.prototype.selected; + /** + * @type {?} + * @private + */ + SettingManagementService.prototype.destroy$; /** * @type {?} * @private */ - InitialService.prototype.router; + SettingManagementService.prototype.router; + /** + * @type {?} + * @private + */ + SettingManagementService.prototype.store; } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - var SettingComponent = /** @class */ (function () { - function SettingComponent(initialService) { - this.initialService = initialService; - this.selected = (/** @type {?} */ ({})); + var SettingLayoutComponent = /** @class */ (function () { + function SettingLayoutComponent(settingManagementService, router) { + this.settingManagementService = settingManagementService; + this.router = router; + this.trackByFn = (/** + * @param {?} _ + * @param {?} item + * @return {?} + */ + function (_, item) { return item.name; }); + if (settingManagementService.selected && + this.router.url !== settingManagementService.selected.url && + settingManagementService.settings.length) { + settingManagementService.setSelected(settingManagementService.settings[0]); + } } /** * @return {?} */ - SettingComponent.prototype.ngOnInit = /** + SettingLayoutComponent.prototype.ngOnDestroy = /** + * @return {?} + */ + function () { }; + /** + * @return {?} + */ + SettingLayoutComponent.prototype.ngAfterViewInit = /** * @return {?} */ function () { - this.settings = this.initialService.settings; - this.selected = this.settings[0]; + var _this = this; + rxjs.timer(250).subscribe((/** + * @return {?} + */ + function () { + if (!_this.settingManagementService.settings.length) { + _this.settingManagementService.setSettings(); + } + })); }; - SettingComponent.decorators = [ + // required for dynamic component + SettingLayoutComponent.type = "setting" /* setting */; + SettingLayoutComponent.decorators = [ { type: core.Component, args: [{ - selector: 'abp-setting', - template: "
\n
\n

{{ 'AbpSettingManagement::Settings' | abpLocalization }}

\n
\n
\n \n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
    \n \n {{ setting.name | abpLocalization }}\n \n
\n
\n
\n
\n
\n

{{ selected.name | abpLocalization }}

\n
\n\n \n
\n
\n
\n
\n
\n
\n
\n" + selector: 'abp-setting-layout', + template: "
\n
\n

{{ 'AbpSettingManagement::Settings' | abpLocalization }}

\n
\n \n
\n
\n
\n
\n\n
\n
\n
\n
\n \n
\n
\n
\n
    \n \n {{ setting.name | abpLocalization }}\n \n
\n
\n
\n
\n \n

{{ settingManagementService.selected.name | abpLocalization }}

\n
\n \n
\n
\n
\n
\n
\n
\n\n" }] } ]; /** @nocollapse */ - SettingComponent.ctorParameters = function () { return [ - { type: InitialService } + SettingLayoutComponent.ctorParameters = function () { return [ + { type: SettingManagementService }, + { type: router.Router } ]; }; - return SettingComponent; + return SettingLayoutComponent; }()); if (false) { /** @type {?} */ - SettingComponent.prototype.settings; + SettingLayoutComponent.type; + /** @type {?} */ + SettingLayoutComponent.prototype.trackByFn; /** @type {?} */ - SettingComponent.prototype.selected; + SettingLayoutComponent.prototype.settingManagementService; /** * @type {?} * @private */ - SettingComponent.prototype.initialService; + SettingLayoutComponent.prototype.router; } /** @@ -329,11 +217,31 @@ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** @type {?} */ + var SETTING_MANAGEMENT_ROUTES = { + routes: (/** @type {?} */ ([ + { + name: 'Settings', + path: 'setting-management', + parentName: 'AbpUiNavigation::Menu:Administration', + layout: "application" /* application */, + order: 6, + iconClass: 'fa fa-cog', + }, + ])), + }; + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var ɵ0 = { routes: SETTING_MANAGEMENT_ROUTES, settings: [] }; + /** @type {?} */ var routes = [ { - path: '', + path: 'setting-management', component: ng_core.DynamicLayoutComponent, - children: [{ path: '', component: SettingComponent }], + children: [{ path: '', component: SettingLayoutComponent }], + data: ɵ0, }, ]; var SettingManagementRoutingModule = /** @class */ (function () { @@ -352,54 +260,28 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ + /** @type {?} */ + var SETTING_LAYOUT = SettingLayoutComponent; var SettingManagementModule = /** @class */ (function () { - function SettingManagementModule(initialService) { + function SettingManagementModule() { } SettingManagementModule.decorators = [ { type: core.NgModule, args: [{ - declarations: [SettingComponent], + declarations: [SETTING_LAYOUT], imports: [SettingManagementRoutingModule, ng_core.CoreModule, ng_theme_shared.ThemeSharedModule], - providers: [InitialService], + entryComponents: [SETTING_LAYOUT], },] } ]; - /** @nocollapse */ - SettingManagementModule.ctorParameters = function () { return [ - { type: InitialService, decorators: [{ type: core.Self }] } - ]; }; return SettingManagementModule; }()); - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var SETTING_MANAGEMENT_ROUTES = { - routes: (/** @type {?} */ ([ - { - name: 'Settings', - path: 'setting-management', - parentName: 'AbpUiNavigation::Menu:Administration', - layout: "application" /* application */, - order: 6, - iconClass: 'fa fa-cog', - }, - ])), - settings: [], - }; - - exports.RootSettingManagementModule = RootSettingManagementModule; + exports.SETTING_LAYOUT = SETTING_LAYOUT; exports.SETTING_MANAGEMENT_ROUTES = SETTING_MANAGEMENT_ROUTES; - exports.SettingComponent = SettingComponent; + exports.SettingLayoutComponent = SettingLayoutComponent; exports.SettingManagementModule = SettingManagementModule; - exports.ɵa = SettingComponent; - exports.ɵb = InitialService; - exports.ɵc = SettingManagementRoutingModule; + exports.ɵa = SettingManagementService; + exports.ɵb = SettingManagementRoutingModule; + exports.ɵc = SETTING_MANAGEMENT_ROUTES; Object.defineProperty(exports, '__esModule', { value: true }); diff --git a/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.js.map b/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.js.map index ce94abda1b..0a67ce4a16 100644 --- a/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.js.map +++ b/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.setting-management.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.setting-management/lib/root-setting-management.module.ts","ng://@abp/ng.setting-management/lib/components/services/initial.service.ts","ng://@abp/ng.setting-management/lib/components/setting/setting.component.ts","ng://@abp/ng.setting-management/lib/setting-management-routing.module.ts","ng://@abp/ng.setting-management/lib/setting-management.module.ts","ng://@abp/ng.setting-management/lib/constants/routes.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootSettingManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootSettingManagementModule,\n providers: [],\n };\n }\n}\n","import { SettingTab } from '@abp/ng.theme.shared';\nimport { Injectable, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport snq from 'snq';\n\n@Injectable()\nexport class InitialService {\n public settings: SettingTab[];\n\n constructor(private router: Router) {\n this.settings = this.router.config\n .map(route => snq(() => route.data.routes.settings))\n .filter(settings => settings && settings.length)\n .reduce((acc, val) => [...acc, ...val], [])\n .sort((a, b) => a.order - b.order);\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { SettingTab, fade } from '@abp/ng.theme.shared';\nimport { InitialService } from '../services/initial.service';\n\n@Component({\n selector: 'abp-setting',\n templateUrl: './setting.component.html',\n})\nexport class SettingComponent implements OnInit {\n settings: SettingTab[];\n\n selected = {} as SettingTab;\n\n constructor(private initialService: InitialService) {}\n\n ngOnInit() {\n this.settings = this.initialService.settings;\n this.selected = this.settings[0];\n }\n}\n","import { DynamicLayoutComponent } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { SettingComponent } from './components/setting/setting.component';\n\nconst routes: Routes = [\n {\n path: '',\n component: DynamicLayoutComponent,\n children: [{ path: '', component: SettingComponent }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class SettingManagementRoutingModule {}\n","import { CoreModule, noop } from '@abp/ng.core';\nimport { NgModule, ModuleWithProviders, APP_INITIALIZER, Self } from '@angular/core';\nimport { SettingComponent } from './components/setting/setting.component';\nimport { SettingManagementRoutingModule } from './setting-management-routing.module';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { InitialService } from './components/services/initial.service';\n\n@NgModule({\n declarations: [SettingComponent],\n imports: [SettingManagementRoutingModule, CoreModule, ThemeSharedModule],\n providers: [InitialService],\n})\nexport class SettingManagementModule {\n constructor(@Self() initialService: InitialService) {}\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const SETTING_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'Settings',\n path: 'setting-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n order: 6,\n iconClass: 'fa fa-cog',\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n"],"names":["NgModule","Injectable","Router","Component","DynamicLayoutComponent","RouterModule","CoreModule","ThemeSharedModule","Self"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.setting-management.umd.js","sources":["ng://@abp/ng.setting-management/lib/services/setting-management.service.ts","ng://@abp/ng.setting-management/lib/components/setting-layout.component.ts","ng://@abp/ng.setting-management/lib/constants/routes.ts","ng://@abp/ng.setting-management/lib/setting-management-routing.module.ts","ng://@abp/ng.setting-management/lib/setting-management.module.ts"],"sourcesContent":["import { SettingTab } from '@abp/ng.theme.shared';\nimport { Injectable } from '@angular/core';\nimport { RouteConfigLoadEnd, Router } from '@angular/router';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { Subject, Subscription, timer } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\n\n@Injectable({ providedIn: 'root' })\nexport class SettingManagementService {\n settings: SettingTab[] = [];\n\n selected = {} as SettingTab;\n\n private destroy$ = new Subject();\n\n constructor(private router: Router, private store: Store) {\n let timeout: Subscription;\n this.router.events\n .pipe(\n filter(event => event instanceof RouteConfigLoadEnd),\n takeUntil(this.destroy$),\n )\n .subscribe(event => {\n if (timeout) {\n timeout.unsubscribe();\n this.destroy$.next();\n }\n timeout = timer(150).subscribe(() => {\n this.setSettings();\n });\n });\n }\n\n ngOnDestroy() {\n this.destroy$.next();\n }\n\n setSettings() {\n setTimeout(() => {\n const route = this.router.config.find(r => r.path === 'setting-management');\n this.settings = route.data.settings.sort((a, b) => a.order - b.order);\n this.checkSelected();\n }, 0);\n }\n\n checkSelected() {\n this.selected = this.settings.find(setting => setting.url === this.router.url) || ({} as SettingTab);\n\n if (!this.selected.name && this.settings.length) {\n this.setSelected(this.settings[0]);\n }\n }\n\n setSelected(selected: SettingTab) {\n this.selected = selected;\n this.store.dispatch(new Navigate([selected.url]));\n }\n}\n","import { eLayoutType } from '@abp/ng.core';\nimport { SettingTab } from '@abp/ng.theme.shared';\nimport { Component, TrackByFunction } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { timer } from 'rxjs';\nimport { SettingManagementService } from '../services/setting-management.service';\n\n@Component({\n selector: 'abp-setting-layout',\n templateUrl: './setting-layout.component.html',\n})\nexport class SettingLayoutComponent {\n // required for dynamic component\n static type = eLayoutType.setting;\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n constructor(public settingManagementService: SettingManagementService, private router: Router) {\n if (\n settingManagementService.selected &&\n this.router.url !== settingManagementService.selected.url &&\n settingManagementService.settings.length\n ) {\n settingManagementService.setSelected(settingManagementService.settings[0]);\n }\n }\n\n ngOnDestroy() {}\n\n ngAfterViewInit() {\n timer(250).subscribe(() => {\n if (!this.settingManagementService.settings.length) {\n this.settingManagementService.setSettings();\n }\n });\n }\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const SETTING_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'Settings',\n path: 'setting-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n order: 6,\n iconClass: 'fa fa-cog',\n },\n ] as ABP.FullRoute[],\n};\n","import { DynamicLayoutComponent } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { SETTING_MANAGEMENT_ROUTES } from './constants/routes';\nimport { SettingLayoutComponent } from './components/setting-layout.component';\n\nconst routes: Routes = [\n {\n path: 'setting-management',\n component: DynamicLayoutComponent,\n children: [{ path: '', component: SettingLayoutComponent }],\n data: { routes: SETTING_MANAGEMENT_ROUTES, settings: [] },\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class SettingManagementRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { SettingLayoutComponent } from './components/setting-layout.component';\nimport { SettingManagementRoutingModule } from './setting-management-routing.module';\n\nexport const SETTING_LAYOUT = SettingLayoutComponent;\n\n@NgModule({\n declarations: [SETTING_LAYOUT],\n imports: [SettingManagementRoutingModule, CoreModule, ThemeSharedModule],\n entryComponents: [SETTING_LAYOUT],\n})\nexport class SettingManagementModule {}\n"],"names":["router","Subject","filter","RouteConfigLoadEnd","takeUntil","timer","Navigate","Injectable","Router","Store","Component","DynamicLayoutComponent","NgModule","RouterModule","CoreModule","ThemeSharedModule"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.min.js b/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.min.js index 1d002c98f4..12a09b52a7 100644 --- a/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.min.js +++ b/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.min.js @@ -1,2 +1,2 @@ -!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@angular/core"),require("@abp/ng.core"),require("@angular/router"),require("snq"),require("@abp/ng.theme.shared")):"function"==typeof define&&define.amd?define("@abp/ng.setting-management",["exports","@angular/core","@abp/ng.core","@angular/router","snq","@abp/ng.theme.shared"],n):n(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng["setting-management"]={}),e.ng.core,e.ng_core,e.ng.router,e.snq,e.ng_theme_shared)}(this,function(e,n,t,r,a,o){"use strict";a=a&&a.hasOwnProperty("default")?a.default:a;function i(e,n){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var r,a,o=t.call(e),i=[];try{for(;(void 0===n||n-- >0)&&!(r=o.next()).done;)i.push(r.value)}catch(e){a={error:e}}finally{try{r&&!r.done&&(t=o.return)&&t.call(o)}finally{if(a)throw a.error}}return i}var s=function(){function e(){}return e.forRoot=function(){return{ngModule:e,providers:[]}},e.decorators=[{type:n.NgModule,args:[{}]}],e}(),c=function(){function e(e){this.router=e,this.settings=this.router.config.map(function(e){return a(function(){return e.data.routes.settings})}).filter(function(e){return e&&e.length}).reduce(function(e,n){return function(){for(var e=[],n=0;n\n
\n

{{ \'AbpSettingManagement::Settings\' | abpLocalization }}

\n
\n \n
\n
\n
\n\n\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n

{{ selected.name | abpLocalization }}

\n
\n\n \n
\n
\n
\n
\n
\n
\n
\n'}]}],e.ctorParameters=function(){return[{type:c}]},e}();var d=[{path:"",component:t.DynamicLayoutComponent,children:[{path:"",component:l}]}],u=function(){function e(){}return e.decorators=[{type:n.NgModule,args:[{imports:[r.RouterModule.forChild(d)],exports:[r.RouterModule]}]}],e}(),p=function(){function e(e){}return e.decorators=[{type:n.NgModule,args:[{declarations:[l],imports:[u,t.CoreModule,o.ThemeSharedModule],providers:[c]}]}],e.ctorParameters=function(){return[{type:c,decorators:[{type:n.Self}]}]},e}();e.RootSettingManagementModule=s,e.SETTING_MANAGEMENT_ROUTES={routes:[{name:"Settings",path:"setting-management",parentName:"AbpUiNavigation::Menu:Administration",layout:"application",order:6,iconClass:"fa fa-cog"}],settings:[]},e.SettingComponent=l,e.SettingManagementModule=p,e.ɵa=l,e.ɵb=c,e.ɵc=u,Object.defineProperty(e,"__esModule",{value:!0})}); +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@abp/ng.core"),require("@abp/ng.theme.shared"),require("@angular/core"),require("@angular/router"),require("rxjs"),require("@ngxs/router-plugin"),require("@ngxs/store"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("@abp/ng.setting-management",["exports","@abp/ng.core","@abp/ng.theme.shared","@angular/core","@angular/router","rxjs","@ngxs/router-plugin","@ngxs/store","rxjs/operators"],t):t(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng["setting-management"]={}),e.ng_core,e.ng_theme_shared,e.ng.core,e.ng.router,e.rxjs,e.routerPlugin,e.store,e.rxjs.operators)}(this,function(e,t,n,r,i,s,a,o,c){"use strict";var u=function(){function e(e,t){var n,r=this;this.router=e,this.store=t,this.settings=[],this.selected={},this.destroy$=new s.Subject,this.router.events.pipe(c.filter(function(e){return e instanceof i.RouteConfigLoadEnd}),c.takeUntil(this.destroy$)).subscribe(function(e){n&&(n.unsubscribe(),r.destroy$.next()),n=s.timer(150).subscribe(function(){r.setSettings()})})}return e.prototype.ngOnDestroy=function(){this.destroy$.next()},e.prototype.setSettings=function(){var e=this;setTimeout(function(){var t=e.router.config.find(function(e){return"setting-management"===e.path});e.settings=t.data.settings.sort(function(e,t){return e.order-t.order}),e.checkSelected()},0)},e.prototype.checkSelected=function(){var e=this;this.selected=this.settings.find(function(t){return t.url===e.router.url})||{},!this.selected.name&&this.settings.length&&this.setSelected(this.settings[0])},e.prototype.setSelected=function(e){this.selected=e,this.store.dispatch(new a.Navigate([e.url]))},e.decorators=[{type:r.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:i.Router},{type:o.Store}]},e.ngInjectableDef=r.ɵɵdefineInjectable({factory:function(){return new e(r.ɵɵinject(i.Router),r.ɵɵinject(o.Store))},token:e,providedIn:"root"}),e}();var d=function(){function e(e,t){this.settingManagementService=e,this.router=t,this.trackByFn=function(e,t){return t.name},e.selected&&this.router.url!==e.selected.url&&e.settings.length&&e.setSelected(e.settings[0])}return e.prototype.ngOnDestroy=function(){},e.prototype.ngAfterViewInit=function(){var e=this;s.timer(250).subscribe(function(){e.settingManagementService.settings.length||e.settingManagementService.setSettings()})},e.type="setting",e.decorators=[{type:r.Component,args:[{selector:"abp-setting-layout",template:'
\n
\n

{{ \'AbpSettingManagement::Settings\' | abpLocalization }}

\n
\n \x3c!-- --\x3e\n
\n
\n
\n
\n\n
\n
\n
\n
\n \n
\n
\n
\n \n
\n
\n
\n \n

{{ settingManagementService.selected.name | abpLocalization }}

\n
\n \n
\n
\n
\n
\n
\n
\n\n'}]}],e.ctorParameters=function(){return[{type:u},{type:i.Router}]},e}();var g={routes:[{name:"Settings",path:"setting-management",parentName:"AbpUiNavigation::Menu:Administration",layout:"application",order:6,iconClass:"fa fa-cog"}]},l={routes:g,settings:[]},p=[{path:"setting-management",component:t.DynamicLayoutComponent,children:[{path:"",component:d}],data:l}],m=function(){function e(){}return e.decorators=[{type:r.NgModule,args:[{imports:[i.RouterModule.forChild(p)],exports:[i.RouterModule]}]}],e}(),f=d,v=function(){function e(){}return e.decorators=[{type:r.NgModule,args:[{declarations:[f],imports:[m,t.CoreModule,n.ThemeSharedModule],entryComponents:[f]}]}],e}();e.SETTING_LAYOUT=f,e.SETTING_MANAGEMENT_ROUTES=g,e.SettingLayoutComponent=d,e.SettingManagementModule=v,e.ɵa=u,e.ɵb=m,e.ɵc=g,Object.defineProperty(e,"__esModule",{value:!0})}); //# sourceMappingURL=abp-ng.setting-management.umd.min.js.map \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.min.js.map b/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.min.js.map index 925d347e20..1a13f72e5e 100644 --- a/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.min.js.map +++ b/npm/ng-packs/dist/setting-management/bundles/abp-ng.setting-management.umd.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.setting-management/lib/root-setting-management.module.ts","ng://@abp/ng.setting-management/lib/components/services/initial.service.ts","ng://@abp/ng.setting-management/lib/components/setting/setting.component.ts","ng://@abp/ng.setting-management/lib/setting-management-routing.module.ts","ng://@abp/ng.setting-management/lib/setting-management.module.ts","ng://@abp/ng.setting-management/lib/constants/routes.ts"],"names":["__read","o","n","m","Symbol","iterator","r","e","i","call","ar","next","done","push","value","error","RootSettingManagementModule","forRoot","ngModule","providers","NgModule","args","InitialService","router","this","settings","config","map","route","snq","data","routes","filter","length","reduce","acc","val","arguments","concat","__spread","sort","a","b","order","Injectable","Router","SettingComponent","initialService","selected","prototype","ngOnInit","Component","selector","template","path","component","DynamicLayoutComponent","children","SettingManagementRoutingModule","imports","RouterModule","forChild","exports","SettingManagementModule","declarations","CoreModule","ThemeSharedModule","decorators","type","Self","name","parentName","layout","iconClass"],"mappings":"slBAuHO,SAASA,EAAOC,EAAGC,GACtB,IAAIC,EAAsB,mBAAXC,QAAyBH,EAAEG,OAAOC,UACjD,IAAKF,EAAG,OAAOF,EACf,IAAmBK,EAAYC,EAA3BC,EAAIL,EAAEM,KAAKR,GAAOS,EAAK,GAC3B,IACI,WAAc,IAANR,GAAgBA,KAAM,MAAQI,EAAIE,EAAEG,QAAQC,MAAMF,EAAGG,KAAKP,EAAEQ,OAExE,MAAOC,GAASR,EAAI,CAAEQ,MAAOA,GACjC,QACQ,IACQT,IAAMA,EAAEM,OAAST,EAAIK,EAAU,SAAIL,EAAEM,KAAKD,GAE1D,QAAkB,GAAID,EAAG,MAAMA,EAAEQ,OAE7B,OAAOL,ECrIX,IAAAM,EAAA,WAEA,SAAAA,KAQA,OANSA,EAAAC,QAAP,WACE,MAAO,CACLC,SAAUF,EACVG,UAAW,yBALhBC,EAAAA,SAAQC,KAAA,CAAC,MAQVL,EAVA,gBCSE,SAAAM,EAAoBC,GAAAC,KAAAD,OAAAA,EAClBC,KAAKC,SAAWD,KAAKD,OAAOG,OACzBC,IAAG,SAACC,GAAS,OAAAC,EAAG,WAAO,OAAAD,EAAME,KAAKC,OAAON,aACzCO,OAAM,SAACP,GAAY,OAAAA,GAAYA,EAASQ,SACxCC,OAAM,SAAEC,EAAKC,GAAQ,OF2HrB,WACH,IAAK,IAAI1B,EAAK,GAAIF,EAAI,EAAGA,EAAI6B,UAAUJ,OAAQzB,IAC3CE,EAAKA,EAAG4B,OAAOtC,EAAOqC,UAAU7B,KACpC,OAAOE,EE9HiB6B,CAAIJ,EAAQC,IAAM,IACvCI,KAAI,SAAEC,EAAGC,GAAM,OAAAD,EAAEE,MAAQD,EAAEC,QAElC,2BAXCC,EAAAA,sDAHQC,EAAAA,UAcTvB,KChBA,IAAAwB,EAAA,WAaE,SAAAA,EAAoBC,GAAAvB,KAAAuB,eAAAA,EAFpBvB,KAAAwB,SAAQ,GAQV,OAJEF,EAAAG,UAAAC,SAAA,WACE1B,KAAKC,SAAWD,KAAKuB,eAAetB,SACpCD,KAAKwB,SAAWxB,KAAKC,SAAS,wBAbjC0B,EAAAA,UAAS9B,KAAA,CAAC,CACT+B,SAAU,cACVC,SAAA,gtDAJO/B,KAiBTwB,EAnBA,OCKMf,EAAiB,CACrB,CACEuB,KAAM,GACNC,UAAWC,EAAAA,uBACXC,SAAU,CAAC,CAAEH,KAAM,GAAIC,UAAWT,MAItCY,EAAA,WAAA,SAAAA,KAI6C,2BAJ5CtC,EAAAA,SAAQC,KAAA,CAAC,CACRsC,QAAS,CAACC,EAAAA,aAAaC,SAAS9B,IAChC+B,QAAS,CAACF,EAAAA,kBAEiCF,EAJ7C,GCbAK,EAAA,WAaE,SAAAA,EAAoBhB,IACtB,2BAPC3B,EAAAA,SAAQC,KAAA,CAAC,CACR2C,aAAc,CAAClB,GACfa,QAAS,CAACD,EAAgCO,EAAAA,WAAYC,EAAAA,mBACtD/C,UAAW,CAACG,gDALLA,EAAc6C,WAAA,CAAA,CAAAC,KAQRC,EAAAA,UACfN,EAdA,+DCEyC,CACvChC,OAAM,CACJ,CACEuC,KAAM,WACNhB,KAAM,qBACNiB,WAAY,uCACZC,OAAM,cACN7B,MAAO,EACP8B,UAAW,cAGfhD,SAAU","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootSettingManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootSettingManagementModule,\n providers: [],\n };\n }\n}\n","import { SettingTab } from '@abp/ng.theme.shared';\nimport { Injectable, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport snq from 'snq';\n\n@Injectable()\nexport class InitialService {\n public settings: SettingTab[];\n\n constructor(private router: Router) {\n this.settings = this.router.config\n .map(route => snq(() => route.data.routes.settings))\n .filter(settings => settings && settings.length)\n .reduce((acc, val) => [...acc, ...val], [])\n .sort((a, b) => a.order - b.order);\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { SettingTab, fade } from '@abp/ng.theme.shared';\nimport { InitialService } from '../services/initial.service';\n\n@Component({\n selector: 'abp-setting',\n templateUrl: './setting.component.html',\n})\nexport class SettingComponent implements OnInit {\n settings: SettingTab[];\n\n selected = {} as SettingTab;\n\n constructor(private initialService: InitialService) {}\n\n ngOnInit() {\n this.settings = this.initialService.settings;\n this.selected = this.settings[0];\n }\n}\n","import { DynamicLayoutComponent } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { SettingComponent } from './components/setting/setting.component';\n\nconst routes: Routes = [\n {\n path: '',\n component: DynamicLayoutComponent,\n children: [{ path: '', component: SettingComponent }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class SettingManagementRoutingModule {}\n","import { CoreModule, noop } from '@abp/ng.core';\nimport { NgModule, ModuleWithProviders, APP_INITIALIZER, Self } from '@angular/core';\nimport { SettingComponent } from './components/setting/setting.component';\nimport { SettingManagementRoutingModule } from './setting-management-routing.module';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { InitialService } from './components/services/initial.service';\n\n@NgModule({\n declarations: [SettingComponent],\n imports: [SettingManagementRoutingModule, CoreModule, ThemeSharedModule],\n providers: [InitialService],\n})\nexport class SettingManagementModule {\n constructor(@Self() initialService: InitialService) {}\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const SETTING_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'Settings',\n path: 'setting-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n order: 6,\n iconClass: 'fa fa-cog',\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n"]} \ No newline at end of file +{"version":3,"sources":["ng://@abp/ng.setting-management/lib/services/setting-management.service.ts","ng://@abp/ng.setting-management/lib/components/setting-layout.component.ts","ng://@abp/ng.setting-management/lib/constants/routes.ts","ng://@abp/ng.setting-management/lib/setting-management-routing.module.ts","ng://@abp/ng.setting-management/lib/setting-management.module.ts"],"names":["SettingManagementService","router","store","timeout","_this","this","settings","selected","destroy$","Subject","events","pipe","filter","event","RouteConfigLoadEnd","takeUntil","subscribe","unsubscribe","next","timer","setSettings","prototype","ngOnDestroy","setTimeout","route","config","find","r","path","data","sort","a","b","order","checkSelected","setting","url","name","length","setSelected","dispatch","Navigate","Injectable","args","providedIn","Router","Store","SettingLayoutComponent","settingManagementService","trackByFn","_","item","ngAfterViewInit","type","Component","selector","template","SETTING_MANAGEMENT_ROUTES","routes","parentName","layout","iconClass","ɵ0","component","DynamicLayoutComponent","children","SettingManagementRoutingModule","NgModule","imports","RouterModule","forChild","exports","SETTING_LAYOUT","SettingManagementModule","declarations","CoreModule","ThemeSharedModule","entryComponents"],"mappings":"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","sourcesContent":["import { SettingTab } from '@abp/ng.theme.shared';\nimport { Injectable } from '@angular/core';\nimport { RouteConfigLoadEnd, Router } from '@angular/router';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { Subject, Subscription, timer } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\n\n@Injectable({ providedIn: 'root' })\nexport class SettingManagementService {\n settings: SettingTab[] = [];\n\n selected = {} as SettingTab;\n\n private destroy$ = new Subject();\n\n constructor(private router: Router, private store: Store) {\n let timeout: Subscription;\n this.router.events\n .pipe(\n filter(event => event instanceof RouteConfigLoadEnd),\n takeUntil(this.destroy$),\n )\n .subscribe(event => {\n if (timeout) {\n timeout.unsubscribe();\n this.destroy$.next();\n }\n timeout = timer(150).subscribe(() => {\n this.setSettings();\n });\n });\n }\n\n ngOnDestroy() {\n this.destroy$.next();\n }\n\n setSettings() {\n setTimeout(() => {\n const route = this.router.config.find(r => r.path === 'setting-management');\n this.settings = route.data.settings.sort((a, b) => a.order - b.order);\n this.checkSelected();\n }, 0);\n }\n\n checkSelected() {\n this.selected = this.settings.find(setting => setting.url === this.router.url) || ({} as SettingTab);\n\n if (!this.selected.name && this.settings.length) {\n this.setSelected(this.settings[0]);\n }\n }\n\n setSelected(selected: SettingTab) {\n this.selected = selected;\n this.store.dispatch(new Navigate([selected.url]));\n }\n}\n","import { eLayoutType } from '@abp/ng.core';\nimport { SettingTab } from '@abp/ng.theme.shared';\nimport { Component, TrackByFunction } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { timer } from 'rxjs';\nimport { SettingManagementService } from '../services/setting-management.service';\n\n@Component({\n selector: 'abp-setting-layout',\n templateUrl: './setting-layout.component.html',\n})\nexport class SettingLayoutComponent {\n // required for dynamic component\n static type = eLayoutType.setting;\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n constructor(public settingManagementService: SettingManagementService, private router: Router) {\n if (\n settingManagementService.selected &&\n this.router.url !== settingManagementService.selected.url &&\n settingManagementService.settings.length\n ) {\n settingManagementService.setSelected(settingManagementService.settings[0]);\n }\n }\n\n ngOnDestroy() {}\n\n ngAfterViewInit() {\n timer(250).subscribe(() => {\n if (!this.settingManagementService.settings.length) {\n this.settingManagementService.setSettings();\n }\n });\n }\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const SETTING_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'Settings',\n path: 'setting-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n order: 6,\n iconClass: 'fa fa-cog',\n },\n ] as ABP.FullRoute[],\n};\n","import { DynamicLayoutComponent } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { SETTING_MANAGEMENT_ROUTES } from './constants/routes';\nimport { SettingLayoutComponent } from './components/setting-layout.component';\n\nconst routes: Routes = [\n {\n path: 'setting-management',\n component: DynamicLayoutComponent,\n children: [{ path: '', component: SettingLayoutComponent }],\n data: { routes: SETTING_MANAGEMENT_ROUTES, settings: [] },\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class SettingManagementRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { SettingLayoutComponent } from './components/setting-layout.component';\nimport { SettingManagementRoutingModule } from './setting-management-routing.module';\n\nexport const SETTING_LAYOUT = SettingLayoutComponent;\n\n@NgModule({\n declarations: [SETTING_LAYOUT],\n imports: [SettingManagementRoutingModule, CoreModule, ThemeSharedModule],\n entryComponents: [SETTING_LAYOUT],\n})\nexport class SettingManagementModule {}\n"]} \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm2015/abp-ng.setting-management.js b/npm/ng-packs/dist/setting-management/esm2015/abp-ng.setting-management.js index d310e82ff6..15732a5bb6 100644 --- a/npm/ng-packs/dist/setting-management/esm2015/abp-ng.setting-management.js +++ b/npm/ng-packs/dist/setting-management/esm2015/abp-ng.setting-management.js @@ -5,8 +5,8 @@ /** * Generated bundle index. Do not edit. */ -export { RootSettingManagementModule, SettingManagementModule, SettingComponent, SETTING_MANAGEMENT_ROUTES } from './public-api'; -export { InitialService as ɵb } from './lib/components/services/initial.service'; -export { SettingComponent as ɵa } from './lib/components/setting/setting.component'; -export { SettingManagementRoutingModule as ɵc } from './lib/setting-management-routing.module'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnNldHRpbmctbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuc2V0dGluZy1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsiYWJwLW5nLnNldHRpbmctbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsa0hBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDL0UsT0FBTyxFQUFDLGdCQUFnQixJQUFJLEVBQUUsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQ2xGLE9BQU8sRUFBQyw4QkFBOEIsSUFBSSxFQUFFLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcblxuZXhwb3J0IHtJbml0aWFsU2VydmljZSBhcyDJtWJ9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2VydmljZXMvaW5pdGlhbC5zZXJ2aWNlJztcbmV4cG9ydCB7U2V0dGluZ0NvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2V0dGluZy9zZXR0aW5nLmNvbXBvbmVudCc7XG5leHBvcnQge1NldHRpbmdNYW5hZ2VtZW50Um91dGluZ01vZHVsZSBhcyDJtWN9IGZyb20gJy4vbGliL3NldHRpbmctbWFuYWdlbWVudC1yb3V0aW5nLm1vZHVsZSc7Il19 \ No newline at end of file +export { SETTING_LAYOUT, SettingManagementModule, SETTING_MANAGEMENT_ROUTES, SettingLayoutComponent } from './public-api'; +export { SETTING_MANAGEMENT_ROUTES as ɵc } from './lib/constants/routes'; +export { SettingManagementService as ɵa } from './lib/services/setting-management.service'; +export { SettingManagementRoutingModule as ɵb } from './lib/setting-management-routing.module'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnNldHRpbmctbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuc2V0dGluZy1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsiYWJwLW5nLnNldHRpbmctbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsMkdBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyx5QkFBeUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RSxPQUFPLEVBQUMsd0JBQXdCLElBQUksRUFBRSxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDekYsT0FBTyxFQUFDLDhCQUE4QixJQUFJLEVBQUUsRUFBQyxNQUFNLHlDQUF5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge1NFVFRJTkdfTUFOQUdFTUVOVF9ST1VURVMgYXMgybVjfSBmcm9tICcuL2xpYi9jb25zdGFudHMvcm91dGVzJztcbmV4cG9ydCB7U2V0dGluZ01hbmFnZW1lbnRTZXJ2aWNlIGFzIMm1YX0gZnJvbSAnLi9saWIvc2VydmljZXMvc2V0dGluZy1tYW5hZ2VtZW50LnNlcnZpY2UnO1xuZXhwb3J0IHtTZXR0aW5nTWFuYWdlbWVudFJvdXRpbmdNb2R1bGUgYXMgybVifSBmcm9tICcuL2xpYi9zZXR0aW5nLW1hbmFnZW1lbnQtcm91dGluZy5tb2R1bGUnOyJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm2015/lib/components/index.js b/npm/ng-packs/dist/setting-management/esm2015/lib/components/index.js deleted file mode 100644 index b45a214ce1..0000000000 --- a/npm/ng-packs/dist/setting-management/esm2015/lib/components/index.js +++ /dev/null @@ -1,6 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -export { SettingComponent } from './setting/setting.component'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnNldHRpbmctbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxpQ0FBYyw2QkFBNkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2V0dGluZy9zZXR0aW5nLmNvbXBvbmVudCc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm2015/lib/components/services/initial.service.js b/npm/ng-packs/dist/setting-management/esm2015/lib/components/services/initial.service.js deleted file mode 100644 index eb4e6b6959..0000000000 --- a/npm/ng-packs/dist/setting-management/esm2015/lib/components/services/initial.service.js +++ /dev/null @@ -1,58 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { Injectable } from '@angular/core'; -import { Router } from '@angular/router'; -import snq from 'snq'; -export class InitialService { - /** - * @param {?} router - */ - constructor(router) { - this.router = router; - this.settings = this.router.config - .map((/** - * @param {?} route - * @return {?} - */ - route => snq((/** - * @return {?} - */ - () => route.data.routes.settings)))) - .filter((/** - * @param {?} settings - * @return {?} - */ - settings => settings && settings.length)) - .reduce((/** - * @param {?} acc - * @param {?} val - * @return {?} - */ - (acc, val) => [...acc, ...val]), []) - .sort((/** - * @param {?} a - * @param {?} b - * @return {?} - */ - (a, b) => a.order - b.order)); - } -} -InitialService.decorators = [ - { type: Injectable } -]; -/** @nocollapse */ -InitialService.ctorParameters = () => [ - { type: Router } -]; -if (false) { - /** @type {?} */ - InitialService.prototype.settings; - /** - * @type {?} - * @private - */ - InitialService.prototype.router; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdGlhbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5zZXR0aW5nLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9zZXJ2aWNlcy9pbml0aWFsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sR0FBRyxNQUFNLEtBQUssQ0FBQztBQUd0QixNQUFNLE9BQU8sY0FBYzs7OztJQUd6QixZQUFvQixNQUFjO1FBQWQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNoQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTTthQUMvQixHQUFHOzs7O1FBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxHQUFHOzs7UUFBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUMsRUFBQzthQUNuRCxNQUFNOzs7O1FBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLElBQUksUUFBUSxDQUFDLE1BQU0sRUFBQzthQUMvQyxNQUFNOzs7OztRQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEdBQUcsRUFBRSxHQUFHLEdBQUcsQ0FBQyxHQUFFLEVBQUUsQ0FBQzthQUMxQyxJQUFJOzs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFDLENBQUM7SUFDdkMsQ0FBQzs7O1lBVkYsVUFBVTs7OztZQUhGLE1BQU07Ozs7SUFLYixrQ0FBOEI7Ozs7O0lBRWxCLGdDQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNldHRpbmdUYWIgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgc25xIGZyb20gJ3NucSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBJbml0aWFsU2VydmljZSB7XG4gIHB1YmxpYyBzZXR0aW5nczogU2V0dGluZ1RhYltdO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHtcbiAgICB0aGlzLnNldHRpbmdzID0gdGhpcy5yb3V0ZXIuY29uZmlnXG4gICAgICAubWFwKHJvdXRlID0+IHNucSgoKSA9PiByb3V0ZS5kYXRhLnJvdXRlcy5zZXR0aW5ncykpXG4gICAgICAuZmlsdGVyKHNldHRpbmdzID0+IHNldHRpbmdzICYmIHNldHRpbmdzLmxlbmd0aClcbiAgICAgIC5yZWR1Y2UoKGFjYywgdmFsKSA9PiBbLi4uYWNjLCAuLi52YWxdLCBbXSlcbiAgICAgIC5zb3J0KChhLCBiKSA9PiBhLm9yZGVyIC0gYi5vcmRlcik7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm2015/lib/components/setting-layout.component.js b/npm/ng-packs/dist/setting-management/esm2015/lib/components/setting-layout.component.js new file mode 100644 index 0000000000..2f8160f96e --- /dev/null +++ b/npm/ng-packs/dist/setting-management/esm2015/lib/components/setting-layout.component.js @@ -0,0 +1,73 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Component } from '@angular/core'; +import { Router } from '@angular/router'; +import { timer } from 'rxjs'; +import { SettingManagementService } from '../services/setting-management.service'; +export class SettingLayoutComponent { + /** + * @param {?} settingManagementService + * @param {?} router + */ + constructor(settingManagementService, router) { + this.settingManagementService = settingManagementService; + this.router = router; + this.trackByFn = (/** + * @param {?} _ + * @param {?} item + * @return {?} + */ + (_, item) => item.name); + if (settingManagementService.selected && + this.router.url !== settingManagementService.selected.url && + settingManagementService.settings.length) { + settingManagementService.setSelected(settingManagementService.settings[0]); + } + } + /** + * @return {?} + */ + ngOnDestroy() { } + /** + * @return {?} + */ + ngAfterViewInit() { + timer(250).subscribe((/** + * @return {?} + */ + () => { + if (!this.settingManagementService.settings.length) { + this.settingManagementService.setSettings(); + } + })); + } +} +// required for dynamic component +SettingLayoutComponent.type = "setting" /* setting */; +SettingLayoutComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-setting-layout', + template: "
\n
\n

{{ 'AbpSettingManagement::Settings' | abpLocalization }}

\n
\n \n
\n
\n
\n
\n\n
\n
\n
\n
\n \n
\n
\n
\n
    \n \n {{ setting.name | abpLocalization }}\n \n
\n
\n
\n
\n \n

{{ settingManagementService.selected.name | abpLocalization }}

\n
\n \n
\n
\n
\n
\n
\n
\n\n" + }] } +]; +/** @nocollapse */ +SettingLayoutComponent.ctorParameters = () => [ + { type: SettingManagementService }, + { type: Router } +]; +if (false) { + /** @type {?} */ + SettingLayoutComponent.type; + /** @type {?} */ + SettingLayoutComponent.prototype.trackByFn; + /** @type {?} */ + SettingLayoutComponent.prototype.settingManagementService; + /** + * @type {?} + * @private + */ + SettingLayoutComponent.prototype.router; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5zZXR0aW5nLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9zZXR0aW5nLWxheW91dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUVBLE9BQU8sRUFBRSxTQUFTLEVBQW1CLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBTWxGLE1BQU0sT0FBTyxzQkFBc0I7Ozs7O0lBTWpDLFlBQW1CLHdCQUFrRCxFQUFVLE1BQWM7UUFBMUUsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFGN0YsY0FBUzs7Ozs7UUFBZ0MsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFDO1FBRzlELElBQ0Usd0JBQXdCLENBQUMsUUFBUTtZQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsS0FBSyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsR0FBRztZQUN6RCx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUN4QztZQUNBLHdCQUF3QixDQUFDLFdBQVcsQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUM1RTtJQUNILENBQUM7Ozs7SUFFRCxXQUFXLEtBQUksQ0FBQzs7OztJQUVoQixlQUFlO1FBQ2IsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVM7OztRQUFDLEdBQUcsRUFBRTtZQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUU7Z0JBQ2xELElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUM3QztRQUNILENBQUMsRUFBQyxDQUFDO0lBQ0wsQ0FBQzs7O0FBdEJNLDJCQUFJLDJCQUF1Qjs7WUFObkMsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxvQkFBb0I7Z0JBQzlCLDZsRUFBOEM7YUFDL0M7Ozs7WUFMUSx3QkFBd0I7WUFGeEIsTUFBTTs7OztJQVViLDRCQUFrQzs7SUFFbEMsMkNBQWdFOztJQUVwRCwwREFBeUQ7Ozs7O0lBQUUsd0NBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZUxheW91dFR5cGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgU2V0dGluZ1RhYiB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IENvbXBvbmVudCwgVHJhY2tCeUZ1bmN0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgdGltZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNldHRpbmdNYW5hZ2VtZW50U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3NldHRpbmctbWFuYWdlbWVudC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLXNldHRpbmctbGF5b3V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NldHRpbmctbGF5b3V0LmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgU2V0dGluZ0xheW91dENvbXBvbmVudCB7XG4gIC8vIHJlcXVpcmVkIGZvciBkeW5hbWljIGNvbXBvbmVudFxuICBzdGF0aWMgdHlwZSA9IGVMYXlvdXRUeXBlLnNldHRpbmc7XG5cbiAgdHJhY2tCeUZuOiBUcmFja0J5RnVuY3Rpb248U2V0dGluZ1RhYj4gPSAoXywgaXRlbSkgPT4gaXRlbS5uYW1lO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBzZXR0aW5nTWFuYWdlbWVudFNlcnZpY2U6IFNldHRpbmdNYW5hZ2VtZW50U2VydmljZSwgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikge1xuICAgIGlmIChcbiAgICAgIHNldHRpbmdNYW5hZ2VtZW50U2VydmljZS5zZWxlY3RlZCAmJlxuICAgICAgdGhpcy5yb3V0ZXIudXJsICE9PSBzZXR0aW5nTWFuYWdlbWVudFNlcnZpY2Uuc2VsZWN0ZWQudXJsICYmXG4gICAgICBzZXR0aW5nTWFuYWdlbWVudFNlcnZpY2Uuc2V0dGluZ3MubGVuZ3RoXG4gICAgKSB7XG4gICAgICBzZXR0aW5nTWFuYWdlbWVudFNlcnZpY2Uuc2V0U2VsZWN0ZWQoc2V0dGluZ01hbmFnZW1lbnRTZXJ2aWNlLnNldHRpbmdzWzBdKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRpbWVyKDI1MCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGlmICghdGhpcy5zZXR0aW5nTWFuYWdlbWVudFNlcnZpY2Uuc2V0dGluZ3MubGVuZ3RoKSB7XG4gICAgICAgIHRoaXMuc2V0dGluZ01hbmFnZW1lbnRTZXJ2aWNlLnNldFNldHRpbmdzKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm2015/lib/components/setting/setting.component.js b/npm/ng-packs/dist/setting-management/esm2015/lib/components/setting/setting.component.js deleted file mode 100644 index 13536947ca..0000000000 --- a/npm/ng-packs/dist/setting-management/esm2015/lib/components/setting/setting.component.js +++ /dev/null @@ -1,44 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { Component } from '@angular/core'; -import { InitialService } from '../services/initial.service'; -export class SettingComponent { - /** - * @param {?} initialService - */ - constructor(initialService) { - this.initialService = initialService; - this.selected = (/** @type {?} */ ({})); - } - /** - * @return {?} - */ - ngOnInit() { - this.settings = this.initialService.settings; - this.selected = this.settings[0]; - } -} -SettingComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-setting', - template: "
\n
\n

{{ 'AbpSettingManagement::Settings' | abpLocalization }}

\n
\n
\n \n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
    \n \n {{ setting.name | abpLocalization }}\n \n
\n
\n
\n
\n
\n

{{ selected.name | abpLocalization }}

\n
\n\n \n
\n
\n
\n
\n
\n
\n
\n" - }] } -]; -/** @nocollapse */ -SettingComponent.ctorParameters = () => [ - { type: InitialService } -]; -if (false) { - /** @type {?} */ - SettingComponent.prototype.settings; - /** @type {?} */ - SettingComponent.prototype.selected; - /** - * @type {?} - * @private - */ - SettingComponent.prototype.initialService; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnNldHRpbmctbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3NldHRpbmcvc2V0dGluZy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBTTdELE1BQU0sT0FBTyxnQkFBZ0I7Ozs7SUFLM0IsWUFBb0IsY0FBOEI7UUFBOUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBRmxELGFBQVEsR0FBRyxtQkFBQSxFQUFFLEVBQWMsQ0FBQztJQUV5QixDQUFDOzs7O0lBRXRELFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDO1FBQzdDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuQyxDQUFDOzs7WUFkRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGFBQWE7Z0JBQ3ZCLHN1REFBdUM7YUFDeEM7Ozs7WUFMUSxjQUFjOzs7O0lBT3JCLG9DQUF1Qjs7SUFFdkIsb0NBQTRCOzs7OztJQUVoQiwwQ0FBc0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2V0dGluZ1RhYiwgZmFkZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IEluaXRpYWxTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvaW5pdGlhbC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLXNldHRpbmcnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2V0dGluZy5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFNldHRpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBzZXR0aW5nczogU2V0dGluZ1RhYltdO1xuXG4gIHNlbGVjdGVkID0ge30gYXMgU2V0dGluZ1RhYjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluaXRpYWxTZXJ2aWNlOiBJbml0aWFsU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldHRpbmdzID0gdGhpcy5pbml0aWFsU2VydmljZS5zZXR0aW5ncztcbiAgICB0aGlzLnNlbGVjdGVkID0gdGhpcy5zZXR0aW5nc1swXTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm2015/lib/constants/routes.js b/npm/ng-packs/dist/setting-management/esm2015/lib/constants/routes.js index 1be56c2214..82eebaa37d 100644 --- a/npm/ng-packs/dist/setting-management/esm2015/lib/constants/routes.js +++ b/npm/ng-packs/dist/setting-management/esm2015/lib/constants/routes.js @@ -14,6 +14,5 @@ export const SETTING_MANAGEMENT_ROUTES = { iconClass: 'fa fa-cog', }, ])), - settings: [], }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5zZXR0aW5nLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvY29uc3RhbnRzL3JvdXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBLE1BQU0sT0FBTyx5QkFBeUIsR0FBRztJQUN2QyxNQUFNLEVBQUUsbUJBQUE7UUFDTjtZQUNFLElBQUksRUFBRSxVQUFVO1lBQ2hCLElBQUksRUFBRSxvQkFBb0I7WUFDMUIsVUFBVSxFQUFFLHNDQUFzQztZQUNsRCxNQUFNLGlDQUF5QjtZQUMvQixLQUFLLEVBQUUsQ0FBQztZQUNSLFNBQVMsRUFBRSxXQUFXO1NBQ3ZCO0tBQ0YsRUFBbUI7SUFDcEIsUUFBUSxFQUFFLEVBQUU7Q0FDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFCUCwgZUxheW91dFR5cGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuXG5leHBvcnQgY29uc3QgU0VUVElOR19NQU5BR0VNRU5UX1JPVVRFUyA9IHtcbiAgcm91dGVzOiBbXG4gICAge1xuICAgICAgbmFtZTogJ1NldHRpbmdzJyxcbiAgICAgIHBhdGg6ICdzZXR0aW5nLW1hbmFnZW1lbnQnLFxuICAgICAgcGFyZW50TmFtZTogJ0FicFVpTmF2aWdhdGlvbjo6TWVudTpBZG1pbmlzdHJhdGlvbicsXG4gICAgICBsYXlvdXQ6IGVMYXlvdXRUeXBlLmFwcGxpY2F0aW9uLFxuICAgICAgb3JkZXI6IDYsXG4gICAgICBpY29uQ2xhc3M6ICdmYSBmYS1jb2cnLFxuICAgIH0sXG4gIF0gYXMgQUJQLkZ1bGxSb3V0ZVtdLFxuICBzZXR0aW5nczogW10sXG59O1xuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5zZXR0aW5nLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvY29uc3RhbnRzL3JvdXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBLE1BQU0sT0FBTyx5QkFBeUIsR0FBRztJQUN2QyxNQUFNLEVBQUUsbUJBQUE7UUFDTjtZQUNFLElBQUksRUFBRSxVQUFVO1lBQ2hCLElBQUksRUFBRSxvQkFBb0I7WUFDMUIsVUFBVSxFQUFFLHNDQUFzQztZQUNsRCxNQUFNLGlDQUF5QjtZQUMvQixLQUFLLEVBQUUsQ0FBQztZQUNSLFNBQVMsRUFBRSxXQUFXO1NBQ3ZCO0tBQ0YsRUFBbUI7Q0FDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBQlAsIGVMYXlvdXRUeXBlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcblxuZXhwb3J0IGNvbnN0IFNFVFRJTkdfTUFOQUdFTUVOVF9ST1VURVMgPSB7XG4gIHJvdXRlczogW1xuICAgIHtcbiAgICAgIG5hbWU6ICdTZXR0aW5ncycsXG4gICAgICBwYXRoOiAnc2V0dGluZy1tYW5hZ2VtZW50JyxcbiAgICAgIHBhcmVudE5hbWU6ICdBYnBVaU5hdmlnYXRpb246Ok1lbnU6QWRtaW5pc3RyYXRpb24nLFxuICAgICAgbGF5b3V0OiBlTGF5b3V0VHlwZS5hcHBsaWNhdGlvbixcbiAgICAgIG9yZGVyOiA2LFxuICAgICAgaWNvbkNsYXNzOiAnZmEgZmEtY29nJyxcbiAgICB9LFxuICBdIGFzIEFCUC5GdWxsUm91dGVbXSxcbn07XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm2015/lib/root-setting-management.module.js b/npm/ng-packs/dist/setting-management/esm2015/lib/root-setting-management.module.js deleted file mode 100644 index 3061f28771..0000000000 --- a/npm/ng-packs/dist/setting-management/esm2015/lib/root-setting-management.module.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { NgModule } from '@angular/core'; -export class RootSettingManagementModule { - /** - * @return {?} - */ - static forRoot() { - return { - ngModule: RootSettingManagementModule, - providers: [], - }; - } -} -RootSettingManagementModule.decorators = [ - { type: NgModule, args: [{},] } -]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1zZXR0aW5nLW1hbmFnZW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5zZXR0aW5nLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvcm9vdC1zZXR0aW5nLW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUc5RCxNQUFNLE9BQU8sMkJBQTJCOzs7O0lBQ3RDLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSwyQkFBMkI7WUFDckMsU0FBUyxFQUFFLEVBQUU7U0FDZCxDQUFDO0lBQ0osQ0FBQzs7O1lBUEYsUUFBUSxTQUFDLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ATmdNb2R1bGUoe30pXG5leHBvcnQgY2xhc3MgUm9vdFNldHRpbmdNYW5hZ2VtZW50TW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVycyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBSb290U2V0dGluZ01hbmFnZW1lbnRNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm2015/lib/services/setting-management.service.js b/npm/ng-packs/dist/setting-management/esm2015/lib/services/setting-management.service.js new file mode 100644 index 0000000000..fbcda37880 --- /dev/null +++ b/npm/ng-packs/dist/setting-management/esm2015/lib/services/setting-management.service.js @@ -0,0 +1,131 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Injectable } from '@angular/core'; +import { RouteConfigLoadEnd, Router } from '@angular/router'; +import { Navigate } from '@ngxs/router-plugin'; +import { Store } from '@ngxs/store'; +import { Subject, timer } from 'rxjs'; +import { filter, takeUntil } from 'rxjs/operators'; +import * as i0 from "@angular/core"; +import * as i1 from "@angular/router"; +import * as i2 from "@ngxs/store"; +export class SettingManagementService { + /** + * @param {?} router + * @param {?} store + */ + constructor(router, store) { + this.router = router; + this.store = store; + this.settings = []; + this.selected = (/** @type {?} */ ({})); + this.destroy$ = new Subject(); + /** @type {?} */ + let timeout; + this.router.events + .pipe(filter((/** + * @param {?} event + * @return {?} + */ + event => event instanceof RouteConfigLoadEnd)), takeUntil(this.destroy$)) + .subscribe((/** + * @param {?} event + * @return {?} + */ + event => { + if (timeout) { + timeout.unsubscribe(); + this.destroy$.next(); + } + timeout = timer(150).subscribe((/** + * @return {?} + */ + () => { + this.setSettings(); + })); + })); + } + /** + * @return {?} + */ + ngOnDestroy() { + this.destroy$.next(); + } + /** + * @return {?} + */ + setSettings() { + setTimeout((/** + * @return {?} + */ + () => { + /** @type {?} */ + const route = this.router.config.find((/** + * @param {?} r + * @return {?} + */ + r => r.path === 'setting-management')); + this.settings = route.data.settings.sort((/** + * @param {?} a + * @param {?} b + * @return {?} + */ + (a, b) => a.order - b.order)); + this.checkSelected(); + }), 0); + } + /** + * @return {?} + */ + checkSelected() { + this.selected = this.settings.find((/** + * @param {?} setting + * @return {?} + */ + setting => setting.url === this.router.url)) || ((/** @type {?} */ ({}))); + if (!this.selected.name && this.settings.length) { + this.setSelected(this.settings[0]); + } + } + /** + * @param {?} selected + * @return {?} + */ + setSelected(selected) { + this.selected = selected; + this.store.dispatch(new Navigate([selected.url])); + } +} +SettingManagementService.decorators = [ + { type: Injectable, args: [{ providedIn: 'root' },] } +]; +/** @nocollapse */ +SettingManagementService.ctorParameters = () => [ + { type: Router }, + { type: Store } +]; +/** @nocollapse */ SettingManagementService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function SettingManagementService_Factory() { return new SettingManagementService(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i2.Store)); }, token: SettingManagementService, providedIn: "root" }); +if (false) { + /** @type {?} */ + SettingManagementService.prototype.settings; + /** @type {?} */ + SettingManagementService.prototype.selected; + /** + * @type {?} + * @private + */ + SettingManagementService.prototype.destroy$; + /** + * @type {?} + * @private + */ + SettingManagementService.prototype.router; + /** + * @type {?} + * @private + */ + SettingManagementService.prototype.store; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1tYW5hZ2VtZW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnNldHRpbmctbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9zZXR0aW5nLW1hbmFnZW1lbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFHbkQsTUFBTSxPQUFPLHdCQUF3Qjs7Ozs7SUFPbkMsWUFBb0IsTUFBYyxFQUFVLEtBQVk7UUFBcEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFVLFVBQUssR0FBTCxLQUFLLENBQU87UUFOeEQsYUFBUSxHQUFpQixFQUFFLENBQUM7UUFFNUIsYUFBUSxHQUFHLG1CQUFBLEVBQUUsRUFBYyxDQUFDO1FBRXBCLGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDOztZQUczQixPQUFxQjtRQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU07YUFDZixJQUFJLENBQ0gsTUFBTTs7OztRQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxZQUFZLGtCQUFrQixFQUFDLEVBQ3BELFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQ3pCO2FBQ0EsU0FBUzs7OztRQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pCLElBQUksT0FBTyxFQUFFO2dCQUNYLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDdEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUN0QjtZQUNELE9BQU8sR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUzs7O1lBQUMsR0FBRyxFQUFFO2dCQUNsQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDckIsQ0FBQyxFQUFDLENBQUM7UUFDTCxDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7Ozs7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDOzs7O0lBRUQsV0FBVztRQUNULFVBQVU7OztRQUFDLEdBQUcsRUFBRTs7a0JBQ1IsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUk7Ozs7WUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssb0JBQW9CLEVBQUM7WUFDM0UsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJOzs7OztZQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFDLENBQUM7WUFDdEUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3ZCLENBQUMsR0FBRSxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7Ozs7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUk7Ozs7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUMsSUFBSSxDQUFDLG1CQUFBLEVBQUUsRUFBYyxDQUFDLENBQUM7UUFFckcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFO1lBQy9DLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQzs7Ozs7SUFFRCxXQUFXLENBQUMsUUFBb0I7UUFDOUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7OztZQWpERixVQUFVLFNBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzs7O1lBTkwsTUFBTTtZQUUxQixLQUFLOzs7OztJQU1aLDRDQUE0Qjs7SUFFNUIsNENBQTRCOzs7OztJQUU1Qiw0Q0FBaUM7Ozs7O0lBRXJCLDBDQUFzQjs7Ozs7SUFBRSx5Q0FBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXR0aW5nVGFiIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVDb25maWdMb2FkRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTmF2aWdhdGUgfSBmcm9tICdAbmd4cy9yb3V0ZXItcGx1Z2luJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgU2V0dGluZ01hbmFnZW1lbnRTZXJ2aWNlIHtcbiAgc2V0dGluZ3M6IFNldHRpbmdUYWJbXSA9IFtdO1xuXG4gIHNlbGVjdGVkID0ge30gYXMgU2V0dGluZ1RhYjtcblxuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLCBwcml2YXRlIHN0b3JlOiBTdG9yZSkge1xuICAgIGxldCB0aW1lb3V0OiBTdWJzY3JpcHRpb247XG4gICAgdGhpcy5yb3V0ZXIuZXZlbnRzXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKGV2ZW50ID0+IGV2ZW50IGluc3RhbmNlb2YgUm91dGVDb25maWdMb2FkRW5kKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgIGlmICh0aW1lb3V0KSB7XG4gICAgICAgICAgdGltZW91dC51bnN1YnNjcmliZSgpO1xuICAgICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgICAgICB9XG4gICAgICAgIHRpbWVvdXQgPSB0aW1lcigxNTApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5zZXRTZXR0aW5ncygpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gIH1cblxuICBzZXRTZXR0aW5ncygpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbnN0IHJvdXRlID0gdGhpcy5yb3V0ZXIuY29uZmlnLmZpbmQociA9PiByLnBhdGggPT09ICdzZXR0aW5nLW1hbmFnZW1lbnQnKTtcbiAgICAgIHRoaXMuc2V0dGluZ3MgPSByb3V0ZS5kYXRhLnNldHRpbmdzLnNvcnQoKGEsIGIpID0+IGEub3JkZXIgLSBiLm9yZGVyKTtcbiAgICAgIHRoaXMuY2hlY2tTZWxlY3RlZCgpO1xuICAgIH0sIDApO1xuICB9XG5cbiAgY2hlY2tTZWxlY3RlZCgpIHtcbiAgICB0aGlzLnNlbGVjdGVkID0gdGhpcy5zZXR0aW5ncy5maW5kKHNldHRpbmcgPT4gc2V0dGluZy51cmwgPT09IHRoaXMucm91dGVyLnVybCkgfHwgKHt9IGFzIFNldHRpbmdUYWIpO1xuXG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkLm5hbWUgJiYgdGhpcy5zZXR0aW5ncy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuc2V0U2VsZWN0ZWQodGhpcy5zZXR0aW5nc1swXSk7XG4gICAgfVxuICB9XG5cbiAgc2V0U2VsZWN0ZWQoc2VsZWN0ZWQ6IFNldHRpbmdUYWIpIHtcbiAgICB0aGlzLnNlbGVjdGVkID0gc2VsZWN0ZWQ7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgTmF2aWdhdGUoW3NlbGVjdGVkLnVybF0pKTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm2015/lib/setting-management-routing.module.js b/npm/ng-packs/dist/setting-management/esm2015/lib/setting-management-routing.module.js index b1b24b570e..6022a5494d 100644 --- a/npm/ng-packs/dist/setting-management/esm2015/lib/setting-management-routing.module.js +++ b/npm/ng-packs/dist/setting-management/esm2015/lib/setting-management-routing.module.js @@ -5,13 +5,16 @@ import { DynamicLayoutComponent } from '@abp/ng.core'; import { NgModule } from '@angular/core'; import { RouterModule } from '@angular/router'; -import { SettingComponent } from './components/setting/setting.component'; +import { SETTING_MANAGEMENT_ROUTES } from './constants/routes'; +import { SettingLayoutComponent } from './components/setting-layout.component'; +const ɵ0 = { routes: SETTING_MANAGEMENT_ROUTES, settings: [] }; /** @type {?} */ const routes = [ { - path: '', + path: 'setting-management', component: DynamicLayoutComponent, - children: [{ path: '', component: SettingComponent }], + children: [{ path: '', component: SettingLayoutComponent }], + data: ɵ0, }, ]; export class SettingManagementRoutingModule { @@ -22,4 +25,5 @@ SettingManagementRoutingModule.decorators = [ exports: [RouterModule], },] } ]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1tYW5hZ2VtZW50LXJvdXRpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5zZXR0aW5nLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvc2V0dGluZy1tYW5hZ2VtZW50LXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7O01BRXBFLE1BQU0sR0FBVztJQUNyQjtRQUNFLElBQUksRUFBRSxFQUFFO1FBQ1IsU0FBUyxFQUFFLHNCQUFzQjtRQUNqQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLENBQUM7S0FDdEQ7Q0FDRjtBQU1ELE1BQU0sT0FBTyw4QkFBOEI7OztZQUoxQyxRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDeEMsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2FBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRHluYW1pY0xheW91dENvbXBvbmVudCB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlLCBSb3V0ZXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU2V0dGluZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zZXR0aW5nL3NldHRpbmcuY29tcG9uZW50JztcblxuY29uc3Qgcm91dGVzOiBSb3V0ZXMgPSBbXG4gIHtcbiAgICBwYXRoOiAnJyxcbiAgICBjb21wb25lbnQ6IER5bmFtaWNMYXlvdXRDb21wb25lbnQsXG4gICAgY2hpbGRyZW46IFt7IHBhdGg6ICcnLCBjb21wb25lbnQ6IFNldHRpbmdDb21wb25lbnQgfV0sXG4gIH0sXG5dO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbUm91dGVyTW9kdWxlLmZvckNoaWxkKHJvdXRlcyldLFxuICBleHBvcnRzOiBbUm91dGVyTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2V0dGluZ01hbmFnZW1lbnRSb3V0aW5nTW9kdWxlIHt9XG4iXX0= \ No newline at end of file +export { ɵ0 }; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1tYW5hZ2VtZW50LXJvdXRpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5zZXR0aW5nLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvc2V0dGluZy1tYW5hZ2VtZW50LXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDL0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7V0FPckUsRUFBRSxNQUFNLEVBQUUseUJBQXlCLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTs7TUFMdkQsTUFBTSxHQUFXO0lBQ3JCO1FBQ0UsSUFBSSxFQUFFLG9CQUFvQjtRQUMxQixTQUFTLEVBQUUsc0JBQXNCO1FBQ2pDLFFBQVEsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQztRQUMzRCxJQUFJLElBQXFEO0tBQzFEO0NBQ0Y7QUFNRCxNQUFNLE9BQU8sOEJBQThCOzs7WUFKMUMsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3hDLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQzthQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IER5bmFtaWNMYXlvdXRDb21wb25lbnQgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSwgUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFNFVFRJTkdfTUFOQUdFTUVOVF9ST1VURVMgfSBmcm9tICcuL2NvbnN0YW50cy9yb3V0ZXMnO1xuaW1wb3J0IHsgU2V0dGluZ0xheW91dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zZXR0aW5nLWxheW91dC5jb21wb25lbnQnO1xuXG5jb25zdCByb3V0ZXM6IFJvdXRlcyA9IFtcbiAge1xuICAgIHBhdGg6ICdzZXR0aW5nLW1hbmFnZW1lbnQnLFxuICAgIGNvbXBvbmVudDogRHluYW1pY0xheW91dENvbXBvbmVudCxcbiAgICBjaGlsZHJlbjogW3sgcGF0aDogJycsIGNvbXBvbmVudDogU2V0dGluZ0xheW91dENvbXBvbmVudCB9XSxcbiAgICBkYXRhOiB7IHJvdXRlczogU0VUVElOR19NQU5BR0VNRU5UX1JPVVRFUywgc2V0dGluZ3M6IFtdIH0sXG4gIH0sXG5dO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbUm91dGVyTW9kdWxlLmZvckNoaWxkKHJvdXRlcyldLFxuICBleHBvcnRzOiBbUm91dGVyTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2V0dGluZ01hbmFnZW1lbnRSb3V0aW5nTW9kdWxlIHt9XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm2015/lib/setting-management.module.js b/npm/ng-packs/dist/setting-management/esm2015/lib/setting-management.module.js index e1b12f394c..39ea76b705 100644 --- a/npm/ng-packs/dist/setting-management/esm2015/lib/setting-management.module.js +++ b/npm/ng-packs/dist/setting-management/esm2015/lib/setting-management.module.js @@ -3,26 +3,19 @@ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { CoreModule } from '@abp/ng.core'; -import { NgModule, Self } from '@angular/core'; -import { SettingComponent } from './components/setting/setting.component'; -import { SettingManagementRoutingModule } from './setting-management-routing.module'; import { ThemeSharedModule } from '@abp/ng.theme.shared'; -import { InitialService } from './components/services/initial.service'; +import { NgModule } from '@angular/core'; +import { SettingLayoutComponent } from './components/setting-layout.component'; +import { SettingManagementRoutingModule } from './setting-management-routing.module'; +/** @type {?} */ +export const SETTING_LAYOUT = SettingLayoutComponent; export class SettingManagementModule { - /** - * @param {?} initialService - */ - constructor(initialService) { } } SettingManagementModule.decorators = [ { type: NgModule, args: [{ - declarations: [SettingComponent], + declarations: [SETTING_LAYOUT], imports: [SettingManagementRoutingModule, CoreModule, ThemeSharedModule], - providers: [InitialService], + entryComponents: [SETTING_LAYOUT], },] } ]; -/** @nocollapse */ -SettingManagementModule.ctorParameters = () => [ - { type: InitialService, decorators: [{ type: Self }] } -]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1tYW5hZ2VtZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuc2V0dGluZy1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL3NldHRpbmctbWFuYWdlbWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVEsTUFBTSxjQUFjLENBQUM7QUFDaEQsT0FBTyxFQUFFLFFBQVEsRUFBd0MsSUFBSSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQU92RSxNQUFNLE9BQU8sdUJBQXVCOzs7O0lBQ2xDLFlBQW9CLGNBQThCLElBQUcsQ0FBQzs7O1lBTnZELFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDaEMsT0FBTyxFQUFFLENBQUMsOEJBQThCLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixDQUFDO2dCQUN4RSxTQUFTLEVBQUUsQ0FBQyxjQUFjLENBQUM7YUFDNUI7Ozs7WUFOUSxjQUFjLHVCQVFSLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JlTW9kdWxlLCBub29wIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBBUFBfSU5JVElBTElaRVIsIFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNldHRpbmdDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2V0dGluZy9zZXR0aW5nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZXR0aW5nTWFuYWdlbWVudFJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL3NldHRpbmctbWFuYWdlbWVudC1yb3V0aW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IEluaXRpYWxTZXJ2aWNlIH0gZnJvbSAnLi9jb21wb25lbnRzL3NlcnZpY2VzL2luaXRpYWwuc2VydmljZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1NldHRpbmdDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbU2V0dGluZ01hbmFnZW1lbnRSb3V0aW5nTW9kdWxlLCBDb3JlTW9kdWxlLCBUaGVtZVNoYXJlZE1vZHVsZV0sXG4gIHByb3ZpZGVyczogW0luaXRpYWxTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2V0dGluZ01hbmFnZW1lbnRNb2R1bGUge1xuICBjb25zdHJ1Y3RvcihAU2VsZigpIGluaXRpYWxTZXJ2aWNlOiBJbml0aWFsU2VydmljZSkge31cbn1cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1tYW5hZ2VtZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuc2V0dGluZy1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL3NldHRpbmctbWFuYWdlbWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7QUFFckYsTUFBTSxPQUFPLGNBQWMsR0FBRyxzQkFBc0I7QUFPcEQsTUFBTSxPQUFPLHVCQUF1Qjs7O1lBTG5DLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxjQUFjLENBQUM7Z0JBQzlCLE9BQU8sRUFBRSxDQUFDLDhCQUE4QixFQUFFLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQztnQkFDeEUsZUFBZSxFQUFFLENBQUMsY0FBYyxDQUFDO2FBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTZXR0aW5nTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NldHRpbmctbGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZXR0aW5nTWFuYWdlbWVudFJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL3NldHRpbmctbWFuYWdlbWVudC1yb3V0aW5nLm1vZHVsZSc7XG5cbmV4cG9ydCBjb25zdCBTRVRUSU5HX0xBWU9VVCA9IFNldHRpbmdMYXlvdXRDb21wb25lbnQ7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1NFVFRJTkdfTEFZT1VUXSxcbiAgaW1wb3J0czogW1NldHRpbmdNYW5hZ2VtZW50Um91dGluZ01vZHVsZSwgQ29yZU1vZHVsZSwgVGhlbWVTaGFyZWRNb2R1bGVdLFxuICBlbnRyeUNvbXBvbmVudHM6IFtTRVRUSU5HX0xBWU9VVF0sXG59KVxuZXhwb3J0IGNsYXNzIFNldHRpbmdNYW5hZ2VtZW50TW9kdWxlIHt9XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm2015/public-api.js b/npm/ng-packs/dist/setting-management/esm2015/public-api.js index dafa05f548..01feb13ff1 100644 --- a/npm/ng-packs/dist/setting-management/esm2015/public-api.js +++ b/npm/ng-packs/dist/setting-management/esm2015/public-api.js @@ -2,8 +2,7 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { RootSettingManagementModule } from './lib/root-setting-management.module'; -export { SettingManagementModule } from './lib/setting-management.module'; -export { SettingComponent } from './lib/components'; +export { SETTING_LAYOUT, SettingManagementModule } from './lib/setting-management.module'; export { SETTING_MANAGEMENT_ROUTES } from './lib/constants'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuc2V0dGluZy1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsNENBQWMsc0NBQXNDLENBQUM7QUFDckQsd0NBQWMsaUNBQWlDLENBQUM7QUFDaEQsaUNBQWMsa0JBQWtCLENBQUM7QUFDakMsMENBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9yb290LXNldHRpbmctbWFuYWdlbWVudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2V0dGluZy1tYW5hZ2VtZW50Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnN0YW50cyc7XG4iXX0= \ No newline at end of file +export { SettingLayoutComponent } from './lib/components/setting-layout.component'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuc2V0dGluZy1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsd0RBQWMsaUNBQWlDLENBQUM7QUFDaEQsMENBQWMsaUJBQWlCLENBQUM7QUFDaEMsdUNBQWMsMkNBQTJDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9zZXR0aW5nLW1hbmFnZW1lbnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NldHRpbmctbGF5b3V0LmNvbXBvbmVudCc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm5/abp-ng.setting-management.js b/npm/ng-packs/dist/setting-management/esm5/abp-ng.setting-management.js index d310e82ff6..15732a5bb6 100644 --- a/npm/ng-packs/dist/setting-management/esm5/abp-ng.setting-management.js +++ b/npm/ng-packs/dist/setting-management/esm5/abp-ng.setting-management.js @@ -5,8 +5,8 @@ /** * Generated bundle index. Do not edit. */ -export { RootSettingManagementModule, SettingManagementModule, SettingComponent, SETTING_MANAGEMENT_ROUTES } from './public-api'; -export { InitialService as ɵb } from './lib/components/services/initial.service'; -export { SettingComponent as ɵa } from './lib/components/setting/setting.component'; -export { SettingManagementRoutingModule as ɵc } from './lib/setting-management-routing.module'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnNldHRpbmctbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuc2V0dGluZy1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsiYWJwLW5nLnNldHRpbmctbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsa0hBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDL0UsT0FBTyxFQUFDLGdCQUFnQixJQUFJLEVBQUUsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQ2xGLE9BQU8sRUFBQyw4QkFBOEIsSUFBSSxFQUFFLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcblxuZXhwb3J0IHtJbml0aWFsU2VydmljZSBhcyDJtWJ9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2VydmljZXMvaW5pdGlhbC5zZXJ2aWNlJztcbmV4cG9ydCB7U2V0dGluZ0NvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2V0dGluZy9zZXR0aW5nLmNvbXBvbmVudCc7XG5leHBvcnQge1NldHRpbmdNYW5hZ2VtZW50Um91dGluZ01vZHVsZSBhcyDJtWN9IGZyb20gJy4vbGliL3NldHRpbmctbWFuYWdlbWVudC1yb3V0aW5nLm1vZHVsZSc7Il19 \ No newline at end of file +export { SETTING_LAYOUT, SettingManagementModule, SETTING_MANAGEMENT_ROUTES, SettingLayoutComponent } from './public-api'; +export { SETTING_MANAGEMENT_ROUTES as ɵc } from './lib/constants/routes'; +export { SettingManagementService as ɵa } from './lib/services/setting-management.service'; +export { SettingManagementRoutingModule as ɵb } from './lib/setting-management-routing.module'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnNldHRpbmctbWFuYWdlbWVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuc2V0dGluZy1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsiYWJwLW5nLnNldHRpbmctbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsMkdBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyx5QkFBeUIsSUFBSSxFQUFFLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RSxPQUFPLEVBQUMsd0JBQXdCLElBQUksRUFBRSxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDekYsT0FBTyxFQUFDLDhCQUE4QixJQUFJLEVBQUUsRUFBQyxNQUFNLHlDQUF5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge1NFVFRJTkdfTUFOQUdFTUVOVF9ST1VURVMgYXMgybVjfSBmcm9tICcuL2xpYi9jb25zdGFudHMvcm91dGVzJztcbmV4cG9ydCB7U2V0dGluZ01hbmFnZW1lbnRTZXJ2aWNlIGFzIMm1YX0gZnJvbSAnLi9saWIvc2VydmljZXMvc2V0dGluZy1tYW5hZ2VtZW50LnNlcnZpY2UnO1xuZXhwb3J0IHtTZXR0aW5nTWFuYWdlbWVudFJvdXRpbmdNb2R1bGUgYXMgybVifSBmcm9tICcuL2xpYi9zZXR0aW5nLW1hbmFnZW1lbnQtcm91dGluZy5tb2R1bGUnOyJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm5/lib/components/index.js b/npm/ng-packs/dist/setting-management/esm5/lib/components/index.js deleted file mode 100644 index b45a214ce1..0000000000 --- a/npm/ng-packs/dist/setting-management/esm5/lib/components/index.js +++ /dev/null @@ -1,6 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -export { SettingComponent } from './setting/setting.component'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnNldHRpbmctbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxpQ0FBYyw2QkFBNkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2V0dGluZy9zZXR0aW5nLmNvbXBvbmVudCc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm5/lib/components/services/initial.service.js b/npm/ng-packs/dist/setting-management/esm5/lib/components/services/initial.service.js deleted file mode 100644 index c37570947e..0000000000 --- a/npm/ng-packs/dist/setting-management/esm5/lib/components/services/initial.service.js +++ /dev/null @@ -1,58 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import * as tslib_1 from "tslib"; -import { Injectable } from '@angular/core'; -import { Router } from '@angular/router'; -import snq from 'snq'; -var InitialService = /** @class */ (function () { - function InitialService(router) { - this.router = router; - this.settings = this.router.config - .map((/** - * @param {?} route - * @return {?} - */ - function (route) { return snq((/** - * @return {?} - */ - function () { return route.data.routes.settings; })); })) - .filter((/** - * @param {?} settings - * @return {?} - */ - function (settings) { return settings && settings.length; })) - .reduce((/** - * @param {?} acc - * @param {?} val - * @return {?} - */ - function (acc, val) { return tslib_1.__spread(acc, val); }), []) - .sort((/** - * @param {?} a - * @param {?} b - * @return {?} - */ - function (a, b) { return a.order - b.order; })); - } - InitialService.decorators = [ - { type: Injectable } - ]; - /** @nocollapse */ - InitialService.ctorParameters = function () { return [ - { type: Router } - ]; }; - return InitialService; -}()); -export { InitialService }; -if (false) { - /** @type {?} */ - InitialService.prototype.settings; - /** - * @type {?} - * @private - */ - InitialService.prototype.router; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdGlhbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5zZXR0aW5nLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9zZXJ2aWNlcy9pbml0aWFsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7QUFFdEI7SUFJRSx3QkFBb0IsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU07YUFDL0IsR0FBRzs7OztRQUFDLFVBQUEsS0FBSyxJQUFJLE9BQUEsR0FBRzs7O1FBQUMsY0FBTSxPQUFBLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBMUIsQ0FBMEIsRUFBQyxFQUFyQyxDQUFxQyxFQUFDO2FBQ25ELE1BQU07Ozs7UUFBQyxVQUFBLFFBQVEsSUFBSSxPQUFBLFFBQVEsSUFBSSxRQUFRLENBQUMsTUFBTSxFQUEzQixDQUEyQixFQUFDO2FBQy9DLE1BQU07Ozs7O1FBQUMsVUFBQyxHQUFHLEVBQUUsR0FBRyxJQUFLLHdCQUFJLEdBQUcsRUFBSyxHQUFHLEdBQWYsQ0FBZ0IsR0FBRSxFQUFFLENBQUM7YUFDMUMsSUFBSTs7Ozs7UUFBQyxVQUFDLENBQUMsRUFBRSxDQUFDLElBQUssT0FBQSxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQWpCLENBQWlCLEVBQUMsQ0FBQztJQUN2QyxDQUFDOztnQkFWRixVQUFVOzs7O2dCQUhGLE1BQU07O0lBY2YscUJBQUM7Q0FBQSxBQVhELElBV0M7U0FWWSxjQUFjOzs7SUFDekIsa0NBQThCOzs7OztJQUVsQixnQ0FBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXR0aW5nVGFiIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHNucSBmcm9tICdzbnEnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSW5pdGlhbFNlcnZpY2Uge1xuICBwdWJsaWMgc2V0dGluZ3M6IFNldHRpbmdUYWJbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7XG4gICAgdGhpcy5zZXR0aW5ncyA9IHRoaXMucm91dGVyLmNvbmZpZ1xuICAgICAgLm1hcChyb3V0ZSA9PiBzbnEoKCkgPT4gcm91dGUuZGF0YS5yb3V0ZXMuc2V0dGluZ3MpKVxuICAgICAgLmZpbHRlcihzZXR0aW5ncyA9PiBzZXR0aW5ncyAmJiBzZXR0aW5ncy5sZW5ndGgpXG4gICAgICAucmVkdWNlKChhY2MsIHZhbCkgPT4gWy4uLmFjYywgLi4udmFsXSwgW10pXG4gICAgICAuc29ydCgoYSwgYikgPT4gYS5vcmRlciAtIGIub3JkZXIpO1xuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm5/lib/components/setting-layout.component.js b/npm/ng-packs/dist/setting-management/esm5/lib/components/setting-layout.component.js new file mode 100644 index 0000000000..6583c701d9 --- /dev/null +++ b/npm/ng-packs/dist/setting-management/esm5/lib/components/setting-layout.component.js @@ -0,0 +1,78 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Component } from '@angular/core'; +import { Router } from '@angular/router'; +import { timer } from 'rxjs'; +import { SettingManagementService } from '../services/setting-management.service'; +var SettingLayoutComponent = /** @class */ (function () { + function SettingLayoutComponent(settingManagementService, router) { + this.settingManagementService = settingManagementService; + this.router = router; + this.trackByFn = (/** + * @param {?} _ + * @param {?} item + * @return {?} + */ + function (_, item) { return item.name; }); + if (settingManagementService.selected && + this.router.url !== settingManagementService.selected.url && + settingManagementService.settings.length) { + settingManagementService.setSelected(settingManagementService.settings[0]); + } + } + /** + * @return {?} + */ + SettingLayoutComponent.prototype.ngOnDestroy = /** + * @return {?} + */ + function () { }; + /** + * @return {?} + */ + SettingLayoutComponent.prototype.ngAfterViewInit = /** + * @return {?} + */ + function () { + var _this = this; + timer(250).subscribe((/** + * @return {?} + */ + function () { + if (!_this.settingManagementService.settings.length) { + _this.settingManagementService.setSettings(); + } + })); + }; + // required for dynamic component + SettingLayoutComponent.type = "setting" /* setting */; + SettingLayoutComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-setting-layout', + template: "
\n
\n

{{ 'AbpSettingManagement::Settings' | abpLocalization }}

\n
\n \n
\n
\n
\n
\n\n
\n
\n
\n
\n \n
\n
\n
\n
    \n \n {{ setting.name | abpLocalization }}\n \n
\n
\n
\n
\n \n

{{ settingManagementService.selected.name | abpLocalization }}

\n
\n \n
\n
\n
\n
\n
\n
\n\n" + }] } + ]; + /** @nocollapse */ + SettingLayoutComponent.ctorParameters = function () { return [ + { type: SettingManagementService }, + { type: Router } + ]; }; + return SettingLayoutComponent; +}()); +export { SettingLayoutComponent }; +if (false) { + /** @type {?} */ + SettingLayoutComponent.type; + /** @type {?} */ + SettingLayoutComponent.prototype.trackByFn; + /** @type {?} */ + SettingLayoutComponent.prototype.settingManagementService; + /** + * @type {?} + * @private + */ + SettingLayoutComponent.prototype.router; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5zZXR0aW5nLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9zZXR0aW5nLWxheW91dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUVBLE9BQU8sRUFBRSxTQUFTLEVBQW1CLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRWxGO0lBVUUsZ0NBQW1CLHdCQUFrRCxFQUFVLE1BQWM7UUFBMUUsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFGN0YsY0FBUzs7Ozs7UUFBZ0MsVUFBQyxDQUFDLEVBQUUsSUFBSSxJQUFLLE9BQUEsSUFBSSxDQUFDLElBQUksRUFBVCxDQUFTLEVBQUM7UUFHOUQsSUFDRSx3QkFBd0IsQ0FBQyxRQUFRO1lBQ2pDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxLQUFLLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxHQUFHO1lBQ3pELHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQ3hDO1lBQ0Esd0JBQXdCLENBQUMsV0FBVyxDQUFDLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzVFO0lBQ0gsQ0FBQzs7OztJQUVELDRDQUFXOzs7SUFBWCxjQUFlLENBQUM7Ozs7SUFFaEIsZ0RBQWU7OztJQUFmO1FBQUEsaUJBTUM7UUFMQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUzs7O1FBQUM7WUFDbkIsSUFBSSxDQUFDLEtBQUksQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFO2dCQUNsRCxLQUFJLENBQUMsd0JBQXdCLENBQUMsV0FBVyxFQUFFLENBQUM7YUFDN0M7UUFDSCxDQUFDLEVBQUMsQ0FBQztJQUNMLENBQUM7O0lBdEJNLDJCQUFJLDJCQUF1Qjs7Z0JBTm5DLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5Qiw2bEVBQThDO2lCQUMvQzs7OztnQkFMUSx3QkFBd0I7Z0JBRnhCLE1BQU07O0lBaUNmLDZCQUFDO0NBQUEsQUE3QkQsSUE2QkM7U0F6Qlksc0JBQXNCOzs7SUFFakMsNEJBQWtDOztJQUVsQywyQ0FBZ0U7O0lBRXBELDBEQUF5RDs7Ozs7SUFBRSx3Q0FBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBlTGF5b3V0VHlwZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBTZXR0aW5nVGFiIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBUcmFja0J5RnVuY3Rpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU2V0dGluZ01hbmFnZW1lbnRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvc2V0dGluZy1tYW5hZ2VtZW50LnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtc2V0dGluZy1sYXlvdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2V0dGluZy1sYXlvdXQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBTZXR0aW5nTGF5b3V0Q29tcG9uZW50IHtcbiAgLy8gcmVxdWlyZWQgZm9yIGR5bmFtaWMgY29tcG9uZW50XG4gIHN0YXRpYyB0eXBlID0gZUxheW91dFR5cGUuc2V0dGluZztcblxuICB0cmFja0J5Rm46IFRyYWNrQnlGdW5jdGlvbjxTZXR0aW5nVGFiPiA9IChfLCBpdGVtKSA9PiBpdGVtLm5hbWU7XG5cbiAgY29uc3RydWN0b3IocHVibGljIHNldHRpbmdNYW5hZ2VtZW50U2VydmljZTogU2V0dGluZ01hbmFnZW1lbnRTZXJ2aWNlLCBwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7XG4gICAgaWYgKFxuICAgICAgc2V0dGluZ01hbmFnZW1lbnRTZXJ2aWNlLnNlbGVjdGVkICYmXG4gICAgICB0aGlzLnJvdXRlci51cmwgIT09IHNldHRpbmdNYW5hZ2VtZW50U2VydmljZS5zZWxlY3RlZC51cmwgJiZcbiAgICAgIHNldHRpbmdNYW5hZ2VtZW50U2VydmljZS5zZXR0aW5ncy5sZW5ndGhcbiAgICApIHtcbiAgICAgIHNldHRpbmdNYW5hZ2VtZW50U2VydmljZS5zZXRTZWxlY3RlZChzZXR0aW5nTWFuYWdlbWVudFNlcnZpY2Uuc2V0dGluZ3NbMF0pO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge31cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGltZXIoMjUwKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLnNldHRpbmdNYW5hZ2VtZW50U2VydmljZS5zZXR0aW5ncy5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy5zZXR0aW5nTWFuYWdlbWVudFNlcnZpY2Uuc2V0U2V0dGluZ3MoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm5/lib/components/setting/setting.component.js b/npm/ng-packs/dist/setting-management/esm5/lib/components/setting/setting.component.js deleted file mode 100644 index 98d28a526b..0000000000 --- a/npm/ng-packs/dist/setting-management/esm5/lib/components/setting/setting.component.js +++ /dev/null @@ -1,46 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { Component } from '@angular/core'; -import { InitialService } from '../services/initial.service'; -var SettingComponent = /** @class */ (function () { - function SettingComponent(initialService) { - this.initialService = initialService; - this.selected = (/** @type {?} */ ({})); - } - /** - * @return {?} - */ - SettingComponent.prototype.ngOnInit = /** - * @return {?} - */ - function () { - this.settings = this.initialService.settings; - this.selected = this.settings[0]; - }; - SettingComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-setting', - template: "
\n
\n

{{ 'AbpSettingManagement::Settings' | abpLocalization }}

\n
\n
\n \n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
    \n \n {{ setting.name | abpLocalization }}\n \n
\n
\n
\n
\n
\n

{{ selected.name | abpLocalization }}

\n
\n\n \n
\n
\n
\n
\n
\n
\n
\n" - }] } - ]; - /** @nocollapse */ - SettingComponent.ctorParameters = function () { return [ - { type: InitialService } - ]; }; - return SettingComponent; -}()); -export { SettingComponent }; -if (false) { - /** @type {?} */ - SettingComponent.prototype.settings; - /** @type {?} */ - SettingComponent.prototype.selected; - /** - * @type {?} - * @private - */ - SettingComponent.prototype.initialService; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnNldHRpbmctbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL3NldHRpbmcvc2V0dGluZy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTdEO0lBU0UsMEJBQW9CLGNBQThCO1FBQTlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUZsRCxhQUFRLEdBQUcsbUJBQUEsRUFBRSxFQUFjLENBQUM7SUFFeUIsQ0FBQzs7OztJQUV0RCxtQ0FBUTs7O0lBQVI7UUFDRSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDO1FBQzdDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuQyxDQUFDOztnQkFkRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLHN1REFBdUM7aUJBQ3hDOzs7O2dCQUxRLGNBQWM7O0lBaUJ2Qix1QkFBQztDQUFBLEFBZkQsSUFlQztTQVhZLGdCQUFnQjs7O0lBQzNCLG9DQUF1Qjs7SUFFdkIsb0NBQTRCOzs7OztJQUVoQiwwQ0FBc0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2V0dGluZ1RhYiwgZmFkZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IEluaXRpYWxTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvaW5pdGlhbC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLXNldHRpbmcnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2V0dGluZy5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFNldHRpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBzZXR0aW5nczogU2V0dGluZ1RhYltdO1xuXG4gIHNlbGVjdGVkID0ge30gYXMgU2V0dGluZ1RhYjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluaXRpYWxTZXJ2aWNlOiBJbml0aWFsU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldHRpbmdzID0gdGhpcy5pbml0aWFsU2VydmljZS5zZXR0aW5ncztcbiAgICB0aGlzLnNlbGVjdGVkID0gdGhpcy5zZXR0aW5nc1swXTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm5/lib/constants/routes.js b/npm/ng-packs/dist/setting-management/esm5/lib/constants/routes.js index fb704e6d6e..40bc1b010d 100644 --- a/npm/ng-packs/dist/setting-management/esm5/lib/constants/routes.js +++ b/npm/ng-packs/dist/setting-management/esm5/lib/constants/routes.js @@ -14,6 +14,5 @@ export var SETTING_MANAGEMENT_ROUTES = { iconClass: 'fa fa-cog', }, ])), - settings: [], }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5zZXR0aW5nLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvY29uc3RhbnRzL3JvdXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBLE1BQU0sS0FBTyx5QkFBeUIsR0FBRztJQUN2QyxNQUFNLEVBQUUsbUJBQUE7UUFDTjtZQUNFLElBQUksRUFBRSxVQUFVO1lBQ2hCLElBQUksRUFBRSxvQkFBb0I7WUFDMUIsVUFBVSxFQUFFLHNDQUFzQztZQUNsRCxNQUFNLGlDQUF5QjtZQUMvQixLQUFLLEVBQUUsQ0FBQztZQUNSLFNBQVMsRUFBRSxXQUFXO1NBQ3ZCO0tBQ0YsRUFBbUI7SUFDcEIsUUFBUSxFQUFFLEVBQUU7Q0FDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFCUCwgZUxheW91dFR5cGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuXG5leHBvcnQgY29uc3QgU0VUVElOR19NQU5BR0VNRU5UX1JPVVRFUyA9IHtcbiAgcm91dGVzOiBbXG4gICAge1xuICAgICAgbmFtZTogJ1NldHRpbmdzJyxcbiAgICAgIHBhdGg6ICdzZXR0aW5nLW1hbmFnZW1lbnQnLFxuICAgICAgcGFyZW50TmFtZTogJ0FicFVpTmF2aWdhdGlvbjo6TWVudTpBZG1pbmlzdHJhdGlvbicsXG4gICAgICBsYXlvdXQ6IGVMYXlvdXRUeXBlLmFwcGxpY2F0aW9uLFxuICAgICAgb3JkZXI6IDYsXG4gICAgICBpY29uQ2xhc3M6ICdmYSBmYS1jb2cnLFxuICAgIH0sXG4gIF0gYXMgQUJQLkZ1bGxSb3V0ZVtdLFxuICBzZXR0aW5nczogW10sXG59O1xuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5zZXR0aW5nLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvY29uc3RhbnRzL3JvdXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBLE1BQU0sS0FBTyx5QkFBeUIsR0FBRztJQUN2QyxNQUFNLEVBQUUsbUJBQUE7UUFDTjtZQUNFLElBQUksRUFBRSxVQUFVO1lBQ2hCLElBQUksRUFBRSxvQkFBb0I7WUFDMUIsVUFBVSxFQUFFLHNDQUFzQztZQUNsRCxNQUFNLGlDQUF5QjtZQUMvQixLQUFLLEVBQUUsQ0FBQztZQUNSLFNBQVMsRUFBRSxXQUFXO1NBQ3ZCO0tBQ0YsRUFBbUI7Q0FDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBQlAsIGVMYXlvdXRUeXBlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcblxuZXhwb3J0IGNvbnN0IFNFVFRJTkdfTUFOQUdFTUVOVF9ST1VURVMgPSB7XG4gIHJvdXRlczogW1xuICAgIHtcbiAgICAgIG5hbWU6ICdTZXR0aW5ncycsXG4gICAgICBwYXRoOiAnc2V0dGluZy1tYW5hZ2VtZW50JyxcbiAgICAgIHBhcmVudE5hbWU6ICdBYnBVaU5hdmlnYXRpb246Ok1lbnU6QWRtaW5pc3RyYXRpb24nLFxuICAgICAgbGF5b3V0OiBlTGF5b3V0VHlwZS5hcHBsaWNhdGlvbixcbiAgICAgIG9yZGVyOiA2LFxuICAgICAgaWNvbkNsYXNzOiAnZmEgZmEtY29nJyxcbiAgICB9LFxuICBdIGFzIEFCUC5GdWxsUm91dGVbXSxcbn07XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm5/lib/root-setting-management.module.js b/npm/ng-packs/dist/setting-management/esm5/lib/root-setting-management.module.js deleted file mode 100644 index ac9c911697..0000000000 --- a/npm/ng-packs/dist/setting-management/esm5/lib/root-setting-management.module.js +++ /dev/null @@ -1,27 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { NgModule } from '@angular/core'; -var RootSettingManagementModule = /** @class */ (function () { - function RootSettingManagementModule() { - } - /** - * @return {?} - */ - RootSettingManagementModule.forRoot = /** - * @return {?} - */ - function () { - return { - ngModule: RootSettingManagementModule, - providers: [], - }; - }; - RootSettingManagementModule.decorators = [ - { type: NgModule, args: [{},] } - ]; - return RootSettingManagementModule; -}()); -export { RootSettingManagementModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC1zZXR0aW5nLW1hbmFnZW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5zZXR0aW5nLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvcm9vdC1zZXR0aW5nLW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RDtJQUFBO0lBUUEsQ0FBQzs7OztJQU5RLG1DQUFPOzs7SUFBZDtRQUNFLE9BQU87WUFDTCxRQUFRLEVBQUUsMkJBQTJCO1lBQ3JDLFNBQVMsRUFBRSxFQUFFO1NBQ2QsQ0FBQztJQUNKLENBQUM7O2dCQVBGLFFBQVEsU0FBQyxFQUFFOztJQVFaLGtDQUFDO0NBQUEsQUFSRCxJQVFDO1NBUFksMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQE5nTW9kdWxlKHt9KVxuZXhwb3J0IGNsYXNzIFJvb3RTZXR0aW5nTWFuYWdlbWVudE1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnMge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogUm9vdFNldHRpbmdNYW5hZ2VtZW50TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXSxcbiAgICB9O1xuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm5/lib/services/setting-management.service.js b/npm/ng-packs/dist/setting-management/esm5/lib/services/setting-management.service.js new file mode 100644 index 0000000000..23d4dfb705 --- /dev/null +++ b/npm/ng-packs/dist/setting-management/esm5/lib/services/setting-management.service.js @@ -0,0 +1,145 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Injectable } from '@angular/core'; +import { RouteConfigLoadEnd, Router } from '@angular/router'; +import { Navigate } from '@ngxs/router-plugin'; +import { Store } from '@ngxs/store'; +import { Subject, timer } from 'rxjs'; +import { filter, takeUntil } from 'rxjs/operators'; +import * as i0 from "@angular/core"; +import * as i1 from "@angular/router"; +import * as i2 from "@ngxs/store"; +var SettingManagementService = /** @class */ (function () { + function SettingManagementService(router, store) { + var _this = this; + this.router = router; + this.store = store; + this.settings = []; + this.selected = (/** @type {?} */ ({})); + this.destroy$ = new Subject(); + /** @type {?} */ + var timeout; + this.router.events + .pipe(filter((/** + * @param {?} event + * @return {?} + */ + function (event) { return event instanceof RouteConfigLoadEnd; })), takeUntil(this.destroy$)) + .subscribe((/** + * @param {?} event + * @return {?} + */ + function (event) { + if (timeout) { + timeout.unsubscribe(); + _this.destroy$.next(); + } + timeout = timer(150).subscribe((/** + * @return {?} + */ + function () { + _this.setSettings(); + })); + })); + } + /** + * @return {?} + */ + SettingManagementService.prototype.ngOnDestroy = /** + * @return {?} + */ + function () { + this.destroy$.next(); + }; + /** + * @return {?} + */ + SettingManagementService.prototype.setSettings = /** + * @return {?} + */ + function () { + var _this = this; + setTimeout((/** + * @return {?} + */ + function () { + /** @type {?} */ + var route = _this.router.config.find((/** + * @param {?} r + * @return {?} + */ + function (r) { return r.path === 'setting-management'; })); + _this.settings = route.data.settings.sort((/** + * @param {?} a + * @param {?} b + * @return {?} + */ + function (a, b) { return a.order - b.order; })); + _this.checkSelected(); + }), 0); + }; + /** + * @return {?} + */ + SettingManagementService.prototype.checkSelected = /** + * @return {?} + */ + function () { + var _this = this; + this.selected = this.settings.find((/** + * @param {?} setting + * @return {?} + */ + function (setting) { return setting.url === _this.router.url; })) || ((/** @type {?} */ ({}))); + if (!this.selected.name && this.settings.length) { + this.setSelected(this.settings[0]); + } + }; + /** + * @param {?} selected + * @return {?} + */ + SettingManagementService.prototype.setSelected = /** + * @param {?} selected + * @return {?} + */ + function (selected) { + this.selected = selected; + this.store.dispatch(new Navigate([selected.url])); + }; + SettingManagementService.decorators = [ + { type: Injectable, args: [{ providedIn: 'root' },] } + ]; + /** @nocollapse */ + SettingManagementService.ctorParameters = function () { return [ + { type: Router }, + { type: Store } + ]; }; + /** @nocollapse */ SettingManagementService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function SettingManagementService_Factory() { return new SettingManagementService(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i2.Store)); }, token: SettingManagementService, providedIn: "root" }); + return SettingManagementService; +}()); +export { SettingManagementService }; +if (false) { + /** @type {?} */ + SettingManagementService.prototype.settings; + /** @type {?} */ + SettingManagementService.prototype.selected; + /** + * @type {?} + * @private + */ + SettingManagementService.prototype.destroy$; + /** + * @type {?} + * @private + */ + SettingManagementService.prototype.router; + /** + * @type {?} + * @private + */ + SettingManagementService.prototype.store; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1tYW5hZ2VtZW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnNldHRpbmctbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9zZXR0aW5nLW1hbmFnZW1lbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFFbkQ7SUFRRSxrQ0FBb0IsTUFBYyxFQUFVLEtBQVk7UUFBeEQsaUJBZ0JDO1FBaEJtQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBTztRQU54RCxhQUFRLEdBQWlCLEVBQUUsQ0FBQztRQUU1QixhQUFRLEdBQUcsbUJBQUEsRUFBRSxFQUFjLENBQUM7UUFFcEIsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7O1lBRzNCLE9BQXFCO1FBQ3pCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTTthQUNmLElBQUksQ0FDSCxNQUFNOzs7O1FBQUMsVUFBQSxLQUFLLElBQUksT0FBQSxLQUFLLFlBQVksa0JBQWtCLEVBQW5DLENBQW1DLEVBQUMsRUFDcEQsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FDekI7YUFDQSxTQUFTOzs7O1FBQUMsVUFBQSxLQUFLO1lBQ2QsSUFBSSxPQUFPLEVBQUU7Z0JBQ1gsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUN0QixLQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO2FBQ3RCO1lBQ0QsT0FBTyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTOzs7WUFBQztnQkFDN0IsS0FBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3JCLENBQUMsRUFBQyxDQUFDO1FBQ0wsQ0FBQyxFQUFDLENBQUM7SUFDUCxDQUFDOzs7O0lBRUQsOENBQVc7OztJQUFYO1FBQ0UsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDOzs7O0lBRUQsOENBQVc7OztJQUFYO1FBQUEsaUJBTUM7UUFMQyxVQUFVOzs7UUFBQzs7Z0JBQ0gsS0FBSyxHQUFHLEtBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUk7Ozs7WUFBQyxVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxJQUFJLEtBQUssb0JBQW9CLEVBQS9CLENBQStCLEVBQUM7WUFDM0UsS0FBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJOzs7OztZQUFDLFVBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSyxPQUFBLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBakIsQ0FBaUIsRUFBQyxDQUFDO1lBQ3RFLEtBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN2QixDQUFDLEdBQUUsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDOzs7O0lBRUQsZ0RBQWE7OztJQUFiO1FBQUEsaUJBTUM7UUFMQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSTs7OztRQUFDLFVBQUEsT0FBTyxJQUFJLE9BQUEsT0FBTyxDQUFDLEdBQUcsS0FBSyxLQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBL0IsQ0FBK0IsRUFBQyxJQUFJLENBQUMsbUJBQUEsRUFBRSxFQUFjLENBQUMsQ0FBQztRQUVyRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUU7WUFDL0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDcEM7SUFDSCxDQUFDOzs7OztJQUVELDhDQUFXOzs7O0lBQVgsVUFBWSxRQUFvQjtRQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEQsQ0FBQzs7Z0JBakRGLFVBQVUsU0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7Ozs7Z0JBTkwsTUFBTTtnQkFFMUIsS0FBSzs7O21DQUpkO0NBMERDLEFBbERELElBa0RDO1NBakRZLHdCQUF3Qjs7O0lBQ25DLDRDQUE0Qjs7SUFFNUIsNENBQTRCOzs7OztJQUU1Qiw0Q0FBaUM7Ozs7O0lBRXJCLDBDQUFzQjs7Ozs7SUFBRSx5Q0FBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXR0aW5nVGFiIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVDb25maWdMb2FkRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTmF2aWdhdGUgfSBmcm9tICdAbmd4cy9yb3V0ZXItcGx1Z2luJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgU2V0dGluZ01hbmFnZW1lbnRTZXJ2aWNlIHtcbiAgc2V0dGluZ3M6IFNldHRpbmdUYWJbXSA9IFtdO1xuXG4gIHNlbGVjdGVkID0ge30gYXMgU2V0dGluZ1RhYjtcblxuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLCBwcml2YXRlIHN0b3JlOiBTdG9yZSkge1xuICAgIGxldCB0aW1lb3V0OiBTdWJzY3JpcHRpb247XG4gICAgdGhpcy5yb3V0ZXIuZXZlbnRzXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKGV2ZW50ID0+IGV2ZW50IGluc3RhbmNlb2YgUm91dGVDb25maWdMb2FkRW5kKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgIGlmICh0aW1lb3V0KSB7XG4gICAgICAgICAgdGltZW91dC51bnN1YnNjcmliZSgpO1xuICAgICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgICAgICB9XG4gICAgICAgIHRpbWVvdXQgPSB0aW1lcigxNTApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5zZXRTZXR0aW5ncygpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gIH1cblxuICBzZXRTZXR0aW5ncygpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbnN0IHJvdXRlID0gdGhpcy5yb3V0ZXIuY29uZmlnLmZpbmQociA9PiByLnBhdGggPT09ICdzZXR0aW5nLW1hbmFnZW1lbnQnKTtcbiAgICAgIHRoaXMuc2V0dGluZ3MgPSByb3V0ZS5kYXRhLnNldHRpbmdzLnNvcnQoKGEsIGIpID0+IGEub3JkZXIgLSBiLm9yZGVyKTtcbiAgICAgIHRoaXMuY2hlY2tTZWxlY3RlZCgpO1xuICAgIH0sIDApO1xuICB9XG5cbiAgY2hlY2tTZWxlY3RlZCgpIHtcbiAgICB0aGlzLnNlbGVjdGVkID0gdGhpcy5zZXR0aW5ncy5maW5kKHNldHRpbmcgPT4gc2V0dGluZy51cmwgPT09IHRoaXMucm91dGVyLnVybCkgfHwgKHt9IGFzIFNldHRpbmdUYWIpO1xuXG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkLm5hbWUgJiYgdGhpcy5zZXR0aW5ncy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuc2V0U2VsZWN0ZWQodGhpcy5zZXR0aW5nc1swXSk7XG4gICAgfVxuICB9XG5cbiAgc2V0U2VsZWN0ZWQoc2VsZWN0ZWQ6IFNldHRpbmdUYWIpIHtcbiAgICB0aGlzLnNlbGVjdGVkID0gc2VsZWN0ZWQ7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgTmF2aWdhdGUoW3NlbGVjdGVkLnVybF0pKTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm5/lib/setting-management-routing.module.js b/npm/ng-packs/dist/setting-management/esm5/lib/setting-management-routing.module.js index 2bbad72de2..d2fa0e0dd9 100644 --- a/npm/ng-packs/dist/setting-management/esm5/lib/setting-management-routing.module.js +++ b/npm/ng-packs/dist/setting-management/esm5/lib/setting-management-routing.module.js @@ -5,13 +5,16 @@ import { DynamicLayoutComponent } from '@abp/ng.core'; import { NgModule } from '@angular/core'; import { RouterModule } from '@angular/router'; -import { SettingComponent } from './components/setting/setting.component'; +import { SETTING_MANAGEMENT_ROUTES } from './constants/routes'; +import { SettingLayoutComponent } from './components/setting-layout.component'; +var ɵ0 = { routes: SETTING_MANAGEMENT_ROUTES, settings: [] }; /** @type {?} */ var routes = [ { - path: '', + path: 'setting-management', component: DynamicLayoutComponent, - children: [{ path: '', component: SettingComponent }], + children: [{ path: '', component: SettingLayoutComponent }], + data: ɵ0, }, ]; var SettingManagementRoutingModule = /** @class */ (function () { @@ -26,4 +29,5 @@ var SettingManagementRoutingModule = /** @class */ (function () { return SettingManagementRoutingModule; }()); export { SettingManagementRoutingModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1tYW5hZ2VtZW50LXJvdXRpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5zZXR0aW5nLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvc2V0dGluZy1tYW5hZ2VtZW50LXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7O0lBRXBFLE1BQU0sR0FBVztJQUNyQjtRQUNFLElBQUksRUFBRSxFQUFFO1FBQ1IsU0FBUyxFQUFFLHNCQUFzQjtRQUNqQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLENBQUM7S0FDdEQ7Q0FDRjtBQUVEO0lBQUE7SUFJNkMsQ0FBQzs7Z0JBSjdDLFFBQVEsU0FBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUN4QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7aUJBQ3hCOztJQUM0QyxxQ0FBQztDQUFBLEFBSjlDLElBSThDO1NBQWpDLDhCQUE4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IER5bmFtaWNMYXlvdXRDb21wb25lbnQgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSwgUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFNldHRpbmdDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2V0dGluZy9zZXR0aW5nLmNvbXBvbmVudCc7XG5cbmNvbnN0IHJvdXRlczogUm91dGVzID0gW1xuICB7XG4gICAgcGF0aDogJycsXG4gICAgY29tcG9uZW50OiBEeW5hbWljTGF5b3V0Q29tcG9uZW50LFxuICAgIGNoaWxkcmVuOiBbeyBwYXRoOiAnJywgY29tcG9uZW50OiBTZXR0aW5nQ29tcG9uZW50IH1dLFxuICB9LFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1JvdXRlck1vZHVsZS5mb3JDaGlsZChyb3V0ZXMpXSxcbiAgZXhwb3J0czogW1JvdXRlck1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNldHRpbmdNYW5hZ2VtZW50Um91dGluZ01vZHVsZSB7fVxuIl19 \ No newline at end of file +export { ɵ0 }; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1tYW5hZ2VtZW50LXJvdXRpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy5zZXR0aW5nLW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJsaWIvc2V0dGluZy1tYW5hZ2VtZW50LXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDL0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7U0FPckUsRUFBRSxNQUFNLEVBQUUseUJBQXlCLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTs7SUFMdkQsTUFBTSxHQUFXO0lBQ3JCO1FBQ0UsSUFBSSxFQUFFLG9CQUFvQjtRQUMxQixTQUFTLEVBQUUsc0JBQXNCO1FBQ2pDLFFBQVEsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQztRQUMzRCxJQUFJLElBQXFEO0tBQzFEO0NBQ0Y7QUFFRDtJQUFBO0lBSTZDLENBQUM7O2dCQUo3QyxRQUFRLFNBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDeEMsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2lCQUN4Qjs7SUFDNEMscUNBQUM7Q0FBQSxBQUo5QyxJQUk4QztTQUFqQyw4QkFBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEeW5hbWljTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUsIFJvdXRlcyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTRVRUSU5HX01BTkFHRU1FTlRfUk9VVEVTIH0gZnJvbSAnLi9jb25zdGFudHMvcm91dGVzJztcbmltcG9ydCB7IFNldHRpbmdMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2V0dGluZy1sYXlvdXQuY29tcG9uZW50JztcblxuY29uc3Qgcm91dGVzOiBSb3V0ZXMgPSBbXG4gIHtcbiAgICBwYXRoOiAnc2V0dGluZy1tYW5hZ2VtZW50JyxcbiAgICBjb21wb25lbnQ6IER5bmFtaWNMYXlvdXRDb21wb25lbnQsXG4gICAgY2hpbGRyZW46IFt7IHBhdGg6ICcnLCBjb21wb25lbnQ6IFNldHRpbmdMYXlvdXRDb21wb25lbnQgfV0sXG4gICAgZGF0YTogeyByb3V0ZXM6IFNFVFRJTkdfTUFOQUdFTUVOVF9ST1VURVMsIHNldHRpbmdzOiBbXSB9LFxuICB9LFxuXTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1JvdXRlck1vZHVsZS5mb3JDaGlsZChyb3V0ZXMpXSxcbiAgZXhwb3J0czogW1JvdXRlck1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNldHRpbmdNYW5hZ2VtZW50Um91dGluZ01vZHVsZSB7fVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm5/lib/setting-management.module.js b/npm/ng-packs/dist/setting-management/esm5/lib/setting-management.module.js index 9aa107cfa6..0b7d328802 100644 --- a/npm/ng-packs/dist/setting-management/esm5/lib/setting-management.module.js +++ b/npm/ng-packs/dist/setting-management/esm5/lib/setting-management.module.js @@ -3,26 +3,23 @@ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { CoreModule } from '@abp/ng.core'; -import { NgModule, Self } from '@angular/core'; -import { SettingComponent } from './components/setting/setting.component'; -import { SettingManagementRoutingModule } from './setting-management-routing.module'; import { ThemeSharedModule } from '@abp/ng.theme.shared'; -import { InitialService } from './components/services/initial.service'; +import { NgModule } from '@angular/core'; +import { SettingLayoutComponent } from './components/setting-layout.component'; +import { SettingManagementRoutingModule } from './setting-management-routing.module'; +/** @type {?} */ +export var SETTING_LAYOUT = SettingLayoutComponent; var SettingManagementModule = /** @class */ (function () { - function SettingManagementModule(initialService) { + function SettingManagementModule() { } SettingManagementModule.decorators = [ { type: NgModule, args: [{ - declarations: [SettingComponent], + declarations: [SETTING_LAYOUT], imports: [SettingManagementRoutingModule, CoreModule, ThemeSharedModule], - providers: [InitialService], + entryComponents: [SETTING_LAYOUT], },] } ]; - /** @nocollapse */ - SettingManagementModule.ctorParameters = function () { return [ - { type: InitialService, decorators: [{ type: Self }] } - ]; }; return SettingManagementModule; }()); export { SettingManagementModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1tYW5hZ2VtZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuc2V0dGluZy1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL3NldHRpbmctbWFuYWdlbWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVEsTUFBTSxjQUFjLENBQUM7QUFDaEQsT0FBTyxFQUFFLFFBQVEsRUFBd0MsSUFBSSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUV2RTtJQU1FLGlDQUFvQixjQUE4QjtJQUFHLENBQUM7O2dCQU52RCxRQUFRLFNBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQ2hDLE9BQU8sRUFBRSxDQUFDLDhCQUE4QixFQUFFLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQztvQkFDeEUsU0FBUyxFQUFFLENBQUMsY0FBYyxDQUFDO2lCQUM1Qjs7OztnQkFOUSxjQUFjLHVCQVFSLElBQUk7O0lBQ25CLDhCQUFDO0NBQUEsQUFQRCxJQU9DO1NBRlksdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSwgbm9vcCB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycywgQVBQX0lOSVRJQUxJWkVSLCBTZWxmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTZXR0aW5nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NldHRpbmcvc2V0dGluZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2V0dGluZ01hbmFnZW1lbnRSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9zZXR0aW5nLW1hbmFnZW1lbnQtcm91dGluZy5tb2R1bGUnO1xuaW1wb3J0IHsgVGhlbWVTaGFyZWRNb2R1bGUgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBJbml0aWFsU2VydmljZSB9IGZyb20gJy4vY29tcG9uZW50cy9zZXJ2aWNlcy9pbml0aWFsLnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtTZXR0aW5nQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW1NldHRpbmdNYW5hZ2VtZW50Um91dGluZ01vZHVsZSwgQ29yZU1vZHVsZSwgVGhlbWVTaGFyZWRNb2R1bGVdLFxuICBwcm92aWRlcnM6IFtJbml0aWFsU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNldHRpbmdNYW5hZ2VtZW50TW9kdWxlIHtcbiAgY29uc3RydWN0b3IoQFNlbGYoKSBpbml0aWFsU2VydmljZTogSW5pdGlhbFNlcnZpY2UpIHt9XG59XG4iXX0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dGluZy1tYW5hZ2VtZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuc2V0dGluZy1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL3NldHRpbmctbWFuYWdlbWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQzs7QUFFckYsTUFBTSxLQUFPLGNBQWMsR0FBRyxzQkFBc0I7QUFFcEQ7SUFBQTtJQUtzQyxDQUFDOztnQkFMdEMsUUFBUSxTQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGNBQWMsQ0FBQztvQkFDOUIsT0FBTyxFQUFFLENBQUMsOEJBQThCLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixDQUFDO29CQUN4RSxlQUFlLEVBQUUsQ0FBQyxjQUFjLENBQUM7aUJBQ2xDOztJQUNxQyw4QkFBQztDQUFBLEFBTHZDLElBS3VDO1NBQTFCLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgVGhlbWVTaGFyZWRNb2R1bGUgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2V0dGluZ0xheW91dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zZXR0aW5nLWxheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2V0dGluZ01hbmFnZW1lbnRSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi9zZXR0aW5nLW1hbmFnZW1lbnQtcm91dGluZy5tb2R1bGUnO1xuXG5leHBvcnQgY29uc3QgU0VUVElOR19MQVlPVVQgPSBTZXR0aW5nTGF5b3V0Q29tcG9uZW50O1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtTRVRUSU5HX0xBWU9VVF0sXG4gIGltcG9ydHM6IFtTZXR0aW5nTWFuYWdlbWVudFJvdXRpbmdNb2R1bGUsIENvcmVNb2R1bGUsIFRoZW1lU2hhcmVkTW9kdWxlXSxcbiAgZW50cnlDb21wb25lbnRzOiBbU0VUVElOR19MQVlPVVRdLFxufSlcbmV4cG9ydCBjbGFzcyBTZXR0aW5nTWFuYWdlbWVudE1vZHVsZSB7fVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/esm5/public-api.js b/npm/ng-packs/dist/setting-management/esm5/public-api.js index dafa05f548..01feb13ff1 100644 --- a/npm/ng-packs/dist/setting-management/esm5/public-api.js +++ b/npm/ng-packs/dist/setting-management/esm5/public-api.js @@ -2,8 +2,7 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { RootSettingManagementModule } from './lib/root-setting-management.module'; -export { SettingManagementModule } from './lib/setting-management.module'; -export { SettingComponent } from './lib/components'; +export { SETTING_LAYOUT, SettingManagementModule } from './lib/setting-management.module'; export { SETTING_MANAGEMENT_ROUTES } from './lib/constants'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuc2V0dGluZy1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsNENBQWMsc0NBQXNDLENBQUM7QUFDckQsd0NBQWMsaUNBQWlDLENBQUM7QUFDaEQsaUNBQWMsa0JBQWtCLENBQUM7QUFDakMsMENBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9yb290LXNldHRpbmctbWFuYWdlbWVudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2V0dGluZy1tYW5hZ2VtZW50Lm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnN0YW50cyc7XG4iXX0= \ No newline at end of file +export { SettingLayoutComponent } from './lib/components/setting-layout.component'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcuc2V0dGluZy1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsd0RBQWMsaUNBQWlDLENBQUM7QUFDaEQsMENBQWMsaUJBQWlCLENBQUM7QUFDaEMsdUNBQWMsMkNBQTJDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9zZXR0aW5nLW1hbmFnZW1lbnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NldHRpbmctbGF5b3V0LmNvbXBvbmVudCc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/fesm2015/abp-ng.setting-management.js b/npm/ng-packs/dist/setting-management/fesm2015/abp-ng.setting-management.js index 5eee600821..d069fd9a84 100644 --- a/npm/ng-packs/dist/setting-management/fesm2015/abp-ng.setting-management.js +++ b/npm/ng-packs/dist/setting-management/fesm2015/abp-ng.setting-management.js @@ -1,123 +1,201 @@ -import { NgModule, Injectable, Component, Self } from '@angular/core'; import { DynamicLayoutComponent, CoreModule } from '@abp/ng.core'; -import { Router, RouterModule } from '@angular/router'; -import snq from 'snq'; import { ThemeSharedModule } from '@abp/ng.theme.shared'; +import { Injectable, ɵɵdefineInjectable, ɵɵinject, Component, NgModule } from '@angular/core'; +import { RouteConfigLoadEnd, Router, RouterModule } from '@angular/router'; +import { Subject, timer } from 'rxjs'; +import { Navigate } from '@ngxs/router-plugin'; +import { Store } from '@ngxs/store'; +import { filter, takeUntil } from 'rxjs/operators'; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -class RootSettingManagementModule { - /** - * @return {?} - */ - static forRoot() { - return { - ngModule: RootSettingManagementModule, - providers: [], - }; - } -} -RootSettingManagementModule.decorators = [ - { type: NgModule, args: [{},] } -]; - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class InitialService { +class SettingManagementService { /** * @param {?} router + * @param {?} store */ - constructor(router) { + constructor(router, store) { this.router = router; - this.settings = this.router.config - .map((/** - * @param {?} route - * @return {?} - */ - route => snq((/** + this.store = store; + this.settings = []; + this.selected = (/** @type {?} */ ({})); + this.destroy$ = new Subject(); + /** @type {?} */ + let timeout; + this.router.events + .pipe(filter((/** + * @param {?} event * @return {?} */ - () => route.data.routes.settings)))) - .filter((/** - * @param {?} settings + event => event instanceof RouteConfigLoadEnd)), takeUntil(this.destroy$)) + .subscribe((/** + * @param {?} event * @return {?} */ - settings => settings && settings.length)) - .reduce((/** - * @param {?} acc - * @param {?} val + event => { + if (timeout) { + timeout.unsubscribe(); + this.destroy$.next(); + } + timeout = timer(150).subscribe((/** + * @return {?} + */ + () => { + this.setSettings(); + })); + })); + } + /** + * @return {?} + */ + ngOnDestroy() { + this.destroy$.next(); + } + /** + * @return {?} + */ + setSettings() { + setTimeout((/** * @return {?} */ - (acc, val) => [...acc, ...val]), []) - .sort((/** - * @param {?} a - * @param {?} b + () => { + /** @type {?} */ + const route = this.router.config.find((/** + * @param {?} r + * @return {?} + */ + r => r.path === 'setting-management')); + this.settings = route.data.settings.sort((/** + * @param {?} a + * @param {?} b + * @return {?} + */ + (a, b) => a.order - b.order)); + this.checkSelected(); + }), 0); + } + /** + * @return {?} + */ + checkSelected() { + this.selected = this.settings.find((/** + * @param {?} setting * @return {?} */ - (a, b) => a.order - b.order)); + setting => setting.url === this.router.url)) || ((/** @type {?} */ ({}))); + if (!this.selected.name && this.settings.length) { + this.setSelected(this.settings[0]); + } + } + /** + * @param {?} selected + * @return {?} + */ + setSelected(selected) { + this.selected = selected; + this.store.dispatch(new Navigate([selected.url])); } } -InitialService.decorators = [ - { type: Injectable } +SettingManagementService.decorators = [ + { type: Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ -InitialService.ctorParameters = () => [ - { type: Router } +SettingManagementService.ctorParameters = () => [ + { type: Router }, + { type: Store } ]; +/** @nocollapse */ SettingManagementService.ngInjectableDef = ɵɵdefineInjectable({ factory: function SettingManagementService_Factory() { return new SettingManagementService(ɵɵinject(Router), ɵɵinject(Store)); }, token: SettingManagementService, providedIn: "root" }); if (false) { /** @type {?} */ - InitialService.prototype.settings; + SettingManagementService.prototype.settings; + /** @type {?} */ + SettingManagementService.prototype.selected; + /** + * @type {?} + * @private + */ + SettingManagementService.prototype.destroy$; + /** + * @type {?} + * @private + */ + SettingManagementService.prototype.router; /** * @type {?} * @private */ - InitialService.prototype.router; + SettingManagementService.prototype.store; } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -class SettingComponent { +class SettingLayoutComponent { /** - * @param {?} initialService + * @param {?} settingManagementService + * @param {?} router */ - constructor(initialService) { - this.initialService = initialService; - this.selected = (/** @type {?} */ ({})); + constructor(settingManagementService, router) { + this.settingManagementService = settingManagementService; + this.router = router; + this.trackByFn = (/** + * @param {?} _ + * @param {?} item + * @return {?} + */ + (_, item) => item.name); + if (settingManagementService.selected && + this.router.url !== settingManagementService.selected.url && + settingManagementService.settings.length) { + settingManagementService.setSelected(settingManagementService.settings[0]); + } } /** * @return {?} */ - ngOnInit() { - this.settings = this.initialService.settings; - this.selected = this.settings[0]; + ngOnDestroy() { } + /** + * @return {?} + */ + ngAfterViewInit() { + timer(250).subscribe((/** + * @return {?} + */ + () => { + if (!this.settingManagementService.settings.length) { + this.settingManagementService.setSettings(); + } + })); } } -SettingComponent.decorators = [ +// required for dynamic component +SettingLayoutComponent.type = "setting" /* setting */; +SettingLayoutComponent.decorators = [ { type: Component, args: [{ - selector: 'abp-setting', - template: "
\n
\n

{{ 'AbpSettingManagement::Settings' | abpLocalization }}

\n
\n
\n \n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
    \n \n {{ setting.name | abpLocalization }}\n \n
\n
\n
\n
\n
\n

{{ selected.name | abpLocalization }}

\n
\n\n \n
\n
\n
\n
\n
\n
\n
\n" + selector: 'abp-setting-layout', + template: "
\n
\n

{{ 'AbpSettingManagement::Settings' | abpLocalization }}

\n
\n \n
\n
\n
\n
\n\n
\n
\n
\n
\n \n
\n
\n
\n
    \n \n {{ setting.name | abpLocalization }}\n \n
\n
\n
\n
\n \n

{{ settingManagementService.selected.name | abpLocalization }}

\n
\n \n
\n
\n
\n
\n
\n
\n\n" }] } ]; /** @nocollapse */ -SettingComponent.ctorParameters = () => [ - { type: InitialService } +SettingLayoutComponent.ctorParameters = () => [ + { type: SettingManagementService }, + { type: Router } ]; if (false) { /** @type {?} */ - SettingComponent.prototype.settings; + SettingLayoutComponent.type; /** @type {?} */ - SettingComponent.prototype.selected; + SettingLayoutComponent.prototype.trackByFn; + /** @type {?} */ + SettingLayoutComponent.prototype.settingManagementService; /** * @type {?} * @private */ - SettingComponent.prototype.initialService; + SettingLayoutComponent.prototype.router; } /** @@ -125,11 +203,31 @@ if (false) { * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** @type {?} */ +const SETTING_MANAGEMENT_ROUTES = { + routes: (/** @type {?} */ ([ + { + name: 'Settings', + path: 'setting-management', + parentName: 'AbpUiNavigation::Menu:Administration', + layout: "application" /* application */, + order: 6, + iconClass: 'fa fa-cog', + }, + ])), +}; + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +const ɵ0 = { routes: SETTING_MANAGEMENT_ROUTES, settings: [] }; +/** @type {?} */ const routes = [ { - path: '', + path: 'setting-management', component: DynamicLayoutComponent, - children: [{ path: '', component: SettingComponent }], + children: [{ path: '', component: SettingLayoutComponent }], + data: ɵ0, }, ]; class SettingManagementRoutingModule { @@ -145,47 +243,17 @@ SettingManagementRoutingModule.decorators = [ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ +/** @type {?} */ +const SETTING_LAYOUT = SettingLayoutComponent; class SettingManagementModule { - /** - * @param {?} initialService - */ - constructor(initialService) { } } SettingManagementModule.decorators = [ { type: NgModule, args: [{ - declarations: [SettingComponent], + declarations: [SETTING_LAYOUT], imports: [SettingManagementRoutingModule, CoreModule, ThemeSharedModule], - providers: [InitialService], + entryComponents: [SETTING_LAYOUT], },] } ]; -/** @nocollapse */ -SettingManagementModule.ctorParameters = () => [ - { type: InitialService, decorators: [{ type: Self }] } -]; - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -/** @type {?} */ -const SETTING_MANAGEMENT_ROUTES = { - routes: (/** @type {?} */ ([ - { - name: 'Settings', - path: 'setting-management', - parentName: 'AbpUiNavigation::Menu:Administration', - layout: "application" /* application */, - order: 6, - iconClass: 'fa fa-cog', - }, - ])), - settings: [], -}; /** * @fileoverview added by tsickle @@ -202,5 +270,5 @@ const SETTING_MANAGEMENT_ROUTES = { * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { RootSettingManagementModule, SETTING_MANAGEMENT_ROUTES, SettingComponent, SettingManagementModule, SettingComponent as ɵa, InitialService as ɵb, SettingManagementRoutingModule as ɵc }; +export { SETTING_LAYOUT, SETTING_MANAGEMENT_ROUTES, SettingLayoutComponent, SettingManagementModule, SettingManagementService as ɵa, SettingManagementRoutingModule as ɵb, SETTING_MANAGEMENT_ROUTES as ɵc }; //# sourceMappingURL=abp-ng.setting-management.js.map diff --git a/npm/ng-packs/dist/setting-management/fesm2015/abp-ng.setting-management.js.map b/npm/ng-packs/dist/setting-management/fesm2015/abp-ng.setting-management.js.map index ae0e51e008..e25b34527c 100644 --- a/npm/ng-packs/dist/setting-management/fesm2015/abp-ng.setting-management.js.map +++ b/npm/ng-packs/dist/setting-management/fesm2015/abp-ng.setting-management.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.setting-management.js","sources":["ng://@abp/ng.setting-management/lib/root-setting-management.module.ts","ng://@abp/ng.setting-management/lib/components/services/initial.service.ts","ng://@abp/ng.setting-management/lib/components/setting/setting.component.ts","ng://@abp/ng.setting-management/lib/setting-management-routing.module.ts","ng://@abp/ng.setting-management/lib/setting-management.module.ts","ng://@abp/ng.setting-management/lib/constants/routes.ts"],"sourcesContent":["import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootSettingManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootSettingManagementModule,\n providers: [],\n };\n }\n}\n","import { SettingTab } from '@abp/ng.theme.shared';\nimport { Injectable, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport snq from 'snq';\n\n@Injectable()\nexport class InitialService {\n public settings: SettingTab[];\n\n constructor(private router: Router) {\n this.settings = this.router.config\n .map(route => snq(() => route.data.routes.settings))\n .filter(settings => settings && settings.length)\n .reduce((acc, val) => [...acc, ...val], [])\n .sort((a, b) => a.order - b.order);\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { SettingTab, fade } from '@abp/ng.theme.shared';\nimport { InitialService } from '../services/initial.service';\n\n@Component({\n selector: 'abp-setting',\n templateUrl: './setting.component.html',\n})\nexport class SettingComponent implements OnInit {\n settings: SettingTab[];\n\n selected = {} as SettingTab;\n\n constructor(private initialService: InitialService) {}\n\n ngOnInit() {\n this.settings = this.initialService.settings;\n this.selected = this.settings[0];\n }\n}\n","import { DynamicLayoutComponent } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { SettingComponent } from './components/setting/setting.component';\n\nconst routes: Routes = [\n {\n path: '',\n component: DynamicLayoutComponent,\n children: [{ path: '', component: SettingComponent }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class SettingManagementRoutingModule {}\n","import { CoreModule, noop } from '@abp/ng.core';\nimport { NgModule, ModuleWithProviders, APP_INITIALIZER, Self } from '@angular/core';\nimport { SettingComponent } from './components/setting/setting.component';\nimport { SettingManagementRoutingModule } from './setting-management-routing.module';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { InitialService } from './components/services/initial.service';\n\n@NgModule({\n declarations: [SettingComponent],\n imports: [SettingManagementRoutingModule, CoreModule, ThemeSharedModule],\n providers: [InitialService],\n})\nexport class SettingManagementModule {\n constructor(@Self() initialService: InitialService) {}\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const SETTING_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'Settings',\n path: 'setting-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n order: 6,\n iconClass: 'fa fa-cog',\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n"],"names":[],"mappings":";;;;;;;;;;AAAA,MAGa,2BAA2B;;;;IACtC,OAAO,OAAO;QACZ,OAAO;YACL,QAAQ,EAAE,2BAA2B;YACrC,SAAS,EAAE,EAAE;SACd,CAAC;KACH;;;YAPF,QAAQ,SAAC,EAAE;;;;;;;ACDZ,MAKa,cAAc;;;;IAGzB,YAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QAChC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM;aAC/B,GAAG;;;;QAAC,KAAK,IAAI,GAAG;;;QAAC,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAC,EAAC;aACnD,MAAM;;;;QAAC,QAAQ,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,EAAC;aAC/C,MAAM;;;;;QAAC,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,GAAG,EAAE,GAAG,GAAG,CAAC,GAAE,EAAE,CAAC;aAC1C,IAAI;;;;;QAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,EAAC,CAAC;KACtC;;;YAVF,UAAU;;;;YAHF,MAAM;;;;IAKb,kCAA8B;;;;;IAElB,gCAAsB;;;;;;;ACTpC,MAQa,gBAAgB;;;;IAK3B,YAAoB,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QAFlD,aAAQ,sBAAG,EAAE,EAAc,CAAC;KAE0B;;;;IAEtD,QAAQ;QACN,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;QAC7C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;KAClC;;;YAdF,SAAS,SAAC;gBACT,QAAQ,EAAE,aAAa;gBACvB,suDAAuC;aACxC;;;;YALQ,cAAc;;;;IAOrB,oCAAuB;;IAEvB,oCAA4B;;;;;IAEhB,0CAAsC;;;;;;;ACbpD;MAKM,MAAM,GAAW;IACrB;QACE,IAAI,EAAE,EAAE;QACR,SAAS,EAAE,sBAAsB;QACjC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;KACtD;CACF;AAMD,MAAa,8BAA8B;;;YAJ1C,QAAQ,SAAC;gBACR,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACxC,OAAO,EAAE,CAAC,YAAY,CAAC;aACxB;;;;;;;AChBD,MAYa,uBAAuB;;;;IAClC,YAAoB,cAA8B,KAAI;;;YANvD,QAAQ,SAAC;gBACR,YAAY,EAAE,CAAC,gBAAgB,CAAC;gBAChC,OAAO,EAAE,CAAC,8BAA8B,EAAE,UAAU,EAAE,iBAAiB,CAAC;gBACxE,SAAS,EAAE,CAAC,cAAc,CAAC;aAC5B;;;;YANQ,cAAc,uBAQR,IAAI;;;;;;;;;;;;;ACXnB,MAAa,yBAAyB,GAAG;IACvC,MAAM,qBAAE;QACN;YACE,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,oBAAoB;YAC1B,UAAU,EAAE,sCAAsC;YAClD,MAAM;YACN,KAAK,EAAE,CAAC;YACR,SAAS,EAAE,WAAW;SACvB;KACF,EAAmB;IACpB,QAAQ,EAAE,EAAE;CACb;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"abp-ng.setting-management.js","sources":["ng://@abp/ng.setting-management/lib/services/setting-management.service.ts","ng://@abp/ng.setting-management/lib/components/setting-layout.component.ts","ng://@abp/ng.setting-management/lib/constants/routes.ts","ng://@abp/ng.setting-management/lib/setting-management-routing.module.ts","ng://@abp/ng.setting-management/lib/setting-management.module.ts"],"sourcesContent":["import { SettingTab } from '@abp/ng.theme.shared';\nimport { Injectable } from '@angular/core';\nimport { RouteConfigLoadEnd, Router } from '@angular/router';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { Subject, Subscription, timer } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\n\n@Injectable({ providedIn: 'root' })\nexport class SettingManagementService {\n settings: SettingTab[] = [];\n\n selected = {} as SettingTab;\n\n private destroy$ = new Subject();\n\n constructor(private router: Router, private store: Store) {\n let timeout: Subscription;\n this.router.events\n .pipe(\n filter(event => event instanceof RouteConfigLoadEnd),\n takeUntil(this.destroy$),\n )\n .subscribe(event => {\n if (timeout) {\n timeout.unsubscribe();\n this.destroy$.next();\n }\n timeout = timer(150).subscribe(() => {\n this.setSettings();\n });\n });\n }\n\n ngOnDestroy() {\n this.destroy$.next();\n }\n\n setSettings() {\n setTimeout(() => {\n const route = this.router.config.find(r => r.path === 'setting-management');\n this.settings = route.data.settings.sort((a, b) => a.order - b.order);\n this.checkSelected();\n }, 0);\n }\n\n checkSelected() {\n this.selected = this.settings.find(setting => setting.url === this.router.url) || ({} as SettingTab);\n\n if (!this.selected.name && this.settings.length) {\n this.setSelected(this.settings[0]);\n }\n }\n\n setSelected(selected: SettingTab) {\n this.selected = selected;\n this.store.dispatch(new Navigate([selected.url]));\n }\n}\n","import { eLayoutType } from '@abp/ng.core';\nimport { SettingTab } from '@abp/ng.theme.shared';\nimport { Component, TrackByFunction } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { timer } from 'rxjs';\nimport { SettingManagementService } from '../services/setting-management.service';\n\n@Component({\n selector: 'abp-setting-layout',\n templateUrl: './setting-layout.component.html',\n})\nexport class SettingLayoutComponent {\n // required for dynamic component\n static type = eLayoutType.setting;\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n constructor(public settingManagementService: SettingManagementService, private router: Router) {\n if (\n settingManagementService.selected &&\n this.router.url !== settingManagementService.selected.url &&\n settingManagementService.settings.length\n ) {\n settingManagementService.setSelected(settingManagementService.settings[0]);\n }\n }\n\n ngOnDestroy() {}\n\n ngAfterViewInit() {\n timer(250).subscribe(() => {\n if (!this.settingManagementService.settings.length) {\n this.settingManagementService.setSettings();\n }\n });\n }\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const SETTING_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'Settings',\n path: 'setting-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n order: 6,\n iconClass: 'fa fa-cog',\n },\n ] as ABP.FullRoute[],\n};\n","import { DynamicLayoutComponent } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { SETTING_MANAGEMENT_ROUTES } from './constants/routes';\nimport { SettingLayoutComponent } from './components/setting-layout.component';\n\nconst routes: Routes = [\n {\n path: 'setting-management',\n component: DynamicLayoutComponent,\n children: [{ path: '', component: SettingLayoutComponent }],\n data: { routes: SETTING_MANAGEMENT_ROUTES, settings: [] },\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class SettingManagementRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { SettingLayoutComponent } from './components/setting-layout.component';\nimport { SettingManagementRoutingModule } from './setting-management-routing.module';\n\nexport const SETTING_LAYOUT = SettingLayoutComponent;\n\n@NgModule({\n declarations: [SETTING_LAYOUT],\n imports: [SettingManagementRoutingModule, CoreModule, ThemeSharedModule],\n entryComponents: [SETTING_LAYOUT],\n})\nexport class SettingManagementModule {}\n"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/fesm5/abp-ng.setting-management.js b/npm/ng-packs/dist/setting-management/fesm5/abp-ng.setting-management.js index 95bc2e675e..0fe78203e1 100644 --- a/npm/ng-packs/dist/setting-management/fesm5/abp-ng.setting-management.js +++ b/npm/ng-packs/dist/setting-management/fesm5/abp-ng.setting-management.js @@ -1,129 +1,218 @@ -import { NgModule, Injectable, Component, Self } from '@angular/core'; import { DynamicLayoutComponent, CoreModule } from '@abp/ng.core'; -import { __spread } from 'tslib'; -import { Router, RouterModule } from '@angular/router'; -import snq from 'snq'; import { ThemeSharedModule } from '@abp/ng.theme.shared'; +import { Injectable, ɵɵdefineInjectable, ɵɵinject, Component, NgModule } from '@angular/core'; +import { RouteConfigLoadEnd, Router, RouterModule } from '@angular/router'; +import { Subject, timer } from 'rxjs'; +import { Navigate } from '@ngxs/router-plugin'; +import { Store } from '@ngxs/store'; +import { filter, takeUntil } from 'rxjs/operators'; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -var RootSettingManagementModule = /** @class */ (function () { - function RootSettingManagementModule() { +var SettingManagementService = /** @class */ (function () { + function SettingManagementService(router, store) { + var _this = this; + this.router = router; + this.store = store; + this.settings = []; + this.selected = (/** @type {?} */ ({})); + this.destroy$ = new Subject(); + /** @type {?} */ + var timeout; + this.router.events + .pipe(filter((/** + * @param {?} event + * @return {?} + */ + function (event) { return event instanceof RouteConfigLoadEnd; })), takeUntil(this.destroy$)) + .subscribe((/** + * @param {?} event + * @return {?} + */ + function (event) { + if (timeout) { + timeout.unsubscribe(); + _this.destroy$.next(); + } + timeout = timer(150).subscribe((/** + * @return {?} + */ + function () { + _this.setSettings(); + })); + })); } /** * @return {?} */ - RootSettingManagementModule.forRoot = /** + SettingManagementService.prototype.ngOnDestroy = /** * @return {?} */ function () { - return { - ngModule: RootSettingManagementModule, - providers: [], - }; + this.destroy$.next(); }; - RootSettingManagementModule.decorators = [ - { type: NgModule, args: [{},] } - ]; - return RootSettingManagementModule; -}()); - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var InitialService = /** @class */ (function () { - function InitialService(router) { - this.router = router; - this.settings = this.router.config - .map((/** - * @param {?} route - * @return {?} - */ - function (route) { return snq((/** - * @return {?} - */ - function () { return route.data.routes.settings; })); })) - .filter((/** - * @param {?} settings - * @return {?} - */ - function (settings) { return settings && settings.length; })) - .reduce((/** - * @param {?} acc - * @param {?} val + /** + * @return {?} + */ + SettingManagementService.prototype.setSettings = /** + * @return {?} + */ + function () { + var _this = this; + setTimeout((/** * @return {?} */ - function (acc, val) { return __spread(acc, val); }), []) - .sort((/** - * @param {?} a - * @param {?} b + function () { + /** @type {?} */ + var route = _this.router.config.find((/** + * @param {?} r + * @return {?} + */ + function (r) { return r.path === 'setting-management'; })); + _this.settings = route.data.settings.sort((/** + * @param {?} a + * @param {?} b + * @return {?} + */ + function (a, b) { return a.order - b.order; })); + _this.checkSelected(); + }), 0); + }; + /** + * @return {?} + */ + SettingManagementService.prototype.checkSelected = /** + * @return {?} + */ + function () { + var _this = this; + this.selected = this.settings.find((/** + * @param {?} setting * @return {?} */ - function (a, b) { return a.order - b.order; })); - } - InitialService.decorators = [ - { type: Injectable } + function (setting) { return setting.url === _this.router.url; })) || ((/** @type {?} */ ({}))); + if (!this.selected.name && this.settings.length) { + this.setSelected(this.settings[0]); + } + }; + /** + * @param {?} selected + * @return {?} + */ + SettingManagementService.prototype.setSelected = /** + * @param {?} selected + * @return {?} + */ + function (selected) { + this.selected = selected; + this.store.dispatch(new Navigate([selected.url])); + }; + SettingManagementService.decorators = [ + { type: Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ - InitialService.ctorParameters = function () { return [ - { type: Router } + SettingManagementService.ctorParameters = function () { return [ + { type: Router }, + { type: Store } ]; }; - return InitialService; + /** @nocollapse */ SettingManagementService.ngInjectableDef = ɵɵdefineInjectable({ factory: function SettingManagementService_Factory() { return new SettingManagementService(ɵɵinject(Router), ɵɵinject(Store)); }, token: SettingManagementService, providedIn: "root" }); + return SettingManagementService; }()); if (false) { /** @type {?} */ - InitialService.prototype.settings; + SettingManagementService.prototype.settings; + /** @type {?} */ + SettingManagementService.prototype.selected; /** * @type {?} * @private */ - InitialService.prototype.router; + SettingManagementService.prototype.destroy$; + /** + * @type {?} + * @private + */ + SettingManagementService.prototype.router; + /** + * @type {?} + * @private + */ + SettingManagementService.prototype.store; } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -var SettingComponent = /** @class */ (function () { - function SettingComponent(initialService) { - this.initialService = initialService; - this.selected = (/** @type {?} */ ({})); +var SettingLayoutComponent = /** @class */ (function () { + function SettingLayoutComponent(settingManagementService, router) { + this.settingManagementService = settingManagementService; + this.router = router; + this.trackByFn = (/** + * @param {?} _ + * @param {?} item + * @return {?} + */ + function (_, item) { return item.name; }); + if (settingManagementService.selected && + this.router.url !== settingManagementService.selected.url && + settingManagementService.settings.length) { + settingManagementService.setSelected(settingManagementService.settings[0]); + } } /** * @return {?} */ - SettingComponent.prototype.ngOnInit = /** + SettingLayoutComponent.prototype.ngOnDestroy = /** + * @return {?} + */ + function () { }; + /** + * @return {?} + */ + SettingLayoutComponent.prototype.ngAfterViewInit = /** * @return {?} */ function () { - this.settings = this.initialService.settings; - this.selected = this.settings[0]; + var _this = this; + timer(250).subscribe((/** + * @return {?} + */ + function () { + if (!_this.settingManagementService.settings.length) { + _this.settingManagementService.setSettings(); + } + })); }; - SettingComponent.decorators = [ + // required for dynamic component + SettingLayoutComponent.type = "setting" /* setting */; + SettingLayoutComponent.decorators = [ { type: Component, args: [{ - selector: 'abp-setting', - template: "
\n
\n

{{ 'AbpSettingManagement::Settings' | abpLocalization }}

\n
\n
\n \n
\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n
    \n \n {{ setting.name | abpLocalization }}\n \n
\n
\n
\n
\n
\n

{{ selected.name | abpLocalization }}

\n
\n\n \n
\n
\n
\n
\n
\n
\n
\n" + selector: 'abp-setting-layout', + template: "
\n
\n

{{ 'AbpSettingManagement::Settings' | abpLocalization }}

\n
\n \n
\n
\n
\n
\n\n
\n
\n
\n
\n \n
\n
\n
\n
    \n \n {{ setting.name | abpLocalization }}\n \n
\n
\n
\n
\n \n

{{ settingManagementService.selected.name | abpLocalization }}

\n
\n \n
\n
\n
\n
\n
\n
\n\n" }] } ]; /** @nocollapse */ - SettingComponent.ctorParameters = function () { return [ - { type: InitialService } + SettingLayoutComponent.ctorParameters = function () { return [ + { type: SettingManagementService }, + { type: Router } ]; }; - return SettingComponent; + return SettingLayoutComponent; }()); if (false) { /** @type {?} */ - SettingComponent.prototype.settings; + SettingLayoutComponent.type; /** @type {?} */ - SettingComponent.prototype.selected; + SettingLayoutComponent.prototype.trackByFn; + /** @type {?} */ + SettingLayoutComponent.prototype.settingManagementService; /** * @type {?} * @private */ - SettingComponent.prototype.initialService; + SettingLayoutComponent.prototype.router; } /** @@ -131,11 +220,31 @@ if (false) { * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** @type {?} */ +var SETTING_MANAGEMENT_ROUTES = { + routes: (/** @type {?} */ ([ + { + name: 'Settings', + path: 'setting-management', + parentName: 'AbpUiNavigation::Menu:Administration', + layout: "application" /* application */, + order: 6, + iconClass: 'fa fa-cog', + }, + ])), +}; + +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +var ɵ0 = { routes: SETTING_MANAGEMENT_ROUTES, settings: [] }; +/** @type {?} */ var routes = [ { - path: '', + path: 'setting-management', component: DynamicLayoutComponent, - children: [{ path: '', component: SettingComponent }], + children: [{ path: '', component: SettingLayoutComponent }], + data: ɵ0, }, ]; var SettingManagementRoutingModule = /** @class */ (function () { @@ -154,47 +263,21 @@ var SettingManagementRoutingModule = /** @class */ (function () { * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ +/** @type {?} */ +var SETTING_LAYOUT = SettingLayoutComponent; var SettingManagementModule = /** @class */ (function () { - function SettingManagementModule(initialService) { + function SettingManagementModule() { } SettingManagementModule.decorators = [ { type: NgModule, args: [{ - declarations: [SettingComponent], + declarations: [SETTING_LAYOUT], imports: [SettingManagementRoutingModule, CoreModule, ThemeSharedModule], - providers: [InitialService], + entryComponents: [SETTING_LAYOUT], },] } ]; - /** @nocollapse */ - SettingManagementModule.ctorParameters = function () { return [ - { type: InitialService, decorators: [{ type: Self }] } - ]; }; return SettingManagementModule; }()); -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -/** @type {?} */ -var SETTING_MANAGEMENT_ROUTES = { - routes: (/** @type {?} */ ([ - { - name: 'Settings', - path: 'setting-management', - parentName: 'AbpUiNavigation::Menu:Administration', - layout: "application" /* application */, - order: 6, - iconClass: 'fa fa-cog', - }, - ])), - settings: [], -}; - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -210,5 +293,5 @@ var SETTING_MANAGEMENT_ROUTES = { * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { RootSettingManagementModule, SETTING_MANAGEMENT_ROUTES, SettingComponent, SettingManagementModule, SettingComponent as ɵa, InitialService as ɵb, SettingManagementRoutingModule as ɵc }; +export { SETTING_LAYOUT, SETTING_MANAGEMENT_ROUTES, SettingLayoutComponent, SettingManagementModule, SettingManagementService as ɵa, SettingManagementRoutingModule as ɵb, SETTING_MANAGEMENT_ROUTES as ɵc }; //# sourceMappingURL=abp-ng.setting-management.js.map diff --git a/npm/ng-packs/dist/setting-management/fesm5/abp-ng.setting-management.js.map b/npm/ng-packs/dist/setting-management/fesm5/abp-ng.setting-management.js.map index 15c1436085..5a170842a1 100644 --- a/npm/ng-packs/dist/setting-management/fesm5/abp-ng.setting-management.js.map +++ b/npm/ng-packs/dist/setting-management/fesm5/abp-ng.setting-management.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.setting-management.js","sources":["ng://@abp/ng.setting-management/lib/root-setting-management.module.ts","ng://@abp/ng.setting-management/lib/components/services/initial.service.ts","ng://@abp/ng.setting-management/lib/components/setting/setting.component.ts","ng://@abp/ng.setting-management/lib/setting-management-routing.module.ts","ng://@abp/ng.setting-management/lib/setting-management.module.ts","ng://@abp/ng.setting-management/lib/constants/routes.ts"],"sourcesContent":["import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootSettingManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootSettingManagementModule,\n providers: [],\n };\n }\n}\n","import { SettingTab } from '@abp/ng.theme.shared';\nimport { Injectable, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport snq from 'snq';\n\n@Injectable()\nexport class InitialService {\n public settings: SettingTab[];\n\n constructor(private router: Router) {\n this.settings = this.router.config\n .map(route => snq(() => route.data.routes.settings))\n .filter(settings => settings && settings.length)\n .reduce((acc, val) => [...acc, ...val], [])\n .sort((a, b) => a.order - b.order);\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { SettingTab, fade } from '@abp/ng.theme.shared';\nimport { InitialService } from '../services/initial.service';\n\n@Component({\n selector: 'abp-setting',\n templateUrl: './setting.component.html',\n})\nexport class SettingComponent implements OnInit {\n settings: SettingTab[];\n\n selected = {} as SettingTab;\n\n constructor(private initialService: InitialService) {}\n\n ngOnInit() {\n this.settings = this.initialService.settings;\n this.selected = this.settings[0];\n }\n}\n","import { DynamicLayoutComponent } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { SettingComponent } from './components/setting/setting.component';\n\nconst routes: Routes = [\n {\n path: '',\n component: DynamicLayoutComponent,\n children: [{ path: '', component: SettingComponent }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class SettingManagementRoutingModule {}\n","import { CoreModule, noop } from '@abp/ng.core';\nimport { NgModule, ModuleWithProviders, APP_INITIALIZER, Self } from '@angular/core';\nimport { SettingComponent } from './components/setting/setting.component';\nimport { SettingManagementRoutingModule } from './setting-management-routing.module';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { InitialService } from './components/services/initial.service';\n\n@NgModule({\n declarations: [SettingComponent],\n imports: [SettingManagementRoutingModule, CoreModule, ThemeSharedModule],\n providers: [InitialService],\n})\nexport class SettingManagementModule {\n constructor(@Self() initialService: InitialService) {}\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const SETTING_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'Settings',\n path: 'setting-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n order: 6,\n iconClass: 'fa fa-cog',\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n"],"names":[],"mappings":";;;;;;;;;;;AAAA;IAEA;KAQC;;;;IANQ,mCAAO;;;IAAd;QACE,OAAO;YACL,QAAQ,EAAE,2BAA2B;YACrC,SAAS,EAAE,EAAE;SACd,CAAC;KACH;;gBAPF,QAAQ,SAAC,EAAE;;IAQZ,kCAAC;CARD;;;;;;;ICOE,wBAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QAChC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM;aAC/B,GAAG;;;;QAAC,UAAA,KAAK,IAAI,OAAA,GAAG;;;QAAC,cAAM,OAAA,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAA,EAAC,GAAA,EAAC;aACnD,MAAM;;;;QAAC,UAAA,QAAQ,IAAI,OAAA,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAA,EAAC;aAC/C,MAAM;;;;;QAAC,UAAC,GAAG,EAAE,GAAG,IAAK,gBAAI,GAAG,EAAK,GAAG,IAAC,GAAE,EAAE,CAAC;aAC1C,IAAI;;;;;QAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,GAAA,EAAC,CAAC;KACtC;;gBAVF,UAAU;;;;gBAHF,MAAM;;IAcf,qBAAC;CAXD,IAWC;;;IATC,kCAA8B;;;;;IAElB,gCAAsB;;;;;;;ACTpC;IAaE,0BAAoB,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QAFlD,aAAQ,sBAAG,EAAE,EAAc,CAAC;KAE0B;;;;IAEtD,mCAAQ;;;IAAR;QACE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;QAC7C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;KAClC;;gBAdF,SAAS,SAAC;oBACT,QAAQ,EAAE,aAAa;oBACvB,suDAAuC;iBACxC;;;;gBALQ,cAAc;;IAiBvB,uBAAC;CAfD,IAeC;;;IAVC,oCAAuB;;IAEvB,oCAA4B;;;;;IAEhB,0CAAsC;;;;;;;ACbpD;IAKM,MAAM,GAAW;IACrB;QACE,IAAI,EAAE,EAAE;QACR,SAAS,EAAE,sBAAsB;QACjC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;KACtD;CACF;AAED;IAAA;KAI8C;;gBAJ7C,QAAQ,SAAC;oBACR,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBACxC,OAAO,EAAE,CAAC,YAAY,CAAC;iBACxB;;IAC4C,qCAAC;CAJ9C;;;;;;ACbA;IAaE,iCAAoB,cAA8B;KAAI;;gBANvD,QAAQ,SAAC;oBACR,YAAY,EAAE,CAAC,gBAAgB,CAAC;oBAChC,OAAO,EAAE,CAAC,8BAA8B,EAAE,UAAU,EAAE,iBAAiB,CAAC;oBACxE,SAAS,EAAE,CAAC,cAAc,CAAC;iBAC5B;;;;gBANQ,cAAc,uBAQR,IAAI;;IACnB,8BAAC;CAPD;;;;;;;;;;;;ACLA,IAAa,yBAAyB,GAAG;IACvC,MAAM,qBAAE;QACN;YACE,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,oBAAoB;YAC1B,UAAU,EAAE,sCAAsC;YAClD,MAAM;YACN,KAAK,EAAE,CAAC;YACR,SAAS,EAAE,WAAW;SACvB;KACF,EAAmB;IACpB,QAAQ,EAAE,EAAE;CACb;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"abp-ng.setting-management.js","sources":["ng://@abp/ng.setting-management/lib/services/setting-management.service.ts","ng://@abp/ng.setting-management/lib/components/setting-layout.component.ts","ng://@abp/ng.setting-management/lib/constants/routes.ts","ng://@abp/ng.setting-management/lib/setting-management-routing.module.ts","ng://@abp/ng.setting-management/lib/setting-management.module.ts"],"sourcesContent":["import { SettingTab } from '@abp/ng.theme.shared';\nimport { Injectable } from '@angular/core';\nimport { RouteConfigLoadEnd, Router } from '@angular/router';\nimport { Navigate } from '@ngxs/router-plugin';\nimport { Store } from '@ngxs/store';\nimport { Subject, Subscription, timer } from 'rxjs';\nimport { filter, takeUntil } from 'rxjs/operators';\n\n@Injectable({ providedIn: 'root' })\nexport class SettingManagementService {\n settings: SettingTab[] = [];\n\n selected = {} as SettingTab;\n\n private destroy$ = new Subject();\n\n constructor(private router: Router, private store: Store) {\n let timeout: Subscription;\n this.router.events\n .pipe(\n filter(event => event instanceof RouteConfigLoadEnd),\n takeUntil(this.destroy$),\n )\n .subscribe(event => {\n if (timeout) {\n timeout.unsubscribe();\n this.destroy$.next();\n }\n timeout = timer(150).subscribe(() => {\n this.setSettings();\n });\n });\n }\n\n ngOnDestroy() {\n this.destroy$.next();\n }\n\n setSettings() {\n setTimeout(() => {\n const route = this.router.config.find(r => r.path === 'setting-management');\n this.settings = route.data.settings.sort((a, b) => a.order - b.order);\n this.checkSelected();\n }, 0);\n }\n\n checkSelected() {\n this.selected = this.settings.find(setting => setting.url === this.router.url) || ({} as SettingTab);\n\n if (!this.selected.name && this.settings.length) {\n this.setSelected(this.settings[0]);\n }\n }\n\n setSelected(selected: SettingTab) {\n this.selected = selected;\n this.store.dispatch(new Navigate([selected.url]));\n }\n}\n","import { eLayoutType } from '@abp/ng.core';\nimport { SettingTab } from '@abp/ng.theme.shared';\nimport { Component, TrackByFunction } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { timer } from 'rxjs';\nimport { SettingManagementService } from '../services/setting-management.service';\n\n@Component({\n selector: 'abp-setting-layout',\n templateUrl: './setting-layout.component.html',\n})\nexport class SettingLayoutComponent {\n // required for dynamic component\n static type = eLayoutType.setting;\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n constructor(public settingManagementService: SettingManagementService, private router: Router) {\n if (\n settingManagementService.selected &&\n this.router.url !== settingManagementService.selected.url &&\n settingManagementService.settings.length\n ) {\n settingManagementService.setSelected(settingManagementService.settings[0]);\n }\n }\n\n ngOnDestroy() {}\n\n ngAfterViewInit() {\n timer(250).subscribe(() => {\n if (!this.settingManagementService.settings.length) {\n this.settingManagementService.setSettings();\n }\n });\n }\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const SETTING_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'Settings',\n path: 'setting-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n order: 6,\n iconClass: 'fa fa-cog',\n },\n ] as ABP.FullRoute[],\n};\n","import { DynamicLayoutComponent } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { SETTING_MANAGEMENT_ROUTES } from './constants/routes';\nimport { SettingLayoutComponent } from './components/setting-layout.component';\n\nconst routes: Routes = [\n {\n path: 'setting-management',\n component: DynamicLayoutComponent,\n children: [{ path: '', component: SettingLayoutComponent }],\n data: { routes: SETTING_MANAGEMENT_ROUTES, settings: [] },\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n})\nexport class SettingManagementRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { SettingLayoutComponent } from './components/setting-layout.component';\nimport { SettingManagementRoutingModule } from './setting-management-routing.module';\n\nexport const SETTING_LAYOUT = SettingLayoutComponent;\n\n@NgModule({\n declarations: [SETTING_LAYOUT],\n imports: [SettingManagementRoutingModule, CoreModule, ThemeSharedModule],\n entryComponents: [SETTING_LAYOUT],\n})\nexport class SettingManagementModule {}\n"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/setting-management/lib/components/index.d.ts b/npm/ng-packs/dist/setting-management/lib/components/index.d.ts deleted file mode 100644 index 4f59d5c056..0000000000 --- a/npm/ng-packs/dist/setting-management/lib/components/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './setting/setting.component'; diff --git a/npm/ng-packs/dist/setting-management/lib/components/services/initial.service.d.ts b/npm/ng-packs/dist/setting-management/lib/components/services/initial.service.d.ts deleted file mode 100644 index 13dc6ef71d..0000000000 --- a/npm/ng-packs/dist/setting-management/lib/components/services/initial.service.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { SettingTab } from '@abp/ng.theme.shared'; -import { Router } from '@angular/router'; -export declare class InitialService { - private router; - settings: SettingTab[]; - constructor(router: Router); -} diff --git a/npm/ng-packs/dist/setting-management/lib/components/setting-layout.component.d.ts b/npm/ng-packs/dist/setting-management/lib/components/setting-layout.component.d.ts new file mode 100644 index 0000000000..1dd1f2bd80 --- /dev/null +++ b/npm/ng-packs/dist/setting-management/lib/components/setting-layout.component.d.ts @@ -0,0 +1,14 @@ +import { eLayoutType } from '@abp/ng.core'; +import { SettingTab } from '@abp/ng.theme.shared'; +import { TrackByFunction } from '@angular/core'; +import { Router } from '@angular/router'; +import { SettingManagementService } from '../services/setting-management.service'; +export declare class SettingLayoutComponent { + settingManagementService: SettingManagementService; + private router; + static type: eLayoutType; + trackByFn: TrackByFunction; + constructor(settingManagementService: SettingManagementService, router: Router); + ngOnDestroy(): void; + ngAfterViewInit(): void; +} diff --git a/npm/ng-packs/dist/setting-management/lib/components/setting/setting.component.d.ts b/npm/ng-packs/dist/setting-management/lib/components/setting/setting.component.d.ts deleted file mode 100644 index 46b68b6ac0..0000000000 --- a/npm/ng-packs/dist/setting-management/lib/components/setting/setting.component.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { OnInit } from '@angular/core'; -import { SettingTab } from '@abp/ng.theme.shared'; -import { InitialService } from '../services/initial.service'; -export declare class SettingComponent implements OnInit { - private initialService; - settings: SettingTab[]; - selected: SettingTab; - constructor(initialService: InitialService); - ngOnInit(): void; -} diff --git a/npm/ng-packs/dist/setting-management/lib/constants/routes.d.ts b/npm/ng-packs/dist/setting-management/lib/constants/routes.d.ts index 69027a092f..3466b0d05f 100644 --- a/npm/ng-packs/dist/setting-management/lib/constants/routes.d.ts +++ b/npm/ng-packs/dist/setting-management/lib/constants/routes.d.ts @@ -1,5 +1,4 @@ import { ABP } from '@abp/ng.core'; export declare const SETTING_MANAGEMENT_ROUTES: { routes: ABP.FullRoute[]; - settings: any[]; }; diff --git a/npm/ng-packs/dist/setting-management/lib/root-setting-management.module.d.ts b/npm/ng-packs/dist/setting-management/lib/root-setting-management.module.d.ts deleted file mode 100644 index 0cc1bac879..0000000000 --- a/npm/ng-packs/dist/setting-management/lib/root-setting-management.module.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { ModuleWithProviders } from '@angular/core'; -export declare class RootSettingManagementModule { - static forRoot(): ModuleWithProviders; -} diff --git a/npm/ng-packs/dist/setting-management/lib/services/setting-management.service.d.ts b/npm/ng-packs/dist/setting-management/lib/services/setting-management.service.d.ts new file mode 100644 index 0000000000..659dcffe03 --- /dev/null +++ b/npm/ng-packs/dist/setting-management/lib/services/setting-management.service.d.ts @@ -0,0 +1,15 @@ +import { SettingTab } from '@abp/ng.theme.shared'; +import { Router } from '@angular/router'; +import { Store } from '@ngxs/store'; +export declare class SettingManagementService { + private router; + private store; + settings: SettingTab[]; + selected: SettingTab; + private destroy$; + constructor(router: Router, store: Store); + ngOnDestroy(): void; + setSettings(): void; + checkSelected(): void; + setSelected(selected: SettingTab): void; +} diff --git a/npm/ng-packs/dist/setting-management/lib/setting-management.module.d.ts b/npm/ng-packs/dist/setting-management/lib/setting-management.module.d.ts index 75f02f3c1c..95dd39ec1a 100644 --- a/npm/ng-packs/dist/setting-management/lib/setting-management.module.d.ts +++ b/npm/ng-packs/dist/setting-management/lib/setting-management.module.d.ts @@ -1,4 +1,4 @@ -import { InitialService } from './components/services/initial.service'; +import { SettingLayoutComponent } from './components/setting-layout.component'; +export declare const SETTING_LAYOUT: typeof SettingLayoutComponent; export declare class SettingManagementModule { - constructor(initialService: InitialService); } diff --git a/npm/ng-packs/dist/setting-management/public-api.d.ts b/npm/ng-packs/dist/setting-management/public-api.d.ts index 6ef085fc8e..5343d9e457 100644 --- a/npm/ng-packs/dist/setting-management/public-api.d.ts +++ b/npm/ng-packs/dist/setting-management/public-api.d.ts @@ -1,4 +1,3 @@ -export * from './lib/root-setting-management.module'; export * from './lib/setting-management.module'; -export * from './lib/components'; export * from './lib/constants'; +export * from './lib/components/setting-layout.component'; diff --git a/npm/ng-packs/dist/tenant-management/abp-ng.tenant-management.metadata.json b/npm/ng-packs/dist/tenant-management/abp-ng.tenant-management.metadata.json index 0e4f70a986..e1001bc1c5 100644 --- a/npm/ng-packs/dist/tenant-management/abp-ng.tenant-management.metadata.json +++ b/npm/ng-packs/dist/tenant-management/abp-ng.tenant-management.metadata.json @@ -1 +1 @@ -{"__symbolic":"module","version":4,"exports":[{"from":"./lib/tenant-management.state"}],"metadata":{"RootTenantManagementModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":2,"character":1},"arguments":[{}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"RootTenantManagementModule"},"providers":[]}}}},"TenantManagementModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":12,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ɵa"}],"imports":[{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"NgxsModule","line":16,"character":4},"member":"forFeature"},"arguments":[[{"__symbolic":"reference","name":"ɵb"}]]},{"__symbolic":"reference","module":"@ngx-validate/core","name":"NgxValidateCoreModule","line":17,"character":4},{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":18,"character":4},{"__symbolic":"reference","module":"primeng/table","name":"TableModule","line":19,"character":4},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ThemeSharedModule","line":20,"character":4},{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbDropdownModule","line":21,"character":4},{"__symbolic":"reference","module":"@abp/ng.feature-management","name":"FeatureManagementModule","line":22,"character":4}]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":23,"character":1},"arguments":[{"selector":"abp-tenants","template":"
\n
\n
\n
\n
\n {{ 'AbpTenantManagement::Tenants' | abpLocalization }}\n
\n
\n
\n \n \n {{ 'AbpTenantManagement::NewTenant' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpTenantManagement::Actions' | abpLocalization }}\n {{ 'AbpTenantManagement::TenantName' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpTenantManagement::Actions' | abpLocalization }}\n \n
\n \n {{ 'AbpTenantManagement::Edit' | abpLocalization }}\n \n \n {{ 'AbpTenantManagement::Permission:ManageConnectionStrings' | abpLocalization }}\n \n \n {{ 'AbpTenantManagement::Permission:ManageFeatures' | abpLocalization }}\n \n \n {{ 'AbpTenantManagement::Delete' | abpLocalization }}\n \n
\n
\n \n {{ data.name }}\n \n
\n \n
\n
\n\n\n \n

{{ selectedModalContent.title | abpLocalization }}

\n
\n\n \n \n \n\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n\n\n
\n
\n
\n \n \n
\n
\n
\n
\n\n\n
\n \n
\n
\n\n\n"}]}],"members":{"data$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":28,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵb"},"member":"get"}]}]}],"totalCount$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":31,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵb"},"member":"getTenantsTotalCount"}]}]}],"tenantModalTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":68,"character":3},"arguments":["tenantModalTemplate",{"static":false}]}]}],"connectionStringModalTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":71,"character":3},"arguments":["connectionStringModalTemplate",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ConfirmationService","line":75,"character":33},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":77,"character":16},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":78,"character":19}]}],"onSearch":[{"__symbolic":"method"}],"createTenantForm":[{"__symbolic":"method"}],"createDefaultConnectionStringForm":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"onEditConnectionString":[{"__symbolic":"method"}],"onAddTenant":[{"__symbolic":"method"}],"onEditTenant":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}],"saveConnectionString":[{"__symbolic":"method"}],"saveTenant":[{"__symbolic":"method"}],"delete":[{"__symbolic":"method"}],"onPageChange":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":13,"character":1},"arguments":[{"name":"TenantManagementState","defaults":{"result":{},"selectedItem":{}}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵc"}]}],"get":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":30,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵd"}]}]}],"getById":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":41,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵe"}]}]}],"delete":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":52,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵh"}]}]}],"add":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":57,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵf"}]}]}],"update":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":62,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵg"}]}]}]},"statics":{"get":{"__symbolic":"function","parameters":["result"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"result"},"member":"items"},"right":[]}},"getTenantsTotalCount":{"__symbolic":"function","parameters":["result"],"value":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"result"},"member":"totalCount"}}}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.core","name":"RestService","line":9,"character":28}]}],"getTenant":[{"__symbolic":"method"}],"getTenantById":[{"__symbolic":"method"}],"deleteTenant":[{"__symbolic":"method"}],"createTenant":[{"__symbolic":"method"}],"updateTenant":[{"__symbolic":"method"}],"getDefaultConnectionString":[{"__symbolic":"method"}],"updateDefaultConnectionString":[{"__symbolic":"method"}],"deleteDefaultConnectionString":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵd":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ABP","line":5,"character":31},"member":"PageQueryParams"}]}]},"statics":{"type":"[TenantManagement] Get Tenant"}},"ɵe":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[TenantManagement] Get Tenant By Id"}},"ɵf":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵi"},"member":"AddRequest"}]}]},"statics":{"type":"[TenantManagement] Create Tenant"}},"ɵg":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵi"},"member":"UpdateRequest"}]}]},"statics":{"type":"[TenantManagement] Update Tenant"}},"ɵh":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[TenantManagement] Delete Tenant"}},"ɵj":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":17,"character":1},"arguments":[{"imports":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":18,"character":12},"member":"forChild"},"arguments":[[{"path":"","redirectTo":"tenants","pathMatch":"full"},{"path":"tenants","component":{"__symbolic":"reference","module":"@abp/ng.core","name":"DynamicLayoutComponent","line":10,"character":15},"canActivate":[{"__symbolic":"reference","module":"@abp/ng.core","name":"AuthGuard","line":11,"character":18},{"__symbolic":"reference","module":"@abp/ng.core","name":"PermissionGuard","line":11,"character":29}],"data":{"requiredPolicy":"AbpTenantManagement.Tenants"},"children":[{"path":"","component":{"__symbolic":"reference","name":"ɵa"},"resolve":[{"__symbolic":"reference","name":"ɵk"}]}]}]]}],"exports":[{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":19,"character":12}],"providers":[{"__symbolic":"reference","name":"ɵk"}]}]}],"members":{}},"ɵk":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":9,"character":29}]}],"resolve":[{"__symbolic":"method"}]}}},"origins":{"RootTenantManagementModule":"./lib/root-tenant-management.module","TenantManagementModule":"./lib/tenant-management.module","ɵa":"./lib/components/tenants/tenants.component","ɵb":"./lib/states/tenant-management.state","ɵc":"./lib/services/tenant-management.service","ɵd":"./lib/actions/tenant-management.actions","ɵe":"./lib/actions/tenant-management.actions","ɵf":"./lib/actions/tenant-management.actions","ɵg":"./lib/actions/tenant-management.actions","ɵh":"./lib/actions/tenant-management.actions","ɵi":"./lib/models/tenant-management","ɵj":"./lib/tenant-management-routing.module","ɵk":"./lib/resolvers/tenants.resolver"},"importAs":"@abp/ng.tenant-management"} \ No newline at end of file +{"__symbolic":"module","version":4,"exports":[{"from":"./lib/tenant-management.state"}],"metadata":{"TenantManagementModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":12,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ɵa"}],"imports":[{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"NgxsModule","line":16,"character":4},"member":"forFeature"},"arguments":[[{"__symbolic":"reference","name":"ɵb"}]]},{"__symbolic":"reference","module":"@ngx-validate/core","name":"NgxValidateCoreModule","line":17,"character":4},{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":18,"character":4},{"__symbolic":"reference","module":"primeng/table","name":"TableModule","line":19,"character":4},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ThemeSharedModule","line":20,"character":4},{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbDropdownModule","line":21,"character":4},{"__symbolic":"reference","module":"@abp/ng.feature-management","name":"FeatureManagementModule","line":22,"character":4}]}]}],"members":{}},"TenantManagementProviders":{"__symbolic":"function","parameters":[],"value":[]},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":23,"character":1},"arguments":[{"selector":"abp-tenants","template":"
\n
\n
\n
\n
\n {{ 'AbpTenantManagement::Tenants' | abpLocalization }}\n
\n
\n
\n \n \n {{ 'AbpTenantManagement::NewTenant' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ 'AbpTenantManagement::Actions' | abpLocalization }}\n {{ 'AbpTenantManagement::TenantName' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ 'AbpTenantManagement::Actions' | abpLocalization }}\n \n
\n \n {{ 'AbpTenantManagement::Edit' | abpLocalization }}\n \n \n {{ 'AbpTenantManagement::Permission:ManageConnectionStrings' | abpLocalization }}\n \n \n {{ 'AbpTenantManagement::Permission:ManageFeatures' | abpLocalization }}\n \n \n {{ 'AbpTenantManagement::Delete' | abpLocalization }}\n \n
\n
\n \n {{ data.name }}\n \n
\n \n
\n
\n\n\n \n

{{ selectedModalContent.title | abpLocalization }}

\n
\n\n \n \n \n\n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
\n\n\n
\n
\n
\n \n \n
\n
\n
\n
\n\n\n
\n \n
\n
\n\n\n"}]}],"members":{"data$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":28,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵb"},"member":"get"}]}]}],"totalCount$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":31,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵb"},"member":"getTenantsTotalCount"}]}]}],"tenantModalTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":68,"character":3},"arguments":["tenantModalTemplate",{"static":false}]}]}],"connectionStringModalTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":71,"character":3},"arguments":["connectionStringModalTemplate",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ConfirmationService","line":75,"character":33},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":77,"character":16},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":78,"character":19}]}],"onSearch":[{"__symbolic":"method"}],"createTenantForm":[{"__symbolic":"method"}],"createDefaultConnectionStringForm":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"onEditConnectionString":[{"__symbolic":"method"}],"onAddTenant":[{"__symbolic":"method"}],"onEditTenant":[{"__symbolic":"method"}],"save":[{"__symbolic":"method"}],"saveConnectionString":[{"__symbolic":"method"}],"saveTenant":[{"__symbolic":"method"}],"delete":[{"__symbolic":"method"}],"onPageChange":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":13,"character":1},"arguments":[{"name":"TenantManagementState","defaults":{"result":{},"selectedItem":{}}}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵc"}]}],"get":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":30,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵd"}]}]}],"getById":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":41,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵe"}]}]}],"delete":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":52,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵh"}]}]}],"add":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":57,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵf"}]}]}],"update":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":62,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵg"}]}]}]},"statics":{"get":{"__symbolic":"function","parameters":["result"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"result"},"member":"items"},"right":[]}},"getTenantsTotalCount":{"__symbolic":"function","parameters":["result"],"value":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"result"},"member":"totalCount"}}}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":5,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@abp/ng.core","name":"RestService","line":9,"character":28}]}],"getTenant":[{"__symbolic":"method"}],"getTenantById":[{"__symbolic":"method"}],"deleteTenant":[{"__symbolic":"method"}],"createTenant":[{"__symbolic":"method"}],"updateTenant":[{"__symbolic":"method"}],"getDefaultConnectionString":[{"__symbolic":"method"}],"updateDefaultConnectionString":[{"__symbolic":"method"}],"deleteDefaultConnectionString":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵd":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ABP","line":5,"character":31},"member":"PageQueryParams"}]}]},"statics":{"type":"[TenantManagement] Get Tenant"}},"ɵe":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[TenantManagement] Get Tenant By Id"}},"ɵf":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵi"},"member":"AddRequest"}]}]},"statics":{"type":"[TenantManagement] Create Tenant"}},"ɵg":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵi"},"member":"UpdateRequest"}]}]},"statics":{"type":"[TenantManagement] Update Tenant"}},"ɵh":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[TenantManagement] Delete Tenant"}},"ɵj":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":17,"character":1},"arguments":[{"imports":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":18,"character":12},"member":"forChild"},"arguments":[[{"path":"","redirectTo":"tenants","pathMatch":"full"},{"path":"tenants","component":{"__symbolic":"reference","module":"@abp/ng.core","name":"DynamicLayoutComponent","line":10,"character":15},"canActivate":[{"__symbolic":"reference","module":"@abp/ng.core","name":"AuthGuard","line":11,"character":18},{"__symbolic":"reference","module":"@abp/ng.core","name":"PermissionGuard","line":11,"character":29}],"data":{"requiredPolicy":"AbpTenantManagement.Tenants"},"children":[{"path":"","component":{"__symbolic":"reference","name":"ɵa"},"resolve":[{"__symbolic":"reference","name":"ɵk"}]}]}]]}],"exports":[{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":19,"character":12}],"providers":[{"__symbolic":"reference","name":"ɵk"}]}]}],"members":{}},"ɵk":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":7,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":9,"character":29}]}],"resolve":[{"__symbolic":"method"}]}}},"origins":{"TenantManagementModule":"./lib/tenant-management.module","TenantManagementProviders":"./lib/tenant-management.module","ɵa":"./lib/components/tenants/tenants.component","ɵb":"./lib/states/tenant-management.state","ɵc":"./lib/services/tenant-management.service","ɵd":"./lib/actions/tenant-management.actions","ɵe":"./lib/actions/tenant-management.actions","ɵf":"./lib/actions/tenant-management.actions","ɵg":"./lib/actions/tenant-management.actions","ɵh":"./lib/actions/tenant-management.actions","ɵi":"./lib/models/tenant-management","ɵj":"./lib/tenant-management-routing.module","ɵk":"./lib/resolvers/tenants.resolver"},"importAs":"@abp/ng.tenant-management"} \ No newline at end of file diff --git a/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.js b/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.js index 9bb95106d8..54e900d444 100644 --- a/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.js +++ b/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.js @@ -1,8 +1,8 @@ (function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@abp/ng.core'), require('@abp/ng.theme.shared'), require('@ng-bootstrap/ng-bootstrap'), require('@ngxs/store'), require('primeng/table'), require('@angular/forms'), require('rxjs'), require('rxjs/operators'), require('@angular/router'), require('@abp/ng.feature-management'), require('@ngx-validate/core')) : - typeof define === 'function' && define.amd ? define('@abp/ng.tenant-management', ['exports', '@angular/core', '@abp/ng.core', '@abp/ng.theme.shared', '@ng-bootstrap/ng-bootstrap', '@ngxs/store', 'primeng/table', '@angular/forms', 'rxjs', 'rxjs/operators', '@angular/router', '@abp/ng.feature-management', '@ngx-validate/core'], factory) : - (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng['tenant-management'] = {}), global.ng.core, global.ng_core, global.ng_theme_shared, global.ngBootstrap, global.store, global.table, global.ng.forms, global.rxjs, global.rxjs.operators, global.ng.router, global.ng_featureManagement, global.core$1)); -}(this, function (exports, core, ng_core, ng_theme_shared, ngBootstrap, store, table, forms, rxjs, operators, router, ng_featureManagement, core$1) { 'use strict'; + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@abp/ng.core'), require('@abp/ng.theme.shared'), require('@angular/core'), require('@ng-bootstrap/ng-bootstrap'), require('@ngxs/store'), require('primeng/table'), require('@angular/forms'), require('rxjs'), require('rxjs/operators'), require('@angular/router'), require('@abp/ng.feature-management'), require('@ngx-validate/core')) : + typeof define === 'function' && define.amd ? define('@abp/ng.tenant-management', ['exports', '@abp/ng.core', '@abp/ng.theme.shared', '@angular/core', '@ng-bootstrap/ng-bootstrap', '@ngxs/store', 'primeng/table', '@angular/forms', 'rxjs', 'rxjs/operators', '@angular/router', '@abp/ng.feature-management', '@ngx-validate/core'], factory) : + (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng['tenant-management'] = {}), global.ng_core, global.ng_theme_shared, global.ng.core, global.ngBootstrap, global.store, global.table, global.ng.forms, global.rxjs, global.rxjs.operators, global.ng.router, global.ng_featureManagement, global.core$1)); +}(this, function (exports, ng_core, ng_theme_shared, core, ngBootstrap, store, table, forms, rxjs, operators, router, ng_featureManagement, core$1) { 'use strict'; /*! ***************************************************************************** Copyright (c) Microsoft Corporation. All rights reserved. @@ -201,31 +201,6 @@ return (mod && mod.__esModule) ? mod : { default: mod }; } - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var RootTenantManagementModule = /** @class */ (function () { - function RootTenantManagementModule() { - } - /** - * @return {?} - */ - RootTenantManagementModule.forRoot = /** - * @return {?} - */ - function () { - return { - ngModule: RootTenantManagementModule, - providers: [], - }; - }; - RootTenantManagementModule.decorators = [ - { type: core.NgModule, args: [{},] } - ]; - return RootTenantManagementModule; - }()); - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -1128,6 +1103,12 @@ ]; return TenantManagementModule; }()); + /** + * @return {?} + */ + function TenantManagementProviders() { + return []; + } /** * @fileoverview added by tsickle @@ -1233,9 +1214,9 @@ exports.DeleteTenant = DeleteTenant; exports.GetTenantById = GetTenantById; exports.GetTenants = GetTenants; - exports.RootTenantManagementModule = RootTenantManagementModule; exports.TENANT_MANAGEMENT_ROUTES = TENANT_MANAGEMENT_ROUTES; exports.TenantManagementModule = TenantManagementModule; + exports.TenantManagementProviders = TenantManagementProviders; exports.TenantManagementService = TenantManagementService; exports.TenantManagementState = TenantManagementState; exports.TenantsComponent = TenantsComponent; diff --git a/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.js.map b/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.js.map index 743b4c5e8e..944a8c6b32 100644 --- a/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.js.map +++ b/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.tenant-management.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.tenant-management/lib/root-tenant-management.module.ts","ng://@abp/ng.tenant-management/lib/actions/tenant-management.actions.ts","ng://@abp/ng.tenant-management/lib/services/tenant-management.service.ts","ng://@abp/ng.tenant-management/lib/states/tenant-management.state.ts","ng://@abp/ng.tenant-management/lib/components/tenants/tenants.component.ts","ng://@abp/ng.tenant-management/lib/resolvers/tenants.resolver.ts","ng://@abp/ng.tenant-management/lib/tenant-management-routing.module.ts","ng://@abp/ng.tenant-management/lib/tenant-management.module.ts","ng://@abp/ng.tenant-management/lib/constants/routes.ts","ng://@abp/ng.tenant-management/lib/models/tenant-management.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootTenantManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootTenantManagementModule,\n providers: [],\n };\n }\n}\n","import { TenantManagement } from '../models/tenant-management';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetTenants {\n static readonly type = '[TenantManagement] Get Tenant';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetTenantById {\n static readonly type = '[TenantManagement] Get Tenant By Id';\n constructor(public payload: string) {}\n}\n\nexport class CreateTenant {\n static readonly type = '[TenantManagement] Create Tenant';\n constructor(public payload: TenantManagement.AddRequest) {}\n}\n\nexport class UpdateTenant {\n static readonly type = '[TenantManagement] Update Tenant';\n constructor(public payload: TenantManagement.UpdateRequest) {}\n}\n\nexport class DeleteTenant {\n static readonly type = '[TenantManagement] Delete Tenant';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { TenantManagement } from '../models/tenant-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TenantManagementService {\n constructor(private rest: RestService) {}\n\n getTenant(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/multi-tenancy/tenants',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getTenantById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteTenant(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createTenant(body: TenantManagement.AddRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/multi-tenancy/tenants`,\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateTenant(body: TenantManagement.UpdateRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'GET',\n responseType: Rest.ResponseType.Text,\n url,\n };\n return this.rest.request(request);\n }\n\n updateDefaultConnectionString(payload: TenantManagement.DefaultConnectionStringRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${payload.id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n params: { defaultConnectionString: payload.defaultConnectionString },\n };\n return this.rest.request(request);\n }\n\n deleteDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'DELETE',\n url,\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementService } from '../services/tenant-management.service';\nimport { ABP } from '@abp/ng.core';\n\n@State({\n name: 'TenantManagementState',\n defaults: { result: {}, selectedItem: {} } as TenantManagement.State,\n})\nexport class TenantManagementState {\n @Selector()\n static get({ result }: TenantManagement.State): ABP.BasicItem[] {\n return result.items || [];\n }\n\n @Selector()\n static getTenantsTotalCount({ result }: TenantManagement.State): number {\n return result.totalCount;\n }\n\n constructor(private tenantManagementService: TenantManagementService) {}\n\n @Action(GetTenants)\n get({ patchState }: StateContext, { payload }: GetTenants) {\n return this.tenantManagementService.getTenant(payload).pipe(\n tap(result =>\n patchState({\n result,\n }),\n ),\n );\n }\n\n @Action(GetTenantById)\n getById({ patchState }: StateContext, { payload }: GetTenantById) {\n return this.tenantManagementService.getTenantById(payload).pipe(\n tap(selectedItem =>\n patchState({\n selectedItem,\n }),\n ),\n );\n }\n\n @Action(DeleteTenant)\n delete({ dispatch }: StateContext, { payload }: DeleteTenant) {\n return this.tenantManagementService.deleteTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(CreateTenant)\n add({ dispatch }: StateContext, { payload }: CreateTenant) {\n return this.tenantManagementService.createTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(UpdateTenant)\n update({ dispatch, getState }: StateContext, { payload }: UpdateTenant) {\n return dispatch(new GetTenantById(payload.id)).pipe(\n switchMap(() => this.tenantManagementService.updateTenant({ ...getState().selectedItem, ...payload })),\n switchMap(() => dispatch(new GetTenants())),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable, Subject } from 'rxjs';\nimport { debounceTime, finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../../actions/tenant-management.actions';\nimport { TenantManagementService } from '../../services/tenant-management.service';\nimport { TenantManagementState } from '../../states/tenant-management.state';\n\ntype SelectedModalContent = {\n type: string;\n title: string;\n template: TemplateRef;\n};\n\n@Component({\n selector: 'abp-tenants',\n templateUrl: './tenants.component.html',\n})\nexport class TenantsComponent {\n @Select(TenantManagementState.get)\n data$: Observable;\n\n @Select(TenantManagementState.getTenantsTotalCount)\n totalCount$: Observable;\n\n selected: ABP.BasicItem;\n\n tenantForm: FormGroup;\n\n defaultConnectionStringForm: FormGroup;\n\n defaultConnectionString: string;\n\n isModalVisible: boolean;\n\n selectedModalContent = {} as SelectedModalContent;\n\n visibleFeatures: boolean = false;\n\n providerKey: string;\n\n _useSharedDatabase: boolean;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n get useSharedDatabase(): boolean {\n return this.defaultConnectionStringForm.get('useSharedDatabase').value;\n }\n\n get connectionString(): string {\n return this.defaultConnectionStringForm.get('defaultConnectionString').value;\n }\n\n @ViewChild('tenantModalTemplate', { static: false })\n tenantModalTemplate: TemplateRef;\n\n @ViewChild('connectionStringModalTemplate', { static: false })\n connectionStringModalTemplate: TemplateRef;\n\n constructor(\n private confirmationService: ConfirmationService,\n private tenantService: TenantManagementService,\n private fb: FormBuilder,\n private store: Store,\n ) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n private createTenantForm() {\n this.tenantForm = this.fb.group({\n name: [this.selected.name || '', [Validators.required, Validators.maxLength(256)]],\n });\n }\n\n private createDefaultConnectionStringForm() {\n this.defaultConnectionStringForm = this.fb.group({\n useSharedDatabase: this._useSharedDatabase,\n defaultConnectionString: [this.defaultConnectionString || ''],\n });\n }\n\n openModal(title: string, template: TemplateRef, type: string) {\n this.selectedModalContent = {\n title,\n template,\n type,\n };\n\n this.isModalVisible = true;\n }\n\n onEditConnectionString(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(\n pluck('TenantManagementState', 'selectedItem'),\n switchMap(selected => {\n this.selected = selected;\n return this.tenantService.getDefaultConnectionString(id);\n }),\n )\n .subscribe(fetchedConnectionString => {\n this._useSharedDatabase = fetchedConnectionString ? false : true;\n this.defaultConnectionString = fetchedConnectionString ? fetchedConnectionString : '';\n this.createDefaultConnectionStringForm();\n this.openModal('AbpTenantManagement::ConnectionStrings', this.connectionStringModalTemplate, 'saveConnStr');\n });\n }\n\n onAddTenant() {\n this.selected = {} as ABP.BasicItem;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::NewTenant', this.tenantModalTemplate, 'saveTenant');\n }\n\n onEditTenant(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(pluck('TenantManagementState', 'selectedItem'))\n .subscribe(selected => {\n this.selected = selected;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::Edit', this.tenantModalTemplate, 'saveTenant');\n });\n }\n\n save() {\n const { type } = this.selectedModalContent;\n if (!type) return;\n if (type === 'saveTenant') this.saveTenant();\n else if (type === 'saveConnStr') this.saveConnectionString();\n }\n\n saveConnectionString() {\n this.modalBusy = true;\n if (this.useSharedDatabase || (!this.useSharedDatabase && !this.connectionString)) {\n this.tenantService\n .deleteDefaultConnectionString(this.selected.id)\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n } else {\n this.tenantService\n .updateDefaultConnectionString({ id: this.selected.id, defaultConnectionString: this.connectionString })\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n }\n }\n\n saveTenant() {\n if (!this.tenantForm.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateTenant({ ...this.tenantForm.value, id: this.selected.id })\n : new CreateTenant(this.tenantForm.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpTenantManagement::TenantDeletionConfirmationMessage', 'AbpTenantManagement::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteTenant(id));\n this.modalBusy = false;\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetTenants(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetTenants } from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementState } from '../states/tenant-management.state';\n\n@Injectable()\nexport class TenantsResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const data = this.store.selectSnapshot(TenantManagementState.get);\n return data && data.length ? null : this.store.dispatch(new GetTenants());\n }\n}\n","import { AuthGuard, DynamicLayoutComponent, PermissionGuard } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { TenantsResolver } from './resolvers/tenants.resolver';\nimport { TenantsComponent } from './components/tenants/tenants.component';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'tenants', pathMatch: 'full' },\n {\n path: 'tenants',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpTenantManagement.Tenants' },\n children: [{ path: '', component: TenantsComponent, resolve: [TenantsResolver] }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [TenantsResolver],\n})\nexport class TenantManagementRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxsModule } from '@ngxs/store';\nimport { TableModule } from 'primeng/table';\nimport { TenantsComponent } from './components/tenants/tenants.component';\nimport { TenantManagementState } from './states/tenant-management.state';\nimport { TenantManagementRoutingModule } from './tenant-management-routing.module';\nimport { FeatureManagementModule } from '@abp/ng.feature-management';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\n\n@NgModule({\n declarations: [TenantsComponent],\n imports: [\n TenantManagementRoutingModule,\n NgxsModule.forFeature([TenantManagementState]),\n NgxValidateCoreModule,\n CoreModule,\n TableModule,\n ThemeSharedModule,\n NgbDropdownModule,\n FeatureManagementModule,\n ],\n})\nexport class TenantManagementModule {}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const TENANT_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'AbpTenantManagement::Menu:TenantManagement',\n path: 'tenant-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-users',\n children: [\n {\n path: 'tenants',\n name: 'AbpTenantManagement::Tenants',\n order: 1,\n requiredPolicy: 'AbpTenantManagement.Tenants',\n },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","import { ABP } from '@abp/ng.core';\n\nexport namespace TenantManagement {\n export interface State {\n result: Response;\n selectedItem: Item;\n }\n\n export type Response = ABP.PagedResponse;\n\n export interface Item {\n id: string;\n name: string;\n }\n\n export interface AddRequest {\n name: string;\n }\n\n export interface UpdateRequest extends AddRequest {\n id: string;\n }\n\n export interface DefaultConnectionStringRequest {\n id: string;\n defaultConnectionString: string;\n }\n}\n"],"names":["NgModule","Injectable","RestService","tap","switchMap","tslib_1.__decorate","Action","Selector","State","Validators","pluck","take","finalize","Component","ConfirmationService","FormBuilder","Store","ViewChild","Select","Observable","DynamicLayoutComponent","AuthGuard","PermissionGuard","RouterModule","NgxsModule","NgxValidateCoreModule","CoreModule","TableModule","ThemeSharedModule","NgbDropdownModule","FeatureManagementModule"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.tenant-management.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.tenant-management/lib/actions/tenant-management.actions.ts","ng://@abp/ng.tenant-management/lib/services/tenant-management.service.ts","ng://@abp/ng.tenant-management/lib/states/tenant-management.state.ts","ng://@abp/ng.tenant-management/lib/components/tenants/tenants.component.ts","ng://@abp/ng.tenant-management/lib/resolvers/tenants.resolver.ts","ng://@abp/ng.tenant-management/lib/tenant-management-routing.module.ts","ng://@abp/ng.tenant-management/lib/tenant-management.module.ts","ng://@abp/ng.tenant-management/lib/constants/routes.ts","ng://@abp/ng.tenant-management/lib/models/tenant-management.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { TenantManagement } from '../models/tenant-management';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetTenants {\n static readonly type = '[TenantManagement] Get Tenant';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetTenantById {\n static readonly type = '[TenantManagement] Get Tenant By Id';\n constructor(public payload: string) {}\n}\n\nexport class CreateTenant {\n static readonly type = '[TenantManagement] Create Tenant';\n constructor(public payload: TenantManagement.AddRequest) {}\n}\n\nexport class UpdateTenant {\n static readonly type = '[TenantManagement] Update Tenant';\n constructor(public payload: TenantManagement.UpdateRequest) {}\n}\n\nexport class DeleteTenant {\n static readonly type = '[TenantManagement] Delete Tenant';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { TenantManagement } from '../models/tenant-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TenantManagementService {\n constructor(private rest: RestService) {}\n\n getTenant(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/multi-tenancy/tenants',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getTenantById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteTenant(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createTenant(body: TenantManagement.AddRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/multi-tenancy/tenants`,\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateTenant(body: TenantManagement.UpdateRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'GET',\n responseType: Rest.ResponseType.Text,\n url,\n };\n return this.rest.request(request);\n }\n\n updateDefaultConnectionString(payload: TenantManagement.DefaultConnectionStringRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${payload.id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n params: { defaultConnectionString: payload.defaultConnectionString },\n };\n return this.rest.request(request);\n }\n\n deleteDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'DELETE',\n url,\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementService } from '../services/tenant-management.service';\nimport { ABP } from '@abp/ng.core';\n\n@State({\n name: 'TenantManagementState',\n defaults: { result: {}, selectedItem: {} } as TenantManagement.State,\n})\nexport class TenantManagementState {\n @Selector()\n static get({ result }: TenantManagement.State): ABP.BasicItem[] {\n return result.items || [];\n }\n\n @Selector()\n static getTenantsTotalCount({ result }: TenantManagement.State): number {\n return result.totalCount;\n }\n\n constructor(private tenantManagementService: TenantManagementService) {}\n\n @Action(GetTenants)\n get({ patchState }: StateContext, { payload }: GetTenants) {\n return this.tenantManagementService.getTenant(payload).pipe(\n tap(result =>\n patchState({\n result,\n }),\n ),\n );\n }\n\n @Action(GetTenantById)\n getById({ patchState }: StateContext, { payload }: GetTenantById) {\n return this.tenantManagementService.getTenantById(payload).pipe(\n tap(selectedItem =>\n patchState({\n selectedItem,\n }),\n ),\n );\n }\n\n @Action(DeleteTenant)\n delete({ dispatch }: StateContext, { payload }: DeleteTenant) {\n return this.tenantManagementService.deleteTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(CreateTenant)\n add({ dispatch }: StateContext, { payload }: CreateTenant) {\n return this.tenantManagementService.createTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(UpdateTenant)\n update({ dispatch, getState }: StateContext, { payload }: UpdateTenant) {\n return dispatch(new GetTenantById(payload.id)).pipe(\n switchMap(() => this.tenantManagementService.updateTenant({ ...getState().selectedItem, ...payload })),\n switchMap(() => dispatch(new GetTenants())),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable, Subject } from 'rxjs';\nimport { debounceTime, finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../../actions/tenant-management.actions';\nimport { TenantManagementService } from '../../services/tenant-management.service';\nimport { TenantManagementState } from '../../states/tenant-management.state';\n\ntype SelectedModalContent = {\n type: string;\n title: string;\n template: TemplateRef;\n};\n\n@Component({\n selector: 'abp-tenants',\n templateUrl: './tenants.component.html',\n})\nexport class TenantsComponent {\n @Select(TenantManagementState.get)\n data$: Observable;\n\n @Select(TenantManagementState.getTenantsTotalCount)\n totalCount$: Observable;\n\n selected: ABP.BasicItem;\n\n tenantForm: FormGroup;\n\n defaultConnectionStringForm: FormGroup;\n\n defaultConnectionString: string;\n\n isModalVisible: boolean;\n\n selectedModalContent = {} as SelectedModalContent;\n\n visibleFeatures: boolean = false;\n\n providerKey: string;\n\n _useSharedDatabase: boolean;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n get useSharedDatabase(): boolean {\n return this.defaultConnectionStringForm.get('useSharedDatabase').value;\n }\n\n get connectionString(): string {\n return this.defaultConnectionStringForm.get('defaultConnectionString').value;\n }\n\n @ViewChild('tenantModalTemplate', { static: false })\n tenantModalTemplate: TemplateRef;\n\n @ViewChild('connectionStringModalTemplate', { static: false })\n connectionStringModalTemplate: TemplateRef;\n\n constructor(\n private confirmationService: ConfirmationService,\n private tenantService: TenantManagementService,\n private fb: FormBuilder,\n private store: Store,\n ) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n private createTenantForm() {\n this.tenantForm = this.fb.group({\n name: [this.selected.name || '', [Validators.required, Validators.maxLength(256)]],\n });\n }\n\n private createDefaultConnectionStringForm() {\n this.defaultConnectionStringForm = this.fb.group({\n useSharedDatabase: this._useSharedDatabase,\n defaultConnectionString: [this.defaultConnectionString || ''],\n });\n }\n\n openModal(title: string, template: TemplateRef, type: string) {\n this.selectedModalContent = {\n title,\n template,\n type,\n };\n\n this.isModalVisible = true;\n }\n\n onEditConnectionString(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(\n pluck('TenantManagementState', 'selectedItem'),\n switchMap(selected => {\n this.selected = selected;\n return this.tenantService.getDefaultConnectionString(id);\n }),\n )\n .subscribe(fetchedConnectionString => {\n this._useSharedDatabase = fetchedConnectionString ? false : true;\n this.defaultConnectionString = fetchedConnectionString ? fetchedConnectionString : '';\n this.createDefaultConnectionStringForm();\n this.openModal('AbpTenantManagement::ConnectionStrings', this.connectionStringModalTemplate, 'saveConnStr');\n });\n }\n\n onAddTenant() {\n this.selected = {} as ABP.BasicItem;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::NewTenant', this.tenantModalTemplate, 'saveTenant');\n }\n\n onEditTenant(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(pluck('TenantManagementState', 'selectedItem'))\n .subscribe(selected => {\n this.selected = selected;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::Edit', this.tenantModalTemplate, 'saveTenant');\n });\n }\n\n save() {\n const { type } = this.selectedModalContent;\n if (!type) return;\n if (type === 'saveTenant') this.saveTenant();\n else if (type === 'saveConnStr') this.saveConnectionString();\n }\n\n saveConnectionString() {\n this.modalBusy = true;\n if (this.useSharedDatabase || (!this.useSharedDatabase && !this.connectionString)) {\n this.tenantService\n .deleteDefaultConnectionString(this.selected.id)\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n } else {\n this.tenantService\n .updateDefaultConnectionString({ id: this.selected.id, defaultConnectionString: this.connectionString })\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n }\n }\n\n saveTenant() {\n if (!this.tenantForm.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateTenant({ ...this.tenantForm.value, id: this.selected.id })\n : new CreateTenant(this.tenantForm.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpTenantManagement::TenantDeletionConfirmationMessage', 'AbpTenantManagement::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteTenant(id));\n this.modalBusy = false;\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetTenants(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetTenants } from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementState } from '../states/tenant-management.state';\n\n@Injectable()\nexport class TenantsResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const data = this.store.selectSnapshot(TenantManagementState.get);\n return data && data.length ? null : this.store.dispatch(new GetTenants());\n }\n}\n","import { AuthGuard, DynamicLayoutComponent, PermissionGuard } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { TenantsResolver } from './resolvers/tenants.resolver';\nimport { TenantsComponent } from './components/tenants/tenants.component';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'tenants', pathMatch: 'full' },\n {\n path: 'tenants',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpTenantManagement.Tenants' },\n children: [{ path: '', component: TenantsComponent, resolve: [TenantsResolver] }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [TenantsResolver],\n})\nexport class TenantManagementRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule, Provider } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxsModule } from '@ngxs/store';\nimport { TableModule } from 'primeng/table';\nimport { TenantsComponent } from './components/tenants/tenants.component';\nimport { TenantManagementState } from './states/tenant-management.state';\nimport { TenantManagementRoutingModule } from './tenant-management-routing.module';\nimport { FeatureManagementModule } from '@abp/ng.feature-management';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\n\n@NgModule({\n declarations: [TenantsComponent],\n imports: [\n TenantManagementRoutingModule,\n NgxsModule.forFeature([TenantManagementState]),\n NgxValidateCoreModule,\n CoreModule,\n TableModule,\n ThemeSharedModule,\n NgbDropdownModule,\n FeatureManagementModule,\n ],\n})\nexport class TenantManagementModule {}\n\nexport function TenantManagementProviders(): Provider[] {\n return [];\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const TENANT_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'AbpTenantManagement::Menu:TenantManagement',\n path: 'tenant-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-users',\n children: [\n {\n path: 'tenants',\n name: 'AbpTenantManagement::Tenants',\n order: 1,\n requiredPolicy: 'AbpTenantManagement.Tenants',\n },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","import { ABP } from '@abp/ng.core';\n\nexport namespace TenantManagement {\n export interface State {\n result: Response;\n selectedItem: Item;\n }\n\n export type Response = ABP.PagedResponse;\n\n export interface Item {\n id: string;\n name: string;\n }\n\n export interface AddRequest {\n name: string;\n }\n\n export interface UpdateRequest extends AddRequest {\n id: string;\n }\n\n export interface DefaultConnectionStringRequest {\n id: string;\n defaultConnectionString: string;\n }\n}\n"],"names":["Injectable","RestService","tap","switchMap","tslib_1.__decorate","Action","Selector","State","Validators","pluck","take","finalize","Component","ConfirmationService","FormBuilder","Store","ViewChild","Select","Observable","DynamicLayoutComponent","AuthGuard","PermissionGuard","NgModule","RouterModule","NgxsModule","NgxValidateCoreModule","CoreModule","TableModule","ThemeSharedModule","NgbDropdownModule","FeatureManagementModule"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.min.js b/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.min.js index 5ff2541677..ee3133a13b 100644 --- a/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.min.js +++ b/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.min.js @@ -1,2 +1,2 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@abp/ng.core"),require("@abp/ng.theme.shared"),require("@ng-bootstrap/ng-bootstrap"),require("@ngxs/store"),require("primeng/table"),require("@angular/forms"),require("rxjs"),require("rxjs/operators"),require("@angular/router"),require("@abp/ng.feature-management"),require("@ngx-validate/core")):"function"==typeof define&&define.amd?define("@abp/ng.tenant-management",["exports","@angular/core","@abp/ng.core","@abp/ng.theme.shared","@ng-bootstrap/ng-bootstrap","@ngxs/store","primeng/table","@angular/forms","rxjs","rxjs/operators","@angular/router","@abp/ng.feature-management","@ngx-validate/core"],t):t(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng["tenant-management"]={}),e.ng.core,e.ng_core,e.ng_theme_shared,e.ngBootstrap,e.store,e.table,e.ng.forms,e.rxjs,e.rxjs.operators,e.ng.router,e.ng_featureManagement,e.core$1)}(this,function(e,t,n,a,o,r,i,s,p,c,l,u,d){"use strict";var g=function(){return(g=Object.assign||function(e){for(var t,n=1,a=arguments.length;n=0;s--)(o=e[s])&&(i=(r<3?o(i):r>3?o(t,n,i):o(t,n))||i);return r>3&&i&&Object.defineProperty(t,n,i),i}function b(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}var f=function(){function e(){}return e.forRoot=function(){return{ngModule:e,providers:[]}},e.decorators=[{type:t.NgModule,args:[{}]}],e}(),h=function(){function e(e){this.payload=e}return e.type="[TenantManagement] Get Tenant",e}();var y=function(){function e(e){this.payload=e}return e.type="[TenantManagement] Get Tenant By Id",e}();var v=function(){function e(e){this.payload=e}return e.type="[TenantManagement] Create Tenant",e}();var T=function(){function e(e){this.payload=e}return e.type="[TenantManagement] Update Tenant",e}();var M=function(){function e(e){this.payload=e}return e.type="[TenantManagement] Delete Tenant",e}();var S=function(){function e(e){this.rest=e}return e.prototype.getTenant=function(e){void 0===e&&(e={});var t={method:"GET",url:"/api/multi-tenancy/tenants",params:e};return this.rest.request(t)},e.prototype.getTenantById=function(e){var t={method:"GET",url:"/api/multi-tenancy/tenants/"+e};return this.rest.request(t)},e.prototype.deleteTenant=function(e){var t={method:"DELETE",url:"/api/multi-tenancy/tenants/"+e};return this.rest.request(t)},e.prototype.createTenant=function(e){var t={method:"POST",url:"/api/multi-tenancy/tenants",body:e};return this.rest.request(t)},e.prototype.updateTenant=function(e){var t="/api/multi-tenancy/tenants/"+e.id;delete e.id;var n={method:"PUT",url:t,body:e};return this.rest.request(n)},e.prototype.getDefaultConnectionString=function(e){var t={method:"GET",responseType:"text",url:"/api/multi-tenancy/tenants/"+e+"/default-connection-string"};return this.rest.request(t)},e.prototype.updateDefaultConnectionString=function(e){var t={method:"PUT",url:"/api/multi-tenancy/tenants/"+e.id+"/default-connection-string",params:{defaultConnectionString:e.defaultConnectionString}};return this.rest.request(t)},e.prototype.deleteDefaultConnectionString=function(e){var t={method:"DELETE",url:"/api/multi-tenancy/tenants/"+e+"/default-connection-string"};return this.rest.request(t)},e.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:n.RestService}]},e.ngInjectableDef=t.ɵɵdefineInjectable({factory:function(){return new e(t.ɵɵinject(n.RestService))},token:e,providedIn:"root"}),e}();var C=function(){function e(e){this.tenantManagementService=e}return e.get=function(e){return e.result.items||[]},e.getTenantsTotalCount=function(e){return e.result.totalCount},e.prototype.get=function(e,t){var n=e.patchState,a=t.payload;return this.tenantManagementService.getTenant(a).pipe(c.tap(function(e){return n({result:e})}))},e.prototype.getById=function(e,t){var n=e.patchState,a=t.payload;return this.tenantManagementService.getTenantById(a).pipe(c.tap(function(e){return n({selectedItem:e})}))},e.prototype.delete=function(e,t){var n=e.dispatch,a=t.payload;return this.tenantManagementService.deleteTenant(a).pipe(c.switchMap(function(){return n(new h)}))},e.prototype.add=function(e,t){var n=e.dispatch,a=t.payload;return this.tenantManagementService.createTenant(a).pipe(c.switchMap(function(){return n(new h)}))},e.prototype.update=function(e,t){var n=this,a=e.dispatch,o=e.getState,r=t.payload;return a(new y(r.id)).pipe(c.switchMap(function(){return n.tenantManagementService.updateTenant(g({},o().selectedItem,r))}),c.switchMap(function(){return a(new h)}))},m([r.Action(h),b("design:type",Function),b("design:paramtypes",[Object,h]),b("design:returntype",void 0)],e.prototype,"get",null),m([r.Action(y),b("design:type",Function),b("design:paramtypes",[Object,y]),b("design:returntype",void 0)],e.prototype,"getById",null),m([r.Action(M),b("design:type",Function),b("design:paramtypes",[Object,M]),b("design:returntype",void 0)],e.prototype,"delete",null),m([r.Action(v),b("design:type",Function),b("design:paramtypes",[Object,v]),b("design:returntype",void 0)],e.prototype,"add",null),m([r.Action(T),b("design:type",Function),b("design:paramtypes",[Object,T]),b("design:returntype",void 0)],e.prototype,"update",null),m([r.Selector(),b("design:type",Function),b("design:paramtypes",[Object]),b("design:returntype",Array)],e,"get",null),m([r.Selector(),b("design:type",Function),b("design:paramtypes",[Object]),b("design:returntype",Number)],e,"getTenantsTotalCount",null),e=m([r.State({name:"TenantManagementState",defaults:{result:{},selectedItem:{}}}),b("design:paramtypes",[S])],e)}();var A=function(){function e(e,t,n,a){this.confirmationService=e,this.tenantService=t,this.fb=n,this.store=a,this.selectedModalContent={},this.visibleFeatures=!1,this.pageQuery={sorting:"name"},this.loading=!1,this.modalBusy=!1}return Object.defineProperty(e.prototype,"useSharedDatabase",{get:function(){return this.defaultConnectionStringForm.get("useSharedDatabase").value},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"connectionString",{get:function(){return this.defaultConnectionStringForm.get("defaultConnectionString").value},enumerable:!0,configurable:!0}),e.prototype.onSearch=function(e){this.pageQuery.filter=e,this.get()},e.prototype.createTenantForm=function(){this.tenantForm=this.fb.group({name:[this.selected.name||"",[s.Validators.required,s.Validators.maxLength(256)]]})},e.prototype.createDefaultConnectionStringForm=function(){this.defaultConnectionStringForm=this.fb.group({useSharedDatabase:this._useSharedDatabase,defaultConnectionString:[this.defaultConnectionString||""]})},e.prototype.openModal=function(e,t,n){this.selectedModalContent={title:e,template:t,type:n},this.isModalVisible=!0},e.prototype.onEditConnectionString=function(e){var t=this;this.store.dispatch(new y(e)).pipe(c.pluck("TenantManagementState","selectedItem"),c.switchMap(function(n){return t.selected=n,t.tenantService.getDefaultConnectionString(e)})).subscribe(function(e){t._useSharedDatabase=!e,t.defaultConnectionString=e||"",t.createDefaultConnectionStringForm(),t.openModal("AbpTenantManagement::ConnectionStrings",t.connectionStringModalTemplate,"saveConnStr")})},e.prototype.onAddTenant=function(){this.selected={},this.createTenantForm(),this.openModal("AbpTenantManagement::NewTenant",this.tenantModalTemplate,"saveTenant")},e.prototype.onEditTenant=function(e){var t=this;this.store.dispatch(new y(e)).pipe(c.pluck("TenantManagementState","selectedItem")).subscribe(function(e){t.selected=e,t.createTenantForm(),t.openModal("AbpTenantManagement::Edit",t.tenantModalTemplate,"saveTenant")})},e.prototype.save=function(){var e=this.selectedModalContent.type;e&&("saveTenant"===e?this.saveTenant():"saveConnStr"===e&&this.saveConnectionString())},e.prototype.saveConnectionString=function(){var e=this;this.modalBusy=!0,this.useSharedDatabase||!this.useSharedDatabase&&!this.connectionString?this.tenantService.deleteDefaultConnectionString(this.selected.id).pipe(c.take(1),c.finalize(function(){return e.modalBusy=!1})).subscribe(function(){e.isModalVisible=!1}):this.tenantService.updateDefaultConnectionString({id:this.selected.id,defaultConnectionString:this.connectionString}).pipe(c.take(1),c.finalize(function(){return e.modalBusy=!1})).subscribe(function(){e.isModalVisible=!1})},e.prototype.saveTenant=function(){var e=this;this.tenantForm.valid&&(this.modalBusy=!0,this.store.dispatch(this.selected.id?new T(g({},this.tenantForm.value,{id:this.selected.id})):new v(this.tenantForm.value)).subscribe(function(){e.modalBusy=!1,e.isModalVisible=!1}))},e.prototype.delete=function(e,t){var n=this;this.confirmationService.warn("AbpTenantManagement::TenantDeletionConfirmationMessage","AbpTenantManagement::AreYouSure",{messageLocalizationParams:[t]}).subscribe(function(t){"confirm"===t&&(n.store.dispatch(new M(e)),n.modalBusy=!1)})},e.prototype.onPageChange=function(e){this.pageQuery.skipCount=e.first,this.pageQuery.maxResultCount=e.rows,this.get()},e.prototype.get=function(){var e=this;this.loading=!0,this.store.dispatch(new h(this.pageQuery)).pipe(c.finalize(function(){return e.loading=!1})).subscribe()},e.decorators=[{type:t.Component,args:[{selector:"abp-tenants",template:'
\n
\n
\n
\n
\n {{ \'AbpTenantManagement::Tenants\' | abpLocalization }}\n
\n
\n
\n \n \n {{ \'AbpTenantManagement::NewTenant\' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ \'AbpTenantManagement::Actions\' | abpLocalization }}\n {{ \'AbpTenantManagement::TenantName\' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ \'AbpTenantManagement::Actions\' | abpLocalization }}\n \n
\n \n {{ \'AbpTenantManagement::Edit\' | abpLocalization }}\n \n \n {{ \'AbpTenantManagement::Permission:ManageConnectionStrings\' | abpLocalization }}\n \n \n {{ \'AbpTenantManagement::Permission:ManageFeatures\' | abpLocalization }}\n \n \n {{ \'AbpTenantManagement::Delete\' | abpLocalization }}\n \n
\n
\n \n {{ data.name }}\n \n
\n \n
\n
\n\n\n \n

{{ selectedModalContent.title | abpLocalization }}

\n
\n\n \n \n \n\n \n \n {{ \'AbpIdentity::Save\' | abpLocalization }}\n \n
\n\n\n
\n
\n
\n \n \n
\n
\n
\n
\n\n\n
\n \n
\n
\n\n\n'}]}],e.ctorParameters=function(){return[{type:a.ConfirmationService},{type:S},{type:s.FormBuilder},{type:r.Store}]},e.propDecorators={tenantModalTemplate:[{type:t.ViewChild,args:["tenantModalTemplate",{static:!1}]}],connectionStringModalTemplate:[{type:t.ViewChild,args:["connectionStringModalTemplate",{static:!1}]}]},m([r.Select(C.get),b("design:type",p.Observable)],e.prototype,"data$",void 0),m([r.Select(C.getTenantsTotalCount),b("design:type",p.Observable)],e.prototype,"totalCount$",void 0),e}();var D=function(){function e(e){this.store=e}return e.prototype.resolve=function(){var e=this.store.selectSnapshot(C.get);return e&&e.length?null:this.store.dispatch(new h)},e.decorators=[{type:t.Injectable}],e.ctorParameters=function(){return[{type:r.Store}]},e}();var w,F=[{path:"",redirectTo:"tenants",pathMatch:"full"},{path:"tenants",component:n.DynamicLayoutComponent,canActivate:[n.AuthGuard,n.PermissionGuard],data:{requiredPolicy:"AbpTenantManagement.Tenants"},children:[{path:"",component:A,resolve:[D]}]}],j=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[l.RouterModule.forChild(F)],exports:[l.RouterModule],providers:[D]}]}],e}(),q=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{declarations:[A],imports:[j,r.NgxsModule.forFeature([C]),d.NgxValidateCoreModule,n.CoreModule,i.TableModule,a.ThemeSharedModule,o.NgbDropdownModule,u.FeatureManagementModule]}]}],e}();!function(e){function t(){}function n(){}function a(){}function o(){}function r(){}e.State=t,e.Item=n,e.AddRequest=a,e.UpdateRequest=o,e.DefaultConnectionStringRequest=r}(w||(w={})),e.CreateTenant=v,e.DeleteTenant=M,e.GetTenantById=y,e.GetTenants=h,e.RootTenantManagementModule=f,e.TENANT_MANAGEMENT_ROUTES={routes:[{name:"AbpTenantManagement::Menu:TenantManagement",path:"tenant-management",parentName:"AbpUiNavigation::Menu:Administration",layout:"application",iconClass:"fa fa-users",children:[{path:"tenants",name:"AbpTenantManagement::Tenants",order:1,requiredPolicy:"AbpTenantManagement.Tenants"}]}],settings:[]},e.TenantManagementModule=q,e.TenantManagementService=S,e.TenantManagementState=C,e.TenantsComponent=A,e.TenantsResolver=D,e.UpdateTenant=T,e.ɵa=A,e.ɵb=C,e.ɵc=S,e.ɵd=h,e.ɵe=y,e.ɵf=v,e.ɵg=T,e.ɵh=M,e.ɵj=j,e.ɵk=D,Object.defineProperty(e,"__esModule",{value:!0})}); +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@abp/ng.core"),require("@abp/ng.theme.shared"),require("@angular/core"),require("@ng-bootstrap/ng-bootstrap"),require("@ngxs/store"),require("primeng/table"),require("@angular/forms"),require("rxjs"),require("rxjs/operators"),require("@angular/router"),require("@abp/ng.feature-management"),require("@ngx-validate/core")):"function"==typeof define&&define.amd?define("@abp/ng.tenant-management",["exports","@abp/ng.core","@abp/ng.theme.shared","@angular/core","@ng-bootstrap/ng-bootstrap","@ngxs/store","primeng/table","@angular/forms","rxjs","rxjs/operators","@angular/router","@abp/ng.feature-management","@ngx-validate/core"],t):t(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng["tenant-management"]={}),e.ng_core,e.ng_theme_shared,e.ng.core,e.ngBootstrap,e.store,e.table,e.ng.forms,e.rxjs,e.rxjs.operators,e.ng.router,e.ng_featureManagement,e.core$1)}(this,function(e,t,n,a,o,r,i,s,p,c,l,u,d){"use strict";var g=function(){return(g=Object.assign||function(e){for(var t,n=1,a=arguments.length;n=0;s--)(o=e[s])&&(i=(r<3?o(i):r>3?o(t,n,i):o(t,n))||i);return r>3&&i&&Object.defineProperty(t,n,i),i}function b(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}var f=function(){function e(e){this.payload=e}return e.type="[TenantManagement] Get Tenant",e}();var h=function(){function e(e){this.payload=e}return e.type="[TenantManagement] Get Tenant By Id",e}();var y=function(){function e(e){this.payload=e}return e.type="[TenantManagement] Create Tenant",e}();var v=function(){function e(e){this.payload=e}return e.type="[TenantManagement] Update Tenant",e}();var T=function(){function e(e){this.payload=e}return e.type="[TenantManagement] Delete Tenant",e}();var M=function(){function e(e){this.rest=e}return e.prototype.getTenant=function(e){void 0===e&&(e={});var t={method:"GET",url:"/api/multi-tenancy/tenants",params:e};return this.rest.request(t)},e.prototype.getTenantById=function(e){var t={method:"GET",url:"/api/multi-tenancy/tenants/"+e};return this.rest.request(t)},e.prototype.deleteTenant=function(e){var t={method:"DELETE",url:"/api/multi-tenancy/tenants/"+e};return this.rest.request(t)},e.prototype.createTenant=function(e){var t={method:"POST",url:"/api/multi-tenancy/tenants",body:e};return this.rest.request(t)},e.prototype.updateTenant=function(e){var t="/api/multi-tenancy/tenants/"+e.id;delete e.id;var n={method:"PUT",url:t,body:e};return this.rest.request(n)},e.prototype.getDefaultConnectionString=function(e){var t={method:"GET",responseType:"text",url:"/api/multi-tenancy/tenants/"+e+"/default-connection-string"};return this.rest.request(t)},e.prototype.updateDefaultConnectionString=function(e){var t={method:"PUT",url:"/api/multi-tenancy/tenants/"+e.id+"/default-connection-string",params:{defaultConnectionString:e.defaultConnectionString}};return this.rest.request(t)},e.prototype.deleteDefaultConnectionString=function(e){var t={method:"DELETE",url:"/api/multi-tenancy/tenants/"+e+"/default-connection-string"};return this.rest.request(t)},e.decorators=[{type:a.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:t.RestService}]},e.ngInjectableDef=a.ɵɵdefineInjectable({factory:function(){return new e(a.ɵɵinject(t.RestService))},token:e,providedIn:"root"}),e}();var S=function(){function e(e){this.tenantManagementService=e}return e.get=function(e){return e.result.items||[]},e.getTenantsTotalCount=function(e){return e.result.totalCount},e.prototype.get=function(e,t){var n=e.patchState,a=t.payload;return this.tenantManagementService.getTenant(a).pipe(c.tap(function(e){return n({result:e})}))},e.prototype.getById=function(e,t){var n=e.patchState,a=t.payload;return this.tenantManagementService.getTenantById(a).pipe(c.tap(function(e){return n({selectedItem:e})}))},e.prototype.delete=function(e,t){var n=e.dispatch,a=t.payload;return this.tenantManagementService.deleteTenant(a).pipe(c.switchMap(function(){return n(new f)}))},e.prototype.add=function(e,t){var n=e.dispatch,a=t.payload;return this.tenantManagementService.createTenant(a).pipe(c.switchMap(function(){return n(new f)}))},e.prototype.update=function(e,t){var n=this,a=e.dispatch,o=e.getState,r=t.payload;return a(new h(r.id)).pipe(c.switchMap(function(){return n.tenantManagementService.updateTenant(g({},o().selectedItem,r))}),c.switchMap(function(){return a(new f)}))},m([r.Action(f),b("design:type",Function),b("design:paramtypes",[Object,f]),b("design:returntype",void 0)],e.prototype,"get",null),m([r.Action(h),b("design:type",Function),b("design:paramtypes",[Object,h]),b("design:returntype",void 0)],e.prototype,"getById",null),m([r.Action(T),b("design:type",Function),b("design:paramtypes",[Object,T]),b("design:returntype",void 0)],e.prototype,"delete",null),m([r.Action(y),b("design:type",Function),b("design:paramtypes",[Object,y]),b("design:returntype",void 0)],e.prototype,"add",null),m([r.Action(v),b("design:type",Function),b("design:paramtypes",[Object,v]),b("design:returntype",void 0)],e.prototype,"update",null),m([r.Selector(),b("design:type",Function),b("design:paramtypes",[Object]),b("design:returntype",Array)],e,"get",null),m([r.Selector(),b("design:type",Function),b("design:paramtypes",[Object]),b("design:returntype",Number)],e,"getTenantsTotalCount",null),e=m([r.State({name:"TenantManagementState",defaults:{result:{},selectedItem:{}}}),b("design:paramtypes",[M])],e)}();var C=function(){function e(e,t,n,a){this.confirmationService=e,this.tenantService=t,this.fb=n,this.store=a,this.selectedModalContent={},this.visibleFeatures=!1,this.pageQuery={sorting:"name"},this.loading=!1,this.modalBusy=!1}return Object.defineProperty(e.prototype,"useSharedDatabase",{get:function(){return this.defaultConnectionStringForm.get("useSharedDatabase").value},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"connectionString",{get:function(){return this.defaultConnectionStringForm.get("defaultConnectionString").value},enumerable:!0,configurable:!0}),e.prototype.onSearch=function(e){this.pageQuery.filter=e,this.get()},e.prototype.createTenantForm=function(){this.tenantForm=this.fb.group({name:[this.selected.name||"",[s.Validators.required,s.Validators.maxLength(256)]]})},e.prototype.createDefaultConnectionStringForm=function(){this.defaultConnectionStringForm=this.fb.group({useSharedDatabase:this._useSharedDatabase,defaultConnectionString:[this.defaultConnectionString||""]})},e.prototype.openModal=function(e,t,n){this.selectedModalContent={title:e,template:t,type:n},this.isModalVisible=!0},e.prototype.onEditConnectionString=function(e){var t=this;this.store.dispatch(new h(e)).pipe(c.pluck("TenantManagementState","selectedItem"),c.switchMap(function(n){return t.selected=n,t.tenantService.getDefaultConnectionString(e)})).subscribe(function(e){t._useSharedDatabase=!e,t.defaultConnectionString=e||"",t.createDefaultConnectionStringForm(),t.openModal("AbpTenantManagement::ConnectionStrings",t.connectionStringModalTemplate,"saveConnStr")})},e.prototype.onAddTenant=function(){this.selected={},this.createTenantForm(),this.openModal("AbpTenantManagement::NewTenant",this.tenantModalTemplate,"saveTenant")},e.prototype.onEditTenant=function(e){var t=this;this.store.dispatch(new h(e)).pipe(c.pluck("TenantManagementState","selectedItem")).subscribe(function(e){t.selected=e,t.createTenantForm(),t.openModal("AbpTenantManagement::Edit",t.tenantModalTemplate,"saveTenant")})},e.prototype.save=function(){var e=this.selectedModalContent.type;e&&("saveTenant"===e?this.saveTenant():"saveConnStr"===e&&this.saveConnectionString())},e.prototype.saveConnectionString=function(){var e=this;this.modalBusy=!0,this.useSharedDatabase||!this.useSharedDatabase&&!this.connectionString?this.tenantService.deleteDefaultConnectionString(this.selected.id).pipe(c.take(1),c.finalize(function(){return e.modalBusy=!1})).subscribe(function(){e.isModalVisible=!1}):this.tenantService.updateDefaultConnectionString({id:this.selected.id,defaultConnectionString:this.connectionString}).pipe(c.take(1),c.finalize(function(){return e.modalBusy=!1})).subscribe(function(){e.isModalVisible=!1})},e.prototype.saveTenant=function(){var e=this;this.tenantForm.valid&&(this.modalBusy=!0,this.store.dispatch(this.selected.id?new v(g({},this.tenantForm.value,{id:this.selected.id})):new y(this.tenantForm.value)).subscribe(function(){e.modalBusy=!1,e.isModalVisible=!1}))},e.prototype.delete=function(e,t){var n=this;this.confirmationService.warn("AbpTenantManagement::TenantDeletionConfirmationMessage","AbpTenantManagement::AreYouSure",{messageLocalizationParams:[t]}).subscribe(function(t){"confirm"===t&&(n.store.dispatch(new T(e)),n.modalBusy=!1)})},e.prototype.onPageChange=function(e){this.pageQuery.skipCount=e.first,this.pageQuery.maxResultCount=e.rows,this.get()},e.prototype.get=function(){var e=this;this.loading=!0,this.store.dispatch(new f(this.pageQuery)).pipe(c.finalize(function(){return e.loading=!1})).subscribe()},e.decorators=[{type:a.Component,args:[{selector:"abp-tenants",template:'
\n
\n
\n
\n
\n {{ \'AbpTenantManagement::Tenants\' | abpLocalization }}\n
\n
\n
\n \n \n {{ \'AbpTenantManagement::NewTenant\' | abpLocalization }}\n \n
\n
\n
\n
\n
\n \n
\n \n \n \n {{ \'AbpTenantManagement::Actions\' | abpLocalization }}\n {{ \'AbpTenantManagement::TenantName\' | abpLocalization }}\n \n \n \n \n \n
\n \n {{ \'AbpTenantManagement::Actions\' | abpLocalization }}\n \n
\n \n {{ \'AbpTenantManagement::Edit\' | abpLocalization }}\n \n \n {{ \'AbpTenantManagement::Permission:ManageConnectionStrings\' | abpLocalization }}\n \n \n {{ \'AbpTenantManagement::Permission:ManageFeatures\' | abpLocalization }}\n \n \n {{ \'AbpTenantManagement::Delete\' | abpLocalization }}\n \n
\n
\n \n {{ data.name }}\n \n
\n \n
\n
\n\n\n \n

{{ selectedModalContent.title | abpLocalization }}

\n
\n\n \n \n \n\n \n \n {{ \'AbpIdentity::Save\' | abpLocalization }}\n \n
\n\n\n
\n
\n
\n \n \n
\n
\n
\n
\n\n\n
\n \n
\n
\n\n\n'}]}],e.ctorParameters=function(){return[{type:n.ConfirmationService},{type:M},{type:s.FormBuilder},{type:r.Store}]},e.propDecorators={tenantModalTemplate:[{type:a.ViewChild,args:["tenantModalTemplate",{static:!1}]}],connectionStringModalTemplate:[{type:a.ViewChild,args:["connectionStringModalTemplate",{static:!1}]}]},m([r.Select(S.get),b("design:type",p.Observable)],e.prototype,"data$",void 0),m([r.Select(S.getTenantsTotalCount),b("design:type",p.Observable)],e.prototype,"totalCount$",void 0),e}();var A=function(){function e(e){this.store=e}return e.prototype.resolve=function(){var e=this.store.selectSnapshot(S.get);return e&&e.length?null:this.store.dispatch(new f)},e.decorators=[{type:a.Injectable}],e.ctorParameters=function(){return[{type:r.Store}]},e}();var D=[{path:"",redirectTo:"tenants",pathMatch:"full"},{path:"tenants",component:t.DynamicLayoutComponent,canActivate:[t.AuthGuard,t.PermissionGuard],data:{requiredPolicy:"AbpTenantManagement.Tenants"},children:[{path:"",component:C,resolve:[A]}]}],w=function(){function e(){}return e.decorators=[{type:a.NgModule,args:[{imports:[l.RouterModule.forChild(D)],exports:[l.RouterModule],providers:[A]}]}],e}(),F=function(){function e(){}return e.decorators=[{type:a.NgModule,args:[{declarations:[C],imports:[w,r.NgxsModule.forFeature([S]),d.NgxValidateCoreModule,t.CoreModule,i.TableModule,n.ThemeSharedModule,o.NgbDropdownModule,u.FeatureManagementModule]}]}],e}();var j;!function(e){function t(){}function n(){}function a(){}function o(){}function r(){}e.State=t,e.Item=n,e.AddRequest=a,e.UpdateRequest=o,e.DefaultConnectionStringRequest=r}(j||(j={})),e.CreateTenant=y,e.DeleteTenant=T,e.GetTenantById=h,e.GetTenants=f,e.TENANT_MANAGEMENT_ROUTES={routes:[{name:"AbpTenantManagement::Menu:TenantManagement",path:"tenant-management",parentName:"AbpUiNavigation::Menu:Administration",layout:"application",iconClass:"fa fa-users",children:[{path:"tenants",name:"AbpTenantManagement::Tenants",order:1,requiredPolicy:"AbpTenantManagement.Tenants"}]}],settings:[]},e.TenantManagementModule=F,e.TenantManagementProviders=function(){return[]},e.TenantManagementService=M,e.TenantManagementState=S,e.TenantsComponent=C,e.TenantsResolver=A,e.UpdateTenant=v,e.ɵa=C,e.ɵb=S,e.ɵc=M,e.ɵd=f,e.ɵe=h,e.ɵf=y,e.ɵg=v,e.ɵh=T,e.ɵj=w,e.ɵk=A,Object.defineProperty(e,"__esModule",{value:!0})}); //# sourceMappingURL=abp-ng.tenant-management.umd.min.js.map \ No newline at end of file diff --git a/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.min.js.map b/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.min.js.map index 93325d3f71..9c7f3da8e0 100644 --- a/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.min.js.map +++ b/npm/ng-packs/dist/tenant-management/bundles/abp-ng.tenant-management.umd.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.tenant-management/lib/root-tenant-management.module.ts","ng://@abp/ng.tenant-management/lib/actions/tenant-management.actions.ts","ng://@abp/ng.tenant-management/lib/services/tenant-management.service.ts","ng://@abp/ng.tenant-management/lib/states/tenant-management.state.ts","ng://@abp/ng.tenant-management/lib/components/tenants/tenants.component.ts","ng://@abp/ng.tenant-management/lib/resolvers/tenants.resolver.ts","ng://@abp/ng.tenant-management/lib/tenant-management-routing.module.ts","ng://@abp/ng.tenant-management/lib/models/tenant-management.ts","ng://@abp/ng.tenant-management/lib/tenant-management.module.ts","ng://@abp/ng.tenant-management/lib/constants/routes.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__metadata","metadataKey","metadataValue","metadata","RootTenantManagementModule","forRoot","ngModule","providers","NgModule","args","GetTenants","payload","type","GetTenantById","CreateTenant","UpdateTenant","DeleteTenant","TenantManagementService","rest","getTenant","params","request","method","url","getTenantById","id","deleteTenant","createTenant","body","updateTenant","getDefaultConnectionString","responseType","updateDefaultConnectionString","defaultConnectionString","deleteDefaultConnectionString","Injectable","providedIn","RestService","TenantManagementState","tenantManagementService","get","_a","result","items","getTenantsTotalCount","totalCount","_b","patchState","pipe","tap","getById","selectedItem","delete","dispatch","switchMap","add","update","_this","getState","tslib_1.__decorate","Action","Selector","State","name","defaults","TenantsComponent","confirmationService","tenantService","fb","store","selectedModalContent","visibleFeatures","pageQuery","sorting","loading","modalBusy","defaultConnectionStringForm","value","onSearch","filter","createTenantForm","tenantForm","group","selected","Validators","required","maxLength","createDefaultConnectionStringForm","useSharedDatabase","_useSharedDatabase","openModal","title","template","isModalVisible","onEditConnectionString","pluck","subscribe","fetchedConnectionString","connectionStringModalTemplate","onAddTenant","tenantModalTemplate","onEditTenant","save","saveTenant","saveConnectionString","connectionString","take","finalize","valid","warn","messageLocalizationParams","status","onPageChange","data","skipCount","first","maxResultCount","rows","Component","selector","ConfirmationService","FormBuilder","Store","ViewChild","static","Select","Observable","TenantsResolver","resolve","selectSnapshot","TenantManagement","routes","path","redirectTo","pathMatch","component","DynamicLayoutComponent","canActivate","AuthGuard","PermissionGuard","requiredPolicy","children","TenantManagementRoutingModule","imports","RouterModule","forChild","exports","TenantManagementModule","declarations","NgxsModule","forFeature","NgxValidateCoreModule","CoreModule","TableModule","ThemeSharedModule","NgbDropdownModule","FeatureManagementModule","Item","AddRequest","UpdateRequest","DefaultConnectionStringRequest","parentName","layout","iconClass","order","settings"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootTenantManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootTenantManagementModule,\n providers: [],\n };\n }\n}\n","import { TenantManagement } from '../models/tenant-management';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetTenants {\n static readonly type = '[TenantManagement] Get Tenant';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetTenantById {\n static readonly type = '[TenantManagement] Get Tenant By Id';\n constructor(public payload: string) {}\n}\n\nexport class CreateTenant {\n static readonly type = '[TenantManagement] Create Tenant';\n constructor(public payload: TenantManagement.AddRequest) {}\n}\n\nexport class UpdateTenant {\n static readonly type = '[TenantManagement] Update Tenant';\n constructor(public payload: TenantManagement.UpdateRequest) {}\n}\n\nexport class DeleteTenant {\n static readonly type = '[TenantManagement] Delete Tenant';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { TenantManagement } from '../models/tenant-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TenantManagementService {\n constructor(private rest: RestService) {}\n\n getTenant(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/multi-tenancy/tenants',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getTenantById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteTenant(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createTenant(body: TenantManagement.AddRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/multi-tenancy/tenants`,\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateTenant(body: TenantManagement.UpdateRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'GET',\n responseType: Rest.ResponseType.Text,\n url,\n };\n return this.rest.request(request);\n }\n\n updateDefaultConnectionString(payload: TenantManagement.DefaultConnectionStringRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${payload.id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n params: { defaultConnectionString: payload.defaultConnectionString },\n };\n return this.rest.request(request);\n }\n\n deleteDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'DELETE',\n url,\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementService } from '../services/tenant-management.service';\nimport { ABP } from '@abp/ng.core';\n\n@State({\n name: 'TenantManagementState',\n defaults: { result: {}, selectedItem: {} } as TenantManagement.State,\n})\nexport class TenantManagementState {\n @Selector()\n static get({ result }: TenantManagement.State): ABP.BasicItem[] {\n return result.items || [];\n }\n\n @Selector()\n static getTenantsTotalCount({ result }: TenantManagement.State): number {\n return result.totalCount;\n }\n\n constructor(private tenantManagementService: TenantManagementService) {}\n\n @Action(GetTenants)\n get({ patchState }: StateContext, { payload }: GetTenants) {\n return this.tenantManagementService.getTenant(payload).pipe(\n tap(result =>\n patchState({\n result,\n }),\n ),\n );\n }\n\n @Action(GetTenantById)\n getById({ patchState }: StateContext, { payload }: GetTenantById) {\n return this.tenantManagementService.getTenantById(payload).pipe(\n tap(selectedItem =>\n patchState({\n selectedItem,\n }),\n ),\n );\n }\n\n @Action(DeleteTenant)\n delete({ dispatch }: StateContext, { payload }: DeleteTenant) {\n return this.tenantManagementService.deleteTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(CreateTenant)\n add({ dispatch }: StateContext, { payload }: CreateTenant) {\n return this.tenantManagementService.createTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(UpdateTenant)\n update({ dispatch, getState }: StateContext, { payload }: UpdateTenant) {\n return dispatch(new GetTenantById(payload.id)).pipe(\n switchMap(() => this.tenantManagementService.updateTenant({ ...getState().selectedItem, ...payload })),\n switchMap(() => dispatch(new GetTenants())),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable, Subject } from 'rxjs';\nimport { debounceTime, finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../../actions/tenant-management.actions';\nimport { TenantManagementService } from '../../services/tenant-management.service';\nimport { TenantManagementState } from '../../states/tenant-management.state';\n\ntype SelectedModalContent = {\n type: string;\n title: string;\n template: TemplateRef;\n};\n\n@Component({\n selector: 'abp-tenants',\n templateUrl: './tenants.component.html',\n})\nexport class TenantsComponent {\n @Select(TenantManagementState.get)\n data$: Observable;\n\n @Select(TenantManagementState.getTenantsTotalCount)\n totalCount$: Observable;\n\n selected: ABP.BasicItem;\n\n tenantForm: FormGroup;\n\n defaultConnectionStringForm: FormGroup;\n\n defaultConnectionString: string;\n\n isModalVisible: boolean;\n\n selectedModalContent = {} as SelectedModalContent;\n\n visibleFeatures: boolean = false;\n\n providerKey: string;\n\n _useSharedDatabase: boolean;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n get useSharedDatabase(): boolean {\n return this.defaultConnectionStringForm.get('useSharedDatabase').value;\n }\n\n get connectionString(): string {\n return this.defaultConnectionStringForm.get('defaultConnectionString').value;\n }\n\n @ViewChild('tenantModalTemplate', { static: false })\n tenantModalTemplate: TemplateRef;\n\n @ViewChild('connectionStringModalTemplate', { static: false })\n connectionStringModalTemplate: TemplateRef;\n\n constructor(\n private confirmationService: ConfirmationService,\n private tenantService: TenantManagementService,\n private fb: FormBuilder,\n private store: Store,\n ) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n private createTenantForm() {\n this.tenantForm = this.fb.group({\n name: [this.selected.name || '', [Validators.required, Validators.maxLength(256)]],\n });\n }\n\n private createDefaultConnectionStringForm() {\n this.defaultConnectionStringForm = this.fb.group({\n useSharedDatabase: this._useSharedDatabase,\n defaultConnectionString: [this.defaultConnectionString || ''],\n });\n }\n\n openModal(title: string, template: TemplateRef, type: string) {\n this.selectedModalContent = {\n title,\n template,\n type,\n };\n\n this.isModalVisible = true;\n }\n\n onEditConnectionString(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(\n pluck('TenantManagementState', 'selectedItem'),\n switchMap(selected => {\n this.selected = selected;\n return this.tenantService.getDefaultConnectionString(id);\n }),\n )\n .subscribe(fetchedConnectionString => {\n this._useSharedDatabase = fetchedConnectionString ? false : true;\n this.defaultConnectionString = fetchedConnectionString ? fetchedConnectionString : '';\n this.createDefaultConnectionStringForm();\n this.openModal('AbpTenantManagement::ConnectionStrings', this.connectionStringModalTemplate, 'saveConnStr');\n });\n }\n\n onAddTenant() {\n this.selected = {} as ABP.BasicItem;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::NewTenant', this.tenantModalTemplate, 'saveTenant');\n }\n\n onEditTenant(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(pluck('TenantManagementState', 'selectedItem'))\n .subscribe(selected => {\n this.selected = selected;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::Edit', this.tenantModalTemplate, 'saveTenant');\n });\n }\n\n save() {\n const { type } = this.selectedModalContent;\n if (!type) return;\n if (type === 'saveTenant') this.saveTenant();\n else if (type === 'saveConnStr') this.saveConnectionString();\n }\n\n saveConnectionString() {\n this.modalBusy = true;\n if (this.useSharedDatabase || (!this.useSharedDatabase && !this.connectionString)) {\n this.tenantService\n .deleteDefaultConnectionString(this.selected.id)\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n } else {\n this.tenantService\n .updateDefaultConnectionString({ id: this.selected.id, defaultConnectionString: this.connectionString })\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n }\n }\n\n saveTenant() {\n if (!this.tenantForm.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateTenant({ ...this.tenantForm.value, id: this.selected.id })\n : new CreateTenant(this.tenantForm.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpTenantManagement::TenantDeletionConfirmationMessage', 'AbpTenantManagement::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteTenant(id));\n this.modalBusy = false;\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetTenants(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetTenants } from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementState } from '../states/tenant-management.state';\n\n@Injectable()\nexport class TenantsResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const data = this.store.selectSnapshot(TenantManagementState.get);\n return data && data.length ? null : this.store.dispatch(new GetTenants());\n }\n}\n","import { AuthGuard, DynamicLayoutComponent, PermissionGuard } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { TenantsResolver } from './resolvers/tenants.resolver';\nimport { TenantsComponent } from './components/tenants/tenants.component';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'tenants', pathMatch: 'full' },\n {\n path: 'tenants',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpTenantManagement.Tenants' },\n children: [{ path: '', component: TenantsComponent, resolve: [TenantsResolver] }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [TenantsResolver],\n})\nexport class TenantManagementRoutingModule {}\n","import { ABP } from '@abp/ng.core';\n\nexport namespace TenantManagement {\n export interface State {\n result: Response;\n selectedItem: Item;\n }\n\n export type Response = ABP.PagedResponse;\n\n export interface Item {\n id: string;\n name: string;\n }\n\n export interface AddRequest {\n name: string;\n }\n\n export interface UpdateRequest extends AddRequest {\n id: string;\n }\n\n export interface DefaultConnectionStringRequest {\n id: string;\n defaultConnectionString: string;\n }\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxsModule } from '@ngxs/store';\nimport { TableModule } from 'primeng/table';\nimport { TenantsComponent } from './components/tenants/tenants.component';\nimport { TenantManagementState } from './states/tenant-management.state';\nimport { TenantManagementRoutingModule } from './tenant-management-routing.module';\nimport { FeatureManagementModule } from '@abp/ng.feature-management';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\n\n@NgModule({\n declarations: [TenantsComponent],\n imports: [\n TenantManagementRoutingModule,\n NgxsModule.forFeature([TenantManagementState]),\n NgxValidateCoreModule,\n CoreModule,\n TableModule,\n ThemeSharedModule,\n NgbDropdownModule,\n FeatureManagementModule,\n ],\n})\nexport class TenantManagementModule {}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const TENANT_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'AbpTenantManagement::Menu:TenantManagement',\n path: 'tenant-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-users',\n children: [\n {\n path: 'tenants',\n name: 'AbpTenantManagement::Tenants',\n order: 1,\n requiredPolicy: 'AbpTenantManagement.Tenants',\n },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n"]} \ No newline at end of file +{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.tenant-management/lib/actions/tenant-management.actions.ts","ng://@abp/ng.tenant-management/lib/services/tenant-management.service.ts","ng://@abp/ng.tenant-management/lib/states/tenant-management.state.ts","ng://@abp/ng.tenant-management/lib/components/tenants/tenants.component.ts","ng://@abp/ng.tenant-management/lib/resolvers/tenants.resolver.ts","ng://@abp/ng.tenant-management/lib/tenant-management-routing.module.ts","ng://@abp/ng.tenant-management/lib/tenant-management.module.ts","ng://@abp/ng.tenant-management/lib/constants/routes.ts","ng://@abp/ng.tenant-management/lib/models/tenant-management.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__metadata","metadataKey","metadataValue","metadata","GetTenants","payload","type","GetTenantById","CreateTenant","UpdateTenant","DeleteTenant","TenantManagementService","rest","getTenant","params","request","method","url","getTenantById","id","deleteTenant","createTenant","body","updateTenant","getDefaultConnectionString","responseType","updateDefaultConnectionString","defaultConnectionString","deleteDefaultConnectionString","Injectable","args","providedIn","RestService","TenantManagementState","tenantManagementService","get","_a","result","items","getTenantsTotalCount","totalCount","_b","patchState","pipe","tap","getById","selectedItem","delete","dispatch","switchMap","add","update","_this","getState","tslib_1.__decorate","Action","Selector","State","name","defaults","TenantsComponent","confirmationService","tenantService","fb","store","selectedModalContent","visibleFeatures","pageQuery","sorting","loading","modalBusy","defaultConnectionStringForm","value","onSearch","filter","createTenantForm","tenantForm","group","selected","Validators","required","maxLength","createDefaultConnectionStringForm","useSharedDatabase","_useSharedDatabase","openModal","title","template","isModalVisible","onEditConnectionString","pluck","subscribe","fetchedConnectionString","connectionStringModalTemplate","onAddTenant","tenantModalTemplate","onEditTenant","save","saveTenant","saveConnectionString","connectionString","take","finalize","valid","warn","messageLocalizationParams","status","onPageChange","data","skipCount","first","maxResultCount","rows","Component","selector","ConfirmationService","FormBuilder","Store","ViewChild","static","Select","Observable","TenantsResolver","resolve","selectSnapshot","routes","path","redirectTo","pathMatch","component","DynamicLayoutComponent","canActivate","AuthGuard","PermissionGuard","requiredPolicy","children","TenantManagementRoutingModule","NgModule","imports","RouterModule","forChild","exports","providers","TenantManagementModule","declarations","NgxsModule","forFeature","NgxValidateCoreModule","CoreModule","TableModule","ThemeSharedModule","NgbDropdownModule","FeatureManagementModule","TenantManagement","Item","AddRequest","UpdateRequest","DefaultConnectionStringRequest","parentName","layout","iconClass","order","settings"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { TenantManagement } from '../models/tenant-management';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetTenants {\n static readonly type = '[TenantManagement] Get Tenant';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetTenantById {\n static readonly type = '[TenantManagement] Get Tenant By Id';\n constructor(public payload: string) {}\n}\n\nexport class CreateTenant {\n static readonly type = '[TenantManagement] Create Tenant';\n constructor(public payload: TenantManagement.AddRequest) {}\n}\n\nexport class UpdateTenant {\n static readonly type = '[TenantManagement] Update Tenant';\n constructor(public payload: TenantManagement.UpdateRequest) {}\n}\n\nexport class DeleteTenant {\n static readonly type = '[TenantManagement] Delete Tenant';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { TenantManagement } from '../models/tenant-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TenantManagementService {\n constructor(private rest: RestService) {}\n\n getTenant(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/multi-tenancy/tenants',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getTenantById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteTenant(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createTenant(body: TenantManagement.AddRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/multi-tenancy/tenants`,\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateTenant(body: TenantManagement.UpdateRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'GET',\n responseType: Rest.ResponseType.Text,\n url,\n };\n return this.rest.request(request);\n }\n\n updateDefaultConnectionString(payload: TenantManagement.DefaultConnectionStringRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${payload.id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n params: { defaultConnectionString: payload.defaultConnectionString },\n };\n return this.rest.request(request);\n }\n\n deleteDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'DELETE',\n url,\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementService } from '../services/tenant-management.service';\nimport { ABP } from '@abp/ng.core';\n\n@State({\n name: 'TenantManagementState',\n defaults: { result: {}, selectedItem: {} } as TenantManagement.State,\n})\nexport class TenantManagementState {\n @Selector()\n static get({ result }: TenantManagement.State): ABP.BasicItem[] {\n return result.items || [];\n }\n\n @Selector()\n static getTenantsTotalCount({ result }: TenantManagement.State): number {\n return result.totalCount;\n }\n\n constructor(private tenantManagementService: TenantManagementService) {}\n\n @Action(GetTenants)\n get({ patchState }: StateContext, { payload }: GetTenants) {\n return this.tenantManagementService.getTenant(payload).pipe(\n tap(result =>\n patchState({\n result,\n }),\n ),\n );\n }\n\n @Action(GetTenantById)\n getById({ patchState }: StateContext, { payload }: GetTenantById) {\n return this.tenantManagementService.getTenantById(payload).pipe(\n tap(selectedItem =>\n patchState({\n selectedItem,\n }),\n ),\n );\n }\n\n @Action(DeleteTenant)\n delete({ dispatch }: StateContext, { payload }: DeleteTenant) {\n return this.tenantManagementService.deleteTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(CreateTenant)\n add({ dispatch }: StateContext, { payload }: CreateTenant) {\n return this.tenantManagementService.createTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(UpdateTenant)\n update({ dispatch, getState }: StateContext, { payload }: UpdateTenant) {\n return dispatch(new GetTenantById(payload.id)).pipe(\n switchMap(() => this.tenantManagementService.updateTenant({ ...getState().selectedItem, ...payload })),\n switchMap(() => dispatch(new GetTenants())),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable, Subject } from 'rxjs';\nimport { debounceTime, finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../../actions/tenant-management.actions';\nimport { TenantManagementService } from '../../services/tenant-management.service';\nimport { TenantManagementState } from '../../states/tenant-management.state';\n\ntype SelectedModalContent = {\n type: string;\n title: string;\n template: TemplateRef;\n};\n\n@Component({\n selector: 'abp-tenants',\n templateUrl: './tenants.component.html',\n})\nexport class TenantsComponent {\n @Select(TenantManagementState.get)\n data$: Observable;\n\n @Select(TenantManagementState.getTenantsTotalCount)\n totalCount$: Observable;\n\n selected: ABP.BasicItem;\n\n tenantForm: FormGroup;\n\n defaultConnectionStringForm: FormGroup;\n\n defaultConnectionString: string;\n\n isModalVisible: boolean;\n\n selectedModalContent = {} as SelectedModalContent;\n\n visibleFeatures: boolean = false;\n\n providerKey: string;\n\n _useSharedDatabase: boolean;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n get useSharedDatabase(): boolean {\n return this.defaultConnectionStringForm.get('useSharedDatabase').value;\n }\n\n get connectionString(): string {\n return this.defaultConnectionStringForm.get('defaultConnectionString').value;\n }\n\n @ViewChild('tenantModalTemplate', { static: false })\n tenantModalTemplate: TemplateRef;\n\n @ViewChild('connectionStringModalTemplate', { static: false })\n connectionStringModalTemplate: TemplateRef;\n\n constructor(\n private confirmationService: ConfirmationService,\n private tenantService: TenantManagementService,\n private fb: FormBuilder,\n private store: Store,\n ) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n private createTenantForm() {\n this.tenantForm = this.fb.group({\n name: [this.selected.name || '', [Validators.required, Validators.maxLength(256)]],\n });\n }\n\n private createDefaultConnectionStringForm() {\n this.defaultConnectionStringForm = this.fb.group({\n useSharedDatabase: this._useSharedDatabase,\n defaultConnectionString: [this.defaultConnectionString || ''],\n });\n }\n\n openModal(title: string, template: TemplateRef, type: string) {\n this.selectedModalContent = {\n title,\n template,\n type,\n };\n\n this.isModalVisible = true;\n }\n\n onEditConnectionString(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(\n pluck('TenantManagementState', 'selectedItem'),\n switchMap(selected => {\n this.selected = selected;\n return this.tenantService.getDefaultConnectionString(id);\n }),\n )\n .subscribe(fetchedConnectionString => {\n this._useSharedDatabase = fetchedConnectionString ? false : true;\n this.defaultConnectionString = fetchedConnectionString ? fetchedConnectionString : '';\n this.createDefaultConnectionStringForm();\n this.openModal('AbpTenantManagement::ConnectionStrings', this.connectionStringModalTemplate, 'saveConnStr');\n });\n }\n\n onAddTenant() {\n this.selected = {} as ABP.BasicItem;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::NewTenant', this.tenantModalTemplate, 'saveTenant');\n }\n\n onEditTenant(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(pluck('TenantManagementState', 'selectedItem'))\n .subscribe(selected => {\n this.selected = selected;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::Edit', this.tenantModalTemplate, 'saveTenant');\n });\n }\n\n save() {\n const { type } = this.selectedModalContent;\n if (!type) return;\n if (type === 'saveTenant') this.saveTenant();\n else if (type === 'saveConnStr') this.saveConnectionString();\n }\n\n saveConnectionString() {\n this.modalBusy = true;\n if (this.useSharedDatabase || (!this.useSharedDatabase && !this.connectionString)) {\n this.tenantService\n .deleteDefaultConnectionString(this.selected.id)\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n } else {\n this.tenantService\n .updateDefaultConnectionString({ id: this.selected.id, defaultConnectionString: this.connectionString })\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n }\n }\n\n saveTenant() {\n if (!this.tenantForm.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateTenant({ ...this.tenantForm.value, id: this.selected.id })\n : new CreateTenant(this.tenantForm.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpTenantManagement::TenantDeletionConfirmationMessage', 'AbpTenantManagement::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteTenant(id));\n this.modalBusy = false;\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetTenants(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetTenants } from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementState } from '../states/tenant-management.state';\n\n@Injectable()\nexport class TenantsResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const data = this.store.selectSnapshot(TenantManagementState.get);\n return data && data.length ? null : this.store.dispatch(new GetTenants());\n }\n}\n","import { AuthGuard, DynamicLayoutComponent, PermissionGuard } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { TenantsResolver } from './resolvers/tenants.resolver';\nimport { TenantsComponent } from './components/tenants/tenants.component';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'tenants', pathMatch: 'full' },\n {\n path: 'tenants',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpTenantManagement.Tenants' },\n children: [{ path: '', component: TenantsComponent, resolve: [TenantsResolver] }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [TenantsResolver],\n})\nexport class TenantManagementRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule, Provider } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxsModule } from '@ngxs/store';\nimport { TableModule } from 'primeng/table';\nimport { TenantsComponent } from './components/tenants/tenants.component';\nimport { TenantManagementState } from './states/tenant-management.state';\nimport { TenantManagementRoutingModule } from './tenant-management-routing.module';\nimport { FeatureManagementModule } from '@abp/ng.feature-management';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\n\n@NgModule({\n declarations: [TenantsComponent],\n imports: [\n TenantManagementRoutingModule,\n NgxsModule.forFeature([TenantManagementState]),\n NgxValidateCoreModule,\n CoreModule,\n TableModule,\n ThemeSharedModule,\n NgbDropdownModule,\n FeatureManagementModule,\n ],\n})\nexport class TenantManagementModule {}\n\nexport function TenantManagementProviders(): Provider[] {\n return [];\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const TENANT_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'AbpTenantManagement::Menu:TenantManagement',\n path: 'tenant-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-users',\n children: [\n {\n path: 'tenants',\n name: 'AbpTenantManagement::Tenants',\n order: 1,\n requiredPolicy: 'AbpTenantManagement.Tenants',\n },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","import { ABP } from '@abp/ng.core';\n\nexport namespace TenantManagement {\n export interface State {\n result: Response;\n selectedItem: Item;\n }\n\n export type Response = ABP.PagedResponse;\n\n export interface Item {\n id: string;\n name: string;\n }\n\n export interface AddRequest {\n name: string;\n }\n\n export interface UpdateRequest extends AddRequest {\n id: string;\n }\n\n export interface DefaultConnectionStringRequest {\n id: string;\n defaultConnectionString: string;\n }\n}\n"]} \ No newline at end of file diff --git a/npm/ng-packs/dist/tenant-management/esm2015/abp-ng.tenant-management.js b/npm/ng-packs/dist/tenant-management/esm2015/abp-ng.tenant-management.js index bb2193197a..74b2fd80e7 100644 --- a/npm/ng-packs/dist/tenant-management/esm2015/abp-ng.tenant-management.js +++ b/npm/ng-packs/dist/tenant-management/esm2015/abp-ng.tenant-management.js @@ -5,11 +5,11 @@ /** * Generated bundle index. Do not edit. */ -export { RootTenantManagementModule, TenantManagementModule, GetTenants, GetTenantById, CreateTenant, UpdateTenant, DeleteTenant, TenantsComponent, TENANT_MANAGEMENT_ROUTES, TenantsResolver, TenantManagementService, TenantManagementState } from './public-api'; +export { TenantManagementProviders, TenantManagementModule, GetTenants, GetTenantById, CreateTenant, UpdateTenant, DeleteTenant, TenantsComponent, TENANT_MANAGEMENT_ROUTES, TenantsResolver, TenantManagementService, TenantManagementState } from './public-api'; export { CreateTenant as ɵf, DeleteTenant as ɵh, GetTenantById as ɵe, GetTenants as ɵd, UpdateTenant as ɵg } from './lib/actions/tenant-management.actions'; export { TenantsComponent as ɵa } from './lib/components/tenants/tenants.component'; export { TenantsResolver as ɵk } from './lib/resolvers/tenants.resolver'; export { TenantManagementService as ɵc } from './lib/services/tenant-management.service'; export { TenantManagementState as ɵb } from './lib/states/tenant-management.state'; export { TenantManagementRoutingModule as ɵj } from './lib/tenant-management-routing.module'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRlbmFudC1tYW5hZ2VtZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50ZW5hbnQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImFicC1uZy50ZW5hbnQtbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEscVBBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLFlBQVksSUFBSSxFQUFFLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxVQUFVLElBQUksRUFBRSxFQUFDLFlBQVksSUFBSSxFQUFFLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUN0SixPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFFbEYsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUN2RSxPQUFPLEVBQUMsdUJBQXVCLElBQUksRUFBRSxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDdkYsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ2pGLE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcblxuZXhwb3J0IHtDcmVhdGVUZW5hbnQgYXMgybVmLERlbGV0ZVRlbmFudCBhcyDJtWgsR2V0VGVuYW50QnlJZCBhcyDJtWUsR2V0VGVuYW50cyBhcyDJtWQsVXBkYXRlVGVuYW50IGFzIMm1Z30gZnJvbSAnLi9saWIvYWN0aW9ucy90ZW5hbnQtbWFuYWdlbWVudC5hY3Rpb25zJztcbmV4cG9ydCB7VGVuYW50c0NvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVuYW50cy90ZW5hbnRzLmNvbXBvbmVudCc7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnQgYXMgybVpfSBmcm9tICcuL2xpYi9tb2RlbHMvdGVuYW50LW1hbmFnZW1lbnQnO1xuZXhwb3J0IHtUZW5hbnRzUmVzb2x2ZXIgYXMgybVrfSBmcm9tICcuL2xpYi9yZXNvbHZlcnMvdGVuYW50cy5yZXNvbHZlcic7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnRTZXJ2aWNlIGFzIMm1Y30gZnJvbSAnLi9saWIvc2VydmljZXMvdGVuYW50LW1hbmFnZW1lbnQuc2VydmljZSc7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnRTdGF0ZSBhcyDJtWJ9IGZyb20gJy4vbGliL3N0YXRlcy90ZW5hbnQtbWFuYWdlbWVudC5zdGF0ZSc7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnRSb3V0aW5nTW9kdWxlIGFzIMm1an0gZnJvbSAnLi9saWIvdGVuYW50LW1hbmFnZW1lbnQtcm91dGluZy5tb2R1bGUnOyJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRlbmFudC1tYW5hZ2VtZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50ZW5hbnQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImFicC1uZy50ZW5hbnQtbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsb1BBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLFlBQVksSUFBSSxFQUFFLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxVQUFVLElBQUksRUFBRSxFQUFDLFlBQVksSUFBSSxFQUFFLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUN0SixPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFFbEYsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUN2RSxPQUFPLEVBQUMsdUJBQXVCLElBQUksRUFBRSxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDdkYsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ2pGLE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcblxuZXhwb3J0IHtDcmVhdGVUZW5hbnQgYXMgybVmLERlbGV0ZVRlbmFudCBhcyDJtWgsR2V0VGVuYW50QnlJZCBhcyDJtWUsR2V0VGVuYW50cyBhcyDJtWQsVXBkYXRlVGVuYW50IGFzIMm1Z30gZnJvbSAnLi9saWIvYWN0aW9ucy90ZW5hbnQtbWFuYWdlbWVudC5hY3Rpb25zJztcbmV4cG9ydCB7VGVuYW50c0NvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVuYW50cy90ZW5hbnRzLmNvbXBvbmVudCc7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnQgYXMgybVpfSBmcm9tICcuL2xpYi9tb2RlbHMvdGVuYW50LW1hbmFnZW1lbnQnO1xuZXhwb3J0IHtUZW5hbnRzUmVzb2x2ZXIgYXMgybVrfSBmcm9tICcuL2xpYi9yZXNvbHZlcnMvdGVuYW50cy5yZXNvbHZlcic7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnRTZXJ2aWNlIGFzIMm1Y30gZnJvbSAnLi9saWIvc2VydmljZXMvdGVuYW50LW1hbmFnZW1lbnQuc2VydmljZSc7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnRTdGF0ZSBhcyDJtWJ9IGZyb20gJy4vbGliL3N0YXRlcy90ZW5hbnQtbWFuYWdlbWVudC5zdGF0ZSc7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnRSb3V0aW5nTW9kdWxlIGFzIMm1an0gZnJvbSAnLi9saWIvdGVuYW50LW1hbmFnZW1lbnQtcm91dGluZy5tb2R1bGUnOyJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/tenant-management/esm2015/lib/root-tenant-management.module.js b/npm/ng-packs/dist/tenant-management/esm2015/lib/root-tenant-management.module.js deleted file mode 100644 index eaf1730653..0000000000 --- a/npm/ng-packs/dist/tenant-management/esm2015/lib/root-tenant-management.module.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { NgModule } from '@angular/core'; -export class RootTenantManagementModule { - /** - * @return {?} - */ - static forRoot() { - return { - ngModule: RootTenantManagementModule, - providers: [], - }; - } -} -RootTenantManagementModule.decorators = [ - { type: NgModule, args: [{},] } -]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC10ZW5hbnQtbWFuYWdlbWVudC5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRlbmFudC1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL3Jvb3QtdGVuYW50LW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUc5RCxNQUFNLE9BQU8sMEJBQTBCOzs7O0lBQ3JDLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSwwQkFBMEI7WUFDcEMsU0FBUyxFQUFFLEVBQUU7U0FDZCxDQUFDO0lBQ0osQ0FBQzs7O1lBUEYsUUFBUSxTQUFDLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ATmdNb2R1bGUoe30pXG5leHBvcnQgY2xhc3MgUm9vdFRlbmFudE1hbmFnZW1lbnRNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IFJvb3RUZW5hbnRNYW5hZ2VtZW50TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXSxcbiAgICB9O1xuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/tenant-management/esm2015/lib/tenant-management.module.js b/npm/ng-packs/dist/tenant-management/esm2015/lib/tenant-management.module.js index 4365e18858..70d1ccefe0 100644 --- a/npm/ng-packs/dist/tenant-management/esm2015/lib/tenant-management.module.js +++ b/npm/ng-packs/dist/tenant-management/esm2015/lib/tenant-management.module.js @@ -30,4 +30,10 @@ TenantManagementModule.decorators = [ ], },] } ]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVuYW50LW1hbmFnZW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50ZW5hbnQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi90ZW5hbnQtbWFuYWdlbWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDekUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbkYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFlM0QsTUFBTSxPQUFPLHNCQUFzQjs7O1lBYmxDLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDaEMsT0FBTyxFQUFFO29CQUNQLDZCQUE2QjtvQkFDN0IsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUM7b0JBQzlDLHFCQUFxQjtvQkFDckIsVUFBVTtvQkFDVixXQUFXO29CQUNYLGlCQUFpQjtvQkFDakIsaUJBQWlCO29CQUNqQix1QkFBdUI7aUJBQ3hCO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JlTW9kdWxlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IFRoZW1lU2hhcmVkTW9kdWxlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nYkRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgTmd4c01vZHVsZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IFRhYmxlTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90YWJsZSc7XG5pbXBvcnQgeyBUZW5hbnRzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RlbmFudHMvdGVuYW50cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGVuYW50TWFuYWdlbWVudFN0YXRlIH0gZnJvbSAnLi9zdGF0ZXMvdGVuYW50LW1hbmFnZW1lbnQuc3RhdGUnO1xuaW1wb3J0IHsgVGVuYW50TWFuYWdlbWVudFJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL3RlbmFudC1tYW5hZ2VtZW50LXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IEZlYXR1cmVNYW5hZ2VtZW50TW9kdWxlIH0gZnJvbSAnQGFicC9uZy5mZWF0dXJlLW1hbmFnZW1lbnQnO1xuaW1wb3J0IHsgTmd4VmFsaWRhdGVDb3JlTW9kdWxlIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbVGVuYW50c0NvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBUZW5hbnRNYW5hZ2VtZW50Um91dGluZ01vZHVsZSxcbiAgICBOZ3hzTW9kdWxlLmZvckZlYXR1cmUoW1RlbmFudE1hbmFnZW1lbnRTdGF0ZV0pLFxuICAgIE5neFZhbGlkYXRlQ29yZU1vZHVsZSxcbiAgICBDb3JlTW9kdWxlLFxuICAgIFRhYmxlTW9kdWxlLFxuICAgIFRoZW1lU2hhcmVkTW9kdWxlLFxuICAgIE5nYkRyb3Bkb3duTW9kdWxlLFxuICAgIEZlYXR1cmVNYW5hZ2VtZW50TW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUZW5hbnRNYW5hZ2VtZW50TW9kdWxlIHt9XG4iXX0= \ No newline at end of file +/** + * @return {?} + */ +export function TenantManagementProviders() { + return []; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVuYW50LW1hbmFnZW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50ZW5hbnQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi90ZW5hbnQtbWFuYWdlbWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDekUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbkYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFlM0QsTUFBTSxPQUFPLHNCQUFzQjs7O1lBYmxDLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDaEMsT0FBTyxFQUFFO29CQUNQLDZCQUE2QjtvQkFDN0IsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUM7b0JBQzlDLHFCQUFxQjtvQkFDckIsVUFBVTtvQkFDVixXQUFXO29CQUNYLGlCQUFpQjtvQkFDakIsaUJBQWlCO29CQUNqQix1QkFBdUI7aUJBQ3hCO2FBQ0Y7Ozs7O0FBR0QsTUFBTSxVQUFVLHlCQUF5QjtJQUN2QyxPQUFPLEVBQUUsQ0FBQztBQUNaLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JlTW9kdWxlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IFRoZW1lU2hhcmVkTW9kdWxlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xuaW1wb3J0IHsgTmdNb2R1bGUsIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ2JEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IE5neHNNb2R1bGUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBUYWJsZU1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdGFibGUnO1xuaW1wb3J0IHsgVGVuYW50c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90ZW5hbnRzL3RlbmFudHMuY29tcG9uZW50JztcbmltcG9ydCB7IFRlbmFudE1hbmFnZW1lbnRTdGF0ZSB9IGZyb20gJy4vc3RhdGVzL3RlbmFudC1tYW5hZ2VtZW50LnN0YXRlJztcbmltcG9ydCB7IFRlbmFudE1hbmFnZW1lbnRSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi90ZW5hbnQtbWFuYWdlbWVudC1yb3V0aW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBGZWF0dXJlTWFuYWdlbWVudE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuZmVhdHVyZS1tYW5hZ2VtZW50JztcbmltcG9ydCB7IE5neFZhbGlkYXRlQ29yZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdmFsaWRhdGUvY29yZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1RlbmFudHNDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgVGVuYW50TWFuYWdlbWVudFJvdXRpbmdNb2R1bGUsXG4gICAgTmd4c01vZHVsZS5mb3JGZWF0dXJlKFtUZW5hbnRNYW5hZ2VtZW50U3RhdGVdKSxcbiAgICBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUsXG4gICAgQ29yZU1vZHVsZSxcbiAgICBUYWJsZU1vZHVsZSxcbiAgICBUaGVtZVNoYXJlZE1vZHVsZSxcbiAgICBOZ2JEcm9wZG93bk1vZHVsZSxcbiAgICBGZWF0dXJlTWFuYWdlbWVudE1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVGVuYW50TWFuYWdlbWVudE1vZHVsZSB7fVxuXG5leHBvcnQgZnVuY3Rpb24gVGVuYW50TWFuYWdlbWVudFByb3ZpZGVycygpOiBQcm92aWRlcltdIHtcbiAgcmV0dXJuIFtdO1xufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/tenant-management/esm2015/public-api.js b/npm/ng-packs/dist/tenant-management/esm2015/public-api.js index 0da027bafa..72c68e259e 100644 --- a/npm/ng-packs/dist/tenant-management/esm2015/public-api.js +++ b/npm/ng-packs/dist/tenant-management/esm2015/public-api.js @@ -2,8 +2,7 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { RootTenantManagementModule } from './lib/root-tenant-management.module'; -export { TenantManagementModule } from './lib/tenant-management.module'; +export { TenantManagementProviders, TenantManagementModule } from './lib/tenant-management.module'; export { GetTenants, GetTenantById, CreateTenant, UpdateTenant, DeleteTenant } from './lib/actions'; export { TenantsComponent } from './lib/components'; export { TENANT_MANAGEMENT_ROUTES } from './lib/constants'; @@ -11,4 +10,4 @@ export {} from './lib/models'; export { TenantsResolver } from './lib/resolvers'; export { TenantManagementService } from './lib/services'; export { TenantManagementState } from './lib/states'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGVuYW50LW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSwyQ0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCx1Q0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxvRkFBYyxlQUFlLENBQUM7QUFDOUIsaUNBQWMsa0JBQWtCLENBQUM7QUFDakMseUNBQWMsaUJBQWlCLENBQUM7QUFDaEMsZUFBYyxjQUFjLENBQUM7QUFDN0IsZ0NBQWMsaUJBQWlCLENBQUM7QUFDaEMsd0NBQWMsZ0JBQWdCLENBQUM7QUFDL0Isc0NBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvcm9vdC10ZW5hbnQtbWFuYWdlbWVudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVuYW50LW1hbmFnZW1lbnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Jlc29sdmVycyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zdGF0ZXMnO1xuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGVuYW50LW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxrRUFBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxvRkFBYyxlQUFlLENBQUM7QUFDOUIsaUNBQWMsa0JBQWtCLENBQUM7QUFDakMseUNBQWMsaUJBQWlCLENBQUM7QUFDaEMsZUFBYyxjQUFjLENBQUM7QUFDN0IsZ0NBQWMsaUJBQWlCLENBQUM7QUFDaEMsd0NBQWMsZ0JBQWdCLENBQUM7QUFDL0Isc0NBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvdGVuYW50LW1hbmFnZW1lbnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Jlc29sdmVycyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zdGF0ZXMnO1xuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/tenant-management/esm5/abp-ng.tenant-management.js b/npm/ng-packs/dist/tenant-management/esm5/abp-ng.tenant-management.js index bb2193197a..74b2fd80e7 100644 --- a/npm/ng-packs/dist/tenant-management/esm5/abp-ng.tenant-management.js +++ b/npm/ng-packs/dist/tenant-management/esm5/abp-ng.tenant-management.js @@ -5,11 +5,11 @@ /** * Generated bundle index. Do not edit. */ -export { RootTenantManagementModule, TenantManagementModule, GetTenants, GetTenantById, CreateTenant, UpdateTenant, DeleteTenant, TenantsComponent, TENANT_MANAGEMENT_ROUTES, TenantsResolver, TenantManagementService, TenantManagementState } from './public-api'; +export { TenantManagementProviders, TenantManagementModule, GetTenants, GetTenantById, CreateTenant, UpdateTenant, DeleteTenant, TenantsComponent, TENANT_MANAGEMENT_ROUTES, TenantsResolver, TenantManagementService, TenantManagementState } from './public-api'; export { CreateTenant as ɵf, DeleteTenant as ɵh, GetTenantById as ɵe, GetTenants as ɵd, UpdateTenant as ɵg } from './lib/actions/tenant-management.actions'; export { TenantsComponent as ɵa } from './lib/components/tenants/tenants.component'; export { TenantsResolver as ɵk } from './lib/resolvers/tenants.resolver'; export { TenantManagementService as ɵc } from './lib/services/tenant-management.service'; export { TenantManagementState as ɵb } from './lib/states/tenant-management.state'; export { TenantManagementRoutingModule as ɵj } from './lib/tenant-management-routing.module'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRlbmFudC1tYW5hZ2VtZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50ZW5hbnQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImFicC1uZy50ZW5hbnQtbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEscVBBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLFlBQVksSUFBSSxFQUFFLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxVQUFVLElBQUksRUFBRSxFQUFDLFlBQVksSUFBSSxFQUFFLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUN0SixPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFFbEYsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUN2RSxPQUFPLEVBQUMsdUJBQXVCLElBQUksRUFBRSxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDdkYsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ2pGLE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcblxuZXhwb3J0IHtDcmVhdGVUZW5hbnQgYXMgybVmLERlbGV0ZVRlbmFudCBhcyDJtWgsR2V0VGVuYW50QnlJZCBhcyDJtWUsR2V0VGVuYW50cyBhcyDJtWQsVXBkYXRlVGVuYW50IGFzIMm1Z30gZnJvbSAnLi9saWIvYWN0aW9ucy90ZW5hbnQtbWFuYWdlbWVudC5hY3Rpb25zJztcbmV4cG9ydCB7VGVuYW50c0NvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVuYW50cy90ZW5hbnRzLmNvbXBvbmVudCc7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnQgYXMgybVpfSBmcm9tICcuL2xpYi9tb2RlbHMvdGVuYW50LW1hbmFnZW1lbnQnO1xuZXhwb3J0IHtUZW5hbnRzUmVzb2x2ZXIgYXMgybVrfSBmcm9tICcuL2xpYi9yZXNvbHZlcnMvdGVuYW50cy5yZXNvbHZlcic7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnRTZXJ2aWNlIGFzIMm1Y30gZnJvbSAnLi9saWIvc2VydmljZXMvdGVuYW50LW1hbmFnZW1lbnQuc2VydmljZSc7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnRTdGF0ZSBhcyDJtWJ9IGZyb20gJy4vbGliL3N0YXRlcy90ZW5hbnQtbWFuYWdlbWVudC5zdGF0ZSc7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnRSb3V0aW5nTW9kdWxlIGFzIMm1an0gZnJvbSAnLi9saWIvdGVuYW50LW1hbmFnZW1lbnQtcm91dGluZy5tb2R1bGUnOyJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRlbmFudC1tYW5hZ2VtZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50ZW5hbnQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImFicC1uZy50ZW5hbnQtbWFuYWdlbWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsb1BBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLFlBQVksSUFBSSxFQUFFLEVBQUMsYUFBYSxJQUFJLEVBQUUsRUFBQyxVQUFVLElBQUksRUFBRSxFQUFDLFlBQVksSUFBSSxFQUFFLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUN0SixPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFFbEYsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUN2RSxPQUFPLEVBQUMsdUJBQXVCLElBQUksRUFBRSxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDdkYsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ2pGLE9BQU8sRUFBQyw2QkFBNkIsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcblxuZXhwb3J0IHtDcmVhdGVUZW5hbnQgYXMgybVmLERlbGV0ZVRlbmFudCBhcyDJtWgsR2V0VGVuYW50QnlJZCBhcyDJtWUsR2V0VGVuYW50cyBhcyDJtWQsVXBkYXRlVGVuYW50IGFzIMm1Z30gZnJvbSAnLi9saWIvYWN0aW9ucy90ZW5hbnQtbWFuYWdlbWVudC5hY3Rpb25zJztcbmV4cG9ydCB7VGVuYW50c0NvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvdGVuYW50cy90ZW5hbnRzLmNvbXBvbmVudCc7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnQgYXMgybVpfSBmcm9tICcuL2xpYi9tb2RlbHMvdGVuYW50LW1hbmFnZW1lbnQnO1xuZXhwb3J0IHtUZW5hbnRzUmVzb2x2ZXIgYXMgybVrfSBmcm9tICcuL2xpYi9yZXNvbHZlcnMvdGVuYW50cy5yZXNvbHZlcic7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnRTZXJ2aWNlIGFzIMm1Y30gZnJvbSAnLi9saWIvc2VydmljZXMvdGVuYW50LW1hbmFnZW1lbnQuc2VydmljZSc7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnRTdGF0ZSBhcyDJtWJ9IGZyb20gJy4vbGliL3N0YXRlcy90ZW5hbnQtbWFuYWdlbWVudC5zdGF0ZSc7XG5leHBvcnQge1RlbmFudE1hbmFnZW1lbnRSb3V0aW5nTW9kdWxlIGFzIMm1an0gZnJvbSAnLi9saWIvdGVuYW50LW1hbmFnZW1lbnQtcm91dGluZy5tb2R1bGUnOyJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/tenant-management/esm5/lib/root-tenant-management.module.js b/npm/ng-packs/dist/tenant-management/esm5/lib/root-tenant-management.module.js deleted file mode 100644 index a6967c63ed..0000000000 --- a/npm/ng-packs/dist/tenant-management/esm5/lib/root-tenant-management.module.js +++ /dev/null @@ -1,27 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { NgModule } from '@angular/core'; -var RootTenantManagementModule = /** @class */ (function () { - function RootTenantManagementModule() { - } - /** - * @return {?} - */ - RootTenantManagementModule.forRoot = /** - * @return {?} - */ - function () { - return { - ngModule: RootTenantManagementModule, - providers: [], - }; - }; - RootTenantManagementModule.decorators = [ - { type: NgModule, args: [{},] } - ]; - return RootTenantManagementModule; -}()); -export { RootTenantManagementModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC10ZW5hbnQtbWFuYWdlbWVudC5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRlbmFudC1tYW5hZ2VtZW50LyIsInNvdXJjZXMiOlsibGliL3Jvb3QtdGVuYW50LW1hbmFnZW1lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RDtJQUFBO0lBUUEsQ0FBQzs7OztJQU5RLGtDQUFPOzs7SUFBZDtRQUNFLE9BQU87WUFDTCxRQUFRLEVBQUUsMEJBQTBCO1lBQ3BDLFNBQVMsRUFBRSxFQUFFO1NBQ2QsQ0FBQztJQUNKLENBQUM7O2dCQVBGLFFBQVEsU0FBQyxFQUFFOztJQVFaLGlDQUFDO0NBQUEsQUFSRCxJQVFDO1NBUFksMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQE5nTW9kdWxlKHt9KVxuZXhwb3J0IGNsYXNzIFJvb3RUZW5hbnRNYW5hZ2VtZW50TW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVycyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBSb290VGVuYW50TWFuYWdlbWVudE1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW10sXG4gICAgfTtcbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/tenant-management/esm5/lib/tenant-management.module.js b/npm/ng-packs/dist/tenant-management/esm5/lib/tenant-management.module.js index f4d50cd7bf..ec4e5002a8 100644 --- a/npm/ng-packs/dist/tenant-management/esm5/lib/tenant-management.module.js +++ b/npm/ng-packs/dist/tenant-management/esm5/lib/tenant-management.module.js @@ -34,4 +34,10 @@ var TenantManagementModule = /** @class */ (function () { return TenantManagementModule; }()); export { TenantManagementModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVuYW50LW1hbmFnZW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50ZW5hbnQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi90ZW5hbnQtbWFuYWdlbWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDekUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbkYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFM0Q7SUFBQTtJQWFxQyxDQUFDOztnQkFickMsUUFBUSxTQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUNoQyxPQUFPLEVBQUU7d0JBQ1AsNkJBQTZCO3dCQUM3QixVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMscUJBQXFCLENBQUMsQ0FBQzt3QkFDOUMscUJBQXFCO3dCQUNyQixVQUFVO3dCQUNWLFdBQVc7d0JBQ1gsaUJBQWlCO3dCQUNqQixpQkFBaUI7d0JBQ2pCLHVCQUF1QjtxQkFDeEI7aUJBQ0Y7O0lBQ29DLDZCQUFDO0NBQUEsQUFidEMsSUFhc0M7U0FBekIsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ2JEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IE5neHNNb2R1bGUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBUYWJsZU1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdGFibGUnO1xuaW1wb3J0IHsgVGVuYW50c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90ZW5hbnRzL3RlbmFudHMuY29tcG9uZW50JztcbmltcG9ydCB7IFRlbmFudE1hbmFnZW1lbnRTdGF0ZSB9IGZyb20gJy4vc3RhdGVzL3RlbmFudC1tYW5hZ2VtZW50LnN0YXRlJztcbmltcG9ydCB7IFRlbmFudE1hbmFnZW1lbnRSb3V0aW5nTW9kdWxlIH0gZnJvbSAnLi90ZW5hbnQtbWFuYWdlbWVudC1yb3V0aW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBGZWF0dXJlTWFuYWdlbWVudE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuZmVhdHVyZS1tYW5hZ2VtZW50JztcbmltcG9ydCB7IE5neFZhbGlkYXRlQ29yZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdmFsaWRhdGUvY29yZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1RlbmFudHNDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgVGVuYW50TWFuYWdlbWVudFJvdXRpbmdNb2R1bGUsXG4gICAgTmd4c01vZHVsZS5mb3JGZWF0dXJlKFtUZW5hbnRNYW5hZ2VtZW50U3RhdGVdKSxcbiAgICBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUsXG4gICAgQ29yZU1vZHVsZSxcbiAgICBUYWJsZU1vZHVsZSxcbiAgICBUaGVtZVNoYXJlZE1vZHVsZSxcbiAgICBOZ2JEcm9wZG93bk1vZHVsZSxcbiAgICBGZWF0dXJlTWFuYWdlbWVudE1vZHVsZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVGVuYW50TWFuYWdlbWVudE1vZHVsZSB7fVxuIl19 \ No newline at end of file +/** + * @return {?} + */ +export function TenantManagementProviders() { + return []; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVuYW50LW1hbmFnZW1lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50ZW5hbnQtbWFuYWdlbWVudC8iLCJzb3VyY2VzIjpbImxpYi90ZW5hbnQtbWFuYWdlbWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDekUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDbkYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFM0Q7SUFBQTtJQWFxQyxDQUFDOztnQkFickMsUUFBUSxTQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUNoQyxPQUFPLEVBQUU7d0JBQ1AsNkJBQTZCO3dCQUM3QixVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMscUJBQXFCLENBQUMsQ0FBQzt3QkFDOUMscUJBQXFCO3dCQUNyQixVQUFVO3dCQUNWLFdBQVc7d0JBQ1gsaUJBQWlCO3dCQUNqQixpQkFBaUI7d0JBQ2pCLHVCQUF1QjtxQkFDeEI7aUJBQ0Y7O0lBQ29DLDZCQUFDO0NBQUEsQUFidEMsSUFhc0M7U0FBekIsc0JBQXNCOzs7O0FBRW5DLE1BQU0sVUFBVSx5QkFBeUI7SUFDdkMsT0FBTyxFQUFFLENBQUM7QUFDWixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IE5nTW9kdWxlLCBQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdiRHJvcGRvd25Nb2R1bGUgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBOZ3hzTW9kdWxlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgVGFibGVNb2R1bGUgfSBmcm9tICdwcmltZW5nL3RhYmxlJztcbmltcG9ydCB7IFRlbmFudHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdGVuYW50cy90ZW5hbnRzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZW5hbnRNYW5hZ2VtZW50U3RhdGUgfSBmcm9tICcuL3N0YXRlcy90ZW5hbnQtbWFuYWdlbWVudC5zdGF0ZSc7XG5pbXBvcnQgeyBUZW5hbnRNYW5hZ2VtZW50Um91dGluZ01vZHVsZSB9IGZyb20gJy4vdGVuYW50LW1hbmFnZW1lbnQtcm91dGluZy5tb2R1bGUnO1xuaW1wb3J0IHsgRmVhdHVyZU1hbmFnZW1lbnRNb2R1bGUgfSBmcm9tICdAYWJwL25nLmZlYXR1cmUtbWFuYWdlbWVudCc7XG5pbXBvcnQgeyBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtUZW5hbnRzQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIFRlbmFudE1hbmFnZW1lbnRSb3V0aW5nTW9kdWxlLFxuICAgIE5neHNNb2R1bGUuZm9yRmVhdHVyZShbVGVuYW50TWFuYWdlbWVudFN0YXRlXSksXG4gICAgTmd4VmFsaWRhdGVDb3JlTW9kdWxlLFxuICAgIENvcmVNb2R1bGUsXG4gICAgVGFibGVNb2R1bGUsXG4gICAgVGhlbWVTaGFyZWRNb2R1bGUsXG4gICAgTmdiRHJvcGRvd25Nb2R1bGUsXG4gICAgRmVhdHVyZU1hbmFnZW1lbnRNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFRlbmFudE1hbmFnZW1lbnRNb2R1bGUge31cblxuZXhwb3J0IGZ1bmN0aW9uIFRlbmFudE1hbmFnZW1lbnRQcm92aWRlcnMoKTogUHJvdmlkZXJbXSB7XG4gIHJldHVybiBbXTtcbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/tenant-management/esm5/public-api.js b/npm/ng-packs/dist/tenant-management/esm5/public-api.js index 0da027bafa..72c68e259e 100644 --- a/npm/ng-packs/dist/tenant-management/esm5/public-api.js +++ b/npm/ng-packs/dist/tenant-management/esm5/public-api.js @@ -2,8 +2,7 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { RootTenantManagementModule } from './lib/root-tenant-management.module'; -export { TenantManagementModule } from './lib/tenant-management.module'; +export { TenantManagementProviders, TenantManagementModule } from './lib/tenant-management.module'; export { GetTenants, GetTenantById, CreateTenant, UpdateTenant, DeleteTenant } from './lib/actions'; export { TenantsComponent } from './lib/components'; export { TENANT_MANAGEMENT_ROUTES } from './lib/constants'; @@ -11,4 +10,4 @@ export {} from './lib/models'; export { TenantsResolver } from './lib/resolvers'; export { TenantManagementService } from './lib/services'; export { TenantManagementState } from './lib/states'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGVuYW50LW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSwyQ0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCx1Q0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxvRkFBYyxlQUFlLENBQUM7QUFDOUIsaUNBQWMsa0JBQWtCLENBQUM7QUFDakMseUNBQWMsaUJBQWlCLENBQUM7QUFDaEMsZUFBYyxjQUFjLENBQUM7QUFDN0IsZ0NBQWMsaUJBQWlCLENBQUM7QUFDaEMsd0NBQWMsZ0JBQWdCLENBQUM7QUFDL0Isc0NBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvcm9vdC10ZW5hbnQtbWFuYWdlbWVudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdGVuYW50LW1hbmFnZW1lbnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Jlc29sdmVycyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zdGF0ZXMnO1xuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGVuYW50LW1hbmFnZW1lbnQvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxrRUFBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxvRkFBYyxlQUFlLENBQUM7QUFDOUIsaUNBQWMsa0JBQWtCLENBQUM7QUFDakMseUNBQWMsaUJBQWlCLENBQUM7QUFDaEMsZUFBYyxjQUFjLENBQUM7QUFDN0IsZ0NBQWMsaUJBQWlCLENBQUM7QUFDaEMsd0NBQWMsZ0JBQWdCLENBQUM7QUFDL0Isc0NBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvdGVuYW50LW1hbmFnZW1lbnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3Jlc29sdmVycyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zdGF0ZXMnO1xuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/tenant-management/fesm2015/abp-ng.tenant-management.js b/npm/ng-packs/dist/tenant-management/fesm2015/abp-ng.tenant-management.js index bd20ff80ae..a18abf0128 100644 --- a/npm/ng-packs/dist/tenant-management/fesm2015/abp-ng.tenant-management.js +++ b/npm/ng-packs/dist/tenant-management/fesm2015/abp-ng.tenant-management.js @@ -1,6 +1,6 @@ -import { NgModule, Injectable, ɵɵdefineInjectable, ɵɵinject, Component, ViewChild } from '@angular/core'; import { RestService, DynamicLayoutComponent, AuthGuard, PermissionGuard, CoreModule } from '@abp/ng.core'; import { ConfirmationService, ThemeSharedModule } from '@abp/ng.theme.shared'; +import { Injectable, ɵɵdefineInjectable, ɵɵinject, Component, ViewChild, NgModule } from '@angular/core'; import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; import { Action, Selector, State, Store, Select, NgxsModule } from '@ngxs/store'; import { TableModule } from 'primeng/table'; @@ -12,25 +12,6 @@ import { RouterModule } from '@angular/router'; import { FeatureManagementModule } from '@abp/ng.feature-management'; import { NgxValidateCoreModule } from '@ngx-validate/core'; -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class RootTenantManagementModule { - /** - * @return {?} - */ - static forRoot() { - return { - ngModule: RootTenantManagementModule, - providers: [], - }; - } -} -RootTenantManagementModule.decorators = [ - { type: NgModule, args: [{},] } -]; - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -798,6 +779,12 @@ TenantManagementModule.decorators = [ ], },] } ]; +/** + * @return {?} + */ +function TenantManagementProviders() { + return []; +} /** * @fileoverview added by tsickle @@ -929,5 +916,5 @@ var TenantManagement; * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { CreateTenant, DeleteTenant, GetTenantById, GetTenants, RootTenantManagementModule, TENANT_MANAGEMENT_ROUTES, TenantManagementModule, TenantManagementService, TenantManagementState, TenantsComponent, TenantsResolver, UpdateTenant, TenantsComponent as ɵa, TenantManagementState as ɵb, TenantManagementService as ɵc, GetTenants as ɵd, GetTenantById as ɵe, CreateTenant as ɵf, UpdateTenant as ɵg, DeleteTenant as ɵh, TenantManagementRoutingModule as ɵj, TenantsResolver as ɵk }; +export { CreateTenant, DeleteTenant, GetTenantById, GetTenants, TENANT_MANAGEMENT_ROUTES, TenantManagementModule, TenantManagementProviders, TenantManagementService, TenantManagementState, TenantsComponent, TenantsResolver, UpdateTenant, TenantsComponent as ɵa, TenantManagementState as ɵb, TenantManagementService as ɵc, GetTenants as ɵd, GetTenantById as ɵe, CreateTenant as ɵf, UpdateTenant as ɵg, DeleteTenant as ɵh, TenantManagementRoutingModule as ɵj, TenantsResolver as ɵk }; //# sourceMappingURL=abp-ng.tenant-management.js.map diff --git a/npm/ng-packs/dist/tenant-management/fesm2015/abp-ng.tenant-management.js.map b/npm/ng-packs/dist/tenant-management/fesm2015/abp-ng.tenant-management.js.map index 5efbd879b8..67e68316cc 100644 --- a/npm/ng-packs/dist/tenant-management/fesm2015/abp-ng.tenant-management.js.map +++ b/npm/ng-packs/dist/tenant-management/fesm2015/abp-ng.tenant-management.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.tenant-management.js","sources":["ng://@abp/ng.tenant-management/lib/root-tenant-management.module.ts","ng://@abp/ng.tenant-management/lib/actions/tenant-management.actions.ts","ng://@abp/ng.tenant-management/lib/services/tenant-management.service.ts","ng://@abp/ng.tenant-management/lib/states/tenant-management.state.ts","ng://@abp/ng.tenant-management/lib/components/tenants/tenants.component.ts","ng://@abp/ng.tenant-management/lib/resolvers/tenants.resolver.ts","ng://@abp/ng.tenant-management/lib/tenant-management-routing.module.ts","ng://@abp/ng.tenant-management/lib/tenant-management.module.ts","ng://@abp/ng.tenant-management/lib/constants/routes.ts","ng://@abp/ng.tenant-management/lib/models/tenant-management.ts"],"sourcesContent":["import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootTenantManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootTenantManagementModule,\n providers: [],\n };\n }\n}\n","import { TenantManagement } from '../models/tenant-management';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetTenants {\n static readonly type = '[TenantManagement] Get Tenant';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetTenantById {\n static readonly type = '[TenantManagement] Get Tenant By Id';\n constructor(public payload: string) {}\n}\n\nexport class CreateTenant {\n static readonly type = '[TenantManagement] Create Tenant';\n constructor(public payload: TenantManagement.AddRequest) {}\n}\n\nexport class UpdateTenant {\n static readonly type = '[TenantManagement] Update Tenant';\n constructor(public payload: TenantManagement.UpdateRequest) {}\n}\n\nexport class DeleteTenant {\n static readonly type = '[TenantManagement] Delete Tenant';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { TenantManagement } from '../models/tenant-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TenantManagementService {\n constructor(private rest: RestService) {}\n\n getTenant(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/multi-tenancy/tenants',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getTenantById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteTenant(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createTenant(body: TenantManagement.AddRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/multi-tenancy/tenants`,\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateTenant(body: TenantManagement.UpdateRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'GET',\n responseType: Rest.ResponseType.Text,\n url,\n };\n return this.rest.request(request);\n }\n\n updateDefaultConnectionString(payload: TenantManagement.DefaultConnectionStringRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${payload.id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n params: { defaultConnectionString: payload.defaultConnectionString },\n };\n return this.rest.request(request);\n }\n\n deleteDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'DELETE',\n url,\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementService } from '../services/tenant-management.service';\nimport { ABP } from '@abp/ng.core';\n\n@State({\n name: 'TenantManagementState',\n defaults: { result: {}, selectedItem: {} } as TenantManagement.State,\n})\nexport class TenantManagementState {\n @Selector()\n static get({ result }: TenantManagement.State): ABP.BasicItem[] {\n return result.items || [];\n }\n\n @Selector()\n static getTenantsTotalCount({ result }: TenantManagement.State): number {\n return result.totalCount;\n }\n\n constructor(private tenantManagementService: TenantManagementService) {}\n\n @Action(GetTenants)\n get({ patchState }: StateContext, { payload }: GetTenants) {\n return this.tenantManagementService.getTenant(payload).pipe(\n tap(result =>\n patchState({\n result,\n }),\n ),\n );\n }\n\n @Action(GetTenantById)\n getById({ patchState }: StateContext, { payload }: GetTenantById) {\n return this.tenantManagementService.getTenantById(payload).pipe(\n tap(selectedItem =>\n patchState({\n selectedItem,\n }),\n ),\n );\n }\n\n @Action(DeleteTenant)\n delete({ dispatch }: StateContext, { payload }: DeleteTenant) {\n return this.tenantManagementService.deleteTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(CreateTenant)\n add({ dispatch }: StateContext, { payload }: CreateTenant) {\n return this.tenantManagementService.createTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(UpdateTenant)\n update({ dispatch, getState }: StateContext, { payload }: UpdateTenant) {\n return dispatch(new GetTenantById(payload.id)).pipe(\n switchMap(() => this.tenantManagementService.updateTenant({ ...getState().selectedItem, ...payload })),\n switchMap(() => dispatch(new GetTenants())),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable, Subject } from 'rxjs';\nimport { debounceTime, finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../../actions/tenant-management.actions';\nimport { TenantManagementService } from '../../services/tenant-management.service';\nimport { TenantManagementState } from '../../states/tenant-management.state';\n\ntype SelectedModalContent = {\n type: string;\n title: string;\n template: TemplateRef;\n};\n\n@Component({\n selector: 'abp-tenants',\n templateUrl: './tenants.component.html',\n})\nexport class TenantsComponent {\n @Select(TenantManagementState.get)\n data$: Observable;\n\n @Select(TenantManagementState.getTenantsTotalCount)\n totalCount$: Observable;\n\n selected: ABP.BasicItem;\n\n tenantForm: FormGroup;\n\n defaultConnectionStringForm: FormGroup;\n\n defaultConnectionString: string;\n\n isModalVisible: boolean;\n\n selectedModalContent = {} as SelectedModalContent;\n\n visibleFeatures: boolean = false;\n\n providerKey: string;\n\n _useSharedDatabase: boolean;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n get useSharedDatabase(): boolean {\n return this.defaultConnectionStringForm.get('useSharedDatabase').value;\n }\n\n get connectionString(): string {\n return this.defaultConnectionStringForm.get('defaultConnectionString').value;\n }\n\n @ViewChild('tenantModalTemplate', { static: false })\n tenantModalTemplate: TemplateRef;\n\n @ViewChild('connectionStringModalTemplate', { static: false })\n connectionStringModalTemplate: TemplateRef;\n\n constructor(\n private confirmationService: ConfirmationService,\n private tenantService: TenantManagementService,\n private fb: FormBuilder,\n private store: Store,\n ) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n private createTenantForm() {\n this.tenantForm = this.fb.group({\n name: [this.selected.name || '', [Validators.required, Validators.maxLength(256)]],\n });\n }\n\n private createDefaultConnectionStringForm() {\n this.defaultConnectionStringForm = this.fb.group({\n useSharedDatabase: this._useSharedDatabase,\n defaultConnectionString: [this.defaultConnectionString || ''],\n });\n }\n\n openModal(title: string, template: TemplateRef, type: string) {\n this.selectedModalContent = {\n title,\n template,\n type,\n };\n\n this.isModalVisible = true;\n }\n\n onEditConnectionString(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(\n pluck('TenantManagementState', 'selectedItem'),\n switchMap(selected => {\n this.selected = selected;\n return this.tenantService.getDefaultConnectionString(id);\n }),\n )\n .subscribe(fetchedConnectionString => {\n this._useSharedDatabase = fetchedConnectionString ? false : true;\n this.defaultConnectionString = fetchedConnectionString ? fetchedConnectionString : '';\n this.createDefaultConnectionStringForm();\n this.openModal('AbpTenantManagement::ConnectionStrings', this.connectionStringModalTemplate, 'saveConnStr');\n });\n }\n\n onAddTenant() {\n this.selected = {} as ABP.BasicItem;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::NewTenant', this.tenantModalTemplate, 'saveTenant');\n }\n\n onEditTenant(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(pluck('TenantManagementState', 'selectedItem'))\n .subscribe(selected => {\n this.selected = selected;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::Edit', this.tenantModalTemplate, 'saveTenant');\n });\n }\n\n save() {\n const { type } = this.selectedModalContent;\n if (!type) return;\n if (type === 'saveTenant') this.saveTenant();\n else if (type === 'saveConnStr') this.saveConnectionString();\n }\n\n saveConnectionString() {\n this.modalBusy = true;\n if (this.useSharedDatabase || (!this.useSharedDatabase && !this.connectionString)) {\n this.tenantService\n .deleteDefaultConnectionString(this.selected.id)\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n } else {\n this.tenantService\n .updateDefaultConnectionString({ id: this.selected.id, defaultConnectionString: this.connectionString })\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n }\n }\n\n saveTenant() {\n if (!this.tenantForm.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateTenant({ ...this.tenantForm.value, id: this.selected.id })\n : new CreateTenant(this.tenantForm.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpTenantManagement::TenantDeletionConfirmationMessage', 'AbpTenantManagement::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteTenant(id));\n this.modalBusy = false;\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetTenants(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetTenants } from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementState } from '../states/tenant-management.state';\n\n@Injectable()\nexport class TenantsResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const data = this.store.selectSnapshot(TenantManagementState.get);\n return data && data.length ? null : this.store.dispatch(new GetTenants());\n }\n}\n","import { AuthGuard, DynamicLayoutComponent, PermissionGuard } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { TenantsResolver } from './resolvers/tenants.resolver';\nimport { TenantsComponent } from './components/tenants/tenants.component';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'tenants', pathMatch: 'full' },\n {\n path: 'tenants',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpTenantManagement.Tenants' },\n children: [{ path: '', component: TenantsComponent, resolve: [TenantsResolver] }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [TenantsResolver],\n})\nexport class TenantManagementRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxsModule } from '@ngxs/store';\nimport { TableModule } from 'primeng/table';\nimport { TenantsComponent } from './components/tenants/tenants.component';\nimport { TenantManagementState } from './states/tenant-management.state';\nimport { TenantManagementRoutingModule } from './tenant-management-routing.module';\nimport { FeatureManagementModule } from '@abp/ng.feature-management';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\n\n@NgModule({\n declarations: [TenantsComponent],\n imports: [\n TenantManagementRoutingModule,\n NgxsModule.forFeature([TenantManagementState]),\n NgxValidateCoreModule,\n CoreModule,\n TableModule,\n ThemeSharedModule,\n NgbDropdownModule,\n FeatureManagementModule,\n ],\n})\nexport class TenantManagementModule {}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const TENANT_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'AbpTenantManagement::Menu:TenantManagement',\n path: 'tenant-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-users',\n children: [\n {\n path: 'tenants',\n name: 'AbpTenantManagement::Tenants',\n order: 1,\n requiredPolicy: 'AbpTenantManagement.Tenants',\n },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","import { ABP } from '@abp/ng.core';\n\nexport namespace TenantManagement {\n export interface State {\n result: Response;\n selectedItem: Item;\n }\n\n export type Response = ABP.PagedResponse;\n\n export interface Item {\n id: string;\n name: string;\n }\n\n export interface AddRequest {\n name: string;\n }\n\n export interface UpdateRequest extends AddRequest {\n id: string;\n }\n\n export interface DefaultConnectionStringRequest {\n id: string;\n defaultConnectionString: string;\n }\n}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.tenant-management.js","sources":["ng://@abp/ng.tenant-management/lib/actions/tenant-management.actions.ts","ng://@abp/ng.tenant-management/lib/services/tenant-management.service.ts","ng://@abp/ng.tenant-management/lib/states/tenant-management.state.ts","ng://@abp/ng.tenant-management/lib/components/tenants/tenants.component.ts","ng://@abp/ng.tenant-management/lib/resolvers/tenants.resolver.ts","ng://@abp/ng.tenant-management/lib/tenant-management-routing.module.ts","ng://@abp/ng.tenant-management/lib/tenant-management.module.ts","ng://@abp/ng.tenant-management/lib/constants/routes.ts","ng://@abp/ng.tenant-management/lib/models/tenant-management.ts"],"sourcesContent":["import { TenantManagement } from '../models/tenant-management';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetTenants {\n static readonly type = '[TenantManagement] Get Tenant';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetTenantById {\n static readonly type = '[TenantManagement] Get Tenant By Id';\n constructor(public payload: string) {}\n}\n\nexport class CreateTenant {\n static readonly type = '[TenantManagement] Create Tenant';\n constructor(public payload: TenantManagement.AddRequest) {}\n}\n\nexport class UpdateTenant {\n static readonly type = '[TenantManagement] Update Tenant';\n constructor(public payload: TenantManagement.UpdateRequest) {}\n}\n\nexport class DeleteTenant {\n static readonly type = '[TenantManagement] Delete Tenant';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { TenantManagement } from '../models/tenant-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TenantManagementService {\n constructor(private rest: RestService) {}\n\n getTenant(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/multi-tenancy/tenants',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getTenantById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteTenant(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createTenant(body: TenantManagement.AddRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/multi-tenancy/tenants`,\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateTenant(body: TenantManagement.UpdateRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'GET',\n responseType: Rest.ResponseType.Text,\n url,\n };\n return this.rest.request(request);\n }\n\n updateDefaultConnectionString(payload: TenantManagement.DefaultConnectionStringRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${payload.id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n params: { defaultConnectionString: payload.defaultConnectionString },\n };\n return this.rest.request(request);\n }\n\n deleteDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'DELETE',\n url,\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementService } from '../services/tenant-management.service';\nimport { ABP } from '@abp/ng.core';\n\n@State({\n name: 'TenantManagementState',\n defaults: { result: {}, selectedItem: {} } as TenantManagement.State,\n})\nexport class TenantManagementState {\n @Selector()\n static get({ result }: TenantManagement.State): ABP.BasicItem[] {\n return result.items || [];\n }\n\n @Selector()\n static getTenantsTotalCount({ result }: TenantManagement.State): number {\n return result.totalCount;\n }\n\n constructor(private tenantManagementService: TenantManagementService) {}\n\n @Action(GetTenants)\n get({ patchState }: StateContext, { payload }: GetTenants) {\n return this.tenantManagementService.getTenant(payload).pipe(\n tap(result =>\n patchState({\n result,\n }),\n ),\n );\n }\n\n @Action(GetTenantById)\n getById({ patchState }: StateContext, { payload }: GetTenantById) {\n return this.tenantManagementService.getTenantById(payload).pipe(\n tap(selectedItem =>\n patchState({\n selectedItem,\n }),\n ),\n );\n }\n\n @Action(DeleteTenant)\n delete({ dispatch }: StateContext, { payload }: DeleteTenant) {\n return this.tenantManagementService.deleteTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(CreateTenant)\n add({ dispatch }: StateContext, { payload }: CreateTenant) {\n return this.tenantManagementService.createTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(UpdateTenant)\n update({ dispatch, getState }: StateContext, { payload }: UpdateTenant) {\n return dispatch(new GetTenantById(payload.id)).pipe(\n switchMap(() => this.tenantManagementService.updateTenant({ ...getState().selectedItem, ...payload })),\n switchMap(() => dispatch(new GetTenants())),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable, Subject } from 'rxjs';\nimport { debounceTime, finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../../actions/tenant-management.actions';\nimport { TenantManagementService } from '../../services/tenant-management.service';\nimport { TenantManagementState } from '../../states/tenant-management.state';\n\ntype SelectedModalContent = {\n type: string;\n title: string;\n template: TemplateRef;\n};\n\n@Component({\n selector: 'abp-tenants',\n templateUrl: './tenants.component.html',\n})\nexport class TenantsComponent {\n @Select(TenantManagementState.get)\n data$: Observable;\n\n @Select(TenantManagementState.getTenantsTotalCount)\n totalCount$: Observable;\n\n selected: ABP.BasicItem;\n\n tenantForm: FormGroup;\n\n defaultConnectionStringForm: FormGroup;\n\n defaultConnectionString: string;\n\n isModalVisible: boolean;\n\n selectedModalContent = {} as SelectedModalContent;\n\n visibleFeatures: boolean = false;\n\n providerKey: string;\n\n _useSharedDatabase: boolean;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n get useSharedDatabase(): boolean {\n return this.defaultConnectionStringForm.get('useSharedDatabase').value;\n }\n\n get connectionString(): string {\n return this.defaultConnectionStringForm.get('defaultConnectionString').value;\n }\n\n @ViewChild('tenantModalTemplate', { static: false })\n tenantModalTemplate: TemplateRef;\n\n @ViewChild('connectionStringModalTemplate', { static: false })\n connectionStringModalTemplate: TemplateRef;\n\n constructor(\n private confirmationService: ConfirmationService,\n private tenantService: TenantManagementService,\n private fb: FormBuilder,\n private store: Store,\n ) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n private createTenantForm() {\n this.tenantForm = this.fb.group({\n name: [this.selected.name || '', [Validators.required, Validators.maxLength(256)]],\n });\n }\n\n private createDefaultConnectionStringForm() {\n this.defaultConnectionStringForm = this.fb.group({\n useSharedDatabase: this._useSharedDatabase,\n defaultConnectionString: [this.defaultConnectionString || ''],\n });\n }\n\n openModal(title: string, template: TemplateRef, type: string) {\n this.selectedModalContent = {\n title,\n template,\n type,\n };\n\n this.isModalVisible = true;\n }\n\n onEditConnectionString(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(\n pluck('TenantManagementState', 'selectedItem'),\n switchMap(selected => {\n this.selected = selected;\n return this.tenantService.getDefaultConnectionString(id);\n }),\n )\n .subscribe(fetchedConnectionString => {\n this._useSharedDatabase = fetchedConnectionString ? false : true;\n this.defaultConnectionString = fetchedConnectionString ? fetchedConnectionString : '';\n this.createDefaultConnectionStringForm();\n this.openModal('AbpTenantManagement::ConnectionStrings', this.connectionStringModalTemplate, 'saveConnStr');\n });\n }\n\n onAddTenant() {\n this.selected = {} as ABP.BasicItem;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::NewTenant', this.tenantModalTemplate, 'saveTenant');\n }\n\n onEditTenant(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(pluck('TenantManagementState', 'selectedItem'))\n .subscribe(selected => {\n this.selected = selected;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::Edit', this.tenantModalTemplate, 'saveTenant');\n });\n }\n\n save() {\n const { type } = this.selectedModalContent;\n if (!type) return;\n if (type === 'saveTenant') this.saveTenant();\n else if (type === 'saveConnStr') this.saveConnectionString();\n }\n\n saveConnectionString() {\n this.modalBusy = true;\n if (this.useSharedDatabase || (!this.useSharedDatabase && !this.connectionString)) {\n this.tenantService\n .deleteDefaultConnectionString(this.selected.id)\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n } else {\n this.tenantService\n .updateDefaultConnectionString({ id: this.selected.id, defaultConnectionString: this.connectionString })\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n }\n }\n\n saveTenant() {\n if (!this.tenantForm.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateTenant({ ...this.tenantForm.value, id: this.selected.id })\n : new CreateTenant(this.tenantForm.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpTenantManagement::TenantDeletionConfirmationMessage', 'AbpTenantManagement::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteTenant(id));\n this.modalBusy = false;\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetTenants(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetTenants } from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementState } from '../states/tenant-management.state';\n\n@Injectable()\nexport class TenantsResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const data = this.store.selectSnapshot(TenantManagementState.get);\n return data && data.length ? null : this.store.dispatch(new GetTenants());\n }\n}\n","import { AuthGuard, DynamicLayoutComponent, PermissionGuard } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { TenantsResolver } from './resolvers/tenants.resolver';\nimport { TenantsComponent } from './components/tenants/tenants.component';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'tenants', pathMatch: 'full' },\n {\n path: 'tenants',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpTenantManagement.Tenants' },\n children: [{ path: '', component: TenantsComponent, resolve: [TenantsResolver] }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [TenantsResolver],\n})\nexport class TenantManagementRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule, Provider } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxsModule } from '@ngxs/store';\nimport { TableModule } from 'primeng/table';\nimport { TenantsComponent } from './components/tenants/tenants.component';\nimport { TenantManagementState } from './states/tenant-management.state';\nimport { TenantManagementRoutingModule } from './tenant-management-routing.module';\nimport { FeatureManagementModule } from '@abp/ng.feature-management';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\n\n@NgModule({\n declarations: [TenantsComponent],\n imports: [\n TenantManagementRoutingModule,\n NgxsModule.forFeature([TenantManagementState]),\n NgxValidateCoreModule,\n CoreModule,\n TableModule,\n ThemeSharedModule,\n NgbDropdownModule,\n FeatureManagementModule,\n ],\n})\nexport class TenantManagementModule {}\n\nexport function TenantManagementProviders(): Provider[] {\n return [];\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const TENANT_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'AbpTenantManagement::Menu:TenantManagement',\n path: 'tenant-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-users',\n children: [\n {\n path: 'tenants',\n name: 'AbpTenantManagement::Tenants',\n order: 1,\n requiredPolicy: 'AbpTenantManagement.Tenants',\n },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","import { ABP } from '@abp/ng.core';\n\nexport namespace TenantManagement {\n export interface State {\n result: Response;\n selectedItem: Item;\n }\n\n export type Response = ABP.PagedResponse;\n\n export interface Item {\n id: string;\n name: string;\n }\n\n export interface AddRequest {\n name: string;\n }\n\n export interface UpdateRequest extends AddRequest {\n id: string;\n }\n\n export interface DefaultConnectionStringRequest {\n id: string;\n defaultConnectionString: string;\n }\n}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/tenant-management/fesm5/abp-ng.tenant-management.js b/npm/ng-packs/dist/tenant-management/fesm5/abp-ng.tenant-management.js index dcf09963b5..e880fdff71 100644 --- a/npm/ng-packs/dist/tenant-management/fesm5/abp-ng.tenant-management.js +++ b/npm/ng-packs/dist/tenant-management/fesm5/abp-ng.tenant-management.js @@ -1,6 +1,6 @@ -import { NgModule, Injectable, ɵɵdefineInjectable, ɵɵinject, Component, ViewChild } from '@angular/core'; import { RestService, DynamicLayoutComponent, AuthGuard, PermissionGuard, CoreModule } from '@abp/ng.core'; import { ConfirmationService, ThemeSharedModule } from '@abp/ng.theme.shared'; +import { Injectable, ɵɵdefineInjectable, ɵɵinject, Component, ViewChild, NgModule } from '@angular/core'; import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; import { Action, Selector, State, Store, Select, NgxsModule } from '@ngxs/store'; import { TableModule } from 'primeng/table'; @@ -12,31 +12,6 @@ import { RouterModule } from '@angular/router'; import { FeatureManagementModule } from '@abp/ng.feature-management'; import { NgxValidateCoreModule } from '@ngx-validate/core'; -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var RootTenantManagementModule = /** @class */ (function () { - function RootTenantManagementModule() { - } - /** - * @return {?} - */ - RootTenantManagementModule.forRoot = /** - * @return {?} - */ - function () { - return { - ngModule: RootTenantManagementModule, - providers: [], - }; - }; - RootTenantManagementModule.decorators = [ - { type: NgModule, args: [{},] } - ]; - return RootTenantManagementModule; -}()); - /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -939,6 +914,12 @@ var TenantManagementModule = /** @class */ (function () { ]; return TenantManagementModule; }()); +/** + * @return {?} + */ +function TenantManagementProviders() { + return []; +} /** * @fileoverview added by tsickle @@ -1070,5 +1051,5 @@ var TenantManagement; * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { CreateTenant, DeleteTenant, GetTenantById, GetTenants, RootTenantManagementModule, TENANT_MANAGEMENT_ROUTES, TenantManagementModule, TenantManagementService, TenantManagementState, TenantsComponent, TenantsResolver, UpdateTenant, TenantsComponent as ɵa, TenantManagementState as ɵb, TenantManagementService as ɵc, GetTenants as ɵd, GetTenantById as ɵe, CreateTenant as ɵf, UpdateTenant as ɵg, DeleteTenant as ɵh, TenantManagementRoutingModule as ɵj, TenantsResolver as ɵk }; +export { CreateTenant, DeleteTenant, GetTenantById, GetTenants, TENANT_MANAGEMENT_ROUTES, TenantManagementModule, TenantManagementProviders, TenantManagementService, TenantManagementState, TenantsComponent, TenantsResolver, UpdateTenant, TenantsComponent as ɵa, TenantManagementState as ɵb, TenantManagementService as ɵc, GetTenants as ɵd, GetTenantById as ɵe, CreateTenant as ɵf, UpdateTenant as ɵg, DeleteTenant as ɵh, TenantManagementRoutingModule as ɵj, TenantsResolver as ɵk }; //# sourceMappingURL=abp-ng.tenant-management.js.map diff --git a/npm/ng-packs/dist/tenant-management/fesm5/abp-ng.tenant-management.js.map b/npm/ng-packs/dist/tenant-management/fesm5/abp-ng.tenant-management.js.map index 51183ee214..66615132a4 100644 --- a/npm/ng-packs/dist/tenant-management/fesm5/abp-ng.tenant-management.js.map +++ b/npm/ng-packs/dist/tenant-management/fesm5/abp-ng.tenant-management.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.tenant-management.js","sources":["ng://@abp/ng.tenant-management/lib/root-tenant-management.module.ts","ng://@abp/ng.tenant-management/lib/actions/tenant-management.actions.ts","ng://@abp/ng.tenant-management/lib/services/tenant-management.service.ts","ng://@abp/ng.tenant-management/lib/states/tenant-management.state.ts","ng://@abp/ng.tenant-management/lib/components/tenants/tenants.component.ts","ng://@abp/ng.tenant-management/lib/resolvers/tenants.resolver.ts","ng://@abp/ng.tenant-management/lib/tenant-management-routing.module.ts","ng://@abp/ng.tenant-management/lib/tenant-management.module.ts","ng://@abp/ng.tenant-management/lib/constants/routes.ts","ng://@abp/ng.tenant-management/lib/models/tenant-management.ts"],"sourcesContent":["import { ModuleWithProviders, NgModule } from '@angular/core';\n\n@NgModule({})\nexport class RootTenantManagementModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: RootTenantManagementModule,\n providers: [],\n };\n }\n}\n","import { TenantManagement } from '../models/tenant-management';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetTenants {\n static readonly type = '[TenantManagement] Get Tenant';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetTenantById {\n static readonly type = '[TenantManagement] Get Tenant By Id';\n constructor(public payload: string) {}\n}\n\nexport class CreateTenant {\n static readonly type = '[TenantManagement] Create Tenant';\n constructor(public payload: TenantManagement.AddRequest) {}\n}\n\nexport class UpdateTenant {\n static readonly type = '[TenantManagement] Update Tenant';\n constructor(public payload: TenantManagement.UpdateRequest) {}\n}\n\nexport class DeleteTenant {\n static readonly type = '[TenantManagement] Delete Tenant';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { TenantManagement } from '../models/tenant-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TenantManagementService {\n constructor(private rest: RestService) {}\n\n getTenant(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/multi-tenancy/tenants',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getTenantById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteTenant(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createTenant(body: TenantManagement.AddRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/multi-tenancy/tenants`,\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateTenant(body: TenantManagement.UpdateRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'GET',\n responseType: Rest.ResponseType.Text,\n url,\n };\n return this.rest.request(request);\n }\n\n updateDefaultConnectionString(payload: TenantManagement.DefaultConnectionStringRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${payload.id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n params: { defaultConnectionString: payload.defaultConnectionString },\n };\n return this.rest.request(request);\n }\n\n deleteDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'DELETE',\n url,\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementService } from '../services/tenant-management.service';\nimport { ABP } from '@abp/ng.core';\n\n@State({\n name: 'TenantManagementState',\n defaults: { result: {}, selectedItem: {} } as TenantManagement.State,\n})\nexport class TenantManagementState {\n @Selector()\n static get({ result }: TenantManagement.State): ABP.BasicItem[] {\n return result.items || [];\n }\n\n @Selector()\n static getTenantsTotalCount({ result }: TenantManagement.State): number {\n return result.totalCount;\n }\n\n constructor(private tenantManagementService: TenantManagementService) {}\n\n @Action(GetTenants)\n get({ patchState }: StateContext, { payload }: GetTenants) {\n return this.tenantManagementService.getTenant(payload).pipe(\n tap(result =>\n patchState({\n result,\n }),\n ),\n );\n }\n\n @Action(GetTenantById)\n getById({ patchState }: StateContext, { payload }: GetTenantById) {\n return this.tenantManagementService.getTenantById(payload).pipe(\n tap(selectedItem =>\n patchState({\n selectedItem,\n }),\n ),\n );\n }\n\n @Action(DeleteTenant)\n delete({ dispatch }: StateContext, { payload }: DeleteTenant) {\n return this.tenantManagementService.deleteTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(CreateTenant)\n add({ dispatch }: StateContext, { payload }: CreateTenant) {\n return this.tenantManagementService.createTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(UpdateTenant)\n update({ dispatch, getState }: StateContext, { payload }: UpdateTenant) {\n return dispatch(new GetTenantById(payload.id)).pipe(\n switchMap(() => this.tenantManagementService.updateTenant({ ...getState().selectedItem, ...payload })),\n switchMap(() => dispatch(new GetTenants())),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable, Subject } from 'rxjs';\nimport { debounceTime, finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../../actions/tenant-management.actions';\nimport { TenantManagementService } from '../../services/tenant-management.service';\nimport { TenantManagementState } from '../../states/tenant-management.state';\n\ntype SelectedModalContent = {\n type: string;\n title: string;\n template: TemplateRef;\n};\n\n@Component({\n selector: 'abp-tenants',\n templateUrl: './tenants.component.html',\n})\nexport class TenantsComponent {\n @Select(TenantManagementState.get)\n data$: Observable;\n\n @Select(TenantManagementState.getTenantsTotalCount)\n totalCount$: Observable;\n\n selected: ABP.BasicItem;\n\n tenantForm: FormGroup;\n\n defaultConnectionStringForm: FormGroup;\n\n defaultConnectionString: string;\n\n isModalVisible: boolean;\n\n selectedModalContent = {} as SelectedModalContent;\n\n visibleFeatures: boolean = false;\n\n providerKey: string;\n\n _useSharedDatabase: boolean;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n get useSharedDatabase(): boolean {\n return this.defaultConnectionStringForm.get('useSharedDatabase').value;\n }\n\n get connectionString(): string {\n return this.defaultConnectionStringForm.get('defaultConnectionString').value;\n }\n\n @ViewChild('tenantModalTemplate', { static: false })\n tenantModalTemplate: TemplateRef;\n\n @ViewChild('connectionStringModalTemplate', { static: false })\n connectionStringModalTemplate: TemplateRef;\n\n constructor(\n private confirmationService: ConfirmationService,\n private tenantService: TenantManagementService,\n private fb: FormBuilder,\n private store: Store,\n ) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n private createTenantForm() {\n this.tenantForm = this.fb.group({\n name: [this.selected.name || '', [Validators.required, Validators.maxLength(256)]],\n });\n }\n\n private createDefaultConnectionStringForm() {\n this.defaultConnectionStringForm = this.fb.group({\n useSharedDatabase: this._useSharedDatabase,\n defaultConnectionString: [this.defaultConnectionString || ''],\n });\n }\n\n openModal(title: string, template: TemplateRef, type: string) {\n this.selectedModalContent = {\n title,\n template,\n type,\n };\n\n this.isModalVisible = true;\n }\n\n onEditConnectionString(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(\n pluck('TenantManagementState', 'selectedItem'),\n switchMap(selected => {\n this.selected = selected;\n return this.tenantService.getDefaultConnectionString(id);\n }),\n )\n .subscribe(fetchedConnectionString => {\n this._useSharedDatabase = fetchedConnectionString ? false : true;\n this.defaultConnectionString = fetchedConnectionString ? fetchedConnectionString : '';\n this.createDefaultConnectionStringForm();\n this.openModal('AbpTenantManagement::ConnectionStrings', this.connectionStringModalTemplate, 'saveConnStr');\n });\n }\n\n onAddTenant() {\n this.selected = {} as ABP.BasicItem;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::NewTenant', this.tenantModalTemplate, 'saveTenant');\n }\n\n onEditTenant(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(pluck('TenantManagementState', 'selectedItem'))\n .subscribe(selected => {\n this.selected = selected;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::Edit', this.tenantModalTemplate, 'saveTenant');\n });\n }\n\n save() {\n const { type } = this.selectedModalContent;\n if (!type) return;\n if (type === 'saveTenant') this.saveTenant();\n else if (type === 'saveConnStr') this.saveConnectionString();\n }\n\n saveConnectionString() {\n this.modalBusy = true;\n if (this.useSharedDatabase || (!this.useSharedDatabase && !this.connectionString)) {\n this.tenantService\n .deleteDefaultConnectionString(this.selected.id)\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n } else {\n this.tenantService\n .updateDefaultConnectionString({ id: this.selected.id, defaultConnectionString: this.connectionString })\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n }\n }\n\n saveTenant() {\n if (!this.tenantForm.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateTenant({ ...this.tenantForm.value, id: this.selected.id })\n : new CreateTenant(this.tenantForm.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpTenantManagement::TenantDeletionConfirmationMessage', 'AbpTenantManagement::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteTenant(id));\n this.modalBusy = false;\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetTenants(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetTenants } from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementState } from '../states/tenant-management.state';\n\n@Injectable()\nexport class TenantsResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const data = this.store.selectSnapshot(TenantManagementState.get);\n return data && data.length ? null : this.store.dispatch(new GetTenants());\n }\n}\n","import { AuthGuard, DynamicLayoutComponent, PermissionGuard } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { TenantsResolver } from './resolvers/tenants.resolver';\nimport { TenantsComponent } from './components/tenants/tenants.component';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'tenants', pathMatch: 'full' },\n {\n path: 'tenants',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpTenantManagement.Tenants' },\n children: [{ path: '', component: TenantsComponent, resolve: [TenantsResolver] }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [TenantsResolver],\n})\nexport class TenantManagementRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxsModule } from '@ngxs/store';\nimport { TableModule } from 'primeng/table';\nimport { TenantsComponent } from './components/tenants/tenants.component';\nimport { TenantManagementState } from './states/tenant-management.state';\nimport { TenantManagementRoutingModule } from './tenant-management-routing.module';\nimport { FeatureManagementModule } from '@abp/ng.feature-management';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\n\n@NgModule({\n declarations: [TenantsComponent],\n imports: [\n TenantManagementRoutingModule,\n NgxsModule.forFeature([TenantManagementState]),\n NgxValidateCoreModule,\n CoreModule,\n TableModule,\n ThemeSharedModule,\n NgbDropdownModule,\n FeatureManagementModule,\n ],\n})\nexport class TenantManagementModule {}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const TENANT_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'AbpTenantManagement::Menu:TenantManagement',\n path: 'tenant-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-users',\n children: [\n {\n path: 'tenants',\n name: 'AbpTenantManagement::Tenants',\n order: 1,\n requiredPolicy: 'AbpTenantManagement.Tenants',\n },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","import { ABP } from '@abp/ng.core';\n\nexport namespace TenantManagement {\n export interface State {\n result: Response;\n selectedItem: Item;\n }\n\n export type Response = ABP.PagedResponse;\n\n export interface Item {\n id: string;\n name: string;\n }\n\n export interface AddRequest {\n name: string;\n }\n\n export interface UpdateRequest extends AddRequest {\n id: string;\n }\n\n export interface DefaultConnectionStringRequest {\n id: string;\n defaultConnectionString: string;\n }\n}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.tenant-management.js","sources":["ng://@abp/ng.tenant-management/lib/actions/tenant-management.actions.ts","ng://@abp/ng.tenant-management/lib/services/tenant-management.service.ts","ng://@abp/ng.tenant-management/lib/states/tenant-management.state.ts","ng://@abp/ng.tenant-management/lib/components/tenants/tenants.component.ts","ng://@abp/ng.tenant-management/lib/resolvers/tenants.resolver.ts","ng://@abp/ng.tenant-management/lib/tenant-management-routing.module.ts","ng://@abp/ng.tenant-management/lib/tenant-management.module.ts","ng://@abp/ng.tenant-management/lib/constants/routes.ts","ng://@abp/ng.tenant-management/lib/models/tenant-management.ts"],"sourcesContent":["import { TenantManagement } from '../models/tenant-management';\nimport { ABP } from '@abp/ng.core';\n\nexport class GetTenants {\n static readonly type = '[TenantManagement] Get Tenant';\n constructor(public payload?: ABP.PageQueryParams) {}\n}\n\nexport class GetTenantById {\n static readonly type = '[TenantManagement] Get Tenant By Id';\n constructor(public payload: string) {}\n}\n\nexport class CreateTenant {\n static readonly type = '[TenantManagement] Create Tenant';\n constructor(public payload: TenantManagement.AddRequest) {}\n}\n\nexport class UpdateTenant {\n static readonly type = '[TenantManagement] Update Tenant';\n constructor(public payload: TenantManagement.UpdateRequest) {}\n}\n\nexport class DeleteTenant {\n static readonly type = '[TenantManagement] Delete Tenant';\n constructor(public payload: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { RestService, Rest, ABP } from '@abp/ng.core';\nimport { TenantManagement } from '../models/tenant-management';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TenantManagementService {\n constructor(private rest: RestService) {}\n\n getTenant(params = {} as ABP.PageQueryParams): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: '/api/multi-tenancy/tenants',\n params,\n };\n\n return this.rest.request(request);\n }\n\n getTenantById(id: string): Observable {\n const request: Rest.Request = {\n method: 'GET',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n deleteTenant(id: string): Observable {\n const request: Rest.Request = {\n method: 'DELETE',\n url: `/api/multi-tenancy/tenants/${id}`,\n };\n\n return this.rest.request(request);\n }\n\n createTenant(body: TenantManagement.AddRequest): Observable {\n const request: Rest.Request = {\n method: 'POST',\n url: `/api/multi-tenancy/tenants`,\n body,\n };\n\n return this.rest.request(request);\n }\n\n updateTenant(body: TenantManagement.UpdateRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${body.id}`;\n delete body.id;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n body,\n };\n\n return this.rest.request(request);\n }\n\n getDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'GET',\n responseType: Rest.ResponseType.Text,\n url,\n };\n return this.rest.request(request);\n }\n\n updateDefaultConnectionString(payload: TenantManagement.DefaultConnectionStringRequest): Observable {\n const url = `/api/multi-tenancy/tenants/${payload.id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'PUT',\n url,\n params: { defaultConnectionString: payload.defaultConnectionString },\n };\n return this.rest.request(request);\n }\n\n deleteDefaultConnectionString(id: string): Observable {\n const url = `/api/multi-tenancy/tenants/${id}/default-connection-string`;\n\n const request: Rest.Request = {\n method: 'DELETE',\n url,\n };\n return this.rest.request(request);\n }\n}\n","import { Action, Selector, State, StateContext } from '@ngxs/store';\nimport { switchMap, tap } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementService } from '../services/tenant-management.service';\nimport { ABP } from '@abp/ng.core';\n\n@State({\n name: 'TenantManagementState',\n defaults: { result: {}, selectedItem: {} } as TenantManagement.State,\n})\nexport class TenantManagementState {\n @Selector()\n static get({ result }: TenantManagement.State): ABP.BasicItem[] {\n return result.items || [];\n }\n\n @Selector()\n static getTenantsTotalCount({ result }: TenantManagement.State): number {\n return result.totalCount;\n }\n\n constructor(private tenantManagementService: TenantManagementService) {}\n\n @Action(GetTenants)\n get({ patchState }: StateContext, { payload }: GetTenants) {\n return this.tenantManagementService.getTenant(payload).pipe(\n tap(result =>\n patchState({\n result,\n }),\n ),\n );\n }\n\n @Action(GetTenantById)\n getById({ patchState }: StateContext, { payload }: GetTenantById) {\n return this.tenantManagementService.getTenantById(payload).pipe(\n tap(selectedItem =>\n patchState({\n selectedItem,\n }),\n ),\n );\n }\n\n @Action(DeleteTenant)\n delete({ dispatch }: StateContext, { payload }: DeleteTenant) {\n return this.tenantManagementService.deleteTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(CreateTenant)\n add({ dispatch }: StateContext, { payload }: CreateTenant) {\n return this.tenantManagementService.createTenant(payload).pipe(switchMap(() => dispatch(new GetTenants())));\n }\n\n @Action(UpdateTenant)\n update({ dispatch, getState }: StateContext, { payload }: UpdateTenant) {\n return dispatch(new GetTenantById(payload.id)).pipe(\n switchMap(() => this.tenantManagementService.updateTenant({ ...getState().selectedItem, ...payload })),\n switchMap(() => dispatch(new GetTenants())),\n );\n }\n}\n","import { ABP } from '@abp/ng.core';\nimport { ConfirmationService, Toaster } from '@abp/ng.theme.shared';\nimport { Component, TemplateRef, ViewChild } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable, Subject } from 'rxjs';\nimport { debounceTime, finalize, pluck, switchMap, take } from 'rxjs/operators';\nimport {\n CreateTenant,\n DeleteTenant,\n GetTenants,\n GetTenantById,\n UpdateTenant,\n} from '../../actions/tenant-management.actions';\nimport { TenantManagementService } from '../../services/tenant-management.service';\nimport { TenantManagementState } from '../../states/tenant-management.state';\n\ntype SelectedModalContent = {\n type: string;\n title: string;\n template: TemplateRef;\n};\n\n@Component({\n selector: 'abp-tenants',\n templateUrl: './tenants.component.html',\n})\nexport class TenantsComponent {\n @Select(TenantManagementState.get)\n data$: Observable;\n\n @Select(TenantManagementState.getTenantsTotalCount)\n totalCount$: Observable;\n\n selected: ABP.BasicItem;\n\n tenantForm: FormGroup;\n\n defaultConnectionStringForm: FormGroup;\n\n defaultConnectionString: string;\n\n isModalVisible: boolean;\n\n selectedModalContent = {} as SelectedModalContent;\n\n visibleFeatures: boolean = false;\n\n providerKey: string;\n\n _useSharedDatabase: boolean;\n\n pageQuery: ABP.PageQueryParams = {\n sorting: 'name',\n };\n\n loading: boolean = false;\n\n modalBusy: boolean = false;\n\n get useSharedDatabase(): boolean {\n return this.defaultConnectionStringForm.get('useSharedDatabase').value;\n }\n\n get connectionString(): string {\n return this.defaultConnectionStringForm.get('defaultConnectionString').value;\n }\n\n @ViewChild('tenantModalTemplate', { static: false })\n tenantModalTemplate: TemplateRef;\n\n @ViewChild('connectionStringModalTemplate', { static: false })\n connectionStringModalTemplate: TemplateRef;\n\n constructor(\n private confirmationService: ConfirmationService,\n private tenantService: TenantManagementService,\n private fb: FormBuilder,\n private store: Store,\n ) {}\n\n onSearch(value) {\n this.pageQuery.filter = value;\n this.get();\n }\n\n private createTenantForm() {\n this.tenantForm = this.fb.group({\n name: [this.selected.name || '', [Validators.required, Validators.maxLength(256)]],\n });\n }\n\n private createDefaultConnectionStringForm() {\n this.defaultConnectionStringForm = this.fb.group({\n useSharedDatabase: this._useSharedDatabase,\n defaultConnectionString: [this.defaultConnectionString || ''],\n });\n }\n\n openModal(title: string, template: TemplateRef, type: string) {\n this.selectedModalContent = {\n title,\n template,\n type,\n };\n\n this.isModalVisible = true;\n }\n\n onEditConnectionString(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(\n pluck('TenantManagementState', 'selectedItem'),\n switchMap(selected => {\n this.selected = selected;\n return this.tenantService.getDefaultConnectionString(id);\n }),\n )\n .subscribe(fetchedConnectionString => {\n this._useSharedDatabase = fetchedConnectionString ? false : true;\n this.defaultConnectionString = fetchedConnectionString ? fetchedConnectionString : '';\n this.createDefaultConnectionStringForm();\n this.openModal('AbpTenantManagement::ConnectionStrings', this.connectionStringModalTemplate, 'saveConnStr');\n });\n }\n\n onAddTenant() {\n this.selected = {} as ABP.BasicItem;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::NewTenant', this.tenantModalTemplate, 'saveTenant');\n }\n\n onEditTenant(id: string) {\n this.store\n .dispatch(new GetTenantById(id))\n .pipe(pluck('TenantManagementState', 'selectedItem'))\n .subscribe(selected => {\n this.selected = selected;\n this.createTenantForm();\n this.openModal('AbpTenantManagement::Edit', this.tenantModalTemplate, 'saveTenant');\n });\n }\n\n save() {\n const { type } = this.selectedModalContent;\n if (!type) return;\n if (type === 'saveTenant') this.saveTenant();\n else if (type === 'saveConnStr') this.saveConnectionString();\n }\n\n saveConnectionString() {\n this.modalBusy = true;\n if (this.useSharedDatabase || (!this.useSharedDatabase && !this.connectionString)) {\n this.tenantService\n .deleteDefaultConnectionString(this.selected.id)\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n } else {\n this.tenantService\n .updateDefaultConnectionString({ id: this.selected.id, defaultConnectionString: this.connectionString })\n .pipe(\n take(1),\n finalize(() => (this.modalBusy = false)),\n )\n .subscribe(() => {\n this.isModalVisible = false;\n });\n }\n }\n\n saveTenant() {\n if (!this.tenantForm.valid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n this.selected.id\n ? new UpdateTenant({ ...this.tenantForm.value, id: this.selected.id })\n : new CreateTenant(this.tenantForm.value),\n )\n .subscribe(() => {\n this.modalBusy = false;\n this.isModalVisible = false;\n });\n }\n\n delete(id: string, name: string) {\n this.confirmationService\n .warn('AbpTenantManagement::TenantDeletionConfirmationMessage', 'AbpTenantManagement::AreYouSure', {\n messageLocalizationParams: [name],\n })\n .subscribe((status: Toaster.Status) => {\n if (status === Toaster.Status.confirm) {\n this.store.dispatch(new DeleteTenant(id));\n this.modalBusy = false;\n }\n });\n }\n\n onPageChange(data) {\n this.pageQuery.skipCount = data.first;\n this.pageQuery.maxResultCount = data.rows;\n\n this.get();\n }\n\n get() {\n this.loading = true;\n this.store\n .dispatch(new GetTenants(this.pageQuery))\n .pipe(finalize(() => (this.loading = false)))\n .subscribe();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Resolve } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { GetTenants } from '../actions/tenant-management.actions';\nimport { TenantManagement } from '../models/tenant-management';\nimport { TenantManagementState } from '../states/tenant-management.state';\n\n@Injectable()\nexport class TenantsResolver implements Resolve {\n constructor(private store: Store) {}\n\n resolve() {\n const data = this.store.selectSnapshot(TenantManagementState.get);\n return data && data.length ? null : this.store.dispatch(new GetTenants());\n }\n}\n","import { AuthGuard, DynamicLayoutComponent, PermissionGuard } from '@abp/ng.core';\nimport { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { TenantsResolver } from './resolvers/tenants.resolver';\nimport { TenantsComponent } from './components/tenants/tenants.component';\n\nconst routes: Routes = [\n { path: '', redirectTo: 'tenants', pathMatch: 'full' },\n {\n path: 'tenants',\n component: DynamicLayoutComponent,\n canActivate: [AuthGuard, PermissionGuard],\n data: { requiredPolicy: 'AbpTenantManagement.Tenants' },\n children: [{ path: '', component: TenantsComponent, resolve: [TenantsResolver] }],\n },\n];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule],\n providers: [TenantsResolver],\n})\nexport class TenantManagementRoutingModule {}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule, Provider } from '@angular/core';\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxsModule } from '@ngxs/store';\nimport { TableModule } from 'primeng/table';\nimport { TenantsComponent } from './components/tenants/tenants.component';\nimport { TenantManagementState } from './states/tenant-management.state';\nimport { TenantManagementRoutingModule } from './tenant-management-routing.module';\nimport { FeatureManagementModule } from '@abp/ng.feature-management';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\n\n@NgModule({\n declarations: [TenantsComponent],\n imports: [\n TenantManagementRoutingModule,\n NgxsModule.forFeature([TenantManagementState]),\n NgxValidateCoreModule,\n CoreModule,\n TableModule,\n ThemeSharedModule,\n NgbDropdownModule,\n FeatureManagementModule,\n ],\n})\nexport class TenantManagementModule {}\n\nexport function TenantManagementProviders(): Provider[] {\n return [];\n}\n","import { ABP, eLayoutType } from '@abp/ng.core';\n\nexport const TENANT_MANAGEMENT_ROUTES = {\n routes: [\n {\n name: 'AbpTenantManagement::Menu:TenantManagement',\n path: 'tenant-management',\n parentName: 'AbpUiNavigation::Menu:Administration',\n layout: eLayoutType.application,\n iconClass: 'fa fa-users',\n children: [\n {\n path: 'tenants',\n name: 'AbpTenantManagement::Tenants',\n order: 1,\n requiredPolicy: 'AbpTenantManagement.Tenants',\n },\n ],\n },\n ] as ABP.FullRoute[],\n settings: [],\n};\n","import { ABP } from '@abp/ng.core';\n\nexport namespace TenantManagement {\n export interface State {\n result: Response;\n selectedItem: Item;\n }\n\n export type Response = ABP.PagedResponse;\n\n export interface Item {\n id: string;\n name: string;\n }\n\n export interface AddRequest {\n name: string;\n }\n\n export interface UpdateRequest extends AddRequest {\n id: string;\n }\n\n export interface DefaultConnectionStringRequest {\n id: string;\n defaultConnectionString: string;\n }\n}\n"],"names":["tslib_1.__decorate"],"mappings":";;;;;;;;;;;;;;;;;;AAGA;IAEE,oBAAmB,OAA6B;QAA7B,YAAO,GAAP,OAAO,CAAsB;KAAI;IADpC,eAAI,GAAG,+BAA+B,CAAC;IAEzD,iBAAC;CAHD,IAGC;;;IAFC,gBAAuD;;IAC3C,6BAAoC;;AAGlD;IAEE,uBAAmB,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;KAAI;IADtB,kBAAI,GAAG,qCAAqC,CAAC;IAE/D,oBAAC;CAHD,IAGC;;;IAFC,mBAA6D;;IACjD,gCAAsB;;AAGpC;IAEE,sBAAmB,OAAoC;QAApC,YAAO,GAAP,OAAO,CAA6B;KAAI;IAD3C,iBAAI,GAAG,kCAAkC,CAAC;IAE5D,mBAAC;CAHD,IAGC;;;IAFC,kBAA0D;;IAC9C,+BAA2C;;AAGzD;IAEE,sBAAmB,OAAuC;QAAvC,YAAO,GAAP,OAAO,CAAgC;KAAI;IAD9C,iBAAI,GAAG,kCAAkC,CAAC;IAE5D,mBAAC;CAHD,IAGC;;;IAFC,kBAA0D;;IAC9C,+BAA8C;;AAG5D;IAEE,sBAAmB,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;KAAI;IADtB,iBAAI,GAAG,kCAAkC,CAAC;IAE5D,mBAAC;CAHD,IAGC;;;IAFC,kBAA0D;;IAC9C,+BAAsB;;;;;;;ACzBpC;IASE,iCAAoB,IAAiB;QAAjB,SAAI,GAAJ,IAAI,CAAa;KAAI;;;;;IAEzC,2CAAS;;;;IAAT,UAAU,MAAkC;QAAlC,uBAAA,EAAA,4BAAS,EAAE,EAAuB;;YACpC,OAAO,GAAuB;YAClC,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,4BAA4B;YACjC,MAAM,QAAA;SACP;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAkC,OAAO,CAAC,CAAC;KACpE;;;;;IAED,+CAAa;;;;IAAb,UAAc,EAAU;;YAChB,OAAO,GAAuB;YAClC,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,gCAA8B,EAAI;SACxC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAsB,OAAO,CAAC,CAAC;KACxD;;;;;IAED,8CAAY;;;;IAAZ,UAAa,EAAU;;YACf,OAAO,GAAuB;YAClC,MAAM,EAAE,QAAQ;YAChB,GAAG,EAAE,gCAA8B,EAAI;SACxC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAa,OAAO,CAAC,CAAC;KAC/C;;;;;IAED,8CAAY;;;;IAAZ,UAAa,IAAiC;;YACtC,OAAO,GAA8C;YACzD,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,4BAA4B;YACjC,IAAI,MAAA;SACL;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA6C,OAAO,CAAC,CAAC;KAC/E;;;;;IAED,8CAAY;;;;IAAZ,UAAa,IAAoC;;YACzC,GAAG,GAAG,gCAA8B,IAAI,CAAC,EAAI;QACnD,OAAO,IAAI,CAAC,EAAE,CAAC;;YAET,OAAO,GAAiD;YAC5D,MAAM,EAAE,KAAK;YACb,GAAG,KAAA;YACH,IAAI,MAAA;SACL;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA6C,OAAO,CAAC,CAAC;KAC/E;;;;;IAED,4DAA0B;;;;IAA1B,UAA2B,EAAU;;YAC7B,GAAG,GAAG,gCAA8B,EAAE,+BAA4B;;YAElE,OAAO,GAAkE;YAC7E,MAAM,EAAE,KAAK;YACb,YAAY;YACZ,GAAG,KAAA;SACJ;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAA0D,OAAO,CAAC,CAAC;KAC5F;;;;;IAED,+DAA6B;;;;IAA7B,UAA8B,OAAwD;;YAC9E,GAAG,GAAG,gCAA8B,OAAO,CAAC,EAAE,+BAA4B;;YAE1E,OAAO,GAAkE;YAC7E,MAAM,EAAE,KAAK;YACb,GAAG,KAAA;YACH,MAAM,EAAE,EAAE,uBAAuB,EAAE,OAAO,CAAC,uBAAuB,EAAE;SACrE;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAuD,OAAO,CAAC,CAAC;KACzF;;;;;IAED,+DAA6B;;;;IAA7B,UAA8B,EAAU;;YAChC,GAAG,GAAG,gCAA8B,EAAE,+BAA4B;;YAElE,OAAO,GAAkE;YAC7E,MAAM,EAAE,QAAQ;YAChB,GAAG,KAAA;SACJ;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAuD,OAAO,CAAC,CAAC;KACzF;;gBAvFF,UAAU,SAAC;oBACV,UAAU,EAAE,MAAM;iBACnB;;;;gBALQ,WAAW;;;kCAFpB;CAKA,IAwFC;;;;;;IApFa,uCAAyB;;;;;;;;ICmBrC,+BAAoB,uBAAgD;QAAhD,4BAAuB,GAAvB,uBAAuB,CAAyB;KAAI;;;;;IATjE,yBAAG;;;;IAAV,UAAW,EAAkC;YAAhC,kBAAM;QACjB,OAAO,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;KAC3B;;;;;IAGM,0CAAoB;;;;IAA3B,UAA4B,EAAkC;YAAhC,kBAAM;QAClC,OAAO,MAAM,CAAC,UAAU,CAAC;KAC1B;;;;;;IAKD,mCAAG;;;;;IAAH,UAAI,EAAoD,EAAE,EAAuB;YAA3E,0BAAU;YAA4C,oBAAO;QACjE,OAAO,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CACzD,GAAG;;;;QAAC,UAAA,MAAM;YACR,OAAA,UAAU,CAAC;gBACT,MAAM,QAAA;aACP,CAAC;SAAA,EACH,CACF,CAAC;KACH;;;;;;IAGD,uCAAO;;;;;IAAP,UAAQ,EAAoD,EAAE,EAA0B;YAA9E,0BAAU;YAA4C,oBAAO;QACrE,OAAO,IAAI,CAAC,uBAAuB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,CAC7D,GAAG;;;;QAAC,UAAA,YAAY;YACd,OAAA,UAAU,CAAC;gBACT,YAAY,cAAA;aACb,CAAC;SAAA,EACH,CACF,CAAC;KACH;;;;;;IAGD,sCAAM;;;;;IAAN,UAAO,EAAkD,EAAE,EAAyB;YAA3E,sBAAQ;YAA4C,oBAAO;QAClE,OAAO,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS;;;QAAC,cAAM,OAAA,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC,GAAA,EAAC,CAAC,CAAC;KAC7G;;;;;;IAGD,mCAAG;;;;;IAAH,UAAI,EAAkD,EAAE,EAAyB;YAA3E,sBAAQ;YAA4C,oBAAO;QAC/D,OAAO,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS;;;QAAC,cAAM,OAAA,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC,GAAA,EAAC,CAAC,CAAC;KAC7G;;;;;;IAGD,sCAAM;;;;;IAAN,UAAO,EAA4D,EAAE,EAAyB;QAD9F,iBAMC;YALQ,sBAAQ,EAAE,sBAAQ;YAA4C,oBAAO;QAC5E,OAAO,QAAQ,CAAC,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CACjD,SAAS;;;QAAC,cAAM,OAAA,KAAI,CAAC,uBAAuB,CAAC,YAAY,cAAM,QAAQ,EAAE,CAAC,YAAY,EAAK,OAAO,EAAG,GAAA,EAAC,EACtG,SAAS;;;QAAC,cAAM,OAAA,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC,GAAA,EAAC,CAC5C,CAAC;KACH;IArCDA;QADC,MAAM,CAAC,UAAU,CAAC;;iDACoD,UAAU;;oDAQhF;IAGDA;QADC,MAAM,CAAC,aAAa,CAAC;;iDACqD,aAAa;;wDAQvF;IAGDA;QADC,MAAM,CAAC,YAAY,CAAC;;iDACmD,YAAY;;uDAEnF;IAGDA;QADC,MAAM,CAAC,YAAY,CAAC;;iDACgD,YAAY;;oDAEhF;IAGDA;QADC,MAAM,CAAC,YAAY,CAAC;;iDAC6D,YAAY;;uDAK7F;IAjDDA;QADC,QAAQ,EAAE;;;;0CAGV;IAGDA;QADC,QAAQ,EAAE;;;;2DAGV;IATU,qBAAqB;QAJjC,KAAK,CAAyB;YAC7B,IAAI,EAAE,uBAAuB;YAC7B,QAAQ,qBAAE,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,EAA0B;SACrE,CAAC;yCAY6C,uBAAuB;OAXzD,qBAAqB,CAoDjC;IAAD,4BAAC;CAAA,IAAA;;;;;;IAzCa,wDAAwD;;;;;;;;IC8CpE,0BACU,mBAAwC,EACxC,aAAsC,EACtC,EAAe,EACf,KAAY;QAHZ,wBAAmB,GAAnB,mBAAmB,CAAqB;QACxC,kBAAa,GAAb,aAAa,CAAyB;QACtC,OAAE,GAAF,EAAE,CAAa;QACf,UAAK,GAAL,KAAK,CAAO;QAlCtB,yBAAoB,sBAAG,EAAE,EAAwB,CAAC;QAElD,oBAAe,GAAY,KAAK,CAAC;QAMjC,cAAS,GAAwB;YAC/B,OAAO,EAAE,MAAM;SAChB,CAAC;QAEF,YAAO,GAAY,KAAK,CAAC;QAEzB,cAAS,GAAY,KAAK,CAAC;KAqBvB;IAnBJ,sBAAI,+CAAiB;;;;QAArB;YACE,OAAO,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,KAAK,CAAC;SACxE;;;OAAA;IAED,sBAAI,8CAAgB;;;;QAApB;YACE,OAAO,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,KAAK,CAAC;SAC9E;;;OAAA;;;;;IAeD,mCAAQ;;;;IAAR,UAAS,KAAK;QACZ,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,GAAG,EAAE,CAAC;KACZ;;;;;IAEO,2CAAgB;;;;IAAxB;QACE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YAC9B,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;SACnF,CAAC,CAAC;KACJ;;;;;IAEO,4DAAiC;;;;IAAzC;QACE,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YAC/C,iBAAiB,EAAE,IAAI,CAAC,kBAAkB;YAC1C,uBAAuB,EAAE,CAAC,IAAI,CAAC,uBAAuB,IAAI,EAAE,CAAC;SAC9D,CAAC,CAAC;KACJ;;;;;;;IAED,oCAAS;;;;;;IAAT,UAAU,KAAa,EAAE,QAA0B,EAAE,IAAY;QAC/D,IAAI,CAAC,oBAAoB,GAAG;YAC1B,KAAK,OAAA;YACL,QAAQ,UAAA;YACR,IAAI,MAAA;SACL,CAAC;QAEF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;KAC5B;;;;;IAED,iDAAsB;;;;IAAtB,UAAuB,EAAU;QAAjC,iBAgBC;QAfC,IAAI,CAAC,KAAK;aACP,QAAQ,CAAC,IAAI,aAAa,CAAC,EAAE,CAAC,CAAC;aAC/B,IAAI,CACH,KAAK,CAAC,uBAAuB,EAAE,cAAc,CAAC,EAC9C,SAAS;;;;QAAC,UAAA,QAAQ;YAChB,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACzB,OAAO,KAAI,CAAC,aAAa,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;SAC1D,EAAC,CACH;aACA,SAAS;;;;QAAC,UAAA,uBAAuB;YAChC,KAAI,CAAC,kBAAkB,GAAG,uBAAuB,GAAG,KAAK,GAAG,IAAI,CAAC;YACjE,KAAI,CAAC,uBAAuB,GAAG,uBAAuB,GAAG,uBAAuB,GAAG,EAAE,CAAC;YACtF,KAAI,CAAC,iCAAiC,EAAE,CAAC;YACzC,KAAI,CAAC,SAAS,CAAC,wCAAwC,EAAE,KAAI,CAAC,6BAA6B,EAAE,aAAa,CAAC,CAAC;SAC7G,EAAC,CAAC;KACN;;;;IAED,sCAAW;;;IAAX;QACE,IAAI,CAAC,QAAQ,sBAAG,EAAE,EAAiB,CAAC;QACpC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,SAAS,CAAC,gCAAgC,EAAE,IAAI,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC;KAC1F;;;;;IAED,uCAAY;;;;IAAZ,UAAa,EAAU;QAAvB,iBASC;QARC,IAAI,CAAC,KAAK;aACP,QAAQ,CAAC,IAAI,aAAa,CAAC,EAAE,CAAC,CAAC;aAC/B,IAAI,CAAC,KAAK,CAAC,uBAAuB,EAAE,cAAc,CAAC,CAAC;aACpD,SAAS;;;;QAAC,UAAA,QAAQ;YACjB,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACzB,KAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,KAAI,CAAC,SAAS,CAAC,2BAA2B,EAAE,KAAI,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC;SACrF,EAAC,CAAC;KACN;;;;IAED,+BAAI;;;IAAJ;QACU,IAAA,qCAAI;QACZ,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,IAAI,IAAI,KAAK,YAAY;YAAE,IAAI,CAAC,UAAU,EAAE,CAAC;aACxC,IAAI,IAAI,KAAK,aAAa;YAAE,IAAI,CAAC,oBAAoB,EAAE,CAAC;KAC9D;;;;IAED,+CAAoB;;;IAApB;QAAA,iBAuBC;QAtBC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,IAAI,CAAC,iBAAiB,KAAK,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE;YACjF,IAAI,CAAC,aAAa;iBACf,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;iBAC/C,IAAI,CACH,IAAI,CAAC,CAAC,CAAC,EACP,QAAQ;;;YAAC,cAAM,QAAC,KAAI,CAAC,SAAS,GAAG,KAAK,IAAC,EAAC,CACzC;iBACA,SAAS;;;YAAC;gBACT,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;aAC7B,EAAC,CAAC;SACN;aAAM;YACL,IAAI,CAAC,aAAa;iBACf,6BAA6B,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,uBAAuB,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;iBACvG,IAAI,CACH,IAAI,CAAC,CAAC,CAAC,EACP,QAAQ;;;YAAC,cAAM,QAAC,KAAI,CAAC,SAAS,GAAG,KAAK,IAAC,EAAC,CACzC;iBACA,SAAS;;;YAAC;gBACT,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;aAC7B,EAAC,CAAC;SACN;KACF;;;;IAED,qCAAU;;;IAAV;QAAA,iBAcC;QAbC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK;YAAE,OAAO;QACnC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,IAAI,CAAC,KAAK;aACP,QAAQ,CACP,IAAI,CAAC,QAAQ,CAAC,EAAE;cACZ,IAAI,YAAY,cAAM,IAAI,CAAC,UAAU,CAAC,KAAK,IAAE,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAG;cACpE,IAAI,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAC5C;aACA,SAAS;;;QAAC;YACT,KAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;SAC7B,EAAC,CAAC;KACN;;;;;;IAED,iCAAM;;;;;IAAN,UAAO,EAAU,EAAE,IAAY;QAA/B,iBAWC;QAVC,IAAI,CAAC,mBAAmB;aACrB,IAAI,CAAC,wDAAwD,EAAE,iCAAiC,EAAE;YACjG,yBAAyB,EAAE,CAAC,IAAI,CAAC;SAClC,CAAC;aACD,SAAS;;;;QAAC,UAAC,MAAsB;YAChC,IAAI,MAAM,8BAA6B;gBACrC,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC1C,KAAI,CAAC,SAAS,GAAG,KAAK,CAAC;aACxB;SACF,EAAC,CAAC;KACN;;;;;IAED,uCAAY;;;;IAAZ,UAAa,IAAI;QACf,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;QACtC,IAAI,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC;QAE1C,IAAI,CAAC,GAAG,EAAE,CAAC;KACZ;;;;IAED,8BAAG;;;IAAH;QAAA,iBAMC;QALC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,KAAK;aACP,QAAQ,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACxC,IAAI,CAAC,QAAQ;;;QAAC,cAAM,QAAC,KAAI,CAAC,OAAO,GAAG,KAAK,IAAC,EAAC,CAAC;aAC5C,SAAS,EAAE,CAAC;KAChB;;gBAnMF,SAAS,SAAC;oBACT,QAAQ,EAAE,aAAa;oBACvB,22LAAuC;iBACxC;;;;gBAzBQ,mBAAmB;gBAanB,uBAAuB;gBAXvB,WAAW;gBACH,KAAK;;;sCAgEnB,SAAS,SAAC,qBAAqB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;gDAGlD,SAAS,SAAC,+BAA+B,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;;IA1C7DA;QADC,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC;kCAC3B,UAAU;mDAAkB;IAGnCA;QADC,MAAM,CAAC,qBAAqB,CAAC,oBAAoB,CAAC;kCACtC,UAAU;yDAAS;IA2LlC,uBAAC;CApMD,IAoMC;;;IA/LC,iCACmC;;IAEnC,uCACgC;;IAEhC,oCAAwB;;IAExB,sCAAsB;;IAEtB,uDAAuC;;IAEvC,mDAAgC;;IAEhC,0CAAwB;;IAExB,gDAAkD;;IAElD,2CAAiC;;IAEjC,uCAAoB;;IAEpB,8CAA4B;;IAE5B,qCAEE;;IAEF,mCAAyB;;IAEzB,qCAA2B;;IAU3B,+CACsC;;IAEtC,yDACgD;;;;;IAG9C,+CAAgD;;;;;IAChD,yCAA8C;;;;;IAC9C,8BAAuB;;;;;IACvB,iCAAoB;;;;;;;AC9ExB;IASE,yBAAoB,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;KAAI;;;;IAEpC,iCAAO;;;IAAP;;YACQ,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,qBAAqB,CAAC,GAAG,CAAC;QACjE,OAAO,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC,CAAC;KAC3E;;gBAPF,UAAU;;;;gBALF,KAAK;;IAad,sBAAC;CARD,IAQC;;;;;;IANa,gCAAoB;;;;;;;ACTlC,SAYU,EAAE,cAAc,EAAE,6BAA6B,EAAE;;IANrD,MAAM,GAAW;IACrB,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE;IACtD;QACE,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,sBAAsB;QACjC,WAAW,EAAE,CAAC,SAAS,EAAE,eAAe,CAAC;QACzC,IAAI,IAAmD;QACvD,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;KAClF;CACF;AAED;IAAA;KAK6C;;gBAL5C,QAAQ,SAAC;oBACR,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBACxC,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,SAAS,EAAE,CAAC,eAAe,CAAC;iBAC7B;;IAC2C,oCAAC;CAL7C;;;;;;ACjBA;IAYA;KAasC;;gBAbrC,QAAQ,SAAC;oBACR,YAAY,EAAE,CAAC,gBAAgB,CAAC;oBAChC,OAAO,EAAE;wBACP,6BAA6B;wBAC7B,UAAU,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC;wBAC9C,qBAAqB;wBACrB,UAAU;wBACV,WAAW;wBACX,iBAAiB;wBACjB,iBAAiB;wBACjB,uBAAuB;qBACxB;iBACF;;IACoC,6BAAC;CAbtC,IAasC;;;;AAEtC,SAAgB,yBAAyB;IACvC,OAAO,EAAE,CAAC;CACX;;;;;;;;;;;;;;;;;AC3BD,IAAa,wBAAwB,GAAG;IACtC,MAAM,qBAAE;QACN;YACE,IAAI,EAAE,4CAA4C;YAClD,IAAI,EAAE,mBAAmB;YACzB,UAAU,EAAE,sCAAsC;YAClD,MAAM;YACN,SAAS,EAAE,aAAa;YACxB,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,8BAA8B;oBACpC,KAAK,EAAE,CAAC;oBACR,cAAc,EAAE,6BAA6B;iBAC9C;aACF;SACF;KACF,EAAmB;IACpB,QAAQ,EAAE,EAAE;CACb;;;;;;;;;;;ACnBD,IAAiB,gBAAgB,CAyBhC;AAzBD,WAAiB,gBAAgB;;;;IAC/B,oBAGC;;;;QAFC,uBAAiB;;QACjB,6BAAmB;;;;;IAKrB,mBAGC;;;;QAFC,kBAAW;;QACX,oBAAa;;;;;IAGf,yBAEC;;;;QADC,0BAAa;;;;;IAGf,4BAEC;;;;QADC,2BAAW;;;;;IAGb,6CAGC;;;;QAFC,4CAAW;;QACX,iEAAgC;;CAEnC,EAzBgB,gBAAgB,KAAhB,gBAAgB,QAyBhC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/npm/ng-packs/dist/tenant-management/lib/root-tenant-management.module.d.ts b/npm/ng-packs/dist/tenant-management/lib/root-tenant-management.module.d.ts deleted file mode 100644 index 8f90a784a8..0000000000 --- a/npm/ng-packs/dist/tenant-management/lib/root-tenant-management.module.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { ModuleWithProviders } from '@angular/core'; -export declare class RootTenantManagementModule { - static forRoot(): ModuleWithProviders; -} diff --git a/npm/ng-packs/dist/tenant-management/lib/tenant-management.module.d.ts b/npm/ng-packs/dist/tenant-management/lib/tenant-management.module.d.ts index 07e1370976..e58a5a9c57 100644 --- a/npm/ng-packs/dist/tenant-management/lib/tenant-management.module.d.ts +++ b/npm/ng-packs/dist/tenant-management/lib/tenant-management.module.d.ts @@ -1,2 +1,4 @@ +import { Provider } from '@angular/core'; export declare class TenantManagementModule { } +export declare function TenantManagementProviders(): Provider[]; diff --git a/npm/ng-packs/dist/tenant-management/public-api.d.ts b/npm/ng-packs/dist/tenant-management/public-api.d.ts index 6b2ae2d388..9bae9a9edb 100644 --- a/npm/ng-packs/dist/tenant-management/public-api.d.ts +++ b/npm/ng-packs/dist/tenant-management/public-api.d.ts @@ -1,4 +1,3 @@ -export * from './lib/root-tenant-management.module'; export * from './lib/tenant-management.module'; export * from './lib/actions'; export * from './lib/components'; diff --git a/npm/ng-packs/dist/theme-basic/README.md b/npm/ng-packs/dist/theme-basic/README.md deleted file mode 100644 index fc9a74c13d..0000000000 --- a/npm/ng-packs/dist/theme-basic/README.md +++ /dev/null @@ -1 +0,0 @@ -

@abp/ng.theme.basic

diff --git a/npm/ng-packs/dist/theme-basic/abp-ng.theme.basic.d.ts b/npm/ng-packs/dist/theme-basic/abp-ng.theme.basic.d.ts deleted file mode 100644 index ba277e59d0..0000000000 --- a/npm/ng-packs/dist/theme-basic/abp-ng.theme.basic.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -/** - * Generated bundle index. Do not edit. - */ -export * from './public-api'; -export { AddNavigationElement as ɵg, RemoveNavigationElementByName as ɵh } from './lib/actions/layout.actions'; -export { AccountLayoutComponent as ɵc } from './lib/components/account-layout/account-layout.component'; -export { ApplicationLayoutComponent as ɵa } from './lib/components/application-layout/application-layout.component'; -export { EmptyLayoutComponent as ɵd } from './lib/components/empty-layout/empty-layout.component'; -export { LayoutComponent as ɵe } from './lib/components/layout/layout.component'; -export { Layout as ɵi } from './lib/models/layout'; -export { LayoutState as ɵb } from './lib/states'; -export { LayoutState as ɵf } from './lib/states/layout.state'; diff --git a/npm/ng-packs/dist/theme-basic/abp-ng.theme.basic.metadata.json b/npm/ng-packs/dist/theme-basic/abp-ng.theme.basic.metadata.json deleted file mode 100644 index d6b2402cd2..0000000000 --- a/npm/ng-packs/dist/theme-basic/abp-ng.theme.basic.metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"__symbolic":"module","version":4,"exports":[{"from":"./lib/layout.state"},{"from":"./lib/application-layout/application-layout.component"},{"from":"./lib/empty-layout/empty-layout.component"}],"metadata":{"LAYOUTS":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵd"}],"ThemeBasicModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":15,"character":1},"arguments":[{"declarations":[{"__symbolic":"spread","expression":{"__symbolic":"reference","name":"LAYOUTS"}},{"__symbolic":"reference","name":"ɵe"}],"imports":[{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":18,"character":4},{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"ThemeSharedModule","line":19,"character":4},{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbCollapseModule","line":20,"character":4},{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbDropdownModule","line":21,"character":4},{"__symbolic":"reference","module":"primeng/toast","name":"ToastModule","line":22,"character":4},{"__symbolic":"reference","module":"@ngx-validate/core","name":"NgxValidateCoreModule","line":23,"character":4},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"NgxsModule","line":24,"character":4},"member":"forFeature"},"arguments":[[{"__symbolic":"reference","name":"ɵf"}]]}],"exports":[{"__symbolic":"spread","expression":{"__symbolic":"reference","name":"LAYOUTS"}}],"entryComponents":[{"__symbolic":"spread","expression":{"__symbolic":"reference","name":"LAYOUTS"}}]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":32,"character":1},"arguments":[{"selector":"abp-layout-application","template":"\n
\n\n
    \n \n
\n\n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n"}]}],"members":{"routes$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":40,"character":3},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ConfigState","line":40,"character":10},"member":"getOne"},"arguments":["routes"]}]}]}],"currentUser$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":43,"character":3},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ConfigState","line":43,"character":10},"member":"getOne"},"arguments":["currentUser"]}]}]}],"languages$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":46,"character":3},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ConfigState","line":46,"character":10},"member":"getDeep"},"arguments":["localization.languages"]}]}]}],"navElements$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":49,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵb"},"member":"getNavigationElements"}]}]}],"currentUserRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":52,"character":3},"arguments":["currentUser",{"static":false,"read":{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":52,"character":51}}]}]}],"languageRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":55,"character":3},"arguments":["language",{"static":false,"read":{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":55,"character":48}}]}]}],"navbarRootDropdowns":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChildren","line":58,"character":3},"arguments":["navbarRootDropdown",{"read":{"__symbolic":"reference","module":"@ng-bootstrap/ng-bootstrap","name":"NgbDropdown","line":58,"character":46}}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":96,"character":29},{"__symbolic":"reference","module":"angular-oauth2-oidc","name":"OAuthService","line":96,"character":58}]}],"checkWindowWidth":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"onChangeLang":[{"__symbolic":"method"}],"logout":[{"__symbolic":"method"}]},"statics":{"type":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":38,"character":16},"member":"application"}}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"abp-layout-account","template":"\n"}]}],"members":{},"statics":{"type":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":9,"character":16},"member":"account"}}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"abp-layout-empty","template":"\n Layout-empty\n \n "}]}],"members":{},"statics":{"type":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"eLayoutType","line":11,"character":16},"member":"empty"}}},"ɵe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":" abp-layout","animations":[{"__symbolic":"reference","module":"@abp/ng.theme.shared","name":"slideFromBottom","line":8,"character":15}],"template":"\n\n\n \n\n\n\n\n\n\n {{ appInfo.name }}\n\n"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":17,"character":29}]}]}},"ɵf":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"State","line":6,"character":1},"arguments":[{"name":"LayoutState","defaults":{"navigationElements":[]}}]}],"members":{"layoutAddAction":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":16,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵg"}]}]}],"layoutRemoveAction":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Action","line":45,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵh"}]}]}]},"statics":{"getNavigationElements":{"__symbolic":"function","parameters":["navigationElements"],"value":{"__symbolic":"reference","name":"navigationElements"}}}},"ɵg":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"ɵi"},"member":"NavigationElement"}]}]},"statics":{"type":"[Layout] Add Navigation Element"}},"ɵh":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"}]}]},"statics":{"type":"[Layout] Remove Navigation ElementByName"}}},"origins":{"LAYOUTS":"./lib/theme-basic.module","ThemeBasicModule":"./lib/theme-basic.module","ɵa":"./lib/components/application-layout/application-layout.component","ɵb":"./lib/states","ɵc":"./lib/components/account-layout/account-layout.component","ɵd":"./lib/components/empty-layout/empty-layout.component","ɵe":"./lib/components/layout/layout.component","ɵf":"./lib/states/layout.state","ɵg":"./lib/actions/layout.actions","ɵh":"./lib/actions/layout.actions","ɵi":"./lib/models/layout"},"importAs":"@abp/ng.theme.basic"} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js b/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js deleted file mode 100644 index ebfb6926d8..0000000000 --- a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js +++ /dev/null @@ -1,850 +0,0 @@ -(function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@abp/ng.core'), require('@abp/ng.theme.shared'), require('@angular/core'), require('@ng-bootstrap/ng-bootstrap'), require('@ngx-validate/core'), require('@ngxs/store'), require('primeng/toast'), require('@ngxs/router-plugin'), require('angular-oauth2-oidc'), require('just-compare'), require('rxjs'), require('rxjs/operators'), require('snq')) : - typeof define === 'function' && define.amd ? define('@abp/ng.theme.basic', ['exports', '@abp/ng.core', '@abp/ng.theme.shared', '@angular/core', '@ng-bootstrap/ng-bootstrap', '@ngx-validate/core', '@ngxs/store', 'primeng/toast', '@ngxs/router-plugin', 'angular-oauth2-oidc', 'just-compare', 'rxjs', 'rxjs/operators', 'snq'], factory) : - (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng.theme = global.abp.ng.theme || {}, global.abp.ng.theme.basic = {}), global.ng_core, global.ng_theme_shared, global.ng.core, global.ngBootstrap, global.core$1, global.store, global.toast, global.routerPlugin, global.angularOauth2Oidc, global.compare, global.rxjs, global.rxjs.operators, global.snq)); -}(this, function (exports, ng_core, ng_theme_shared, core, ngBootstrap, core$1, store, toast, routerPlugin, angularOauth2Oidc, compare, rxjs, operators, snq) { 'use strict'; - - compare = compare && compare.hasOwnProperty('default') ? compare['default'] : compare; - snq = snq && snq.hasOwnProperty('default') ? snq['default'] : snq; - - /*! ***************************************************************************** - Copyright (c) Microsoft Corporation. All rights reserved. - Licensed under the Apache License, Version 2.0 (the "License"); you may not use - this file except in compliance with the License. You may obtain a copy of the - License at http://www.apache.org/licenses/LICENSE-2.0 - - THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED - WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, - MERCHANTABLITY OR NON-INFRINGEMENT. - - See the Apache Version 2.0 License for specific language governing permissions - and limitations under the License. - ***************************************************************************** */ - /* global Reflect, Promise */ - - var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; - return extendStatics(d, b); - }; - - function __extends(d, b) { - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); - } - - var __assign = function() { - __assign = Object.assign || function __assign(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; - } - return t; - }; - return __assign.apply(this, arguments); - }; - - function __rest(s, e) { - var t = {}; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { - if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) - t[p[i]] = s[p[i]]; - } - return t; - } - - function __decorate(decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; - return c > 3 && r && Object.defineProperty(target, key, r), r; - } - - function __param(paramIndex, decorator) { - return function (target, key) { decorator(target, key, paramIndex); } - } - - function __metadata(metadataKey, metadataValue) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue); - } - - function __awaiter(thisArg, _arguments, P, generator) { - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); - } - - function __generator(thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (_) try { - if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } - } - - function __exportStar(m, exports) { - for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; - } - - function __values(o) { - var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0; - if (m) return m.call(o); - return { - next: function () { - if (o && i >= o.length) o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - } - - function __read(o, n) { - var m = typeof Symbol === "function" && o[Symbol.iterator]; - if (!m) return o; - var i = m.call(o), r, ar = [], e; - try { - while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); - } - catch (error) { e = { error: error }; } - finally { - try { - if (r && !r.done && (m = i["return"])) m.call(i); - } - finally { if (e) throw e.error; } - } - return ar; - } - - function __spread() { - for (var ar = [], i = 0; i < arguments.length; i++) - ar = ar.concat(__read(arguments[i])); - return ar; - } - - function __spreadArrays() { - for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length; - for (var r = Array(s), k = 0, i = 0; i < il; i++) - for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) - r[k] = a[j]; - return r; - }; - - function __await(v) { - return this instanceof __await ? (this.v = v, this) : new __await(v); - } - - function __asyncGenerator(thisArg, _arguments, generator) { - if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); - var g = generator.apply(thisArg, _arguments || []), i, q = []; - return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i; - function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; } - function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } - function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } - function fulfill(value) { resume("next", value); } - function reject(value) { resume("throw", value); } - function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } - } - - function __asyncDelegator(o) { - var i, p; - return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; - function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; } - } - - function __asyncValues(o) { - if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); - var m = o[Symbol.asyncIterator], i; - return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i); - function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; } - function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); } - } - - function __makeTemplateObject(cooked, raw) { - if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } - return cooked; - }; - - function __importStar(mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; - result.default = mod; - return result; - } - - function __importDefault(mod) { - return (mod && mod.__esModule) ? mod : { default: mod }; - } - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var AccountLayoutComponent = /** @class */ (function () { - function AccountLayoutComponent() { - } - // required for dynamic component - AccountLayoutComponent.type = "account" /* account */; - AccountLayoutComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'abp-layout-account', - template: "\n" - }] } - ]; - return AccountLayoutComponent; - }()); - if (false) { - /** @type {?} */ - AccountLayoutComponent.type; - } - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var AddNavigationElement = /** @class */ (function () { - function AddNavigationElement(payload) { - this.payload = payload; - } - AddNavigationElement.type = '[Layout] Add Navigation Element'; - return AddNavigationElement; - }()); - if (false) { - /** @type {?} */ - AddNavigationElement.type; - /** @type {?} */ - AddNavigationElement.prototype.payload; - } - var RemoveNavigationElementByName = /** @class */ (function () { - function RemoveNavigationElementByName(name) { - this.name = name; - } - RemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; - return RemoveNavigationElementByName; - }()); - if (false) { - /** @type {?} */ - RemoveNavigationElementByName.type; - /** @type {?} */ - RemoveNavigationElementByName.prototype.name; - } - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var LayoutState = /** @class */ (function () { - function LayoutState() { - } - /** - * @param {?} __0 - * @return {?} - */ - LayoutState.getNavigationElements = /** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var navigationElements = _a.navigationElements; - return navigationElements; - }; - /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - LayoutState.prototype.layoutAddAction = /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - function (_a, _b) { - var getState = _a.getState, patchState = _a.patchState; - var _c = _b.payload, payload = _c === void 0 ? [] : _c; - var navigationElements = getState().navigationElements; - if (!Array.isArray(payload)) { - payload = [payload]; - } - if (navigationElements.length) { - payload = snq((/** - * @return {?} - */ - function () { - return ((/** @type {?} */ (payload))).filter((/** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var name = _a.name; - return navigationElements.findIndex((/** - * @param {?} nav - * @return {?} - */ - function (nav) { return nav.name === name; })) < 0; - })); - }), []); - } - if (!payload.length) - return; - navigationElements = __spread(navigationElements, payload).map((/** - * @param {?} element - * @return {?} - */ - function (element) { return (__assign({}, element, { order: element.order || 99 })); })) - .sort((/** - * @param {?} a - * @param {?} b - * @return {?} - */ - function (a, b) { return a.order - b.order; })); - return patchState({ - navigationElements: navigationElements, - }); - }; - /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - LayoutState.prototype.layoutRemoveAction = /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - function (_a, _b) { - var getState = _a.getState, patchState = _a.patchState; - var name = _b.name; - var navigationElements = getState().navigationElements; - /** @type {?} */ - var index = navigationElements.findIndex((/** - * @param {?} element - * @return {?} - */ - function (element) { return element.name === name; })); - if (index > -1) { - navigationElements = navigationElements.splice(index, 1); - } - return patchState({ - navigationElements: navigationElements, - }); - }; - __decorate([ - store.Action(AddNavigationElement), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, AddNavigationElement]), - __metadata("design:returntype", void 0) - ], LayoutState.prototype, "layoutAddAction", null); - __decorate([ - store.Action(RemoveNavigationElementByName), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, RemoveNavigationElementByName]), - __metadata("design:returntype", void 0) - ], LayoutState.prototype, "layoutRemoveAction", null); - __decorate([ - store.Selector(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Array) - ], LayoutState, "getNavigationElements", null); - LayoutState = __decorate([ - store.State({ - name: 'LayoutState', - defaults: (/** @type {?} */ ({ navigationElements: [] })), - }) - ], LayoutState); - return LayoutState; - }()); - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var ApplicationLayoutComponent = /** @class */ (function () { - function ApplicationLayoutComponent(store, oauthService) { - this.store = store; - this.oauthService = oauthService; - this.isOpenChangePassword = false; - this.isOpenProfile = false; - this.rightPartElements = []; - this.trackByFn = (/** - * @param {?} _ - * @param {?} item - * @return {?} - */ - function (_, item) { return item.name; }); - this.trackElementByFn = (/** - * @param {?} _ - * @param {?} element - * @return {?} - */ - function (_, element) { return element; }); - } - Object.defineProperty(ApplicationLayoutComponent.prototype, "visibleRoutes$", { - get: /** - * @return {?} - */ - function () { - return this.routes$.pipe(operators.map((/** - * @param {?} routes - * @return {?} - */ - function (routes) { return getVisibleRoutes(routes); }))); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ApplicationLayoutComponent.prototype, "defaultLanguage$", { - get: /** - * @return {?} - */ - function () { - var _this = this; - return this.languages$.pipe(operators.map((/** - * @param {?} languages - * @return {?} - */ - function (languages) { return snq((/** - * @return {?} - */ - function () { return languages.find((/** - * @param {?} lang - * @return {?} - */ - function (lang) { return lang.cultureName === _this.selectedLangCulture; })).displayName; })); }), '')); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ApplicationLayoutComponent.prototype, "dropdownLanguages$", { - get: /** - * @return {?} - */ - function () { - var _this = this; - return this.languages$.pipe(operators.map((/** - * @param {?} languages - * @return {?} - */ - function (languages) { return snq((/** - * @return {?} - */ - function () { return languages.filter((/** - * @param {?} lang - * @return {?} - */ - function (lang) { return lang.cultureName !== _this.selectedLangCulture; })); })); }), [])); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ApplicationLayoutComponent.prototype, "selectedLangCulture", { - get: /** - * @return {?} - */ - function () { - return this.store.selectSnapshot(ng_core.SessionState.getLanguage); - }, - enumerable: true, - configurable: true - }); - /** - * @private - * @return {?} - */ - ApplicationLayoutComponent.prototype.checkWindowWidth = /** - * @private - * @return {?} - */ - function () { - var _this = this; - setTimeout((/** - * @return {?} - */ - function () { - _this.navbarRootDropdowns.forEach((/** - * @param {?} item - * @return {?} - */ - function (item) { - item.close(); - })); - if (window.innerWidth < 768) { - _this.isDropdownChildDynamic = false; - } - else { - _this.isDropdownChildDynamic = true; - } - }), 0); - }; - /** - * @return {?} - */ - ApplicationLayoutComponent.prototype.ngAfterViewInit = /** - * @return {?} - */ - function () { - var _this = this; - /** @type {?} */ - var navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map((/** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var name = _a.name; - return name; - })); - if (navigations.indexOf('LanguageRef') < 0) { - this.store.dispatch(new AddNavigationElement([ - { element: this.languageRef, order: 4, name: 'LanguageRef' }, - { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' }, - ])); - } - this.navElements$ - .pipe(operators.map((/** - * @param {?} elements - * @return {?} - */ - function (elements) { return elements.map((/** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var element = _a.element; - return element; - })); })), operators.filter((/** - * @param {?} elements - * @return {?} - */ - function (elements) { return !compare(elements, _this.rightPartElements); })), ng_core.takeUntilDestroy(this)) - .subscribe((/** - * @param {?} elements - * @return {?} - */ - function (elements) { - setTimeout((/** - * @return {?} - */ - function () { return (_this.rightPartElements = elements); }), 0); - })); - this.checkWindowWidth(); - rxjs.fromEvent(window, 'resize') - .pipe(ng_core.takeUntilDestroy(this), operators.debounceTime(250)) - .subscribe((/** - * @return {?} - */ - function () { - _this.checkWindowWidth(); - })); - }; - /** - * @return {?} - */ - ApplicationLayoutComponent.prototype.ngOnDestroy = /** - * @return {?} - */ - function () { }; - /** - * @param {?} cultureName - * @return {?} - */ - ApplicationLayoutComponent.prototype.onChangeLang = /** - * @param {?} cultureName - * @return {?} - */ - function (cultureName) { - this.store.dispatch(new ng_core.SetLanguage(cultureName)); - }; - /** - * @return {?} - */ - ApplicationLayoutComponent.prototype.logout = /** - * @return {?} - */ - function () { - this.oauthService.logOut(); - this.store.dispatch(new routerPlugin.Navigate(['/'], null, { - state: { redirectUrl: this.store.selectSnapshot(routerPlugin.RouterState).state.url }, - })); - this.store.dispatch(new ng_core.GetAppConfiguration()); - }; - // required for dynamic component - ApplicationLayoutComponent.type = "application" /* application */; - ApplicationLayoutComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'abp-layout-application', - template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" - }] } - ]; - /** @nocollapse */ - ApplicationLayoutComponent.ctorParameters = function () { return [ - { type: store.Store }, - { type: angularOauth2Oidc.OAuthService } - ]; }; - ApplicationLayoutComponent.propDecorators = { - currentUserRef: [{ type: core.ViewChild, args: ['currentUser', { static: false, read: core.TemplateRef },] }], - languageRef: [{ type: core.ViewChild, args: ['language', { static: false, read: core.TemplateRef },] }], - navbarRootDropdowns: [{ type: core.ViewChildren, args: ['navbarRootDropdown', { read: ngBootstrap.NgbDropdown },] }] - }; - __decorate([ - store.Select(ng_core.ConfigState.getOne('routes')), - __metadata("design:type", rxjs.Observable) - ], ApplicationLayoutComponent.prototype, "routes$", void 0); - __decorate([ - store.Select(ng_core.ConfigState.getOne('currentUser')), - __metadata("design:type", rxjs.Observable) - ], ApplicationLayoutComponent.prototype, "currentUser$", void 0); - __decorate([ - store.Select(ng_core.ConfigState.getDeep('localization.languages')), - __metadata("design:type", rxjs.Observable) - ], ApplicationLayoutComponent.prototype, "languages$", void 0); - __decorate([ - store.Select(LayoutState.getNavigationElements), - __metadata("design:type", rxjs.Observable) - ], ApplicationLayoutComponent.prototype, "navElements$", void 0); - return ApplicationLayoutComponent; - }()); - if (false) { - /** @type {?} */ - ApplicationLayoutComponent.type; - /** @type {?} */ - ApplicationLayoutComponent.prototype.routes$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.currentUser$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.languages$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.navElements$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.currentUserRef; - /** @type {?} */ - ApplicationLayoutComponent.prototype.languageRef; - /** @type {?} */ - ApplicationLayoutComponent.prototype.navbarRootDropdowns; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isOpenChangePassword; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isOpenProfile; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isDropdownChildDynamic; - /** @type {?} */ - ApplicationLayoutComponent.prototype.rightPartElements; - /** @type {?} */ - ApplicationLayoutComponent.prototype.trackByFn; - /** @type {?} */ - ApplicationLayoutComponent.prototype.trackElementByFn; - /** - * @type {?} - * @private - */ - ApplicationLayoutComponent.prototype.store; - /** - * @type {?} - * @private - */ - ApplicationLayoutComponent.prototype.oauthService; - } - /** - * @param {?} routes - * @return {?} - */ - function getVisibleRoutes(routes) { - return routes.reduce((/** - * @param {?} acc - * @param {?} val - * @return {?} - */ - function (acc, val) { - if (val.invisible) - return acc; - if (val.children && val.children.length) { - val.children = getVisibleRoutes(val.children); - } - return __spread(acc, [val]); - }), []); - } - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var EmptyLayoutComponent = /** @class */ (function () { - function EmptyLayoutComponent() { - } - EmptyLayoutComponent.type = "empty" /* empty */; - EmptyLayoutComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'abp-layout-empty', - template: "\n Layout-empty\n \n " - }] } - ]; - return EmptyLayoutComponent; - }()); - if (false) { - /** @type {?} */ - EmptyLayoutComponent.type; - } - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var LayoutComponent = /** @class */ (function () { - function LayoutComponent(store) { - this.store = store; - this.isCollapsed = true; - } - Object.defineProperty(LayoutComponent.prototype, "appInfo", { - get: /** - * @return {?} - */ - function () { - return this.store.selectSnapshot(ng_core.ConfigState.getApplicationInfo); - }, - enumerable: true, - configurable: true - }); - LayoutComponent.decorators = [ - { type: core.Component, args: [{ - selector: ' abp-layout', - template: "\n\n\n \n\n\n\n\n\n\n {{ appInfo.name }}\n\n", - animations: [ng_theme_shared.slideFromBottom] - }] } - ]; - /** @nocollapse */ - LayoutComponent.ctorParameters = function () { return [ - { type: store.Store } - ]; }; - return LayoutComponent; - }()); - if (false) { - /** @type {?} */ - LayoutComponent.prototype.isCollapsed; - /** - * @type {?} - * @private - */ - LayoutComponent.prototype.store; - } - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** @type {?} */ - var LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent]; - var ThemeBasicModule = /** @class */ (function () { - function ThemeBasicModule() { - } - ThemeBasicModule.decorators = [ - { type: core.NgModule, args: [{ - declarations: __spread(LAYOUTS, [LayoutComponent]), - imports: [ - ng_core.CoreModule, - ng_theme_shared.ThemeSharedModule, - ngBootstrap.NgbCollapseModule, - ngBootstrap.NgbDropdownModule, - toast.ToastModule, - core$1.NgxValidateCoreModule, - store.NgxsModule.forFeature([LayoutState]), - ], - exports: __spread(LAYOUTS), - entryComponents: __spread(LAYOUTS), - },] } - ]; - return ThemeBasicModule; - }()); - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var Layout; - (function (Layout) { - /** - * @record - */ - function State() { } - Layout.State = State; - if (false) { - /** @type {?} */ - State.prototype.navigationElements; - } - /** - * @record - */ - function NavigationElement() { } - Layout.NavigationElement = NavigationElement; - if (false) { - /** @type {?} */ - NavigationElement.prototype.name; - /** @type {?} */ - NavigationElement.prototype.element; - /** @type {?|undefined} */ - NavigationElement.prototype.order; - } - })(Layout || (Layout = {})); - - exports.AccountLayoutComponent = AccountLayoutComponent; - exports.AddNavigationElement = AddNavigationElement; - exports.ApplicationLayoutComponent = ApplicationLayoutComponent; - exports.EmptyLayoutComponent = EmptyLayoutComponent; - exports.LAYOUTS = LAYOUTS; - exports.LayoutState = LayoutState; - exports.RemoveNavigationElementByName = RemoveNavigationElementByName; - exports.ThemeBasicModule = ThemeBasicModule; - exports.ɵa = ApplicationLayoutComponent; - exports.ɵb = LayoutState; - exports.ɵc = AccountLayoutComponent; - exports.ɵd = EmptyLayoutComponent; - exports.ɵe = LayoutComponent; - exports.ɵf = LayoutState; - exports.ɵg = AddNavigationElement; - exports.ɵh = RemoveNavigationElementByName; - - Object.defineProperty(exports, '__esModule', { value: true }); - -})); -//# sourceMappingURL=abp-ng.theme.basic.umd.js.map diff --git a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js.map b/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js.map deleted file mode 100644 index 95866c6981..0000000000 --- a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"abp-ng.theme.basic.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.theme.basic/lib/components/account-layout/account-layout.component.ts","ng://@abp/ng.theme.basic/lib/actions/layout.actions.ts","ng://@abp/ng.theme.basic/lib/states/layout.state.ts","ng://@abp/ng.theme.basic/lib/components/application-layout/application-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/empty-layout/empty-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/layout/layout.component.ts","ng://@abp/ng.theme.basic/lib/theme-basic.module.ts","ng://@abp/ng.theme.basic/lib/models/layout.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-account',\n templateUrl: './account-layout.component.html',\n})\nexport class AccountLayoutComponent {\n // required for dynamic component\n static type = eLayoutType.account;\n}\n","import { Layout } from '../models/layout';\n\nexport class AddNavigationElement {\n static readonly type = '[Layout] Add Navigation Element';\n constructor(public payload: Layout.NavigationElement | Layout.NavigationElement[]) {}\n}\n\nexport class RemoveNavigationElementByName {\n static readonly type = '[Layout] Remove Navigation ElementByName';\n constructor(public name: string) {}\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { AddNavigationElement, RemoveNavigationElementByName } from '../actions/layout.actions';\nimport { Layout } from '../models/layout';\nimport { TemplateRef } from '@angular/core';\nimport snq from 'snq';\n\n@State({\n name: 'LayoutState',\n defaults: { navigationElements: [] } as Layout.State,\n})\nexport class LayoutState {\n @Selector()\n static getNavigationElements({ navigationElements }: Layout.State): Layout.NavigationElement[] {\n return navigationElements;\n }\n\n @Action(AddNavigationElement)\n layoutAddAction({ getState, patchState }: StateContext, { payload = [] }: AddNavigationElement) {\n let { navigationElements } = getState();\n\n if (!Array.isArray(payload)) {\n payload = [payload];\n }\n\n if (navigationElements.length) {\n payload = snq(\n () =>\n (payload as Layout.NavigationElement[]).filter(\n ({ name }) => navigationElements.findIndex(nav => nav.name === name) < 0,\n ),\n [],\n );\n }\n\n if (!payload.length) return;\n\n navigationElements = [...navigationElements, ...payload]\n .map(element => ({ ...element, order: element.order || 99 }))\n .sort((a, b) => a.order - b.order);\n\n return patchState({\n navigationElements,\n });\n }\n\n @Action(RemoveNavigationElementByName)\n layoutRemoveAction({ getState, patchState }: StateContext, { name }: RemoveNavigationElementByName) {\n let { navigationElements } = getState();\n\n const index = navigationElements.findIndex(element => element.name === name);\n\n if (index > -1) {\n navigationElements = navigationElements.splice(index, 1);\n }\n\n return patchState({\n navigationElements,\n });\n }\n}\n","import {\n ABP,\n ApplicationConfiguration,\n GetAppConfiguration,\n ConfigState,\n eLayoutType,\n SetLanguage,\n SessionState,\n takeUntilDestroy,\n} from '@abp/ng.core';\nimport {\n AfterViewInit,\n Component,\n OnDestroy,\n QueryList,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';\nimport { Navigate, RouterState } from '@ngxs/router-plugin';\nimport { Select, Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport compare from 'just-compare';\nimport { fromEvent, Observable } from 'rxjs';\nimport { debounceTime, filter, map } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AddNavigationElement } from '../../actions';\nimport { Layout } from '../../models/layout';\nimport { LayoutState } from '../../states';\n\n@Component({\n selector: 'abp-layout-application',\n templateUrl: './application-layout.component.html',\n})\nexport class ApplicationLayoutComponent implements AfterViewInit, OnDestroy {\n // required for dynamic component\n static type = eLayoutType.application;\n\n @Select(ConfigState.getOne('routes'))\n routes$: Observable;\n\n @Select(ConfigState.getOne('currentUser'))\n currentUser$: Observable;\n\n @Select(ConfigState.getDeep('localization.languages'))\n languages$: Observable;\n\n @Select(LayoutState.getNavigationElements)\n navElements$: Observable;\n\n @ViewChild('currentUser', { static: false, read: TemplateRef })\n currentUserRef: TemplateRef;\n\n @ViewChild('language', { static: false, read: TemplateRef })\n languageRef: TemplateRef;\n\n @ViewChildren('navbarRootDropdown', { read: NgbDropdown })\n navbarRootDropdowns: QueryList;\n\n isOpenChangePassword: boolean = false;\n\n isOpenProfile: boolean = false;\n\n isDropdownChildDynamic: boolean;\n\n get visibleRoutes$(): Observable {\n return this.routes$.pipe(map(routes => getVisibleRoutes(routes)));\n }\n\n get defaultLanguage$(): Observable {\n return this.languages$.pipe(\n map(\n languages => snq(() => languages.find(lang => lang.cultureName === this.selectedLangCulture).displayName),\n '',\n ),\n );\n }\n\n get dropdownLanguages$(): Observable {\n return this.languages$.pipe(\n map(languages => snq(() => languages.filter(lang => lang.cultureName !== this.selectedLangCulture)), []),\n );\n }\n\n get selectedLangCulture(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n rightPartElements: TemplateRef[] = [];\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n trackElementByFn: TrackByFunction = (_, element) => element;\n\n constructor(private store: Store, private oauthService: OAuthService) {}\n\n private checkWindowWidth() {\n setTimeout(() => {\n this.navbarRootDropdowns.forEach(item => {\n item.close();\n });\n if (window.innerWidth < 768) {\n this.isDropdownChildDynamic = false;\n } else {\n this.isDropdownChildDynamic = true;\n }\n }, 0);\n }\n\n ngAfterViewInit() {\n const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map(({ name }) => name);\n\n if (navigations.indexOf('LanguageRef') < 0) {\n this.store.dispatch(\n new AddNavigationElement([\n { element: this.languageRef, order: 4, name: 'LanguageRef' },\n { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' },\n ]),\n );\n }\n\n this.navElements$\n .pipe(\n map(elements => elements.map(({ element }) => element)),\n filter(elements => !compare(elements, this.rightPartElements)),\n takeUntilDestroy(this),\n )\n .subscribe(elements => {\n setTimeout(() => (this.rightPartElements = elements), 0);\n });\n\n this.checkWindowWidth();\n\n fromEvent(window, 'resize')\n .pipe(\n takeUntilDestroy(this),\n debounceTime(250),\n )\n .subscribe(() => {\n this.checkWindowWidth();\n });\n }\n\n ngOnDestroy() {}\n\n onChangeLang(cultureName: string) {\n this.store.dispatch(new SetLanguage(cultureName));\n }\n\n logout() {\n this.oauthService.logOut();\n this.store.dispatch(\n new Navigate(['/'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n this.store.dispatch(new GetAppConfiguration());\n }\n}\n\nfunction getVisibleRoutes(routes: ABP.FullRoute[]) {\n return routes.reduce((acc, val) => {\n if (val.invisible) return acc;\n\n if (val.children && val.children.length) {\n val.children = getVisibleRoutes(val.children);\n }\n\n return [...acc, val];\n }, []);\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-empty',\n template: `\n Layout-empty\n \n `,\n})\nexport class EmptyLayoutComponent {\n static type = eLayoutType.empty;\n}\n","import { Config, ConfigState } from '@abp/ng.core';\nimport { slideFromBottom } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { Store } from '@ngxs/store';\n\n@Component({\n selector: ' abp-layout',\n templateUrl: './layout.component.html',\n animations: [slideFromBottom],\n})\nexport class LayoutComponent {\n isCollapsed: boolean = true;\n\n get appInfo(): Config.Application {\n return this.store.selectSnapshot(ConfigState.getApplicationInfo);\n }\n\n constructor(private store: Store) {}\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { ToastModule } from 'primeng/toast';\nimport { AccountLayoutComponent } from './components/account-layout/account-layout.component';\nimport { ApplicationLayoutComponent } from './components/application-layout/application-layout.component';\nimport { EmptyLayoutComponent } from './components/empty-layout/empty-layout.component';\nimport { LayoutComponent } from './components/layout/layout.component';\nimport { LayoutState } from './states/layout.state';\n\nexport const LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent];\n\n@NgModule({\n declarations: [...LAYOUTS, LayoutComponent],\n imports: [\n CoreModule,\n ThemeSharedModule,\n NgbCollapseModule,\n NgbDropdownModule,\n ToastModule,\n NgxValidateCoreModule,\n NgxsModule.forFeature([LayoutState]),\n ],\n exports: [...LAYOUTS],\n entryComponents: [...LAYOUTS],\n})\nexport class ThemeBasicModule {}\n","import { TemplateRef } from '@angular/core';\n\nexport namespace Layout {\n export interface State {\n navigationElements: NavigationElement[];\n }\n\n export interface NavigationElement {\n name: string;\n element: TemplateRef;\n order?: number;\n }\n}\n"],"names":["Component","tslib_1.__spread","tslib_1.__decorate","Action","Selector","State","map","SessionState","filter","takeUntilDestroy","fromEvent","debounceTime","SetLanguage","Navigate","RouterState","GetAppConfiguration","Store","OAuthService","ViewChild","TemplateRef","ViewChildren","NgbDropdown","Select","ConfigState","Observable","slideFromBottom","NgModule","CoreModule","ThemeSharedModule","NgbCollapseModule","NgbDropdownModule","ToastModule","NgxValidateCoreModule","NgxsModule"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js b/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js deleted file mode 100644 index 2f2950d264..0000000000 --- a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js +++ /dev/null @@ -1,2 +0,0 @@ -!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@abp/ng.core"),require("@abp/ng.theme.shared"),require("@angular/core"),require("@ng-bootstrap/ng-bootstrap"),require("@ngx-validate/core"),require("@ngxs/store"),require("primeng/toast"),require("@ngxs/router-plugin"),require("angular-oauth2-oidc"),require("just-compare"),require("rxjs"),require("rxjs/operators"),require("snq")):"function"==typeof define&&define.amd?define("@abp/ng.theme.basic",["exports","@abp/ng.core","@abp/ng.theme.shared","@angular/core","@ng-bootstrap/ng-bootstrap","@ngx-validate/core","@ngxs/store","primeng/toast","@ngxs/router-plugin","angular-oauth2-oidc","just-compare","rxjs","rxjs/operators","snq"],n):n(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng.theme=e.abp.ng.theme||{},e.abp.ng.theme.basic={}),e.ng_core,e.ng_theme_shared,e.ng.core,e.ngBootstrap,e.core$1,e.store,e.toast,e.routerPlugin,e.angularOauth2Oidc,e.compare,e.rxjs,e.rxjs.operators,e.snq)}(this,function(e,n,t,o,r,a,i,l,p,s,u,c,d,g){"use strict";u=u&&u.hasOwnProperty("default")?u.default:u,g=g&&g.hasOwnProperty("default")?g.default:g;var m=function(){return(m=Object.assign||function(e){for(var n,t=1,o=arguments.length;t=0;l--)(r=e[l])&&(i=(a<3?r(i):a>3?r(n,t,i):r(n,t))||i);return a>3&&i&&Object.defineProperty(n,t,i),i}function h(e,n){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,n)}function b(e,n){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var o,r,a=t.call(e),i=[];try{for(;(void 0===n||n-- >0)&&!(o=a.next()).done;)i.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(t=a.return)&&t.call(a)}finally{if(r)throw r.error}}return i}function y(){for(var e=[],n=0;n\n"}]}],e}();var w=function(){function e(e){this.payload=e}return e.type="[Layout] Add Navigation Element",e}();var C=function(){function e(e){this.name=e}return e.type="[Layout] Remove Navigation ElementByName",e}();var O=function(){function e(){}return e.getNavigationElements=function(e){return e.navigationElements},e.prototype.layoutAddAction=function(e,n){var t=e.getState,o=e.patchState,r=n.payload,a=void 0===r?[]:r,i=t().navigationElements;if(Array.isArray(a)||(a=[a]),i.length&&(a=g(function(){return a.filter(function(e){var n=e.name;return i.findIndex(function(e){return e.name===n})<0})},[])),a.length)return o({navigationElements:i=y(i,a).map(function(e){return m({},e,{order:e.order||99})}).sort(function(e,n){return e.order-n.order})})},e.prototype.layoutRemoveAction=function(e,n){var t=e.getState,o=e.patchState,r=n.name,a=t().navigationElements,i=a.findIndex(function(e){return e.name===r});return i>-1&&(a=a.splice(i,1)),o({navigationElements:a})},f([i.Action(w),h("design:type",Function),h("design:paramtypes",[Object,w]),h("design:returntype",void 0)],e.prototype,"layoutAddAction",null),f([i.Action(C),h("design:type",Function),h("design:paramtypes",[Object,C]),h("design:returntype",void 0)],e.prototype,"layoutRemoveAction",null),f([i.Selector(),h("design:type",Function),h("design:paramtypes",[Object]),h("design:returntype",Array)],e,"getNavigationElements",null),e=f([i.State({name:"LayoutState",defaults:{navigationElements:[]}})],e)}(),L=function(){function e(e,n){this.store=e,this.oauthService=n,this.isOpenChangePassword=!1,this.isOpenProfile=!1,this.rightPartElements=[],this.trackByFn=function(e,n){return n.name},this.trackElementByFn=function(e,n){return n}}return Object.defineProperty(e.prototype,"visibleRoutes$",{get:function(){return this.routes$.pipe(d.map(function(e){return function e(n){return n.reduce(function(n,t){return t.invisible?n:(t.children&&t.children.length&&(t.children=e(t.children)),y(n,[t]))},[])}(e)}))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"defaultLanguage$",{get:function(){var e=this;return this.languages$.pipe(d.map(function(n){return g(function(){return n.find(function(n){return n.cultureName===e.selectedLangCulture}).displayName})},""))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"dropdownLanguages$",{get:function(){var e=this;return this.languages$.pipe(d.map(function(n){return g(function(){return n.filter(function(n){return n.cultureName!==e.selectedLangCulture})})},[]))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selectedLangCulture",{get:function(){return this.store.selectSnapshot(n.SessionState.getLanguage)},enumerable:!0,configurable:!0}),e.prototype.checkWindowWidth=function(){var e=this;setTimeout(function(){e.navbarRootDropdowns.forEach(function(e){e.close()}),window.innerWidth<768?e.isDropdownChildDynamic=!1:e.isDropdownChildDynamic=!0},0)},e.prototype.ngAfterViewInit=function(){var e=this;this.store.selectSnapshot(O.getNavigationElements).map(function(e){return e.name}).indexOf("LanguageRef")<0&&this.store.dispatch(new w([{element:this.languageRef,order:4,name:"LanguageRef"},{element:this.currentUserRef,order:5,name:"CurrentUserRef"}])),this.navElements$.pipe(d.map(function(e){return e.map(function(e){return e.element})}),d.filter(function(n){return!u(n,e.rightPartElements)}),n.takeUntilDestroy(this)).subscribe(function(n){setTimeout(function(){return e.rightPartElements=n},0)}),this.checkWindowWidth(),c.fromEvent(window,"resize").pipe(n.takeUntilDestroy(this),d.debounceTime(250)).subscribe(function(){e.checkWindowWidth()})},e.prototype.ngOnDestroy=function(){},e.prototype.onChangeLang=function(e){this.store.dispatch(new n.SetLanguage(e))},e.prototype.logout=function(){this.oauthService.logOut(),this.store.dispatch(new p.Navigate(["/"],null,{state:{redirectUrl:this.store.selectSnapshot(p.RouterState).state.url}})),this.store.dispatch(new n.GetAppConfiguration)},e.type="application",e.decorators=[{type:o.Component,args:[{selector:"abp-layout-application",template:'\n \n\n \n\n\n\n \n\n\n\n \n\n \n\n \n\n'}]}],e.ctorParameters=function(){return[{type:i.Store},{type:s.OAuthService}]},e.propDecorators={currentUserRef:[{type:o.ViewChild,args:["currentUser",{static:!1,read:o.TemplateRef}]}],languageRef:[{type:o.ViewChild,args:["language",{static:!1,read:o.TemplateRef}]}],navbarRootDropdowns:[{type:o.ViewChildren,args:["navbarRootDropdown",{read:r.NgbDropdown}]}]},f([i.Select(n.ConfigState.getOne("routes")),h("design:type",c.Observable)],e.prototype,"routes$",void 0),f([i.Select(n.ConfigState.getOne("currentUser")),h("design:type",c.Observable)],e.prototype,"currentUser$",void 0),f([i.Select(n.ConfigState.getDeep("localization.languages")),h("design:type",c.Observable)],e.prototype,"languages$",void 0),f([i.Select(O.getNavigationElements),h("design:type",c.Observable)],e.prototype,"navElements$",void 0),e}();var k=function(){function e(){}return e.type="empty",e.decorators=[{type:o.Component,args:[{selector:"abp-layout-empty",template:"\n Layout-empty\n \n "}]}],e}();var P=function(){function e(e){this.store=e,this.isCollapsed=!0}return Object.defineProperty(e.prototype,"appInfo",{get:function(){return this.store.selectSnapshot(n.ConfigState.getApplicationInfo)},enumerable:!0,configurable:!0}),e.decorators=[{type:o.Component,args:[{selector:" abp-layout",template:'\n\n\n \n\n\n\n\n\n\n {{ appInfo.name }}\n\n',animations:[t.slideFromBottom]}]}],e.ctorParameters=function(){return[{type:i.Store}]},e}();var S,x=[L,v,k],D=function(){function e(){}return e.decorators=[{type:o.NgModule,args:[{declarations:y(x,[P]),imports:[n.CoreModule,t.ThemeSharedModule,r.NgbCollapseModule,r.NgbDropdownModule,l.ToastModule,a.NgxValidateCoreModule,i.NgxsModule.forFeature([O])],exports:y(x),entryComponents:y(x)}]}],e}();!function(e){function n(){}function t(){}e.State=n,e.NavigationElement=t}(S||(S={})),e.AccountLayoutComponent=v,e.AddNavigationElement=w,e.ApplicationLayoutComponent=L,e.EmptyLayoutComponent=k,e.LAYOUTS=x,e.LayoutState=O,e.RemoveNavigationElementByName=C,e.ThemeBasicModule=D,e.ɵa=L,e.ɵb=O,e.ɵc=v,e.ɵd=k,e.ɵe=P,e.ɵf=O,e.ɵg=w,e.ɵh=C,Object.defineProperty(e,"__esModule",{value:!0})}); -//# sourceMappingURL=abp-ng.theme.basic.umd.min.js.map \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js.map b/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js.map deleted file mode 100644 index e55c34dc28..0000000000 --- a/npm/ng-packs/dist/theme-basic/bundles/abp-ng.theme.basic.umd.min.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.theme.basic/lib/components/account-layout/account-layout.component.ts","ng://@abp/ng.theme.basic/lib/actions/layout.actions.ts","ng://@abp/ng.theme.basic/lib/states/layout.state.ts","ng://@abp/ng.theme.basic/lib/components/application-layout/application-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/empty-layout/empty-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/layout/layout.component.ts","ng://@abp/ng.theme.basic/lib/theme-basic.module.ts","ng://@abp/ng.theme.basic/lib/models/layout.ts"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","__decorate","decorators","target","key","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","defineProperty","__metadata","metadataKey","metadataValue","metadata","__read","o","m","Symbol","iterator","e","ar","next","done","push","value","error","__spread","concat","AccountLayoutComponent","type","Component","args","selector","template","AddNavigationElement","payload","RemoveNavigationElementByName","name","LayoutState","getNavigationElements","_a","navigationElements","layoutAddAction","_b","getState","patchState","_c","Array","isArray","snq","filter","findIndex","nav","tslib_1.__spread","map","element","order","sort","a","b","layoutRemoveAction","index","splice","tslib_1.__decorate","Action","Selector","State","defaults","ApplicationLayoutComponent","store","oauthService","isOpenChangePassword","isOpenProfile","rightPartElements","trackByFn","_","item","trackElementByFn","routes$","pipe","routes","getVisibleRoutes","reduce","acc","val","invisible","children","_this","languages$","languages","find","lang","cultureName","selectedLangCulture","displayName","selectSnapshot","SessionState","getLanguage","checkWindowWidth","setTimeout","navbarRootDropdowns","forEach","close","window","innerWidth","isDropdownChildDynamic","ngAfterViewInit","indexOf","dispatch","languageRef","currentUserRef","navElements$","elements","compare","takeUntilDestroy","subscribe","fromEvent","debounceTime","ngOnDestroy","onChangeLang","SetLanguage","logout","logOut","Navigate","state","redirectUrl","RouterState","url","GetAppConfiguration","Store","OAuthService","ViewChild","static","read","TemplateRef","ViewChildren","NgbDropdown","Select","ConfigState","getOne","Observable","getDeep","EmptyLayoutComponent","LayoutComponent","isCollapsed","getApplicationInfo","animations","slideFromBottom","Layout","LAYOUTS","ThemeBasicModule","NgModule","declarations","imports","CoreModule","ThemeSharedModule","NgbCollapseModule","NgbDropdownModule","ToastModule","NgxValidateCoreModule","NgxsModule","forFeature","exports","entryComponents","NavigationElement"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-account',\n templateUrl: './account-layout.component.html',\n})\nexport class AccountLayoutComponent {\n // required for dynamic component\n static type = eLayoutType.account;\n}\n","import { Layout } from '../models/layout';\n\nexport class AddNavigationElement {\n static readonly type = '[Layout] Add Navigation Element';\n constructor(public payload: Layout.NavigationElement | Layout.NavigationElement[]) {}\n}\n\nexport class RemoveNavigationElementByName {\n static readonly type = '[Layout] Remove Navigation ElementByName';\n constructor(public name: string) {}\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { AddNavigationElement, RemoveNavigationElementByName } from '../actions/layout.actions';\nimport { Layout } from '../models/layout';\nimport { TemplateRef } from '@angular/core';\nimport snq from 'snq';\n\n@State({\n name: 'LayoutState',\n defaults: { navigationElements: [] } as Layout.State,\n})\nexport class LayoutState {\n @Selector()\n static getNavigationElements({ navigationElements }: Layout.State): Layout.NavigationElement[] {\n return navigationElements;\n }\n\n @Action(AddNavigationElement)\n layoutAddAction({ getState, patchState }: StateContext, { payload = [] }: AddNavigationElement) {\n let { navigationElements } = getState();\n\n if (!Array.isArray(payload)) {\n payload = [payload];\n }\n\n if (navigationElements.length) {\n payload = snq(\n () =>\n (payload as Layout.NavigationElement[]).filter(\n ({ name }) => navigationElements.findIndex(nav => nav.name === name) < 0,\n ),\n [],\n );\n }\n\n if (!payload.length) return;\n\n navigationElements = [...navigationElements, ...payload]\n .map(element => ({ ...element, order: element.order || 99 }))\n .sort((a, b) => a.order - b.order);\n\n return patchState({\n navigationElements,\n });\n }\n\n @Action(RemoveNavigationElementByName)\n layoutRemoveAction({ getState, patchState }: StateContext, { name }: RemoveNavigationElementByName) {\n let { navigationElements } = getState();\n\n const index = navigationElements.findIndex(element => element.name === name);\n\n if (index > -1) {\n navigationElements = navigationElements.splice(index, 1);\n }\n\n return patchState({\n navigationElements,\n });\n }\n}\n","import {\n ABP,\n ApplicationConfiguration,\n GetAppConfiguration,\n ConfigState,\n eLayoutType,\n SetLanguage,\n SessionState,\n takeUntilDestroy,\n} from '@abp/ng.core';\nimport {\n AfterViewInit,\n Component,\n OnDestroy,\n QueryList,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';\nimport { Navigate, RouterState } from '@ngxs/router-plugin';\nimport { Select, Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport compare from 'just-compare';\nimport { fromEvent, Observable } from 'rxjs';\nimport { debounceTime, filter, map } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AddNavigationElement } from '../../actions';\nimport { Layout } from '../../models/layout';\nimport { LayoutState } from '../../states';\n\n@Component({\n selector: 'abp-layout-application',\n templateUrl: './application-layout.component.html',\n})\nexport class ApplicationLayoutComponent implements AfterViewInit, OnDestroy {\n // required for dynamic component\n static type = eLayoutType.application;\n\n @Select(ConfigState.getOne('routes'))\n routes$: Observable;\n\n @Select(ConfigState.getOne('currentUser'))\n currentUser$: Observable;\n\n @Select(ConfigState.getDeep('localization.languages'))\n languages$: Observable;\n\n @Select(LayoutState.getNavigationElements)\n navElements$: Observable;\n\n @ViewChild('currentUser', { static: false, read: TemplateRef })\n currentUserRef: TemplateRef;\n\n @ViewChild('language', { static: false, read: TemplateRef })\n languageRef: TemplateRef;\n\n @ViewChildren('navbarRootDropdown', { read: NgbDropdown })\n navbarRootDropdowns: QueryList;\n\n isOpenChangePassword: boolean = false;\n\n isOpenProfile: boolean = false;\n\n isDropdownChildDynamic: boolean;\n\n get visibleRoutes$(): Observable {\n return this.routes$.pipe(map(routes => getVisibleRoutes(routes)));\n }\n\n get defaultLanguage$(): Observable {\n return this.languages$.pipe(\n map(\n languages => snq(() => languages.find(lang => lang.cultureName === this.selectedLangCulture).displayName),\n '',\n ),\n );\n }\n\n get dropdownLanguages$(): Observable {\n return this.languages$.pipe(\n map(languages => snq(() => languages.filter(lang => lang.cultureName !== this.selectedLangCulture)), []),\n );\n }\n\n get selectedLangCulture(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n rightPartElements: TemplateRef[] = [];\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n trackElementByFn: TrackByFunction = (_, element) => element;\n\n constructor(private store: Store, private oauthService: OAuthService) {}\n\n private checkWindowWidth() {\n setTimeout(() => {\n this.navbarRootDropdowns.forEach(item => {\n item.close();\n });\n if (window.innerWidth < 768) {\n this.isDropdownChildDynamic = false;\n } else {\n this.isDropdownChildDynamic = true;\n }\n }, 0);\n }\n\n ngAfterViewInit() {\n const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map(({ name }) => name);\n\n if (navigations.indexOf('LanguageRef') < 0) {\n this.store.dispatch(\n new AddNavigationElement([\n { element: this.languageRef, order: 4, name: 'LanguageRef' },\n { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' },\n ]),\n );\n }\n\n this.navElements$\n .pipe(\n map(elements => elements.map(({ element }) => element)),\n filter(elements => !compare(elements, this.rightPartElements)),\n takeUntilDestroy(this),\n )\n .subscribe(elements => {\n setTimeout(() => (this.rightPartElements = elements), 0);\n });\n\n this.checkWindowWidth();\n\n fromEvent(window, 'resize')\n .pipe(\n takeUntilDestroy(this),\n debounceTime(250),\n )\n .subscribe(() => {\n this.checkWindowWidth();\n });\n }\n\n ngOnDestroy() {}\n\n onChangeLang(cultureName: string) {\n this.store.dispatch(new SetLanguage(cultureName));\n }\n\n logout() {\n this.oauthService.logOut();\n this.store.dispatch(\n new Navigate(['/'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n this.store.dispatch(new GetAppConfiguration());\n }\n}\n\nfunction getVisibleRoutes(routes: ABP.FullRoute[]) {\n return routes.reduce((acc, val) => {\n if (val.invisible) return acc;\n\n if (val.children && val.children.length) {\n val.children = getVisibleRoutes(val.children);\n }\n\n return [...acc, val];\n }, []);\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-empty',\n template: `\n Layout-empty\n \n `,\n})\nexport class EmptyLayoutComponent {\n static type = eLayoutType.empty;\n}\n","import { Config, ConfigState } from '@abp/ng.core';\nimport { slideFromBottom } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { Store } from '@ngxs/store';\n\n@Component({\n selector: ' abp-layout',\n templateUrl: './layout.component.html',\n animations: [slideFromBottom],\n})\nexport class LayoutComponent {\n isCollapsed: boolean = true;\n\n get appInfo(): Config.Application {\n return this.store.selectSnapshot(ConfigState.getApplicationInfo);\n }\n\n constructor(private store: Store) {}\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { ToastModule } from 'primeng/toast';\nimport { AccountLayoutComponent } from './components/account-layout/account-layout.component';\nimport { ApplicationLayoutComponent } from './components/application-layout/application-layout.component';\nimport { EmptyLayoutComponent } from './components/empty-layout/empty-layout.component';\nimport { LayoutComponent } from './components/layout/layout.component';\nimport { LayoutState } from './states/layout.state';\n\nexport const LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent];\n\n@NgModule({\n declarations: [...LAYOUTS, LayoutComponent],\n imports: [\n CoreModule,\n ThemeSharedModule,\n NgbCollapseModule,\n NgbDropdownModule,\n ToastModule,\n NgxValidateCoreModule,\n NgxsModule.forFeature([LayoutState]),\n ],\n exports: [...LAYOUTS],\n entryComponents: [...LAYOUTS],\n})\nexport class ThemeBasicModule {}\n","import { TemplateRef } from '@angular/core';\n\nexport namespace Layout {\n export interface State {\n navigationElements: NavigationElement[];\n }\n\n export interface NavigationElement {\n name: string;\n element: TemplateRef;\n order?: number;\n }\n}\n"]} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/abp-ng.theme.basic.js b/npm/ng-packs/dist/theme-basic/esm2015/abp-ng.theme.basic.js deleted file mode 100644 index cf2d483fbb..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/abp-ng.theme.basic.js +++ /dev/null @@ -1,16 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -/** - * Generated bundle index. Do not edit. - */ -export { LAYOUTS, ThemeBasicModule, AddNavigationElement, RemoveNavigationElementByName, AccountLayoutComponent, ApplicationLayoutComponent, EmptyLayoutComponent, LayoutState } from './public-api'; -export { AddNavigationElement as ɵg, RemoveNavigationElementByName as ɵh } from './lib/actions/layout.actions'; -export { AccountLayoutComponent as ɵc } from './lib/components/account-layout/account-layout.component'; -export { ApplicationLayoutComponent as ɵa } from './lib/components/application-layout/application-layout.component'; -export { EmptyLayoutComponent as ɵd } from './lib/components/empty-layout/empty-layout.component'; -export { LayoutComponent as ɵe } from './lib/components/layout/layout.component'; -export { LayoutState as ɵb } from './lib/states'; -export { LayoutState as ɵf } from './lib/states/layout.state'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLmJhc2ljLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImFicC1uZy50aGVtZS5iYXNpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsc0xBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsNkJBQTZCLElBQUksRUFBRSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDNUcsT0FBTyxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQ3RHLE9BQU8sRUFBQywwQkFBMEIsSUFBSSxFQUFFLEVBQUMsTUFBTSxrRUFBa0UsQ0FBQztBQUNsSCxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDaEcsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUUvRSxPQUFPLEVBQUMsV0FBVyxJQUFJLEVBQUUsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUMvQyxPQUFPLEVBQUMsV0FBVyxJQUFJLEVBQUUsRUFBQyxNQUFNLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0FkZE5hdmlnYXRpb25FbGVtZW50IGFzIMm1ZyxSZW1vdmVOYXZpZ2F0aW9uRWxlbWVudEJ5TmFtZSBhcyDJtWh9IGZyb20gJy4vbGliL2FjdGlvbnMvbGF5b3V0LmFjdGlvbnMnO1xuZXhwb3J0IHtBY2NvdW50TGF5b3V0Q29tcG9uZW50IGFzIMm1Y30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9hY2NvdW50LWxheW91dC9hY2NvdW50LWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtBcHBsaWNhdGlvbkxheW91dENvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXBwbGljYXRpb24tbGF5b3V0L2FwcGxpY2F0aW9uLWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtFbXB0eUxheW91dENvbXBvbmVudCBhcyDJtWR9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvZW1wdHktbGF5b3V0L2VtcHR5LWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtMYXlvdXRDb21wb25lbnQgYXMgybVlfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xheW91dC9sYXlvdXQuY29tcG9uZW50JztcbmV4cG9ydCB7TGF5b3V0IGFzIMm1aX0gZnJvbSAnLi9saWIvbW9kZWxzL2xheW91dCc7XG5leHBvcnQge0xheW91dFN0YXRlIGFzIMm1Yn0gZnJvbSAnLi9saWIvc3RhdGVzJztcbmV4cG9ydCB7TGF5b3V0U3RhdGUgYXMgybVmfSBmcm9tICcuL2xpYi9zdGF0ZXMvbGF5b3V0LnN0YXRlJzsiXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/actions/index.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/actions/index.js deleted file mode 100644 index acfe624a35..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/actions/index.js +++ /dev/null @@ -1,6 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -export { AddNavigationElement, RemoveNavigationElementByName } from './layout.actions'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2FjdGlvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLG9FQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sYXlvdXQuYWN0aW9ucyc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/actions/layout.actions.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/actions/layout.actions.js deleted file mode 100644 index 6f32de27d4..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/actions/layout.actions.js +++ /dev/null @@ -1,35 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -export class AddNavigationElement { - /** - * @param {?} payload - */ - constructor(payload) { - this.payload = payload; - } -} -AddNavigationElement.type = '[Layout] Add Navigation Element'; -if (false) { - /** @type {?} */ - AddNavigationElement.type; - /** @type {?} */ - AddNavigationElement.prototype.payload; -} -export class RemoveNavigationElementByName { - /** - * @param {?} name - */ - constructor(name) { - this.name = name; - } -} -RemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; -if (false) { - /** @type {?} */ - RemoveNavigationElementByName.type; - /** @type {?} */ - RemoveNavigationElementByName.prototype.name; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmFjdGlvbnMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2FjdGlvbnMvbGF5b3V0LmFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUVBLE1BQU0sT0FBTyxvQkFBb0I7Ozs7SUFFL0IsWUFBbUIsT0FBOEQ7UUFBOUQsWUFBTyxHQUFQLE9BQU8sQ0FBdUQ7SUFBRyxDQUFDOztBQURyRSx5QkFBSSxHQUFHLGlDQUFpQyxDQUFDOzs7SUFBekQsMEJBQXlEOztJQUM3Qyx1Q0FBcUU7O0FBR25GLE1BQU0sT0FBTyw2QkFBNkI7Ozs7SUFFeEMsWUFBbUIsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7SUFBRyxDQUFDOztBQURuQixrQ0FBSSxHQUFHLDBDQUEwQyxDQUFDOzs7SUFBbEUsbUNBQWtFOztJQUN0RCw2Q0FBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMYXlvdXQgfSBmcm9tICcuLi9tb2RlbHMvbGF5b3V0JztcblxuZXhwb3J0IGNsYXNzIEFkZE5hdmlnYXRpb25FbGVtZW50IHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW0xheW91dF0gQWRkIE5hdmlnYXRpb24gRWxlbWVudCc7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBwYXlsb2FkOiBMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnQgfCBMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnRbXSkge31cbn1cblxuZXhwb3J0IGNsYXNzIFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lIHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW0xheW91dF0gUmVtb3ZlIE5hdmlnYXRpb24gRWxlbWVudEJ5TmFtZSc7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBuYW1lOiBzdHJpbmcpIHt9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/account-layout/account-layout.component.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/account-layout/account-layout.component.js deleted file mode 100644 index 65eef0327d..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/account-layout/account-layout.component.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { Component } from '@angular/core'; -export class AccountLayoutComponent { -} -// required for dynamic component -AccountLayoutComponent.type = "account" /* account */; -AccountLayoutComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-account', - template: "\n" - }] } -]; -if (false) { - /** @type {?} */ - AccountLayoutComponent.type; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2FjY291bnQtbGF5b3V0L2FjY291bnQtbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQU8xQyxNQUFNLE9BQU8sc0JBQXNCOzs7QUFFMUIsMkJBQUksMkJBQXVCOztZQU5uQyxTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtnQkFDOUIsNkNBQThDO2FBQy9DOzs7O0lBR0MsNEJBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBlTGF5b3V0VHlwZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1sYXlvdXQtYWNjb3VudCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY2NvdW50LWxheW91dC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEFjY291bnRMYXlvdXRDb21wb25lbnQge1xuICAvLyByZXF1aXJlZCBmb3IgZHluYW1pYyBjb21wb25lbnRcbiAgc3RhdGljIHR5cGUgPSBlTGF5b3V0VHlwZS5hY2NvdW50O1xufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/application-layout/application-layout.component.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/application-layout/application-layout.component.js deleted file mode 100644 index 6982b9fbb2..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/application-layout/application-layout.component.js +++ /dev/null @@ -1,281 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import * as tslib_1 from "tslib"; -import { GetAppConfiguration, ConfigState, SetLanguage, SessionState, takeUntilDestroy, } from '@abp/ng.core'; -import { Component, QueryList, TemplateRef, ViewChild, ViewChildren, } from '@angular/core'; -import { NgbDropdown } from '@ng-bootstrap/ng-bootstrap'; -import { Navigate, RouterState } from '@ngxs/router-plugin'; -import { Select, Store } from '@ngxs/store'; -import { OAuthService } from 'angular-oauth2-oidc'; -import compare from 'just-compare'; -import { fromEvent, Observable } from 'rxjs'; -import { debounceTime, filter, map } from 'rxjs/operators'; -import snq from 'snq'; -import { AddNavigationElement } from '../../actions'; -import { LayoutState } from '../../states'; -export class ApplicationLayoutComponent { - /** - * @param {?} store - * @param {?} oauthService - */ - constructor(store, oauthService) { - this.store = store; - this.oauthService = oauthService; - this.isOpenChangePassword = false; - this.isOpenProfile = false; - this.rightPartElements = []; - this.trackByFn = (/** - * @param {?} _ - * @param {?} item - * @return {?} - */ - (_, item) => item.name); - this.trackElementByFn = (/** - * @param {?} _ - * @param {?} element - * @return {?} - */ - (_, element) => element); - } - /** - * @return {?} - */ - get visibleRoutes$() { - return this.routes$.pipe(map((/** - * @param {?} routes - * @return {?} - */ - routes => getVisibleRoutes(routes)))); - } - /** - * @return {?} - */ - get defaultLanguage$() { - return this.languages$.pipe(map((/** - * @param {?} languages - * @return {?} - */ - languages => snq((/** - * @return {?} - */ - () => languages.find((/** - * @param {?} lang - * @return {?} - */ - lang => lang.cultureName === this.selectedLangCulture)).displayName))), '')); - } - /** - * @return {?} - */ - get dropdownLanguages$() { - return this.languages$.pipe(map((/** - * @param {?} languages - * @return {?} - */ - languages => snq((/** - * @return {?} - */ - () => languages.filter((/** - * @param {?} lang - * @return {?} - */ - lang => lang.cultureName !== this.selectedLangCulture))))), [])); - } - /** - * @return {?} - */ - get selectedLangCulture() { - return this.store.selectSnapshot(SessionState.getLanguage); - } - /** - * @private - * @return {?} - */ - checkWindowWidth() { - setTimeout((/** - * @return {?} - */ - () => { - this.navbarRootDropdowns.forEach((/** - * @param {?} item - * @return {?} - */ - item => { - item.close(); - })); - if (window.innerWidth < 768) { - this.isDropdownChildDynamic = false; - } - else { - this.isDropdownChildDynamic = true; - } - }), 0); - } - /** - * @return {?} - */ - ngAfterViewInit() { - /** @type {?} */ - const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map((/** - * @param {?} __0 - * @return {?} - */ - ({ name }) => name)); - if (navigations.indexOf('LanguageRef') < 0) { - this.store.dispatch(new AddNavigationElement([ - { element: this.languageRef, order: 4, name: 'LanguageRef' }, - { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' }, - ])); - } - this.navElements$ - .pipe(map((/** - * @param {?} elements - * @return {?} - */ - elements => elements.map((/** - * @param {?} __0 - * @return {?} - */ - ({ element }) => element)))), filter((/** - * @param {?} elements - * @return {?} - */ - elements => !compare(elements, this.rightPartElements))), takeUntilDestroy(this)) - .subscribe((/** - * @param {?} elements - * @return {?} - */ - elements => { - setTimeout((/** - * @return {?} - */ - () => (this.rightPartElements = elements)), 0); - })); - this.checkWindowWidth(); - fromEvent(window, 'resize') - .pipe(takeUntilDestroy(this), debounceTime(250)) - .subscribe((/** - * @return {?} - */ - () => { - this.checkWindowWidth(); - })); - } - /** - * @return {?} - */ - ngOnDestroy() { } - /** - * @param {?} cultureName - * @return {?} - */ - onChangeLang(cultureName) { - this.store.dispatch(new SetLanguage(cultureName)); - } - /** - * @return {?} - */ - logout() { - this.oauthService.logOut(); - this.store.dispatch(new Navigate(['/'], null, { - state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url }, - })); - this.store.dispatch(new GetAppConfiguration()); - } -} -// required for dynamic component -ApplicationLayoutComponent.type = "application" /* application */; -ApplicationLayoutComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-application', - template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" - }] } -]; -/** @nocollapse */ -ApplicationLayoutComponent.ctorParameters = () => [ - { type: Store }, - { type: OAuthService } -]; -ApplicationLayoutComponent.propDecorators = { - currentUserRef: [{ type: ViewChild, args: ['currentUser', { static: false, read: TemplateRef },] }], - languageRef: [{ type: ViewChild, args: ['language', { static: false, read: TemplateRef },] }], - navbarRootDropdowns: [{ type: ViewChildren, args: ['navbarRootDropdown', { read: NgbDropdown },] }] -}; -tslib_1.__decorate([ - Select(ConfigState.getOne('routes')), - tslib_1.__metadata("design:type", Observable) -], ApplicationLayoutComponent.prototype, "routes$", void 0); -tslib_1.__decorate([ - Select(ConfigState.getOne('currentUser')), - tslib_1.__metadata("design:type", Observable) -], ApplicationLayoutComponent.prototype, "currentUser$", void 0); -tslib_1.__decorate([ - Select(ConfigState.getDeep('localization.languages')), - tslib_1.__metadata("design:type", Observable) -], ApplicationLayoutComponent.prototype, "languages$", void 0); -tslib_1.__decorate([ - Select(LayoutState.getNavigationElements), - tslib_1.__metadata("design:type", Observable) -], ApplicationLayoutComponent.prototype, "navElements$", void 0); -if (false) { - /** @type {?} */ - ApplicationLayoutComponent.type; - /** @type {?} */ - ApplicationLayoutComponent.prototype.routes$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.currentUser$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.languages$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.navElements$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.currentUserRef; - /** @type {?} */ - ApplicationLayoutComponent.prototype.languageRef; - /** @type {?} */ - ApplicationLayoutComponent.prototype.navbarRootDropdowns; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isOpenChangePassword; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isOpenProfile; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isDropdownChildDynamic; - /** @type {?} */ - ApplicationLayoutComponent.prototype.rightPartElements; - /** @type {?} */ - ApplicationLayoutComponent.prototype.trackByFn; - /** @type {?} */ - ApplicationLayoutComponent.prototype.trackElementByFn; - /** - * @type {?} - * @private - */ - ApplicationLayoutComponent.prototype.store; - /** - * @type {?} - * @private - */ - ApplicationLayoutComponent.prototype.oauthService; -} -/** - * @param {?} routes - * @return {?} - */ -function getVisibleRoutes(routes) { - return routes.reduce((/** - * @param {?} acc - * @param {?} val - * @return {?} - */ - (acc, val) => { - if (val.invisible) - return acc; - if (val.children && val.children.length) { - val.children = getVisibleRoutes(val.children); - } - return [...acc, val]; - }), []); -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24tbGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9hcHBsaWNhdGlvbi1sYXlvdXQvYXBwbGljYXRpb24tbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFHTCxtQkFBbUIsRUFDbkIsV0FBVyxFQUVYLFdBQVcsRUFDWCxZQUFZLEVBQ1osZ0JBQWdCLEdBQ2pCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFFTCxTQUFTLEVBRVQsU0FBUyxFQUNULFdBQVcsRUFFWCxTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzVELE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxHQUFHLE1BQU0sS0FBSyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBTTNDLE1BQU0sT0FBTywwQkFBMEI7Ozs7O0lBNERyQyxZQUFvQixLQUFZLEVBQVUsWUFBMEI7UUFBaEQsVUFBSyxHQUFMLEtBQUssQ0FB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QXNDOztJQUV0QyxtREFBK0I7O0lBRS9CLDREQUFnQzs7SUF5QmhDLHVEQUEyQzs7SUFFM0MsK0NBQW1FOztJQUVuRSxzREFBMkU7Ozs7O0lBRS9ELDJDQUFvQjs7Ozs7SUFBRSxrREFBa0M7Ozs7OztBQWtFdEUsU0FBUyxnQkFBZ0IsQ0FBQyxNQUF1QjtJQUMvQyxPQUFPLE1BQU0sQ0FBQyxNQUFNOzs7OztJQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFO1FBQ2hDLElBQUksR0FBRyxDQUFDLFNBQVM7WUFBRSxPQUFPLEdBQUcsQ0FBQztRQUU5QixJQUFJLEdBQUcsQ0FBQyxRQUFRLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUU7WUFDdkMsR0FBRyxDQUFDLFFBQVEsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDL0M7UUFFRCxPQUFPLENBQUMsR0FBRyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDdkIsQ0FBQyxHQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ1QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFCUCxcbiAgQXBwbGljYXRpb25Db25maWd1cmF0aW9uLFxuICBHZXRBcHBDb25maWd1cmF0aW9uLFxuICBDb25maWdTdGF0ZSxcbiAgZUxheW91dFR5cGUsXG4gIFNldExhbmd1YWdlLFxuICBTZXNzaW9uU3RhdGUsXG4gIHRha2VVbnRpbERlc3Ryb3ksXG59IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIE9uRGVzdHJveSxcbiAgUXVlcnlMaXN0LFxuICBUZW1wbGF0ZVJlZixcbiAgVHJhY2tCeUZ1bmN0aW9uLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ2JEcm9wZG93biB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcbmltcG9ydCB7IE5hdmlnYXRlLCBSb3V0ZXJTdGF0ZSB9IGZyb20gJ0BuZ3hzL3JvdXRlci1wbHVnaW4nO1xuaW1wb3J0IHsgU2VsZWN0LCBTdG9yZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IE9BdXRoU2VydmljZSB9IGZyb20gJ2FuZ3VsYXItb2F1dGgyLW9pZGMnO1xuaW1wb3J0IGNvbXBhcmUgZnJvbSAnanVzdC1jb21wYXJlJztcbmltcG9ydCB7IGZyb21FdmVudCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBmaWx0ZXIsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCBzbnEgZnJvbSAnc25xJztcbmltcG9ydCB7IEFkZE5hdmlnYXRpb25FbGVtZW50IH0gZnJvbSAnLi4vLi4vYWN0aW9ucyc7XG5pbXBvcnQgeyBMYXlvdXQgfSBmcm9tICcuLi8uLi9tb2RlbHMvbGF5b3V0JztcbmltcG9ydCB7IExheW91dFN0YXRlIH0gZnJvbSAnLi4vLi4vc3RhdGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWxheW91dC1hcHBsaWNhdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9hcHBsaWNhdGlvbi1sYXlvdXQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvbkxheW91dENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIC8vIHJlcXVpcmVkIGZvciBkeW5hbWljIGNvbXBvbmVudFxuICBzdGF0aWMgdHlwZSA9IGVMYXlvdXRUeXBlLmFwcGxpY2F0aW9uO1xuXG4gIEBTZWxlY3QoQ29uZmlnU3RhdGUuZ2V0T25lKCdyb3V0ZXMnKSlcbiAgcm91dGVzJDogT2JzZXJ2YWJsZTxBQlAuRnVsbFJvdXRlW10+O1xuXG4gIEBTZWxlY3QoQ29uZmlnU3RhdGUuZ2V0T25lKCdjdXJyZW50VXNlcicpKVxuICBjdXJyZW50VXNlciQ6IE9ic2VydmFibGU8QXBwbGljYXRpb25Db25maWd1cmF0aW9uLkN1cnJlbnRVc2VyPjtcblxuICBAU2VsZWN0KENvbmZpZ1N0YXRlLmdldERlZXAoJ2xvY2FsaXphdGlvbi5sYW5ndWFnZXMnKSlcbiAgbGFuZ3VhZ2VzJDogT2JzZXJ2YWJsZTxBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb24uTGFuZ3VhZ2VbXT47XG5cbiAgQFNlbGVjdChMYXlvdXRTdGF0ZS5nZXROYXZpZ2F0aW9uRWxlbWVudHMpXG4gIG5hdkVsZW1lbnRzJDogT2JzZXJ2YWJsZTxMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnRbXT47XG5cbiAgQFZpZXdDaGlsZCgnY3VycmVudFVzZXInLCB7IHN0YXRpYzogZmFsc2UsIHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gIGN1cnJlbnRVc2VyUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBWaWV3Q2hpbGQoJ2xhbmd1YWdlJywgeyBzdGF0aWM6IGZhbHNlLCByZWFkOiBUZW1wbGF0ZVJlZiB9KVxuICBsYW5ndWFnZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAVmlld0NoaWxkcmVuKCduYXZiYXJSb290RHJvcGRvd24nLCB7IHJlYWQ6IE5nYkRyb3Bkb3duIH0pXG4gIG5hdmJhclJvb3REcm9wZG93bnM6IFF1ZXJ5TGlzdDxOZ2JEcm9wZG93bj47XG5cbiAgaXNPcGVuQ2hhbmdlUGFzc3dvcmQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBpc09wZW5Qcm9maWxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgaXNEcm9wZG93bkNoaWxkRHluYW1pYzogYm9vbGVhbjtcblxuICBnZXQgdmlzaWJsZVJvdXRlcyQoKTogT2JzZXJ2YWJsZTxBQlAuRnVsbFJvdXRlW10+IHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXMkLnBpcGUobWFwKHJvdXRlcyA9PiBnZXRWaXNpYmxlUm91dGVzKHJvdXRlcykpKTtcbiAgfVxuXG4gIGdldCBkZWZhdWx0TGFuZ3VhZ2UkKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMubGFuZ3VhZ2VzJC5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICBsYW5ndWFnZXMgPT4gc25xKCgpID0+IGxhbmd1YWdlcy5maW5kKGxhbmcgPT4gbGFuZy5jdWx0dXJlTmFtZSA9PT0gdGhpcy5zZWxlY3RlZExhbmdDdWx0dXJlKS5kaXNwbGF5TmFtZSksXG4gICAgICAgICcnLFxuICAgICAgKSxcbiAgICApO1xuICB9XG5cbiAgZ2V0IGRyb3Bkb3duTGFuZ3VhZ2VzJCgpOiBPYnNlcnZhYmxlPEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbi5MYW5ndWFnZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMubGFuZ3VhZ2VzJC5waXBlKFxuICAgICAgbWFwKGxhbmd1YWdlcyA9PiBzbnEoKCkgPT4gbGFuZ3VhZ2VzLmZpbHRlcihsYW5nID0+IGxhbmcuY3VsdHVyZU5hbWUgIT09IHRoaXMuc2VsZWN0ZWRMYW5nQ3VsdHVyZSkpLCBbXSksXG4gICAgKTtcbiAgfVxuXG4gIGdldCBzZWxlY3RlZExhbmdDdWx0dXJlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoU2Vzc2lvblN0YXRlLmdldExhbmd1YWdlKTtcbiAgfVxuXG4gIHJpZ2h0UGFydEVsZW1lbnRzOiBUZW1wbGF0ZVJlZjxhbnk+W10gPSBbXTtcblxuICB0cmFja0J5Rm46IFRyYWNrQnlGdW5jdGlvbjxBQlAuRnVsbFJvdXRlPiA9IChfLCBpdGVtKSA9PiBpdGVtLm5hbWU7XG5cbiAgdHJhY2tFbGVtZW50QnlGbjogVHJhY2tCeUZ1bmN0aW9uPEFCUC5GdWxsUm91dGU+ID0gKF8sIGVsZW1lbnQpID0+IGVsZW1lbnQ7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmUsIHByaXZhdGUgb2F1dGhTZXJ2aWNlOiBPQXV0aFNlcnZpY2UpIHt9XG5cbiAgcHJpdmF0ZSBjaGVja1dpbmRvd1dpZHRoKCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5uYXZiYXJSb290RHJvcGRvd25zLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICAgIGl0ZW0uY2xvc2UoKTtcbiAgICAgIH0pO1xuICAgICAgaWYgKHdpbmRvdy5pbm5lcldpZHRoIDwgNzY4KSB7XG4gICAgICAgIHRoaXMuaXNEcm9wZG93bkNoaWxkRHluYW1pYyA9IGZhbHNlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pc0Ryb3Bkb3duQ2hpbGREeW5hbWljID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9LCAwKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBjb25zdCBuYXZpZ2F0aW9ucyA9IHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoTGF5b3V0U3RhdGUuZ2V0TmF2aWdhdGlvbkVsZW1lbnRzKS5tYXAoKHsgbmFtZSB9KSA9PiBuYW1lKTtcblxuICAgIGlmIChuYXZpZ2F0aW9ucy5pbmRleE9mKCdMYW5ndWFnZVJlZicpIDwgMCkge1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgbmV3IEFkZE5hdmlnYXRpb25FbGVtZW50KFtcbiAgICAgICAgICB7IGVsZW1lbnQ6IHRoaXMubGFuZ3VhZ2VSZWYsIG9yZGVyOiA0LCBuYW1lOiAnTGFuZ3VhZ2VSZWYnIH0sXG4gICAgICAgICAgeyBlbGVtZW50OiB0aGlzLmN1cnJlbnRVc2VyUmVmLCBvcmRlcjogNSwgbmFtZTogJ0N1cnJlbnRVc2VyUmVmJyB9LFxuICAgICAgICBdKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5uYXZFbGVtZW50cyRcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoZWxlbWVudHMgPT4gZWxlbWVudHMubWFwKCh7IGVsZW1lbnQgfSkgPT4gZWxlbWVudCkpLFxuICAgICAgICBmaWx0ZXIoZWxlbWVudHMgPT4gIWNvbXBhcmUoZWxlbWVudHMsIHRoaXMucmlnaHRQYXJ0RWxlbWVudHMpKSxcbiAgICAgICAgdGFrZVVudGlsRGVzdHJveSh0aGlzKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoZWxlbWVudHMgPT4ge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+ICh0aGlzLnJpZ2h0UGFydEVsZW1lbnRzID0gZWxlbWVudHMpLCAwKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5jaGVja1dpbmRvd1dpZHRoKCk7XG5cbiAgICBmcm9tRXZlbnQod2luZG93LCAncmVzaXplJylcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95KHRoaXMpLFxuICAgICAgICBkZWJvdW5jZVRpbWUoMjUwKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmNoZWNrV2luZG93V2lkdGgoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7fVxuXG4gIG9uQ2hhbmdlTGFuZyhjdWx0dXJlTmFtZTogc3RyaW5nKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgU2V0TGFuZ3VhZ2UoY3VsdHVyZU5hbWUpKTtcbiAgfVxuXG4gIGxvZ291dCgpIHtcbiAgICB0aGlzLm9hdXRoU2VydmljZS5sb2dPdXQoKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgbmV3IE5hdmlnYXRlKFsnLyddLCBudWxsLCB7XG4gICAgICAgIHN0YXRlOiB7IHJlZGlyZWN0VXJsOiB0aGlzLnN0b3JlLnNlbGVjdFNuYXBzaG90KFJvdXRlclN0YXRlKS5zdGF0ZS51cmwgfSxcbiAgICAgIH0pLFxuICAgICk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChuZXcgR2V0QXBwQ29uZmlndXJhdGlvbigpKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRWaXNpYmxlUm91dGVzKHJvdXRlczogQUJQLkZ1bGxSb3V0ZVtdKSB7XG4gIHJldHVybiByb3V0ZXMucmVkdWNlKChhY2MsIHZhbCkgPT4ge1xuICAgIGlmICh2YWwuaW52aXNpYmxlKSByZXR1cm4gYWNjO1xuXG4gICAgaWYgKHZhbC5jaGlsZHJlbiAmJiB2YWwuY2hpbGRyZW4ubGVuZ3RoKSB7XG4gICAgICB2YWwuY2hpbGRyZW4gPSBnZXRWaXNpYmxlUm91dGVzKHZhbC5jaGlsZHJlbik7XG4gICAgfVxuXG4gICAgcmV0dXJuIFsuLi5hY2MsIHZhbF07XG4gIH0sIFtdKTtcbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/empty-layout/empty-layout.component.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/empty-layout/empty-layout.component.js deleted file mode 100644 index 2faa8d8e3c..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/empty-layout/empty-layout.component.js +++ /dev/null @@ -1,22 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { Component } from '@angular/core'; -export class EmptyLayoutComponent { -} -EmptyLayoutComponent.type = "empty" /* empty */; -EmptyLayoutComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-empty', - template: ` - Layout-empty - - ` - }] } -]; -if (false) { - /** @type {?} */ - EmptyLayoutComponent.type; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHktbGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9lbXB0eS1sYXlvdXQvZW1wdHktbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVUxQyxNQUFNLE9BQU8sb0JBQW9COztBQUN4Qix5QkFBSSx1QkFBcUI7O1lBUmpDLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2dCQUM1QixRQUFRLEVBQUU7OztHQUdUO2FBQ0Y7Ozs7SUFFQywwQkFBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGVMYXlvdXRUeXBlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWxheW91dC1lbXB0eScsXG4gIHRlbXBsYXRlOiBgXG4gICAgTGF5b3V0LWVtcHR5XG4gICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBFbXB0eUxheW91dENvbXBvbmVudCB7XG4gIHN0YXRpYyB0eXBlID0gZUxheW91dFR5cGUuZW1wdHk7XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/index.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/index.js deleted file mode 100644 index e64ecf3cbd..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/index.js +++ /dev/null @@ -1,8 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -export { AccountLayoutComponent } from './account-layout/account-layout.component'; -export { ApplicationLayoutComponent } from './application-layout/application-layout.component'; -export { EmptyLayoutComponent } from './empty-layout/empty-layout.component'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLHVDQUFjLDJDQUEyQyxDQUFDO0FBQzFELDJDQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLHFDQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY2NvdW50LWxheW91dC9hY2NvdW50LWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9hcHBsaWNhdGlvbi1sYXlvdXQvYXBwbGljYXRpb24tbGF5b3V0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2VtcHR5LWxheW91dC9lbXB0eS1sYXlvdXQuY29tcG9uZW50JztcbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout/layout.component.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout/layout.component.js deleted file mode 100644 index 3f4c43a1e9..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/components/layout/layout.component.js +++ /dev/null @@ -1,44 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { ConfigState } from '@abp/ng.core'; -import { slideFromBottom } from '@abp/ng.theme.shared'; -import { Component } from '@angular/core'; -import { Store } from '@ngxs/store'; -export class LayoutComponent { - /** - * @param {?} store - */ - constructor(store) { - this.store = store; - this.isCollapsed = true; - } - /** - * @return {?} - */ - get appInfo() { - return this.store.selectSnapshot(ConfigState.getApplicationInfo); - } -} -LayoutComponent.decorators = [ - { type: Component, args: [{ - selector: ' abp-layout', - template: "\n\n\n \n\n\n\n\n\n\n {{ appInfo.name }}\n\n", - animations: [slideFromBottom] - }] } -]; -/** @nocollapse */ -LayoutComponent.ctorParameters = () => [ - { type: Store } -]; -if (false) { - /** @type {?} */ - LayoutComponent.prototype.isCollapsed; - /** - * @type {?} - * @private - */ - LayoutComponent.prototype.store; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFVLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBT3BDLE1BQU0sT0FBTyxlQUFlOzs7O0lBTzFCLFlBQW9CLEtBQVk7UUFBWixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBTmhDLGdCQUFXLEdBQVksSUFBSSxDQUFDO0lBTU8sQ0FBQzs7OztJQUpwQyxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ25FLENBQUM7OztZQVZGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsYUFBYTtnQkFDdkIsZzhCQUFzQztnQkFDdEMsVUFBVSxFQUFFLENBQUMsZUFBZSxDQUFDO2FBQzlCOzs7O1lBTlEsS0FBSzs7OztJQVFaLHNDQUE0Qjs7Ozs7SUFNaEIsZ0NBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uZmlnLCBDb25maWdTdGF0ZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBzbGlkZUZyb21Cb3R0b20gfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICcgYWJwLWxheW91dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9sYXlvdXQuY29tcG9uZW50Lmh0bWwnLFxuICBhbmltYXRpb25zOiBbc2xpZGVGcm9tQm90dG9tXSxcbn0pXG5leHBvcnQgY2xhc3MgTGF5b3V0Q29tcG9uZW50IHtcbiAgaXNDb2xsYXBzZWQ6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIGdldCBhcHBJbmZvKCk6IENvbmZpZy5BcHBsaWNhdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoQ29uZmlnU3RhdGUuZ2V0QXBwbGljYXRpb25JbmZvKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlKSB7fVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/models/index.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/models/index.js deleted file mode 100644 index 370665b7b0..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/models/index.js +++ /dev/null @@ -1,6 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -export {} from './layout'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL21vZGVscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsZUFBYyxVQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xheW91dCc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/models/layout.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/models/layout.js deleted file mode 100644 index d93212a06d..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/models/layout.js +++ /dev/null @@ -1,30 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -export var Layout; -(function (Layout) { - /** - * @record - */ - function State() { } - Layout.State = State; - if (false) { - /** @type {?} */ - State.prototype.navigationElements; - } - /** - * @record - */ - function NavigationElement() { } - Layout.NavigationElement = NavigationElement; - if (false) { - /** @type {?} */ - NavigationElement.prototype.name; - /** @type {?} */ - NavigationElement.prototype.element; - /** @type {?|undefined} */ - NavigationElement.prototype.order; - } -})(Layout || (Layout = {})); -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbHMvbGF5b3V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFFQSxNQUFNLEtBQVcsTUFBTSxDQVV0QjtBQVZELFdBQWlCLE1BQU07Ozs7SUFDckIsb0JBRUM7Ozs7UUFEQyxtQ0FBd0M7Ozs7O0lBRzFDLGdDQUlDOzs7O1FBSEMsaUNBQWE7O1FBQ2Isb0NBQTBCOztRQUMxQixrQ0FBZTs7QUFFbkIsQ0FBQyxFQVZnQixNQUFNLEtBQU4sTUFBTSxRQVV0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBuYW1lc3BhY2UgTGF5b3V0IHtcbiAgZXhwb3J0IGludGVyZmFjZSBTdGF0ZSB7XG4gICAgbmF2aWdhdGlvbkVsZW1lbnRzOiBOYXZpZ2F0aW9uRWxlbWVudFtdO1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBOYXZpZ2F0aW9uRWxlbWVudCB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGVsZW1lbnQ6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgb3JkZXI/OiBudW1iZXI7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/states/layout.state.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/states/layout.state.js deleted file mode 100644 index 60a2136fa8..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/states/layout.state.js +++ /dev/null @@ -1,105 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import * as tslib_1 from "tslib"; -import { State, Action, Selector } from '@ngxs/store'; -import { AddNavigationElement, RemoveNavigationElementByName } from '../actions/layout.actions'; -import snq from 'snq'; -let LayoutState = class LayoutState { - /** - * @param {?} __0 - * @return {?} - */ - static getNavigationElements({ navigationElements }) { - return navigationElements; - } - /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - layoutAddAction({ getState, patchState }, { payload = [] }) { - let { navigationElements } = getState(); - if (!Array.isArray(payload)) { - payload = [payload]; - } - if (navigationElements.length) { - payload = snq((/** - * @return {?} - */ - () => ((/** @type {?} */ (payload))).filter((/** - * @param {?} __0 - * @return {?} - */ - ({ name }) => navigationElements.findIndex((/** - * @param {?} nav - * @return {?} - */ - nav => nav.name === name)) < 0))), []); - } - if (!payload.length) - return; - navigationElements = [...navigationElements, ...payload] - .map((/** - * @param {?} element - * @return {?} - */ - element => (Object.assign({}, element, { order: element.order || 99 })))) - .sort((/** - * @param {?} a - * @param {?} b - * @return {?} - */ - (a, b) => a.order - b.order)); - return patchState({ - navigationElements, - }); - } - /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - layoutRemoveAction({ getState, patchState }, { name }) { - let { navigationElements } = getState(); - /** @type {?} */ - const index = navigationElements.findIndex((/** - * @param {?} element - * @return {?} - */ - element => element.name === name)); - if (index > -1) { - navigationElements = navigationElements.splice(index, 1); - } - return patchState({ - navigationElements, - }); - } -}; -tslib_1.__decorate([ - Action(AddNavigationElement), - tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object, AddNavigationElement]), - tslib_1.__metadata("design:returntype", void 0) -], LayoutState.prototype, "layoutAddAction", null); -tslib_1.__decorate([ - Action(RemoveNavigationElementByName), - tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object, RemoveNavigationElementByName]), - tslib_1.__metadata("design:returntype", void 0) -], LayoutState.prototype, "layoutRemoveAction", null); -tslib_1.__decorate([ - Selector(), - tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object]), - tslib_1.__metadata("design:returntype", Array) -], LayoutState, "getNavigationElements", null); -LayoutState = tslib_1.__decorate([ - State({ - name: 'LayoutState', - defaults: (/** @type {?} */ ({ navigationElements: [] })), - }) -], LayoutState); -export { LayoutState }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LnN0YXRlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi9zdGF0ZXMvbGF5b3V0LnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWdCLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUdoRyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7SUFNVCxXQUFXLFNBQVgsV0FBVzs7Ozs7SUFFdEIsTUFBTSxDQUFDLHFCQUFxQixDQUFDLEVBQUUsa0JBQWtCLEVBQWdCO1FBQy9ELE9BQU8sa0JBQWtCLENBQUM7SUFDNUIsQ0FBQzs7Ozs7O0lBR0QsZUFBZSxDQUFDLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBOEIsRUFBRSxFQUFFLE9BQU8sR0FBRyxFQUFFLEVBQXdCO1lBQ3RHLEVBQUUsa0JBQWtCLEVBQUUsR0FBRyxRQUFRLEVBQUU7UUFFdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDM0IsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDckI7UUFFRCxJQUFJLGtCQUFrQixDQUFDLE1BQU0sRUFBRTtZQUM3QixPQUFPLEdBQUcsR0FBRzs7O1lBQ1gsR0FBRyxFQUFFLENBQ0gsQ0FBQyxtQkFBQSxPQUFPLEVBQThCLENBQUMsQ0FBQyxNQUFNOzs7O1lBQzVDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsU0FBUzs7OztZQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUMsR0FBRyxDQUFDLEVBQ3pFLEdBQ0gsRUFBRSxDQUNILENBQUM7U0FDSDtRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTtZQUFFLE9BQU87UUFFNUIsa0JBQWtCLEdBQUcsQ0FBQyxHQUFHLGtCQUFrQixFQUFFLEdBQUcsT0FBTyxDQUFDO2FBQ3JELEdBQUc7Ozs7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDLG1CQUFNLE9BQU8sSUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLElBQUcsRUFBQzthQUM1RCxJQUFJOzs7OztRQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFDLENBQUM7UUFFckMsT0FBTyxVQUFVLENBQUM7WUFDaEIsa0JBQWtCO1NBQ25CLENBQUMsQ0FBQztJQUNMLENBQUM7Ozs7OztJQUdELGtCQUFrQixDQUFDLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBOEIsRUFBRSxFQUFFLElBQUksRUFBaUM7WUFDMUcsRUFBRSxrQkFBa0IsRUFBRSxHQUFHLFFBQVEsRUFBRTs7Y0FFakMsS0FBSyxHQUFHLGtCQUFrQixDQUFDLFNBQVM7Ozs7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFDO1FBRTVFLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ2Qsa0JBQWtCLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMxRDtRQUVELE9BQU8sVUFBVSxDQUFDO1lBQ2hCLGtCQUFrQjtTQUNuQixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YsQ0FBQTtBQTFDQztJQURDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQzs7cURBQzJELG9CQUFvQjs7a0RBMEIzRztBQUdEO0lBREMsTUFBTSxDQUFDLDZCQUE2QixDQUFDOztxREFDNkMsNkJBQTZCOztxREFZL0c7QUE5Q0Q7SUFEQyxRQUFRLEVBQUU7Ozs7OENBR1Y7QUFKVSxXQUFXO0lBSnZCLEtBQUssQ0FBZTtRQUNuQixJQUFJLEVBQUUsYUFBYTtRQUNuQixRQUFRLEVBQUUsbUJBQUEsRUFBRSxrQkFBa0IsRUFBRSxFQUFFLEVBQUUsRUFBZ0I7S0FDckQsQ0FBQztHQUNXLFdBQVcsQ0FpRHZCO1NBakRZLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdGF0ZSwgQWN0aW9uLCBTdGF0ZUNvbnRleHQsIFNlbGVjdG9yIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgQWRkTmF2aWdhdGlvbkVsZW1lbnQsIFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lIH0gZnJvbSAnLi4vYWN0aW9ucy9sYXlvdXQuYWN0aW9ucyc7XG5pbXBvcnQgeyBMYXlvdXQgfSBmcm9tICcuLi9tb2RlbHMvbGF5b3V0JztcbmltcG9ydCB7IFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgc25xIGZyb20gJ3NucSc7XG5cbkBTdGF0ZTxMYXlvdXQuU3RhdGU+KHtcbiAgbmFtZTogJ0xheW91dFN0YXRlJyxcbiAgZGVmYXVsdHM6IHsgbmF2aWdhdGlvbkVsZW1lbnRzOiBbXSB9IGFzIExheW91dC5TdGF0ZSxcbn0pXG5leHBvcnQgY2xhc3MgTGF5b3V0U3RhdGUge1xuICBAU2VsZWN0b3IoKVxuICBzdGF0aWMgZ2V0TmF2aWdhdGlvbkVsZW1lbnRzKHsgbmF2aWdhdGlvbkVsZW1lbnRzIH06IExheW91dC5TdGF0ZSk6IExheW91dC5OYXZpZ2F0aW9uRWxlbWVudFtdIHtcbiAgICByZXR1cm4gbmF2aWdhdGlvbkVsZW1lbnRzO1xuICB9XG5cbiAgQEFjdGlvbihBZGROYXZpZ2F0aW9uRWxlbWVudClcbiAgbGF5b3V0QWRkQWN0aW9uKHsgZ2V0U3RhdGUsIHBhdGNoU3RhdGUgfTogU3RhdGVDb250ZXh0PExheW91dC5TdGF0ZT4sIHsgcGF5bG9hZCA9IFtdIH06IEFkZE5hdmlnYXRpb25FbGVtZW50KSB7XG4gICAgbGV0IHsgbmF2aWdhdGlvbkVsZW1lbnRzIH0gPSBnZXRTdGF0ZSgpO1xuXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KHBheWxvYWQpKSB7XG4gICAgICBwYXlsb2FkID0gW3BheWxvYWRdO1xuICAgIH1cblxuICAgIGlmIChuYXZpZ2F0aW9uRWxlbWVudHMubGVuZ3RoKSB7XG4gICAgICBwYXlsb2FkID0gc25xKFxuICAgICAgICAoKSA9PlxuICAgICAgICAgIChwYXlsb2FkIGFzIExheW91dC5OYXZpZ2F0aW9uRWxlbWVudFtdKS5maWx0ZXIoXG4gICAgICAgICAgICAoeyBuYW1lIH0pID0+IG5hdmlnYXRpb25FbGVtZW50cy5maW5kSW5kZXgobmF2ID0+IG5hdi5uYW1lID09PSBuYW1lKSA8IDAsXG4gICAgICAgICAgKSxcbiAgICAgICAgW10sXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICghcGF5bG9hZC5sZW5ndGgpIHJldHVybjtcblxuICAgIG5hdmlnYXRpb25FbGVtZW50cyA9IFsuLi5uYXZpZ2F0aW9uRWxlbWVudHMsIC4uLnBheWxvYWRdXG4gICAgICAubWFwKGVsZW1lbnQgPT4gKHsgLi4uZWxlbWVudCwgb3JkZXI6IGVsZW1lbnQub3JkZXIgfHwgOTkgfSkpXG4gICAgICAuc29ydCgoYSwgYikgPT4gYS5vcmRlciAtIGIub3JkZXIpO1xuXG4gICAgcmV0dXJuIHBhdGNoU3RhdGUoe1xuICAgICAgbmF2aWdhdGlvbkVsZW1lbnRzLFxuICAgIH0pO1xuICB9XG5cbiAgQEFjdGlvbihSZW1vdmVOYXZpZ2F0aW9uRWxlbWVudEJ5TmFtZSlcbiAgbGF5b3V0UmVtb3ZlQWN0aW9uKHsgZ2V0U3RhdGUsIHBhdGNoU3RhdGUgfTogU3RhdGVDb250ZXh0PExheW91dC5TdGF0ZT4sIHsgbmFtZSB9OiBSZW1vdmVOYXZpZ2F0aW9uRWxlbWVudEJ5TmFtZSkge1xuICAgIGxldCB7IG5hdmlnYXRpb25FbGVtZW50cyB9ID0gZ2V0U3RhdGUoKTtcblxuICAgIGNvbnN0IGluZGV4ID0gbmF2aWdhdGlvbkVsZW1lbnRzLmZpbmRJbmRleChlbGVtZW50ID0+IGVsZW1lbnQubmFtZSA9PT0gbmFtZSk7XG5cbiAgICBpZiAoaW5kZXggPiAtMSkge1xuICAgICAgbmF2aWdhdGlvbkVsZW1lbnRzID0gbmF2aWdhdGlvbkVsZW1lbnRzLnNwbGljZShpbmRleCwgMSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBhdGNoU3RhdGUoe1xuICAgICAgbmF2aWdhdGlvbkVsZW1lbnRzLFxuICAgIH0pO1xuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/theme-basic.module.js b/npm/ng-packs/dist/theme-basic/esm2015/lib/theme-basic.module.js deleted file mode 100644 index ad646507dc..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/theme-basic.module.js +++ /dev/null @@ -1,37 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { CoreModule } from '@abp/ng.core'; -import { ThemeSharedModule } from '@abp/ng.theme.shared'; -import { NgModule } from '@angular/core'; -import { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; -import { NgxValidateCoreModule } from '@ngx-validate/core'; -import { NgxsModule } from '@ngxs/store'; -import { ToastModule } from 'primeng/toast'; -import { AccountLayoutComponent } from './components/account-layout/account-layout.component'; -import { ApplicationLayoutComponent } from './components/application-layout/application-layout.component'; -import { EmptyLayoutComponent } from './components/empty-layout/empty-layout.component'; -import { LayoutComponent } from './components/layout/layout.component'; -import { LayoutState } from './states/layout.state'; -/** @type {?} */ -export const LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent]; -export class ThemeBasicModule { -} -ThemeBasicModule.decorators = [ - { type: NgModule, args: [{ - declarations: [...LAYOUTS, LayoutComponent], - imports: [ - CoreModule, - ThemeSharedModule, - NgbCollapseModule, - NgbDropdownModule, - ToastModule, - NgxValidateCoreModule, - NgxsModule.forFeature([LayoutState]), - ], - exports: [...LAYOUTS], - entryComponents: [...LAYOUTS], - },] } -]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtYmFzaWMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi90aGVtZS1iYXNpYy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDOUYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDMUcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFFcEQsTUFBTSxPQUFPLE9BQU8sR0FBRyxDQUFDLDBCQUEwQixFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixDQUFDO0FBZ0JqRyxNQUFNLE9BQU8sZ0JBQWdCOzs7WUFkNUIsUUFBUSxTQUFDO2dCQUNSLFlBQVksRUFBRSxDQUFDLEdBQUcsT0FBTyxFQUFFLGVBQWUsQ0FBQztnQkFDM0MsT0FBTyxFQUFFO29CQUNQLFVBQVU7b0JBQ1YsaUJBQWlCO29CQUNqQixpQkFBaUI7b0JBQ2pCLGlCQUFpQjtvQkFDakIsV0FBVztvQkFDWCxxQkFBcUI7b0JBQ3JCLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztpQkFDckM7Z0JBQ0QsT0FBTyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUM7Z0JBQ3JCLGVBQWUsRUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDO2FBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ2JDb2xsYXBzZU1vZHVsZSwgTmdiRHJvcGRvd25Nb2R1bGUgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xuaW1wb3J0IHsgTmd4c01vZHVsZSB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IFRvYXN0TW9kdWxlIH0gZnJvbSAncHJpbWVuZy90b2FzdCc7XG5pbXBvcnQgeyBBY2NvdW50TGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2FjY291bnQtbGF5b3V0L2FjY291bnQtbGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbkxheW91dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hcHBsaWNhdGlvbi1sYXlvdXQvYXBwbGljYXRpb24tbGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFbXB0eUxheW91dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9lbXB0eS1sYXlvdXQvZW1wdHktbGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbGF5b3V0L2xheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGF5b3V0U3RhdGUgfSBmcm9tICcuL3N0YXRlcy9sYXlvdXQuc3RhdGUnO1xuXG5leHBvcnQgY29uc3QgTEFZT1VUUyA9IFtBcHBsaWNhdGlvbkxheW91dENvbXBvbmVudCwgQWNjb3VudExheW91dENvbXBvbmVudCwgRW1wdHlMYXlvdXRDb21wb25lbnRdO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFsuLi5MQVlPVVRTLCBMYXlvdXRDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29yZU1vZHVsZSxcbiAgICBUaGVtZVNoYXJlZE1vZHVsZSxcbiAgICBOZ2JDb2xsYXBzZU1vZHVsZSxcbiAgICBOZ2JEcm9wZG93bk1vZHVsZSxcbiAgICBUb2FzdE1vZHVsZSxcbiAgICBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUsXG4gICAgTmd4c01vZHVsZS5mb3JGZWF0dXJlKFtMYXlvdXRTdGF0ZV0pLFxuICBdLFxuICBleHBvcnRzOiBbLi4uTEFZT1VUU10sXG4gIGVudHJ5Q29tcG9uZW50czogWy4uLkxBWU9VVFNdLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVtZUJhc2ljTW9kdWxlIHt9XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/public-api.js b/npm/ng-packs/dist/theme-basic/esm2015/public-api.js deleted file mode 100644 index 42fd1f4364..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm2015/public-api.js +++ /dev/null @@ -1,13 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -/* - * Public API Surface of theme-basic - */ -export { LAYOUTS, ThemeBasicModule } from './lib/theme-basic.module'; -export { AddNavigationElement, RemoveNavigationElementByName } from './lib/actions'; -export { AccountLayoutComponent, ApplicationLayoutComponent, EmptyLayoutComponent } from './lib/components'; -export {} from './lib/models'; -export { LayoutState } from './lib/states'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSwwQ0FBYywwQkFBMEIsQ0FBQztBQUN6QyxvRUFBYyxlQUFlLENBQUM7QUFDOUIseUZBQWMsa0JBQWtCLENBQUM7QUFDakMsZUFBYyxjQUFjLENBQUM7QUFDN0IsNEJBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiB0aGVtZS1iYXNpY1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3RoZW1lLWJhc2ljLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXRlcyc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/abp-ng.theme.basic.js b/npm/ng-packs/dist/theme-basic/esm5/abp-ng.theme.basic.js deleted file mode 100644 index cf2d483fbb..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/abp-ng.theme.basic.js +++ /dev/null @@ -1,16 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -/** - * Generated bundle index. Do not edit. - */ -export { LAYOUTS, ThemeBasicModule, AddNavigationElement, RemoveNavigationElementByName, AccountLayoutComponent, ApplicationLayoutComponent, EmptyLayoutComponent, LayoutState } from './public-api'; -export { AddNavigationElement as ɵg, RemoveNavigationElementByName as ɵh } from './lib/actions/layout.actions'; -export { AccountLayoutComponent as ɵc } from './lib/components/account-layout/account-layout.component'; -export { ApplicationLayoutComponent as ɵa } from './lib/components/application-layout/application-layout.component'; -export { EmptyLayoutComponent as ɵd } from './lib/components/empty-layout/empty-layout.component'; -export { LayoutComponent as ɵe } from './lib/components/layout/layout.component'; -export { LayoutState as ɵb } from './lib/states'; -export { LayoutState as ɵf } from './lib/states/layout.state'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLmJhc2ljLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImFicC1uZy50aGVtZS5iYXNpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsc0xBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxvQkFBb0IsSUFBSSxFQUFFLEVBQUMsNkJBQTZCLElBQUksRUFBRSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDNUcsT0FBTyxFQUFDLHNCQUFzQixJQUFJLEVBQUUsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQ3RHLE9BQU8sRUFBQywwQkFBMEIsSUFBSSxFQUFFLEVBQUMsTUFBTSxrRUFBa0UsQ0FBQztBQUNsSCxPQUFPLEVBQUMsb0JBQW9CLElBQUksRUFBRSxFQUFDLE1BQU0sc0RBQXNELENBQUM7QUFDaEcsT0FBTyxFQUFDLGVBQWUsSUFBSSxFQUFFLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUUvRSxPQUFPLEVBQUMsV0FBVyxJQUFJLEVBQUUsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUMvQyxPQUFPLEVBQUMsV0FBVyxJQUFJLEVBQUUsRUFBQyxNQUFNLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0FkZE5hdmlnYXRpb25FbGVtZW50IGFzIMm1ZyxSZW1vdmVOYXZpZ2F0aW9uRWxlbWVudEJ5TmFtZSBhcyDJtWh9IGZyb20gJy4vbGliL2FjdGlvbnMvbGF5b3V0LmFjdGlvbnMnO1xuZXhwb3J0IHtBY2NvdW50TGF5b3V0Q29tcG9uZW50IGFzIMm1Y30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9hY2NvdW50LWxheW91dC9hY2NvdW50LWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtBcHBsaWNhdGlvbkxheW91dENvbXBvbmVudCBhcyDJtWF9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXBwbGljYXRpb24tbGF5b3V0L2FwcGxpY2F0aW9uLWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtFbXB0eUxheW91dENvbXBvbmVudCBhcyDJtWR9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvZW1wdHktbGF5b3V0L2VtcHR5LWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0IHtMYXlvdXRDb21wb25lbnQgYXMgybVlfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xheW91dC9sYXlvdXQuY29tcG9uZW50JztcbmV4cG9ydCB7TGF5b3V0IGFzIMm1aX0gZnJvbSAnLi9saWIvbW9kZWxzL2xheW91dCc7XG5leHBvcnQge0xheW91dFN0YXRlIGFzIMm1Yn0gZnJvbSAnLi9saWIvc3RhdGVzJztcbmV4cG9ydCB7TGF5b3V0U3RhdGUgYXMgybVmfSBmcm9tICcuL2xpYi9zdGF0ZXMvbGF5b3V0LnN0YXRlJzsiXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/actions/index.js b/npm/ng-packs/dist/theme-basic/esm5/lib/actions/index.js deleted file mode 100644 index acfe624a35..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/actions/index.js +++ /dev/null @@ -1,6 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -export { AddNavigationElement, RemoveNavigationElementByName } from './layout.actions'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2FjdGlvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLG9FQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sYXlvdXQuYWN0aW9ucyc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/actions/layout.actions.js b/npm/ng-packs/dist/theme-basic/esm5/lib/actions/layout.actions.js deleted file mode 100644 index d6ce1e6d93..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/actions/layout.actions.js +++ /dev/null @@ -1,33 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var AddNavigationElement = /** @class */ (function () { - function AddNavigationElement(payload) { - this.payload = payload; - } - AddNavigationElement.type = '[Layout] Add Navigation Element'; - return AddNavigationElement; -}()); -export { AddNavigationElement }; -if (false) { - /** @type {?} */ - AddNavigationElement.type; - /** @type {?} */ - AddNavigationElement.prototype.payload; -} -var RemoveNavigationElementByName = /** @class */ (function () { - function RemoveNavigationElementByName(name) { - this.name = name; - } - RemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; - return RemoveNavigationElementByName; -}()); -export { RemoveNavigationElementByName }; -if (false) { - /** @type {?} */ - RemoveNavigationElementByName.type; - /** @type {?} */ - RemoveNavigationElementByName.prototype.name; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmFjdGlvbnMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2FjdGlvbnMvbGF5b3V0LmFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUVBO0lBRUUsOEJBQW1CLE9BQThEO1FBQTlELFlBQU8sR0FBUCxPQUFPLENBQXVEO0lBQUcsQ0FBQztJQURyRSx5QkFBSSxHQUFHLGlDQUFpQyxDQUFDO0lBRTNELDJCQUFDO0NBQUEsQUFIRCxJQUdDO1NBSFksb0JBQW9COzs7SUFDL0IsMEJBQXlEOztJQUM3Qyx1Q0FBcUU7O0FBR25GO0lBRUUsdUNBQW1CLElBQVk7UUFBWixTQUFJLEdBQUosSUFBSSxDQUFRO0lBQUcsQ0FBQztJQURuQixrQ0FBSSxHQUFHLDBDQUEwQyxDQUFDO0lBRXBFLG9DQUFDO0NBQUEsQUFIRCxJQUdDO1NBSFksNkJBQTZCOzs7SUFDeEMsbUNBQWtFOztJQUN0RCw2Q0FBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMYXlvdXQgfSBmcm9tICcuLi9tb2RlbHMvbGF5b3V0JztcblxuZXhwb3J0IGNsYXNzIEFkZE5hdmlnYXRpb25FbGVtZW50IHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW0xheW91dF0gQWRkIE5hdmlnYXRpb24gRWxlbWVudCc7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBwYXlsb2FkOiBMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnQgfCBMYXlvdXQuTmF2aWdhdGlvbkVsZW1lbnRbXSkge31cbn1cblxuZXhwb3J0IGNsYXNzIFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lIHtcbiAgc3RhdGljIHJlYWRvbmx5IHR5cGUgPSAnW0xheW91dF0gUmVtb3ZlIE5hdmlnYXRpb24gRWxlbWVudEJ5TmFtZSc7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBuYW1lOiBzdHJpbmcpIHt9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/account-layout/account-layout.component.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/account-layout/account-layout.component.js deleted file mode 100644 index a4c8881a38..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/components/account-layout/account-layout.component.js +++ /dev/null @@ -1,24 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { Component } from '@angular/core'; -var AccountLayoutComponent = /** @class */ (function () { - function AccountLayoutComponent() { - } - // required for dynamic component - AccountLayoutComponent.type = "account" /* account */; - AccountLayoutComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-account', - template: "\n" - }] } - ]; - return AccountLayoutComponent; -}()); -export { AccountLayoutComponent }; -if (false) { - /** @type {?} */ - AccountLayoutComponent.type; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2FjY291bnQtbGF5b3V0L2FjY291bnQtbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcxQztJQUFBO0lBT0EsQ0FBQzs7SUFEUSwyQkFBSSwyQkFBdUI7O2dCQU5uQyxTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsNkNBQThDO2lCQUMvQzs7SUFJRCw2QkFBQztDQUFBLEFBUEQsSUFPQztTQUhZLHNCQUFzQjs7O0lBRWpDLDRCQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZUxheW91dFR5cGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtbGF5b3V0LWFjY291bnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWNjb3VudC1sYXlvdXQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBBY2NvdW50TGF5b3V0Q29tcG9uZW50IHtcbiAgLy8gcmVxdWlyZWQgZm9yIGR5bmFtaWMgY29tcG9uZW50XG4gIHN0YXRpYyB0eXBlID0gZUxheW91dFR5cGUuYWNjb3VudDtcbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/application-layout/application-layout.component.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/application-layout/application-layout.component.js deleted file mode 100644 index 157997c5a4..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/components/application-layout/application-layout.component.js +++ /dev/null @@ -1,322 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import * as tslib_1 from "tslib"; -import { GetAppConfiguration, ConfigState, SetLanguage, SessionState, takeUntilDestroy, } from '@abp/ng.core'; -import { Component, QueryList, TemplateRef, ViewChild, ViewChildren, } from '@angular/core'; -import { NgbDropdown } from '@ng-bootstrap/ng-bootstrap'; -import { Navigate, RouterState } from '@ngxs/router-plugin'; -import { Select, Store } from '@ngxs/store'; -import { OAuthService } from 'angular-oauth2-oidc'; -import compare from 'just-compare'; -import { fromEvent, Observable } from 'rxjs'; -import { debounceTime, filter, map } from 'rxjs/operators'; -import snq from 'snq'; -import { AddNavigationElement } from '../../actions'; -import { LayoutState } from '../../states'; -var ApplicationLayoutComponent = /** @class */ (function () { - function ApplicationLayoutComponent(store, oauthService) { - this.store = store; - this.oauthService = oauthService; - this.isOpenChangePassword = false; - this.isOpenProfile = false; - this.rightPartElements = []; - this.trackByFn = (/** - * @param {?} _ - * @param {?} item - * @return {?} - */ - function (_, item) { return item.name; }); - this.trackElementByFn = (/** - * @param {?} _ - * @param {?} element - * @return {?} - */ - function (_, element) { return element; }); - } - Object.defineProperty(ApplicationLayoutComponent.prototype, "visibleRoutes$", { - get: /** - * @return {?} - */ - function () { - return this.routes$.pipe(map((/** - * @param {?} routes - * @return {?} - */ - function (routes) { return getVisibleRoutes(routes); }))); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ApplicationLayoutComponent.prototype, "defaultLanguage$", { - get: /** - * @return {?} - */ - function () { - var _this = this; - return this.languages$.pipe(map((/** - * @param {?} languages - * @return {?} - */ - function (languages) { return snq((/** - * @return {?} - */ - function () { return languages.find((/** - * @param {?} lang - * @return {?} - */ - function (lang) { return lang.cultureName === _this.selectedLangCulture; })).displayName; })); }), '')); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ApplicationLayoutComponent.prototype, "dropdownLanguages$", { - get: /** - * @return {?} - */ - function () { - var _this = this; - return this.languages$.pipe(map((/** - * @param {?} languages - * @return {?} - */ - function (languages) { return snq((/** - * @return {?} - */ - function () { return languages.filter((/** - * @param {?} lang - * @return {?} - */ - function (lang) { return lang.cultureName !== _this.selectedLangCulture; })); })); }), [])); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ApplicationLayoutComponent.prototype, "selectedLangCulture", { - get: /** - * @return {?} - */ - function () { - return this.store.selectSnapshot(SessionState.getLanguage); - }, - enumerable: true, - configurable: true - }); - /** - * @private - * @return {?} - */ - ApplicationLayoutComponent.prototype.checkWindowWidth = /** - * @private - * @return {?} - */ - function () { - var _this = this; - setTimeout((/** - * @return {?} - */ - function () { - _this.navbarRootDropdowns.forEach((/** - * @param {?} item - * @return {?} - */ - function (item) { - item.close(); - })); - if (window.innerWidth < 768) { - _this.isDropdownChildDynamic = false; - } - else { - _this.isDropdownChildDynamic = true; - } - }), 0); - }; - /** - * @return {?} - */ - ApplicationLayoutComponent.prototype.ngAfterViewInit = /** - * @return {?} - */ - function () { - var _this = this; - /** @type {?} */ - var navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map((/** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var name = _a.name; - return name; - })); - if (navigations.indexOf('LanguageRef') < 0) { - this.store.dispatch(new AddNavigationElement([ - { element: this.languageRef, order: 4, name: 'LanguageRef' }, - { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' }, - ])); - } - this.navElements$ - .pipe(map((/** - * @param {?} elements - * @return {?} - */ - function (elements) { return elements.map((/** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var element = _a.element; - return element; - })); })), filter((/** - * @param {?} elements - * @return {?} - */ - function (elements) { return !compare(elements, _this.rightPartElements); })), takeUntilDestroy(this)) - .subscribe((/** - * @param {?} elements - * @return {?} - */ - function (elements) { - setTimeout((/** - * @return {?} - */ - function () { return (_this.rightPartElements = elements); }), 0); - })); - this.checkWindowWidth(); - fromEvent(window, 'resize') - .pipe(takeUntilDestroy(this), debounceTime(250)) - .subscribe((/** - * @return {?} - */ - function () { - _this.checkWindowWidth(); - })); - }; - /** - * @return {?} - */ - ApplicationLayoutComponent.prototype.ngOnDestroy = /** - * @return {?} - */ - function () { }; - /** - * @param {?} cultureName - * @return {?} - */ - ApplicationLayoutComponent.prototype.onChangeLang = /** - * @param {?} cultureName - * @return {?} - */ - function (cultureName) { - this.store.dispatch(new SetLanguage(cultureName)); - }; - /** - * @return {?} - */ - ApplicationLayoutComponent.prototype.logout = /** - * @return {?} - */ - function () { - this.oauthService.logOut(); - this.store.dispatch(new Navigate(['/'], null, { - state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url }, - })); - this.store.dispatch(new GetAppConfiguration()); - }; - // required for dynamic component - ApplicationLayoutComponent.type = "application" /* application */; - ApplicationLayoutComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-application', - template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" - }] } - ]; - /** @nocollapse */ - ApplicationLayoutComponent.ctorParameters = function () { return [ - { type: Store }, - { type: OAuthService } - ]; }; - ApplicationLayoutComponent.propDecorators = { - currentUserRef: [{ type: ViewChild, args: ['currentUser', { static: false, read: TemplateRef },] }], - languageRef: [{ type: ViewChild, args: ['language', { static: false, read: TemplateRef },] }], - navbarRootDropdowns: [{ type: ViewChildren, args: ['navbarRootDropdown', { read: NgbDropdown },] }] - }; - tslib_1.__decorate([ - Select(ConfigState.getOne('routes')), - tslib_1.__metadata("design:type", Observable) - ], ApplicationLayoutComponent.prototype, "routes$", void 0); - tslib_1.__decorate([ - Select(ConfigState.getOne('currentUser')), - tslib_1.__metadata("design:type", Observable) - ], ApplicationLayoutComponent.prototype, "currentUser$", void 0); - tslib_1.__decorate([ - Select(ConfigState.getDeep('localization.languages')), - tslib_1.__metadata("design:type", Observable) - ], ApplicationLayoutComponent.prototype, "languages$", void 0); - tslib_1.__decorate([ - Select(LayoutState.getNavigationElements), - tslib_1.__metadata("design:type", Observable) - ], ApplicationLayoutComponent.prototype, "navElements$", void 0); - return ApplicationLayoutComponent; -}()); -export { ApplicationLayoutComponent }; -if (false) { - /** @type {?} */ - ApplicationLayoutComponent.type; - /** @type {?} */ - ApplicationLayoutComponent.prototype.routes$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.currentUser$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.languages$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.navElements$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.currentUserRef; - /** @type {?} */ - ApplicationLayoutComponent.prototype.languageRef; - /** @type {?} */ - ApplicationLayoutComponent.prototype.navbarRootDropdowns; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isOpenChangePassword; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isOpenProfile; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isDropdownChildDynamic; - /** @type {?} */ - ApplicationLayoutComponent.prototype.rightPartElements; - /** @type {?} */ - ApplicationLayoutComponent.prototype.trackByFn; - /** @type {?} */ - ApplicationLayoutComponent.prototype.trackElementByFn; - /** - * @type {?} - * @private - */ - ApplicationLayoutComponent.prototype.store; - /** - * @type {?} - * @private - */ - ApplicationLayoutComponent.prototype.oauthService; -} -/** - * @param {?} routes - * @return {?} - */ -function getVisibleRoutes(routes) { - return routes.reduce((/** - * @param {?} acc - * @param {?} val - * @return {?} - */ - function (acc, val) { - if (val.invisible) - return acc; - if (val.children && val.children.length) { - val.children = getVisibleRoutes(val.children); - } - return tslib_1.__spread(acc, [val]); - }), []); -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24tbGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9hcHBsaWNhdGlvbi1sYXlvdXQvYXBwbGljYXRpb24tbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFHTCxtQkFBbUIsRUFDbkIsV0FBVyxFQUVYLFdBQVcsRUFDWCxZQUFZLEVBQ1osZ0JBQWdCLEdBQ2pCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFFTCxTQUFTLEVBRVQsU0FBUyxFQUNULFdBQVcsRUFFWCxTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzVELE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFDbkMsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxHQUFHLE1BQU0sS0FBSyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTNDO0lBZ0VFLG9DQUFvQixLQUFZLEVBQVUsWUFBMEI7UUFBaEQsVUFBSyxHQUFMLEtBQUssQ0FBTztRQUFVLGlCQUFZLEdBQVosWUFB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QkFBd0IsQ0FBQyxDQUFDOzBDQUMxQyxVQUFVO2tFQUFzQztJQUc1RDtRQURDLE1BQU0sQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUM7MENBQzVCLFVBQVU7b0VBQTZCO0lBOEd2RCxpQ0FBQztDQUFBLEFBaElELElBZ0lDO1NBNUhZLDBCQUEwQjs7O0lBRXJDLGdDQUFzQzs7SUFFdEMsNkNBQ3FDOztJQUVyQyxrREFDK0Q7O0lBRS9ELGdEQUM0RDs7SUFFNUQsa0RBQ3FEOztJQUVyRCxvREFDaUM7O0lBRWpDLGlEQUM4Qjs7SUFFOUIseURBQzRDOztJQUU1QywwREFBc0M7O0lBRXRDLG1EQUErQjs7SUFFL0IsNERBQWdDOztJQXlCaEMsdURBQTJDOztJQUUzQywrQ0FBbUU7O0lBRW5FLHNEQUEyRTs7Ozs7SUFFL0QsMkNBQW9COzs7OztJQUFFLGtEQUFrQzs7Ozs7O0FBa0V0RSxTQUFTLGdCQUFnQixDQUFDLE1BQXVCO0lBQy9DLE9BQU8sTUFBTSxDQUFDLE1BQU07Ozs7O0lBQUMsVUFBQyxHQUFHLEVBQUUsR0FBRztRQUM1QixJQUFJLEdBQUcsQ0FBQyxTQUFTO1lBQUUsT0FBTyxHQUFHLENBQUM7UUFFOUIsSUFBSSxHQUFHLENBQUMsUUFBUSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFO1lBQ3ZDLEdBQUcsQ0FBQyxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQy9DO1FBRUQsd0JBQVcsR0FBRyxHQUFFLEdBQUcsR0FBRTtJQUN2QixDQUFDLEdBQUUsRUFBRSxDQUFDLENBQUM7QUFDVCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQUJQLFxuICBBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb24sXG4gIEdldEFwcENvbmZpZ3VyYXRpb24sXG4gIENvbmZpZ1N0YXRlLFxuICBlTGF5b3V0VHlwZSxcbiAgU2V0TGFuZ3VhZ2UsXG4gIFNlc3Npb25TdGF0ZSxcbiAgdGFrZVVudGlsRGVzdHJveSxcbn0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgT25EZXN0cm95LFxuICBRdWVyeUxpc3QsXG4gIFRlbXBsYXRlUmVmLFxuICBUcmFja0J5RnVuY3Rpb24sXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nYkRyb3Bkb3duIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgTmF2aWdhdGUsIFJvdXRlclN0YXRlIH0gZnJvbSAnQG5neHMvcm91dGVyLXBsdWdpbic7XG5pbXBvcnQgeyBTZWxlY3QsIFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuaW1wb3J0IHsgT0F1dGhTZXJ2aWNlIH0gZnJvbSAnYW5ndWxhci1vYXV0aDItb2lkYyc7XG5pbXBvcnQgY29tcGFyZSBmcm9tICdqdXN0LWNvbXBhcmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpbHRlciwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHNucSBmcm9tICdzbnEnO1xuaW1wb3J0IHsgQWRkTmF2aWdhdGlvbkVsZW1lbnQgfSBmcm9tICcuLi8uLi9hY3Rpb25zJztcbmltcG9ydCB7IExheW91dCB9IGZyb20gJy4uLy4uL21vZGVscy9sYXlvdXQnO1xuaW1wb3J0IHsgTGF5b3V0U3RhdGUgfSBmcm9tICcuLi8uLi9zdGF0ZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtbGF5b3V0LWFwcGxpY2F0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FwcGxpY2F0aW9uLWxheW91dC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIEFwcGxpY2F0aW9uTGF5b3V0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgLy8gcmVxdWlyZWQgZm9yIGR5bmFtaWMgY29tcG9uZW50XG4gIHN0YXRpYyB0eXBlID0gZUxheW91dFR5cGUuYXBwbGljYXRpb247XG5cbiAgQFNlbGVjdChDb25maWdTdGF0ZS5nZXRPbmUoJ3JvdXRlcycpKVxuICByb3V0ZXMkOiBPYnNlcnZhYmxlPEFCUC5GdWxsUm91dGVbXT47XG5cbiAgQFNlbGVjdChDb25maWdTdGF0ZS5nZXRPbmUoJ2N1cnJlbnRVc2VyJykpXG4gIGN1cnJlbnRVc2VyJDogT2JzZXJ2YWJsZTxBcHBsaWNhdGlvbkNvbmZpZ3VyYXRpb24uQ3VycmVudFVzZXI+O1xuXG4gIEBTZWxlY3QoQ29uZmlnU3RhdGUuZ2V0RGVlcCgnbG9jYWxpemF0aW9uLmxhbmd1YWdlcycpKVxuICBsYW5ndWFnZXMkOiBPYnNlcnZhYmxlPEFwcGxpY2F0aW9uQ29uZmlndXJhdGlvbi5MYW5ndWFnZVtdPjtcblxuICBAU2VsZWN0KExheW91dFN0YXRlLmdldE5hdmlnYXRpb25FbGVtZW50cylcbiAgbmF2RWxlbWVudHMkOiBPYnNlcnZhYmxlPExheW91dC5OYXZpZ2F0aW9uRWxlbWVudFtdPjtcblxuICBAVmlld0NoaWxkKCdjdXJyZW50VXNlcicsIHsgc3RhdGljOiBmYWxzZSwgcmVhZDogVGVtcGxhdGVSZWYgfSlcbiAgY3VycmVudFVzZXJSZWY6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQFZpZXdDaGlsZCgnbGFuZ3VhZ2UnLCB7IHN0YXRpYzogZmFsc2UsIHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gIGxhbmd1YWdlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBWaWV3Q2hpbGRyZW4oJ25hdmJhclJvb3REcm9wZG93bicsIHsgcmVhZDogTmdiRHJvcGRvd24gfSlcbiAgbmF2YmFyUm9vdERyb3Bkb3duczogUXVlcnlMaXN0PE5nYkRyb3Bkb3duPjtcblxuICBpc09wZW5DaGFuZ2VQYXNzd29yZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGlzT3BlblByb2ZpbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBpc0Ryb3Bkb3duQ2hpbGREeW5hbWljOiBib29sZWFuO1xuXG4gIGdldCB2aXNpYmxlUm91dGVzJCgpOiBPYnNlcnZhYmxlPEFCUC5GdWxsUm91dGVbXT4ge1xuICAgIHJldHVybiB0aGlzLnJvdXRlcyQucGlwZShtYXAocm91dGVzID0+IGdldFZpc2libGVSb3V0ZXMocm91dGVzKSkpO1xuICB9XG5cbiAgZ2V0IGRlZmF1bHRMYW5ndWFnZSQoKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5sYW5ndWFnZXMkLnBpcGUoXG4gICAgICBtYXAoXG4gICAgICAgIGxhbmd1YWdlcyA9PiBzbnEoKCkgPT4gbGFuZ3VhZ2VzLmZpbmQobGFuZyA9PiBsYW5nLmN1bHR1cmVOYW1lID09PSB0aGlzLnNlbGVjdGVkTGFuZ0N1bHR1cmUpLmRpc3BsYXlOYW1lKSxcbiAgICAgICAgJycsXG4gICAgICApLFxuICAgICk7XG4gIH1cblxuICBnZXQgZHJvcGRvd25MYW5ndWFnZXMkKCk6IE9ic2VydmFibGU8QXBwbGljYXRpb25Db25maWd1cmF0aW9uLkxhbmd1YWdlW10+IHtcbiAgICByZXR1cm4gdGhpcy5sYW5ndWFnZXMkLnBpcGUoXG4gICAgICBtYXAobGFuZ3VhZ2VzID0+IHNucSgoKSA9PiBsYW5ndWFnZXMuZmlsdGVyKGxhbmcgPT4gbGFuZy5jdWx0dXJlTmFtZSAhPT0gdGhpcy5zZWxlY3RlZExhbmdDdWx0dXJlKSksIFtdKSxcbiAgICApO1xuICB9XG5cbiAgZ2V0IHNlbGVjdGVkTGFuZ0N1bHR1cmUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChTZXNzaW9uU3RhdGUuZ2V0TGFuZ3VhZ2UpO1xuICB9XG5cbiAgcmlnaHRQYXJ0RWxlbWVudHM6IFRlbXBsYXRlUmVmPGFueT5bXSA9IFtdO1xuXG4gIHRyYWNrQnlGbjogVHJhY2tCeUZ1bmN0aW9uPEFCUC5GdWxsUm91dGU+ID0gKF8sIGl0ZW0pID0+IGl0ZW0ubmFtZTtcblxuICB0cmFja0VsZW1lbnRCeUZuOiBUcmFja0J5RnVuY3Rpb248QUJQLkZ1bGxSb3V0ZT4gPSAoXywgZWxlbWVudCkgPT4gZWxlbWVudDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHN0b3JlOiBTdG9yZSwgcHJpdmF0ZSBvYXV0aFNlcnZpY2U6IE9BdXRoU2VydmljZSkge31cblxuICBwcml2YXRlIGNoZWNrV2luZG93V2lkdGgoKSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLm5hdmJhclJvb3REcm9wZG93bnMuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgaXRlbS5jbG9zZSgpO1xuICAgICAgfSk7XG4gICAgICBpZiAod2luZG93LmlubmVyV2lkdGggPCA3NjgpIHtcbiAgICAgICAgdGhpcy5pc0Ryb3Bkb3duQ2hpbGREeW5hbWljID0gZmFsc2U7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmlzRHJvcGRvd25DaGlsZER5bmFtaWMgPSB0cnVlO1xuICAgICAgfVxuICAgIH0sIDApO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGNvbnN0IG5hdmlnYXRpb25zID0gdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChMYXlvdXRTdGF0ZS5nZXROYXZpZ2F0aW9uRWxlbWVudHMpLm1hcCgoeyBuYW1lIH0pID0+IG5hbWUpO1xuXG4gICAgaWYgKG5hdmlnYXRpb25zLmluZGV4T2YoJ0xhbmd1YWdlUmVmJykgPCAwKSB7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICBuZXcgQWRkTmF2aWdhdGlvbkVsZW1lbnQoW1xuICAgICAgICAgIHsgZWxlbWVudDogdGhpcy5sYW5ndWFnZVJlZiwgb3JkZXI6IDQsIG5hbWU6ICdMYW5ndWFnZVJlZicgfSxcbiAgICAgICAgICB7IGVsZW1lbnQ6IHRoaXMuY3VycmVudFVzZXJSZWYsIG9yZGVyOiA1LCBuYW1lOiAnQ3VycmVudFVzZXJSZWYnIH0sXG4gICAgICAgIF0pLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLm5hdkVsZW1lbnRzJFxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcChlbGVtZW50cyA9PiBlbGVtZW50cy5tYXAoKHsgZWxlbWVudCB9KSA9PiBlbGVtZW50KSksXG4gICAgICAgIGZpbHRlcihlbGVtZW50cyA9PiAhY29tcGFyZShlbGVtZW50cywgdGhpcy5yaWdodFBhcnRFbGVtZW50cykpLFxuICAgICAgICB0YWtlVW50aWxEZXN0cm95KHRoaXMpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShlbGVtZW50cyA9PiB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gKHRoaXMucmlnaHRQYXJ0RWxlbWVudHMgPSBlbGVtZW50cyksIDApO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmNoZWNrV2luZG93V2lkdGgoKTtcblxuICAgIGZyb21FdmVudCh3aW5kb3csICdyZXNpemUnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbERlc3Ryb3kodGhpcyksXG4gICAgICAgIGRlYm91bmNlVGltZSgyNTApLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2hlY2tXaW5kb3dXaWR0aCgpO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHt9XG5cbiAgb25DaGFuZ2VMYW5nKGN1bHR1cmVOYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBTZXRMYW5ndWFnZShjdWx0dXJlTmFtZSkpO1xuICB9XG5cbiAgbG9nb3V0KCkge1xuICAgIHRoaXMub2F1dGhTZXJ2aWNlLmxvZ091dCgpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICBuZXcgTmF2aWdhdGUoWycvJ10sIG51bGwsIHtcbiAgICAgICAgc3RhdGU6IHsgcmVkaXJlY3RVcmw6IHRoaXMuc3RvcmUuc2VsZWN0U25hcHNob3QoUm91dGVyU3RhdGUpLnN0YXRlLnVybCB9LFxuICAgICAgfSksXG4gICAgKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG5ldyBHZXRBcHBDb25maWd1cmF0aW9uKCkpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGdldFZpc2libGVSb3V0ZXMocm91dGVzOiBBQlAuRnVsbFJvdXRlW10pIHtcbiAgcmV0dXJuIHJvdXRlcy5yZWR1Y2UoKGFjYywgdmFsKSA9PiB7XG4gICAgaWYgKHZhbC5pbnZpc2libGUpIHJldHVybiBhY2M7XG5cbiAgICBpZiAodmFsLmNoaWxkcmVuICYmIHZhbC5jaGlsZHJlbi5sZW5ndGgpIHtcbiAgICAgIHZhbC5jaGlsZHJlbiA9IGdldFZpc2libGVSb3V0ZXModmFsLmNoaWxkcmVuKTtcbiAgICB9XG5cbiAgICByZXR1cm4gWy4uLmFjYywgdmFsXTtcbiAgfSwgW10pO1xufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/empty-layout/empty-layout.component.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/empty-layout/empty-layout.component.js deleted file mode 100644 index b3473ddc90..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/components/empty-layout/empty-layout.component.js +++ /dev/null @@ -1,23 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { Component } from '@angular/core'; -var EmptyLayoutComponent = /** @class */ (function () { - function EmptyLayoutComponent() { - } - EmptyLayoutComponent.type = "empty" /* empty */; - EmptyLayoutComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-empty', - template: "\n Layout-empty\n \n " - }] } - ]; - return EmptyLayoutComponent; -}()); -export { EmptyLayoutComponent }; -if (false) { - /** @type {?} */ - EmptyLayoutComponent.type; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHktbGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9lbXB0eS1sYXlvdXQvZW1wdHktbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcxQztJQUFBO0lBU0EsQ0FBQztJQURRLHlCQUFJLHVCQUFxQjs7Z0JBUmpDLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixRQUFRLEVBQUUsNkRBR1Q7aUJBQ0Y7O0lBR0QsMkJBQUM7Q0FBQSxBQVRELElBU0M7U0FGWSxvQkFBb0I7OztJQUMvQiwwQkFBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGVMYXlvdXRUeXBlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWxheW91dC1lbXB0eScsXG4gIHRlbXBsYXRlOiBgXG4gICAgTGF5b3V0LWVtcHR5XG4gICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBFbXB0eUxheW91dENvbXBvbmVudCB7XG4gIHN0YXRpYyB0eXBlID0gZUxheW91dFR5cGUuZW1wdHk7XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/index.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/index.js deleted file mode 100644 index e64ecf3cbd..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/components/index.js +++ /dev/null @@ -1,8 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -export { AccountLayoutComponent } from './account-layout/account-layout.component'; -export { ApplicationLayoutComponent } from './application-layout/application-layout.component'; -export { EmptyLayoutComponent } from './empty-layout/empty-layout.component'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLHVDQUFjLDJDQUEyQyxDQUFDO0FBQzFELDJDQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLHFDQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY2NvdW50LWxheW91dC9hY2NvdW50LWxheW91dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9hcHBsaWNhdGlvbi1sYXlvdXQvYXBwbGljYXRpb24tbGF5b3V0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2VtcHR5LWxheW91dC9lbXB0eS1sYXlvdXQuY29tcG9uZW50JztcbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout/layout.component.js b/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout/layout.component.js deleted file mode 100644 index 72beb73c1e..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/components/layout/layout.component.js +++ /dev/null @@ -1,47 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import { ConfigState } from '@abp/ng.core'; -import { slideFromBottom } from '@abp/ng.theme.shared'; -import { Component } from '@angular/core'; -import { Store } from '@ngxs/store'; -var LayoutComponent = /** @class */ (function () { - function LayoutComponent(store) { - this.store = store; - this.isCollapsed = true; - } - Object.defineProperty(LayoutComponent.prototype, "appInfo", { - get: /** - * @return {?} - */ - function () { - return this.store.selectSnapshot(ConfigState.getApplicationInfo); - }, - enumerable: true, - configurable: true - }); - LayoutComponent.decorators = [ - { type: Component, args: [{ - selector: ' abp-layout', - template: "\n\n\n \n\n\n\n\n\n\n {{ appInfo.name }}\n\n", - animations: [slideFromBottom] - }] } - ]; - /** @nocollapse */ - LayoutComponent.ctorParameters = function () { return [ - { type: Store } - ]; }; - return LayoutComponent; -}()); -export { LayoutComponent }; -if (false) { - /** @type {?} */ - LayoutComponent.prototype.isCollapsed; - /** - * @type {?} - * @private - */ - LayoutComponent.prototype.store; -} -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9sYXlvdXQvbGF5b3V0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFVLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXBDO0lBWUUseUJBQW9CLEtBQVk7UUFBWixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBTmhDLGdCQUFXLEdBQVksSUFBSSxDQUFDO0lBTU8sQ0FBQztJQUpwQyxzQkFBSSxvQ0FBTzs7OztRQUFYO1lBQ0UsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNuRSxDQUFDOzs7T0FBQTs7Z0JBVkYsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixnOEJBQXNDO29CQUN0QyxVQUFVLEVBQUUsQ0FBQyxlQUFlLENBQUM7aUJBQzlCOzs7O2dCQU5RLEtBQUs7O0lBZWQsc0JBQUM7Q0FBQSxBQWJELElBYUM7U0FSWSxlQUFlOzs7SUFDMUIsc0NBQTRCOzs7OztJQU1oQixnQ0FBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb25maWcsIENvbmZpZ1N0YXRlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IHNsaWRlRnJvbUJvdHRvbSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJyBhYnAtbGF5b3V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xheW91dC5jb21wb25lbnQuaHRtbCcsXG4gIGFuaW1hdGlvbnM6IFtzbGlkZUZyb21Cb3R0b21dLFxufSlcbmV4cG9ydCBjbGFzcyBMYXlvdXRDb21wb25lbnQge1xuICBpc0NvbGxhcHNlZDogYm9vbGVhbiA9IHRydWU7XG5cbiAgZ2V0IGFwcEluZm8oKTogQ29uZmlnLkFwcGxpY2F0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zZWxlY3RTbmFwc2hvdChDb25maWdTdGF0ZS5nZXRBcHBsaWNhdGlvbkluZm8pO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmUpIHt9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/models/layout.js b/npm/ng-packs/dist/theme-basic/esm5/lib/models/layout.js deleted file mode 100644 index d93212a06d..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/models/layout.js +++ /dev/null @@ -1,30 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -export var Layout; -(function (Layout) { - /** - * @record - */ - function State() { } - Layout.State = State; - if (false) { - /** @type {?} */ - State.prototype.navigationElements; - } - /** - * @record - */ - function NavigationElement() { } - Layout.NavigationElement = NavigationElement; - if (false) { - /** @type {?} */ - NavigationElement.prototype.name; - /** @type {?} */ - NavigationElement.prototype.element; - /** @type {?|undefined} */ - NavigationElement.prototype.order; - } -})(Layout || (Layout = {})); -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbHMvbGF5b3V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFFQSxNQUFNLEtBQVcsTUFBTSxDQVV0QjtBQVZELFdBQWlCLE1BQU07Ozs7SUFDckIsb0JBRUM7Ozs7UUFEQyxtQ0FBd0M7Ozs7O0lBRzFDLGdDQUlDOzs7O1FBSEMsaUNBQWE7O1FBQ2Isb0NBQTBCOztRQUMxQixrQ0FBZTs7QUFFbkIsQ0FBQyxFQVZnQixNQUFNLEtBQU4sTUFBTSxRQVV0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBuYW1lc3BhY2UgTGF5b3V0IHtcbiAgZXhwb3J0IGludGVyZmFjZSBTdGF0ZSB7XG4gICAgbmF2aWdhdGlvbkVsZW1lbnRzOiBOYXZpZ2F0aW9uRWxlbWVudFtdO1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBOYXZpZ2F0aW9uRWxlbWVudCB7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIGVsZW1lbnQ6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgb3JkZXI/OiBudW1iZXI7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/states/index.js b/npm/ng-packs/dist/theme-basic/esm5/lib/states/index.js deleted file mode 100644 index 0e85d60b8b..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/states/index.js +++ /dev/null @@ -1,6 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -export { LayoutState } from "./layout.state"; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL3N0YXRlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsNEJBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9sYXlvdXQuc3RhdGVcIjtcbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/states/layout.state.js b/npm/ng-packs/dist/theme-basic/esm5/lib/states/layout.state.js deleted file mode 100644 index 2944041490..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/states/layout.state.js +++ /dev/null @@ -1,131 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import * as tslib_1 from "tslib"; -import { State, Action, Selector } from '@ngxs/store'; -import { AddNavigationElement, RemoveNavigationElementByName } from '../actions/layout.actions'; -import snq from 'snq'; -var LayoutState = /** @class */ (function () { - function LayoutState() { - } - /** - * @param {?} __0 - * @return {?} - */ - LayoutState.getNavigationElements = /** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var navigationElements = _a.navigationElements; - return navigationElements; - }; - /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - LayoutState.prototype.layoutAddAction = /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - function (_a, _b) { - var getState = _a.getState, patchState = _a.patchState; - var _c = _b.payload, payload = _c === void 0 ? [] : _c; - var navigationElements = getState().navigationElements; - if (!Array.isArray(payload)) { - payload = [payload]; - } - if (navigationElements.length) { - payload = snq((/** - * @return {?} - */ - function () { - return ((/** @type {?} */ (payload))).filter((/** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var name = _a.name; - return navigationElements.findIndex((/** - * @param {?} nav - * @return {?} - */ - function (nav) { return nav.name === name; })) < 0; - })); - }), []); - } - if (!payload.length) - return; - navigationElements = tslib_1.__spread(navigationElements, payload).map((/** - * @param {?} element - * @return {?} - */ - function (element) { return (tslib_1.__assign({}, element, { order: element.order || 99 })); })) - .sort((/** - * @param {?} a - * @param {?} b - * @return {?} - */ - function (a, b) { return a.order - b.order; })); - return patchState({ - navigationElements: navigationElements, - }); - }; - /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - LayoutState.prototype.layoutRemoveAction = /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - function (_a, _b) { - var getState = _a.getState, patchState = _a.patchState; - var name = _b.name; - var navigationElements = getState().navigationElements; - /** @type {?} */ - var index = navigationElements.findIndex((/** - * @param {?} element - * @return {?} - */ - function (element) { return element.name === name; })); - if (index > -1) { - navigationElements = navigationElements.splice(index, 1); - } - return patchState({ - navigationElements: navigationElements, - }); - }; - tslib_1.__decorate([ - Action(AddNavigationElement), - tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object, AddNavigationElement]), - tslib_1.__metadata("design:returntype", void 0) - ], LayoutState.prototype, "layoutAddAction", null); - tslib_1.__decorate([ - Action(RemoveNavigationElementByName), - tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object, RemoveNavigationElementByName]), - tslib_1.__metadata("design:returntype", void 0) - ], LayoutState.prototype, "layoutRemoveAction", null); - tslib_1.__decorate([ - Selector(), - tslib_1.__metadata("design:type", Function), - tslib_1.__metadata("design:paramtypes", [Object]), - tslib_1.__metadata("design:returntype", Array) - ], LayoutState, "getNavigationElements", null); - LayoutState = tslib_1.__decorate([ - State({ - name: 'LayoutState', - defaults: (/** @type {?} */ ({ navigationElements: [] })), - }) - ], LayoutState); - return LayoutState; -}()); -export { LayoutState }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LnN0YXRlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi9zdGF0ZXMvbGF5b3V0LnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWdCLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUdoRyxPQUFPLEdBQUcsTUFBTSxLQUFLLENBQUM7OztJQXVEdEIsQ0FBQzs7Ozs7SUEvQ1EsaUNBQXFCOzs7O0lBQTVCLFVBQTZCLEVBQW9DO1lBQWxDLDBDQUFrQjtRQUMvQyxPQUFPLGtCQUFrQixDQUFDO0lBQzVCLENBQUM7Ozs7OztJQUdELHFDQUFlOzs7OztJQUFmLFVBQWdCLEVBQW9ELEVBQUUsRUFBc0M7WUFBMUYsc0JBQVEsRUFBRSwwQkFBVTtZQUFrQyxlQUFZLEVBQVosaUNBQVk7UUFDNUUsSUFBQSxrREFBa0I7UUFFeEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDM0IsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDckI7UUFFRCxJQUFJLGtCQUFrQixDQUFDLE1BQU0sRUFBRTtZQUM3QixPQUFPLEdBQUcsR0FBRzs7O1lBQ1g7Z0JBQ0UsT0FBQSxDQUFDLG1CQUFBLE9BQU8sRUFBOEIsQ0FBQyxDQUFDLE1BQU07Ozs7Z0JBQzVDLFVBQUMsRUFBUTt3QkFBTixjQUFJO29CQUFPLE9BQUEsa0JBQWtCLENBQUMsU0FBUzs7OztvQkFBQyxVQUFBLEdBQUcsSUFBSSxPQUFBLEdBQUcsQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFqQixDQUFpQixFQUFDLEdBQUcsQ0FBQztnQkFBMUQsQ0FBMEQsRUFDekU7WUFGRCxDQUVDLEdBQ0gsRUFBRSxDQUNILENBQUM7U0FDSDtRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTtZQUFFLE9BQU87UUFFNUIsa0JBQWtCLEdBQUcsaUJBQUksa0JBQWtCLEVBQUssT0FBTyxFQUNwRCxHQUFHOzs7O1FBQUMsVUFBQSxPQUFPLElBQUksT0FBQSxzQkFBTSxPQUFPLElBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxJQUFHLEVBQTVDLENBQTRDLEVBQUM7YUFDNUQsSUFBSTs7Ozs7UUFBQyxVQUFDLENBQUMsRUFBRSxDQUFDLElBQUssT0FBQSxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQWpCLENBQWlCLEVBQUMsQ0FBQztRQUVyQyxPQUFPLFVBQVUsQ0FBQztZQUNoQixrQkFBa0Isb0JBQUE7U0FDbkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7Ozs7O0lBR0Qsd0NBQWtCOzs7OztJQUFsQixVQUFtQixFQUFvRCxFQUFFLEVBQXVDO1lBQTNGLHNCQUFRLEVBQUUsMEJBQVU7WUFBa0MsY0FBSTtRQUN2RSxJQUFBLGtEQUFrQjs7WUFFbEIsS0FBSyxHQUFHLGtCQUFrQixDQUFDLFNBQVM7Ozs7UUFBQyxVQUFBLE9BQU8sSUFBSSxPQUFBLE9BQU8sQ0FBQyxJQUFJLEtBQUssSUFBSSxFQUFyQixDQUFxQixFQUFDO1FBRTVFLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ2Qsa0JBQWtCLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMxRDtRQUVELE9BQU8sVUFBVSxDQUFDO1lBQ2hCLGtCQUFrQixvQkFBQTtTQUNuQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBekNEO1FBREMsTUFBTSxDQUFDLG9CQUFvQixDQUFDOzt5REFDMkQsb0JBQW9COztzREEwQjNHO0lBR0Q7UUFEQyxNQUFNLENBQUMsNkJBQTZCLENBQUM7O3lEQUM2Qyw2QkFBNkI7O3lEQVkvRztJQTlDRDtRQURDLFFBQVEsRUFBRTs7OztrREFHVjtJQUpVLFdBQVc7UUFKdkIsS0FBSyxDQUFlO1lBQ25CLElBQUksRUFBRSxhQUFhO1lBQ25CLFFBQVEsRUFBRSxtQkFBQSxFQUFFLGtCQUFrQixFQUFFLEVBQUUsRUFBRSxFQUFnQjtTQUNyRCxDQUFDO09BQ1csV0FBVyxDQWlEdkI7SUFBRCxrQkFBQztDQUFBLElBQUE7U0FqRFksV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0YXRlLCBBY3Rpb24sIFN0YXRlQ29udGV4dCwgU2VsZWN0b3IgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBBZGROYXZpZ2F0aW9uRWxlbWVudCwgUmVtb3ZlTmF2aWdhdGlvbkVsZW1lbnRCeU5hbWUgfSBmcm9tICcuLi9hY3Rpb25zL2xheW91dC5hY3Rpb25zJztcbmltcG9ydCB7IExheW91dCB9IGZyb20gJy4uL21vZGVscy9sYXlvdXQnO1xuaW1wb3J0IHsgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBzbnEgZnJvbSAnc25xJztcblxuQFN0YXRlPExheW91dC5TdGF0ZT4oe1xuICBuYW1lOiAnTGF5b3V0U3RhdGUnLFxuICBkZWZhdWx0czogeyBuYXZpZ2F0aW9uRWxlbWVudHM6IFtdIH0gYXMgTGF5b3V0LlN0YXRlLFxufSlcbmV4cG9ydCBjbGFzcyBMYXlvdXRTdGF0ZSB7XG4gIEBTZWxlY3RvcigpXG4gIHN0YXRpYyBnZXROYXZpZ2F0aW9uRWxlbWVudHMoeyBuYXZpZ2F0aW9uRWxlbWVudHMgfTogTGF5b3V0LlN0YXRlKTogTGF5b3V0Lk5hdmlnYXRpb25FbGVtZW50W10ge1xuICAgIHJldHVybiBuYXZpZ2F0aW9uRWxlbWVudHM7XG4gIH1cblxuICBAQWN0aW9uKEFkZE5hdmlnYXRpb25FbGVtZW50KVxuICBsYXlvdXRBZGRBY3Rpb24oeyBnZXRTdGF0ZSwgcGF0Y2hTdGF0ZSB9OiBTdGF0ZUNvbnRleHQ8TGF5b3V0LlN0YXRlPiwgeyBwYXlsb2FkID0gW10gfTogQWRkTmF2aWdhdGlvbkVsZW1lbnQpIHtcbiAgICBsZXQgeyBuYXZpZ2F0aW9uRWxlbWVudHMgfSA9IGdldFN0YXRlKCk7XG5cbiAgICBpZiAoIUFycmF5LmlzQXJyYXkocGF5bG9hZCkpIHtcbiAgICAgIHBheWxvYWQgPSBbcGF5bG9hZF07XG4gICAgfVxuXG4gICAgaWYgKG5hdmlnYXRpb25FbGVtZW50cy5sZW5ndGgpIHtcbiAgICAgIHBheWxvYWQgPSBzbnEoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgKHBheWxvYWQgYXMgTGF5b3V0Lk5hdmlnYXRpb25FbGVtZW50W10pLmZpbHRlcihcbiAgICAgICAgICAgICh7IG5hbWUgfSkgPT4gbmF2aWdhdGlvbkVsZW1lbnRzLmZpbmRJbmRleChuYXYgPT4gbmF2Lm5hbWUgPT09IG5hbWUpIDwgMCxcbiAgICAgICAgICApLFxuICAgICAgICBbXSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKCFwYXlsb2FkLmxlbmd0aCkgcmV0dXJuO1xuXG4gICAgbmF2aWdhdGlvbkVsZW1lbnRzID0gWy4uLm5hdmlnYXRpb25FbGVtZW50cywgLi4ucGF5bG9hZF1cbiAgICAgIC5tYXAoZWxlbWVudCA9PiAoeyAuLi5lbGVtZW50LCBvcmRlcjogZWxlbWVudC5vcmRlciB8fCA5OSB9KSlcbiAgICAgIC5zb3J0KChhLCBiKSA9PiBhLm9yZGVyIC0gYi5vcmRlcik7XG5cbiAgICByZXR1cm4gcGF0Y2hTdGF0ZSh7XG4gICAgICBuYXZpZ2F0aW9uRWxlbWVudHMsXG4gICAgfSk7XG4gIH1cblxuICBAQWN0aW9uKFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lKVxuICBsYXlvdXRSZW1vdmVBY3Rpb24oeyBnZXRTdGF0ZSwgcGF0Y2hTdGF0ZSB9OiBTdGF0ZUNvbnRleHQ8TGF5b3V0LlN0YXRlPiwgeyBuYW1lIH06IFJlbW92ZU5hdmlnYXRpb25FbGVtZW50QnlOYW1lKSB7XG4gICAgbGV0IHsgbmF2aWdhdGlvbkVsZW1lbnRzIH0gPSBnZXRTdGF0ZSgpO1xuXG4gICAgY29uc3QgaW5kZXggPSBuYXZpZ2F0aW9uRWxlbWVudHMuZmluZEluZGV4KGVsZW1lbnQgPT4gZWxlbWVudC5uYW1lID09PSBuYW1lKTtcblxuICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICBuYXZpZ2F0aW9uRWxlbWVudHMgPSBuYXZpZ2F0aW9uRWxlbWVudHMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGF0Y2hTdGF0ZSh7XG4gICAgICBuYXZpZ2F0aW9uRWxlbWVudHMsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/lib/theme-basic.module.js b/npm/ng-packs/dist/theme-basic/esm5/lib/theme-basic.module.js deleted file mode 100644 index f378add9db..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/lib/theme-basic.module.js +++ /dev/null @@ -1,42 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -import * as tslib_1 from "tslib"; -import { CoreModule } from '@abp/ng.core'; -import { ThemeSharedModule } from '@abp/ng.theme.shared'; -import { NgModule } from '@angular/core'; -import { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; -import { NgxValidateCoreModule } from '@ngx-validate/core'; -import { NgxsModule } from '@ngxs/store'; -import { ToastModule } from 'primeng/toast'; -import { AccountLayoutComponent } from './components/account-layout/account-layout.component'; -import { ApplicationLayoutComponent } from './components/application-layout/application-layout.component'; -import { EmptyLayoutComponent } from './components/empty-layout/empty-layout.component'; -import { LayoutComponent } from './components/layout/layout.component'; -import { LayoutState } from './states/layout.state'; -/** @type {?} */ -export var LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent]; -var ThemeBasicModule = /** @class */ (function () { - function ThemeBasicModule() { - } - ThemeBasicModule.decorators = [ - { type: NgModule, args: [{ - declarations: tslib_1.__spread(LAYOUTS, [LayoutComponent]), - imports: [ - CoreModule, - ThemeSharedModule, - NgbCollapseModule, - NgbDropdownModule, - ToastModule, - NgxValidateCoreModule, - NgxsModule.forFeature([LayoutState]), - ], - exports: tslib_1.__spread(LAYOUTS), - entryComponents: tslib_1.__spread(LAYOUTS), - },] } - ]; - return ThemeBasicModule; -}()); -export { ThemeBasicModule }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtYmFzaWMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5iYXNpYy8iLCJzb3VyY2VzIjpbImxpYi90aGVtZS1iYXNpYy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQzFHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBRXBELE1BQU0sS0FBTyxPQUFPLEdBQUcsQ0FBQywwQkFBMEIsRUFBRSxzQkFBc0IsRUFBRSxvQkFBb0IsQ0FBQztBQUVqRztJQUFBO0lBYytCLENBQUM7O2dCQWQvQixRQUFRLFNBQUM7b0JBQ1IsWUFBWSxtQkFBTSxPQUFPLEdBQUUsZUFBZSxFQUFDO29CQUMzQyxPQUFPLEVBQUU7d0JBQ1AsVUFBVTt3QkFDVixpQkFBaUI7d0JBQ2pCLGlCQUFpQjt3QkFDakIsaUJBQWlCO3dCQUNqQixXQUFXO3dCQUNYLHFCQUFxQjt3QkFDckIsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO3FCQUNyQztvQkFDRCxPQUFPLG1CQUFNLE9BQU8sQ0FBQztvQkFDckIsZUFBZSxtQkFBTSxPQUFPLENBQUM7aUJBQzlCOztJQUM4Qix1QkFBQztDQUFBLEFBZGhDLElBY2dDO1NBQW5CLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvcmVNb2R1bGUgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgVGhlbWVTaGFyZWRNb2R1bGUgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdiQ29sbGFwc2VNb2R1bGUsIE5nYkRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgTmd4VmFsaWRhdGVDb3JlTW9kdWxlIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcbmltcG9ydCB7IE5neHNNb2R1bGUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5pbXBvcnQgeyBUb2FzdE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdG9hc3QnO1xuaW1wb3J0IHsgQWNjb3VudExheW91dENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hY2NvdW50LWxheW91dC9hY2NvdW50LWxheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXBwbGljYXRpb25MYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYXBwbGljYXRpb24tbGF5b3V0L2FwcGxpY2F0aW9uLWxheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRW1wdHlMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZW1wdHktbGF5b3V0L2VtcHR5LWxheW91dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xheW91dC9sYXlvdXQuY29tcG9uZW50JztcbmltcG9ydCB7IExheW91dFN0YXRlIH0gZnJvbSAnLi9zdGF0ZXMvbGF5b3V0LnN0YXRlJztcblxuZXhwb3J0IGNvbnN0IExBWU9VVFMgPSBbQXBwbGljYXRpb25MYXlvdXRDb21wb25lbnQsIEFjY291bnRMYXlvdXRDb21wb25lbnQsIEVtcHR5TGF5b3V0Q29tcG9uZW50XTtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbLi4uTEFZT1VUUywgTGF5b3V0Q29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIENvcmVNb2R1bGUsXG4gICAgVGhlbWVTaGFyZWRNb2R1bGUsXG4gICAgTmdiQ29sbGFwc2VNb2R1bGUsXG4gICAgTmdiRHJvcGRvd25Nb2R1bGUsXG4gICAgVG9hc3RNb2R1bGUsXG4gICAgTmd4VmFsaWRhdGVDb3JlTW9kdWxlLFxuICAgIE5neHNNb2R1bGUuZm9yRmVhdHVyZShbTGF5b3V0U3RhdGVdKSxcbiAgXSxcbiAgZXhwb3J0czogWy4uLkxBWU9VVFNdLFxuICBlbnRyeUNvbXBvbmVudHM6IFsuLi5MQVlPVVRTXSxcbn0pXG5leHBvcnQgY2xhc3MgVGhlbWVCYXNpY01vZHVsZSB7fVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm5/public-api.js b/npm/ng-packs/dist/theme-basic/esm5/public-api.js deleted file mode 100644 index 42fd1f4364..0000000000 --- a/npm/ng-packs/dist/theme-basic/esm5/public-api.js +++ /dev/null @@ -1,13 +0,0 @@ -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -/* - * Public API Surface of theme-basic - */ -export { LAYOUTS, ThemeBasicModule } from './lib/theme-basic.module'; -export { AddNavigationElement, RemoveNavigationElementByName } from './lib/actions'; -export { AccountLayoutComponent, ApplicationLayoutComponent, EmptyLayoutComponent } from './lib/components'; -export {} from './lib/models'; -export { LayoutState } from './lib/states'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuYmFzaWMvIiwic291cmNlcyI6WyJwdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSwwQ0FBYywwQkFBMEIsQ0FBQztBQUN6QyxvRUFBYyxlQUFlLENBQUM7QUFDOUIseUZBQWMsa0JBQWtCLENBQUM7QUFDakMsZUFBYyxjQUFjLENBQUM7QUFDN0IsNEJBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiB0aGVtZS1iYXNpY1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3RoZW1lLWJhc2ljLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3N0YXRlcyc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js b/npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js deleted file mode 100644 index 95c06f77b4..0000000000 --- a/npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js +++ /dev/null @@ -1,585 +0,0 @@ -import { SessionState, takeUntilDestroy, SetLanguage, GetAppConfiguration, ConfigState, CoreModule } from '@abp/ng.core'; -import { slideFromBottom, ThemeSharedModule } from '@abp/ng.theme.shared'; -import { Component, ViewChild, TemplateRef, ViewChildren, NgModule } from '@angular/core'; -import { NgbDropdown, NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; -import { NgxValidateCoreModule } from '@ngx-validate/core'; -import { Action, Selector, State, Store, Select, NgxsModule } from '@ngxs/store'; -import { ToastModule } from 'primeng/toast'; -import { __decorate, __metadata } from 'tslib'; -import { Navigate, RouterState } from '@ngxs/router-plugin'; -import { OAuthService } from 'angular-oauth2-oidc'; -import compare from 'just-compare'; -import { fromEvent, Observable } from 'rxjs'; -import { map, filter, debounceTime } from 'rxjs/operators'; -import snq from 'snq'; - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class AccountLayoutComponent { -} -// required for dynamic component -AccountLayoutComponent.type = "account" /* account */; -AccountLayoutComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-account', - template: "\n" - }] } -]; -if (false) { - /** @type {?} */ - AccountLayoutComponent.type; -} - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class AddNavigationElement { - /** - * @param {?} payload - */ - constructor(payload) { - this.payload = payload; - } -} -AddNavigationElement.type = '[Layout] Add Navigation Element'; -if (false) { - /** @type {?} */ - AddNavigationElement.type; - /** @type {?} */ - AddNavigationElement.prototype.payload; -} -class RemoveNavigationElementByName { - /** - * @param {?} name - */ - constructor(name) { - this.name = name; - } -} -RemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; -if (false) { - /** @type {?} */ - RemoveNavigationElementByName.type; - /** @type {?} */ - RemoveNavigationElementByName.prototype.name; -} - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -let LayoutState = class LayoutState { - /** - * @param {?} __0 - * @return {?} - */ - static getNavigationElements({ navigationElements }) { - return navigationElements; - } - /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - layoutAddAction({ getState, patchState }, { payload = [] }) { - let { navigationElements } = getState(); - if (!Array.isArray(payload)) { - payload = [payload]; - } - if (navigationElements.length) { - payload = snq((/** - * @return {?} - */ - () => ((/** @type {?} */ (payload))).filter((/** - * @param {?} __0 - * @return {?} - */ - ({ name }) => navigationElements.findIndex((/** - * @param {?} nav - * @return {?} - */ - nav => nav.name === name)) < 0))), []); - } - if (!payload.length) - return; - navigationElements = [...navigationElements, ...payload] - .map((/** - * @param {?} element - * @return {?} - */ - element => (Object.assign({}, element, { order: element.order || 99 })))) - .sort((/** - * @param {?} a - * @param {?} b - * @return {?} - */ - (a, b) => a.order - b.order)); - return patchState({ - navigationElements, - }); - } - /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - layoutRemoveAction({ getState, patchState }, { name }) { - let { navigationElements } = getState(); - /** @type {?} */ - const index = navigationElements.findIndex((/** - * @param {?} element - * @return {?} - */ - element => element.name === name)); - if (index > -1) { - navigationElements = navigationElements.splice(index, 1); - } - return patchState({ - navigationElements, - }); - } -}; -__decorate([ - Action(AddNavigationElement), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, AddNavigationElement]), - __metadata("design:returntype", void 0) -], LayoutState.prototype, "layoutAddAction", null); -__decorate([ - Action(RemoveNavigationElementByName), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, RemoveNavigationElementByName]), - __metadata("design:returntype", void 0) -], LayoutState.prototype, "layoutRemoveAction", null); -__decorate([ - Selector(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Array) -], LayoutState, "getNavigationElements", null); -LayoutState = __decorate([ - State({ - name: 'LayoutState', - defaults: (/** @type {?} */ ({ navigationElements: [] })), - }) -], LayoutState); - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class ApplicationLayoutComponent { - /** - * @param {?} store - * @param {?} oauthService - */ - constructor(store, oauthService) { - this.store = store; - this.oauthService = oauthService; - this.isOpenChangePassword = false; - this.isOpenProfile = false; - this.rightPartElements = []; - this.trackByFn = (/** - * @param {?} _ - * @param {?} item - * @return {?} - */ - (_, item) => item.name); - this.trackElementByFn = (/** - * @param {?} _ - * @param {?} element - * @return {?} - */ - (_, element) => element); - } - /** - * @return {?} - */ - get visibleRoutes$() { - return this.routes$.pipe(map((/** - * @param {?} routes - * @return {?} - */ - routes => getVisibleRoutes(routes)))); - } - /** - * @return {?} - */ - get defaultLanguage$() { - return this.languages$.pipe(map((/** - * @param {?} languages - * @return {?} - */ - languages => snq((/** - * @return {?} - */ - () => languages.find((/** - * @param {?} lang - * @return {?} - */ - lang => lang.cultureName === this.selectedLangCulture)).displayName))), '')); - } - /** - * @return {?} - */ - get dropdownLanguages$() { - return this.languages$.pipe(map((/** - * @param {?} languages - * @return {?} - */ - languages => snq((/** - * @return {?} - */ - () => languages.filter((/** - * @param {?} lang - * @return {?} - */ - lang => lang.cultureName !== this.selectedLangCulture))))), [])); - } - /** - * @return {?} - */ - get selectedLangCulture() { - return this.store.selectSnapshot(SessionState.getLanguage); - } - /** - * @private - * @return {?} - */ - checkWindowWidth() { - setTimeout((/** - * @return {?} - */ - () => { - this.navbarRootDropdowns.forEach((/** - * @param {?} item - * @return {?} - */ - item => { - item.close(); - })); - if (window.innerWidth < 768) { - this.isDropdownChildDynamic = false; - } - else { - this.isDropdownChildDynamic = true; - } - }), 0); - } - /** - * @return {?} - */ - ngAfterViewInit() { - /** @type {?} */ - const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map((/** - * @param {?} __0 - * @return {?} - */ - ({ name }) => name)); - if (navigations.indexOf('LanguageRef') < 0) { - this.store.dispatch(new AddNavigationElement([ - { element: this.languageRef, order: 4, name: 'LanguageRef' }, - { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' }, - ])); - } - this.navElements$ - .pipe(map((/** - * @param {?} elements - * @return {?} - */ - elements => elements.map((/** - * @param {?} __0 - * @return {?} - */ - ({ element }) => element)))), filter((/** - * @param {?} elements - * @return {?} - */ - elements => !compare(elements, this.rightPartElements))), takeUntilDestroy(this)) - .subscribe((/** - * @param {?} elements - * @return {?} - */ - elements => { - setTimeout((/** - * @return {?} - */ - () => (this.rightPartElements = elements)), 0); - })); - this.checkWindowWidth(); - fromEvent(window, 'resize') - .pipe(takeUntilDestroy(this), debounceTime(250)) - .subscribe((/** - * @return {?} - */ - () => { - this.checkWindowWidth(); - })); - } - /** - * @return {?} - */ - ngOnDestroy() { } - /** - * @param {?} cultureName - * @return {?} - */ - onChangeLang(cultureName) { - this.store.dispatch(new SetLanguage(cultureName)); - } - /** - * @return {?} - */ - logout() { - this.oauthService.logOut(); - this.store.dispatch(new Navigate(['/'], null, { - state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url }, - })); - this.store.dispatch(new GetAppConfiguration()); - } -} -// required for dynamic component -ApplicationLayoutComponent.type = "application" /* application */; -ApplicationLayoutComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-application', - template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" - }] } -]; -/** @nocollapse */ -ApplicationLayoutComponent.ctorParameters = () => [ - { type: Store }, - { type: OAuthService } -]; -ApplicationLayoutComponent.propDecorators = { - currentUserRef: [{ type: ViewChild, args: ['currentUser', { static: false, read: TemplateRef },] }], - languageRef: [{ type: ViewChild, args: ['language', { static: false, read: TemplateRef },] }], - navbarRootDropdowns: [{ type: ViewChildren, args: ['navbarRootDropdown', { read: NgbDropdown },] }] -}; -__decorate([ - Select(ConfigState.getOne('routes')), - __metadata("design:type", Observable) -], ApplicationLayoutComponent.prototype, "routes$", void 0); -__decorate([ - Select(ConfigState.getOne('currentUser')), - __metadata("design:type", Observable) -], ApplicationLayoutComponent.prototype, "currentUser$", void 0); -__decorate([ - Select(ConfigState.getDeep('localization.languages')), - __metadata("design:type", Observable) -], ApplicationLayoutComponent.prototype, "languages$", void 0); -__decorate([ - Select(LayoutState.getNavigationElements), - __metadata("design:type", Observable) -], ApplicationLayoutComponent.prototype, "navElements$", void 0); -if (false) { - /** @type {?} */ - ApplicationLayoutComponent.type; - /** @type {?} */ - ApplicationLayoutComponent.prototype.routes$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.currentUser$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.languages$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.navElements$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.currentUserRef; - /** @type {?} */ - ApplicationLayoutComponent.prototype.languageRef; - /** @type {?} */ - ApplicationLayoutComponent.prototype.navbarRootDropdowns; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isOpenChangePassword; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isOpenProfile; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isDropdownChildDynamic; - /** @type {?} */ - ApplicationLayoutComponent.prototype.rightPartElements; - /** @type {?} */ - ApplicationLayoutComponent.prototype.trackByFn; - /** @type {?} */ - ApplicationLayoutComponent.prototype.trackElementByFn; - /** - * @type {?} - * @private - */ - ApplicationLayoutComponent.prototype.store; - /** - * @type {?} - * @private - */ - ApplicationLayoutComponent.prototype.oauthService; -} -/** - * @param {?} routes - * @return {?} - */ -function getVisibleRoutes(routes) { - return routes.reduce((/** - * @param {?} acc - * @param {?} val - * @return {?} - */ - (acc, val) => { - if (val.invisible) - return acc; - if (val.children && val.children.length) { - val.children = getVisibleRoutes(val.children); - } - return [...acc, val]; - }), []); -} - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class EmptyLayoutComponent { -} -EmptyLayoutComponent.type = "empty" /* empty */; -EmptyLayoutComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-empty', - template: ` - Layout-empty - - ` - }] } -]; -if (false) { - /** @type {?} */ - EmptyLayoutComponent.type; -} - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -class LayoutComponent { - /** - * @param {?} store - */ - constructor(store) { - this.store = store; - this.isCollapsed = true; - } - /** - * @return {?} - */ - get appInfo() { - return this.store.selectSnapshot(ConfigState.getApplicationInfo); - } -} -LayoutComponent.decorators = [ - { type: Component, args: [{ - selector: ' abp-layout', - template: "\n\n\n \n\n\n\n\n\n\n {{ appInfo.name }}\n\n", - animations: [slideFromBottom] - }] } -]; -/** @nocollapse */ -LayoutComponent.ctorParameters = () => [ - { type: Store } -]; -if (false) { - /** @type {?} */ - LayoutComponent.prototype.isCollapsed; - /** - * @type {?} - * @private - */ - LayoutComponent.prototype.store; -} - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -/** @type {?} */ -const LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent]; -class ThemeBasicModule { -} -ThemeBasicModule.decorators = [ - { type: NgModule, args: [{ - declarations: [...LAYOUTS, LayoutComponent], - imports: [ - CoreModule, - ThemeSharedModule, - NgbCollapseModule, - NgbDropdownModule, - ToastModule, - NgxValidateCoreModule, - NgxsModule.forFeature([LayoutState]), - ], - exports: [...LAYOUTS], - entryComponents: [...LAYOUTS], - },] } -]; - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var Layout; -(function (Layout) { - /** - * @record - */ - function State() { } - Layout.State = State; - if (false) { - /** @type {?} */ - State.prototype.navigationElements; - } - /** - * @record - */ - function NavigationElement() { } - Layout.NavigationElement = NavigationElement; - if (false) { - /** @type {?} */ - NavigationElement.prototype.name; - /** @type {?} */ - NavigationElement.prototype.element; - /** @type {?|undefined} */ - NavigationElement.prototype.order; - } -})(Layout || (Layout = {})); - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -export { AccountLayoutComponent, AddNavigationElement, ApplicationLayoutComponent, EmptyLayoutComponent, LAYOUTS, LayoutState, RemoveNavigationElementByName, ThemeBasicModule, ApplicationLayoutComponent as ɵa, LayoutState as ɵb, AccountLayoutComponent as ɵc, EmptyLayoutComponent as ɵd, LayoutComponent as ɵe, LayoutState as ɵf, AddNavigationElement as ɵg, RemoveNavigationElementByName as ɵh }; -//# sourceMappingURL=abp-ng.theme.basic.js.map diff --git a/npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js.map b/npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js.map deleted file mode 100644 index 5d44457e7c..0000000000 --- a/npm/ng-packs/dist/theme-basic/fesm2015/abp-ng.theme.basic.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"abp-ng.theme.basic.js","sources":["ng://@abp/ng.theme.basic/lib/components/account-layout/account-layout.component.ts","ng://@abp/ng.theme.basic/lib/actions/layout.actions.ts","ng://@abp/ng.theme.basic/lib/states/layout.state.ts","ng://@abp/ng.theme.basic/lib/components/application-layout/application-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/empty-layout/empty-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/layout/layout.component.ts","ng://@abp/ng.theme.basic/lib/theme-basic.module.ts","ng://@abp/ng.theme.basic/lib/models/layout.ts"],"sourcesContent":["import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-account',\n templateUrl: './account-layout.component.html',\n})\nexport class AccountLayoutComponent {\n // required for dynamic component\n static type = eLayoutType.account;\n}\n","import { Layout } from '../models/layout';\n\nexport class AddNavigationElement {\n static readonly type = '[Layout] Add Navigation Element';\n constructor(public payload: Layout.NavigationElement | Layout.NavigationElement[]) {}\n}\n\nexport class RemoveNavigationElementByName {\n static readonly type = '[Layout] Remove Navigation ElementByName';\n constructor(public name: string) {}\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { AddNavigationElement, RemoveNavigationElementByName } from '../actions/layout.actions';\nimport { Layout } from '../models/layout';\nimport { TemplateRef } from '@angular/core';\nimport snq from 'snq';\n\n@State({\n name: 'LayoutState',\n defaults: { navigationElements: [] } as Layout.State,\n})\nexport class LayoutState {\n @Selector()\n static getNavigationElements({ navigationElements }: Layout.State): Layout.NavigationElement[] {\n return navigationElements;\n }\n\n @Action(AddNavigationElement)\n layoutAddAction({ getState, patchState }: StateContext, { payload = [] }: AddNavigationElement) {\n let { navigationElements } = getState();\n\n if (!Array.isArray(payload)) {\n payload = [payload];\n }\n\n if (navigationElements.length) {\n payload = snq(\n () =>\n (payload as Layout.NavigationElement[]).filter(\n ({ name }) => navigationElements.findIndex(nav => nav.name === name) < 0,\n ),\n [],\n );\n }\n\n if (!payload.length) return;\n\n navigationElements = [...navigationElements, ...payload]\n .map(element => ({ ...element, order: element.order || 99 }))\n .sort((a, b) => a.order - b.order);\n\n return patchState({\n navigationElements,\n });\n }\n\n @Action(RemoveNavigationElementByName)\n layoutRemoveAction({ getState, patchState }: StateContext, { name }: RemoveNavigationElementByName) {\n let { navigationElements } = getState();\n\n const index = navigationElements.findIndex(element => element.name === name);\n\n if (index > -1) {\n navigationElements = navigationElements.splice(index, 1);\n }\n\n return patchState({\n navigationElements,\n });\n }\n}\n","import {\n ABP,\n ApplicationConfiguration,\n GetAppConfiguration,\n ConfigState,\n eLayoutType,\n SetLanguage,\n SessionState,\n takeUntilDestroy,\n} from '@abp/ng.core';\nimport {\n AfterViewInit,\n Component,\n OnDestroy,\n QueryList,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';\nimport { Navigate, RouterState } from '@ngxs/router-plugin';\nimport { Select, Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport compare from 'just-compare';\nimport { fromEvent, Observable } from 'rxjs';\nimport { debounceTime, filter, map } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AddNavigationElement } from '../../actions';\nimport { Layout } from '../../models/layout';\nimport { LayoutState } from '../../states';\n\n@Component({\n selector: 'abp-layout-application',\n templateUrl: './application-layout.component.html',\n})\nexport class ApplicationLayoutComponent implements AfterViewInit, OnDestroy {\n // required for dynamic component\n static type = eLayoutType.application;\n\n @Select(ConfigState.getOne('routes'))\n routes$: Observable;\n\n @Select(ConfigState.getOne('currentUser'))\n currentUser$: Observable;\n\n @Select(ConfigState.getDeep('localization.languages'))\n languages$: Observable;\n\n @Select(LayoutState.getNavigationElements)\n navElements$: Observable;\n\n @ViewChild('currentUser', { static: false, read: TemplateRef })\n currentUserRef: TemplateRef;\n\n @ViewChild('language', { static: false, read: TemplateRef })\n languageRef: TemplateRef;\n\n @ViewChildren('navbarRootDropdown', { read: NgbDropdown })\n navbarRootDropdowns: QueryList;\n\n isOpenChangePassword: boolean = false;\n\n isOpenProfile: boolean = false;\n\n isDropdownChildDynamic: boolean;\n\n get visibleRoutes$(): Observable {\n return this.routes$.pipe(map(routes => getVisibleRoutes(routes)));\n }\n\n get defaultLanguage$(): Observable {\n return this.languages$.pipe(\n map(\n languages => snq(() => languages.find(lang => lang.cultureName === this.selectedLangCulture).displayName),\n '',\n ),\n );\n }\n\n get dropdownLanguages$(): Observable {\n return this.languages$.pipe(\n map(languages => snq(() => languages.filter(lang => lang.cultureName !== this.selectedLangCulture)), []),\n );\n }\n\n get selectedLangCulture(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n rightPartElements: TemplateRef[] = [];\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n trackElementByFn: TrackByFunction = (_, element) => element;\n\n constructor(private store: Store, private oauthService: OAuthService) {}\n\n private checkWindowWidth() {\n setTimeout(() => {\n this.navbarRootDropdowns.forEach(item => {\n item.close();\n });\n if (window.innerWidth < 768) {\n this.isDropdownChildDynamic = false;\n } else {\n this.isDropdownChildDynamic = true;\n }\n }, 0);\n }\n\n ngAfterViewInit() {\n const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map(({ name }) => name);\n\n if (navigations.indexOf('LanguageRef') < 0) {\n this.store.dispatch(\n new AddNavigationElement([\n { element: this.languageRef, order: 4, name: 'LanguageRef' },\n { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' },\n ]),\n );\n }\n\n this.navElements$\n .pipe(\n map(elements => elements.map(({ element }) => element)),\n filter(elements => !compare(elements, this.rightPartElements)),\n takeUntilDestroy(this),\n )\n .subscribe(elements => {\n setTimeout(() => (this.rightPartElements = elements), 0);\n });\n\n this.checkWindowWidth();\n\n fromEvent(window, 'resize')\n .pipe(\n takeUntilDestroy(this),\n debounceTime(250),\n )\n .subscribe(() => {\n this.checkWindowWidth();\n });\n }\n\n ngOnDestroy() {}\n\n onChangeLang(cultureName: string) {\n this.store.dispatch(new SetLanguage(cultureName));\n }\n\n logout() {\n this.oauthService.logOut();\n this.store.dispatch(\n new Navigate(['/'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n this.store.dispatch(new GetAppConfiguration());\n }\n}\n\nfunction getVisibleRoutes(routes: ABP.FullRoute[]) {\n return routes.reduce((acc, val) => {\n if (val.invisible) return acc;\n\n if (val.children && val.children.length) {\n val.children = getVisibleRoutes(val.children);\n }\n\n return [...acc, val];\n }, []);\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-empty',\n template: `\n Layout-empty\n \n `,\n})\nexport class EmptyLayoutComponent {\n static type = eLayoutType.empty;\n}\n","import { Config, ConfigState } from '@abp/ng.core';\nimport { slideFromBottom } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { Store } from '@ngxs/store';\n\n@Component({\n selector: ' abp-layout',\n templateUrl: './layout.component.html',\n animations: [slideFromBottom],\n})\nexport class LayoutComponent {\n isCollapsed: boolean = true;\n\n get appInfo(): Config.Application {\n return this.store.selectSnapshot(ConfigState.getApplicationInfo);\n }\n\n constructor(private store: Store) {}\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { ToastModule } from 'primeng/toast';\nimport { AccountLayoutComponent } from './components/account-layout/account-layout.component';\nimport { ApplicationLayoutComponent } from './components/application-layout/application-layout.component';\nimport { EmptyLayoutComponent } from './components/empty-layout/empty-layout.component';\nimport { LayoutComponent } from './components/layout/layout.component';\nimport { LayoutState } from './states/layout.state';\n\nexport const LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent];\n\n@NgModule({\n declarations: [...LAYOUTS, LayoutComponent],\n imports: [\n CoreModule,\n ThemeSharedModule,\n NgbCollapseModule,\n NgbDropdownModule,\n ToastModule,\n NgxValidateCoreModule,\n NgxsModule.forFeature([LayoutState]),\n ],\n exports: [...LAYOUTS],\n entryComponents: [...LAYOUTS],\n})\nexport class ThemeBasicModule {}\n","import { TemplateRef } from '@angular/core';\n\nexport namespace Layout {\n export interface State {\n navigationElements: NavigationElement[];\n }\n\n export interface NavigationElement {\n name: string;\n element: TemplateRef;\n order?: number;\n }\n}\n"],"names":["tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js b/npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js deleted file mode 100644 index 7e3bed552d..0000000000 --- a/npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js +++ /dev/null @@ -1,655 +0,0 @@ -import { __spread, __assign, __decorate, __metadata } from 'tslib'; -import { SessionState, takeUntilDestroy, SetLanguage, GetAppConfiguration, ConfigState, CoreModule } from '@abp/ng.core'; -import { slideFromBottom, ThemeSharedModule } from '@abp/ng.theme.shared'; -import { Component, ViewChild, TemplateRef, ViewChildren, NgModule } from '@angular/core'; -import { NgbDropdown, NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; -import { NgxValidateCoreModule } from '@ngx-validate/core'; -import { Action, Selector, State, Store, Select, NgxsModule } from '@ngxs/store'; -import { ToastModule } from 'primeng/toast'; -import { Navigate, RouterState } from '@ngxs/router-plugin'; -import { OAuthService } from 'angular-oauth2-oidc'; -import compare from 'just-compare'; -import { fromEvent, Observable } from 'rxjs'; -import { map, filter, debounceTime } from 'rxjs/operators'; -import snq from 'snq'; - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var AccountLayoutComponent = /** @class */ (function () { - function AccountLayoutComponent() { - } - // required for dynamic component - AccountLayoutComponent.type = "account" /* account */; - AccountLayoutComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-account', - template: "\n" - }] } - ]; - return AccountLayoutComponent; -}()); -if (false) { - /** @type {?} */ - AccountLayoutComponent.type; -} - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var AddNavigationElement = /** @class */ (function () { - function AddNavigationElement(payload) { - this.payload = payload; - } - AddNavigationElement.type = '[Layout] Add Navigation Element'; - return AddNavigationElement; -}()); -if (false) { - /** @type {?} */ - AddNavigationElement.type; - /** @type {?} */ - AddNavigationElement.prototype.payload; -} -var RemoveNavigationElementByName = /** @class */ (function () { - function RemoveNavigationElementByName(name) { - this.name = name; - } - RemoveNavigationElementByName.type = '[Layout] Remove Navigation ElementByName'; - return RemoveNavigationElementByName; -}()); -if (false) { - /** @type {?} */ - RemoveNavigationElementByName.type; - /** @type {?} */ - RemoveNavigationElementByName.prototype.name; -} - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var LayoutState = /** @class */ (function () { - function LayoutState() { - } - /** - * @param {?} __0 - * @return {?} - */ - LayoutState.getNavigationElements = /** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var navigationElements = _a.navigationElements; - return navigationElements; - }; - /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - LayoutState.prototype.layoutAddAction = /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - function (_a, _b) { - var getState = _a.getState, patchState = _a.patchState; - var _c = _b.payload, payload = _c === void 0 ? [] : _c; - var navigationElements = getState().navigationElements; - if (!Array.isArray(payload)) { - payload = [payload]; - } - if (navigationElements.length) { - payload = snq((/** - * @return {?} - */ - function () { - return ((/** @type {?} */ (payload))).filter((/** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var name = _a.name; - return navigationElements.findIndex((/** - * @param {?} nav - * @return {?} - */ - function (nav) { return nav.name === name; })) < 0; - })); - }), []); - } - if (!payload.length) - return; - navigationElements = __spread(navigationElements, payload).map((/** - * @param {?} element - * @return {?} - */ - function (element) { return (__assign({}, element, { order: element.order || 99 })); })) - .sort((/** - * @param {?} a - * @param {?} b - * @return {?} - */ - function (a, b) { return a.order - b.order; })); - return patchState({ - navigationElements: navigationElements, - }); - }; - /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - LayoutState.prototype.layoutRemoveAction = /** - * @param {?} __0 - * @param {?} __1 - * @return {?} - */ - function (_a, _b) { - var getState = _a.getState, patchState = _a.patchState; - var name = _b.name; - var navigationElements = getState().navigationElements; - /** @type {?} */ - var index = navigationElements.findIndex((/** - * @param {?} element - * @return {?} - */ - function (element) { return element.name === name; })); - if (index > -1) { - navigationElements = navigationElements.splice(index, 1); - } - return patchState({ - navigationElements: navigationElements, - }); - }; - __decorate([ - Action(AddNavigationElement), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, AddNavigationElement]), - __metadata("design:returntype", void 0) - ], LayoutState.prototype, "layoutAddAction", null); - __decorate([ - Action(RemoveNavigationElementByName), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object, RemoveNavigationElementByName]), - __metadata("design:returntype", void 0) - ], LayoutState.prototype, "layoutRemoveAction", null); - __decorate([ - Selector(), - __metadata("design:type", Function), - __metadata("design:paramtypes", [Object]), - __metadata("design:returntype", Array) - ], LayoutState, "getNavigationElements", null); - LayoutState = __decorate([ - State({ - name: 'LayoutState', - defaults: (/** @type {?} */ ({ navigationElements: [] })), - }) - ], LayoutState); - return LayoutState; -}()); - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var ApplicationLayoutComponent = /** @class */ (function () { - function ApplicationLayoutComponent(store, oauthService) { - this.store = store; - this.oauthService = oauthService; - this.isOpenChangePassword = false; - this.isOpenProfile = false; - this.rightPartElements = []; - this.trackByFn = (/** - * @param {?} _ - * @param {?} item - * @return {?} - */ - function (_, item) { return item.name; }); - this.trackElementByFn = (/** - * @param {?} _ - * @param {?} element - * @return {?} - */ - function (_, element) { return element; }); - } - Object.defineProperty(ApplicationLayoutComponent.prototype, "visibleRoutes$", { - get: /** - * @return {?} - */ - function () { - return this.routes$.pipe(map((/** - * @param {?} routes - * @return {?} - */ - function (routes) { return getVisibleRoutes(routes); }))); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ApplicationLayoutComponent.prototype, "defaultLanguage$", { - get: /** - * @return {?} - */ - function () { - var _this = this; - return this.languages$.pipe(map((/** - * @param {?} languages - * @return {?} - */ - function (languages) { return snq((/** - * @return {?} - */ - function () { return languages.find((/** - * @param {?} lang - * @return {?} - */ - function (lang) { return lang.cultureName === _this.selectedLangCulture; })).displayName; })); }), '')); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ApplicationLayoutComponent.prototype, "dropdownLanguages$", { - get: /** - * @return {?} - */ - function () { - var _this = this; - return this.languages$.pipe(map((/** - * @param {?} languages - * @return {?} - */ - function (languages) { return snq((/** - * @return {?} - */ - function () { return languages.filter((/** - * @param {?} lang - * @return {?} - */ - function (lang) { return lang.cultureName !== _this.selectedLangCulture; })); })); }), [])); - }, - enumerable: true, - configurable: true - }); - Object.defineProperty(ApplicationLayoutComponent.prototype, "selectedLangCulture", { - get: /** - * @return {?} - */ - function () { - return this.store.selectSnapshot(SessionState.getLanguage); - }, - enumerable: true, - configurable: true - }); - /** - * @private - * @return {?} - */ - ApplicationLayoutComponent.prototype.checkWindowWidth = /** - * @private - * @return {?} - */ - function () { - var _this = this; - setTimeout((/** - * @return {?} - */ - function () { - _this.navbarRootDropdowns.forEach((/** - * @param {?} item - * @return {?} - */ - function (item) { - item.close(); - })); - if (window.innerWidth < 768) { - _this.isDropdownChildDynamic = false; - } - else { - _this.isDropdownChildDynamic = true; - } - }), 0); - }; - /** - * @return {?} - */ - ApplicationLayoutComponent.prototype.ngAfterViewInit = /** - * @return {?} - */ - function () { - var _this = this; - /** @type {?} */ - var navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map((/** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var name = _a.name; - return name; - })); - if (navigations.indexOf('LanguageRef') < 0) { - this.store.dispatch(new AddNavigationElement([ - { element: this.languageRef, order: 4, name: 'LanguageRef' }, - { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' }, - ])); - } - this.navElements$ - .pipe(map((/** - * @param {?} elements - * @return {?} - */ - function (elements) { return elements.map((/** - * @param {?} __0 - * @return {?} - */ - function (_a) { - var element = _a.element; - return element; - })); })), filter((/** - * @param {?} elements - * @return {?} - */ - function (elements) { return !compare(elements, _this.rightPartElements); })), takeUntilDestroy(this)) - .subscribe((/** - * @param {?} elements - * @return {?} - */ - function (elements) { - setTimeout((/** - * @return {?} - */ - function () { return (_this.rightPartElements = elements); }), 0); - })); - this.checkWindowWidth(); - fromEvent(window, 'resize') - .pipe(takeUntilDestroy(this), debounceTime(250)) - .subscribe((/** - * @return {?} - */ - function () { - _this.checkWindowWidth(); - })); - }; - /** - * @return {?} - */ - ApplicationLayoutComponent.prototype.ngOnDestroy = /** - * @return {?} - */ - function () { }; - /** - * @param {?} cultureName - * @return {?} - */ - ApplicationLayoutComponent.prototype.onChangeLang = /** - * @param {?} cultureName - * @return {?} - */ - function (cultureName) { - this.store.dispatch(new SetLanguage(cultureName)); - }; - /** - * @return {?} - */ - ApplicationLayoutComponent.prototype.logout = /** - * @return {?} - */ - function () { - this.oauthService.logOut(); - this.store.dispatch(new Navigate(['/'], null, { - state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url }, - })); - this.store.dispatch(new GetAppConfiguration()); - }; - // required for dynamic component - ApplicationLayoutComponent.type = "application" /* application */; - ApplicationLayoutComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-application', - template: "\n \n\n
      \n \n
    \n
    \n\n\n
  • \n \n {{ defaultLanguage$ | async }}\n \n
    \n {{ lang?.displayName }}\n
    \n
  • \n
    \n\n\n
  • \n \n {{ (currentUser$ | async)?.userName }}\n \n \n
  • \n\n \n\n \n
    \n" - }] } - ]; - /** @nocollapse */ - ApplicationLayoutComponent.ctorParameters = function () { return [ - { type: Store }, - { type: OAuthService } - ]; }; - ApplicationLayoutComponent.propDecorators = { - currentUserRef: [{ type: ViewChild, args: ['currentUser', { static: false, read: TemplateRef },] }], - languageRef: [{ type: ViewChild, args: ['language', { static: false, read: TemplateRef },] }], - navbarRootDropdowns: [{ type: ViewChildren, args: ['navbarRootDropdown', { read: NgbDropdown },] }] - }; - __decorate([ - Select(ConfigState.getOne('routes')), - __metadata("design:type", Observable) - ], ApplicationLayoutComponent.prototype, "routes$", void 0); - __decorate([ - Select(ConfigState.getOne('currentUser')), - __metadata("design:type", Observable) - ], ApplicationLayoutComponent.prototype, "currentUser$", void 0); - __decorate([ - Select(ConfigState.getDeep('localization.languages')), - __metadata("design:type", Observable) - ], ApplicationLayoutComponent.prototype, "languages$", void 0); - __decorate([ - Select(LayoutState.getNavigationElements), - __metadata("design:type", Observable) - ], ApplicationLayoutComponent.prototype, "navElements$", void 0); - return ApplicationLayoutComponent; -}()); -if (false) { - /** @type {?} */ - ApplicationLayoutComponent.type; - /** @type {?} */ - ApplicationLayoutComponent.prototype.routes$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.currentUser$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.languages$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.navElements$; - /** @type {?} */ - ApplicationLayoutComponent.prototype.currentUserRef; - /** @type {?} */ - ApplicationLayoutComponent.prototype.languageRef; - /** @type {?} */ - ApplicationLayoutComponent.prototype.navbarRootDropdowns; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isOpenChangePassword; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isOpenProfile; - /** @type {?} */ - ApplicationLayoutComponent.prototype.isDropdownChildDynamic; - /** @type {?} */ - ApplicationLayoutComponent.prototype.rightPartElements; - /** @type {?} */ - ApplicationLayoutComponent.prototype.trackByFn; - /** @type {?} */ - ApplicationLayoutComponent.prototype.trackElementByFn; - /** - * @type {?} - * @private - */ - ApplicationLayoutComponent.prototype.store; - /** - * @type {?} - * @private - */ - ApplicationLayoutComponent.prototype.oauthService; -} -/** - * @param {?} routes - * @return {?} - */ -function getVisibleRoutes(routes) { - return routes.reduce((/** - * @param {?} acc - * @param {?} val - * @return {?} - */ - function (acc, val) { - if (val.invisible) - return acc; - if (val.children && val.children.length) { - val.children = getVisibleRoutes(val.children); - } - return __spread(acc, [val]); - }), []); -} - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var EmptyLayoutComponent = /** @class */ (function () { - function EmptyLayoutComponent() { - } - EmptyLayoutComponent.type = "empty" /* empty */; - EmptyLayoutComponent.decorators = [ - { type: Component, args: [{ - selector: 'abp-layout-empty', - template: "\n Layout-empty\n \n " - }] } - ]; - return EmptyLayoutComponent; -}()); -if (false) { - /** @type {?} */ - EmptyLayoutComponent.type; -} - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var LayoutComponent = /** @class */ (function () { - function LayoutComponent(store) { - this.store = store; - this.isCollapsed = true; - } - Object.defineProperty(LayoutComponent.prototype, "appInfo", { - get: /** - * @return {?} - */ - function () { - return this.store.selectSnapshot(ConfigState.getApplicationInfo); - }, - enumerable: true, - configurable: true - }); - LayoutComponent.decorators = [ - { type: Component, args: [{ - selector: ' abp-layout', - template: "\n\n\n \n\n\n\n\n\n\n {{ appInfo.name }}\n\n", - animations: [slideFromBottom] - }] } - ]; - /** @nocollapse */ - LayoutComponent.ctorParameters = function () { return [ - { type: Store } - ]; }; - return LayoutComponent; -}()); -if (false) { - /** @type {?} */ - LayoutComponent.prototype.isCollapsed; - /** - * @type {?} - * @private - */ - LayoutComponent.prototype.store; -} - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -/** @type {?} */ -var LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent]; -var ThemeBasicModule = /** @class */ (function () { - function ThemeBasicModule() { - } - ThemeBasicModule.decorators = [ - { type: NgModule, args: [{ - declarations: __spread(LAYOUTS, [LayoutComponent]), - imports: [ - CoreModule, - ThemeSharedModule, - NgbCollapseModule, - NgbDropdownModule, - ToastModule, - NgxValidateCoreModule, - NgxsModule.forFeature([LayoutState]), - ], - exports: __spread(LAYOUTS), - entryComponents: __spread(LAYOUTS), - },] } - ]; - return ThemeBasicModule; -}()); - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ -var Layout; -(function (Layout) { - /** - * @record - */ - function State() { } - Layout.State = State; - if (false) { - /** @type {?} */ - State.prototype.navigationElements; - } - /** - * @record - */ - function NavigationElement() { } - Layout.NavigationElement = NavigationElement; - if (false) { - /** @type {?} */ - NavigationElement.prototype.name; - /** @type {?} */ - NavigationElement.prototype.element; - /** @type {?|undefined} */ - NavigationElement.prototype.order; - } -})(Layout || (Layout = {})); - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -/** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - -export { AccountLayoutComponent, AddNavigationElement, ApplicationLayoutComponent, EmptyLayoutComponent, LAYOUTS, LayoutState, RemoveNavigationElementByName, ThemeBasicModule, ApplicationLayoutComponent as ɵa, LayoutState as ɵb, AccountLayoutComponent as ɵc, EmptyLayoutComponent as ɵd, LayoutComponent as ɵe, LayoutState as ɵf, AddNavigationElement as ɵg, RemoveNavigationElementByName as ɵh }; -//# sourceMappingURL=abp-ng.theme.basic.js.map diff --git a/npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js.map b/npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js.map deleted file mode 100644 index 8a1ffbbd31..0000000000 --- a/npm/ng-packs/dist/theme-basic/fesm5/abp-ng.theme.basic.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"abp-ng.theme.basic.js","sources":["ng://@abp/ng.theme.basic/lib/components/account-layout/account-layout.component.ts","ng://@abp/ng.theme.basic/lib/actions/layout.actions.ts","ng://@abp/ng.theme.basic/lib/states/layout.state.ts","ng://@abp/ng.theme.basic/lib/components/application-layout/application-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/empty-layout/empty-layout.component.ts","ng://@abp/ng.theme.basic/lib/components/layout/layout.component.ts","ng://@abp/ng.theme.basic/lib/theme-basic.module.ts","ng://@abp/ng.theme.basic/lib/models/layout.ts"],"sourcesContent":["import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-account',\n templateUrl: './account-layout.component.html',\n})\nexport class AccountLayoutComponent {\n // required for dynamic component\n static type = eLayoutType.account;\n}\n","import { Layout } from '../models/layout';\n\nexport class AddNavigationElement {\n static readonly type = '[Layout] Add Navigation Element';\n constructor(public payload: Layout.NavigationElement | Layout.NavigationElement[]) {}\n}\n\nexport class RemoveNavigationElementByName {\n static readonly type = '[Layout] Remove Navigation ElementByName';\n constructor(public name: string) {}\n}\n","import { State, Action, StateContext, Selector } from '@ngxs/store';\nimport { AddNavigationElement, RemoveNavigationElementByName } from '../actions/layout.actions';\nimport { Layout } from '../models/layout';\nimport { TemplateRef } from '@angular/core';\nimport snq from 'snq';\n\n@State({\n name: 'LayoutState',\n defaults: { navigationElements: [] } as Layout.State,\n})\nexport class LayoutState {\n @Selector()\n static getNavigationElements({ navigationElements }: Layout.State): Layout.NavigationElement[] {\n return navigationElements;\n }\n\n @Action(AddNavigationElement)\n layoutAddAction({ getState, patchState }: StateContext, { payload = [] }: AddNavigationElement) {\n let { navigationElements } = getState();\n\n if (!Array.isArray(payload)) {\n payload = [payload];\n }\n\n if (navigationElements.length) {\n payload = snq(\n () =>\n (payload as Layout.NavigationElement[]).filter(\n ({ name }) => navigationElements.findIndex(nav => nav.name === name) < 0,\n ),\n [],\n );\n }\n\n if (!payload.length) return;\n\n navigationElements = [...navigationElements, ...payload]\n .map(element => ({ ...element, order: element.order || 99 }))\n .sort((a, b) => a.order - b.order);\n\n return patchState({\n navigationElements,\n });\n }\n\n @Action(RemoveNavigationElementByName)\n layoutRemoveAction({ getState, patchState }: StateContext, { name }: RemoveNavigationElementByName) {\n let { navigationElements } = getState();\n\n const index = navigationElements.findIndex(element => element.name === name);\n\n if (index > -1) {\n navigationElements = navigationElements.splice(index, 1);\n }\n\n return patchState({\n navigationElements,\n });\n }\n}\n","import {\n ABP,\n ApplicationConfiguration,\n GetAppConfiguration,\n ConfigState,\n eLayoutType,\n SetLanguage,\n SessionState,\n takeUntilDestroy,\n} from '@abp/ng.core';\nimport {\n AfterViewInit,\n Component,\n OnDestroy,\n QueryList,\n TemplateRef,\n TrackByFunction,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { NgbDropdown } from '@ng-bootstrap/ng-bootstrap';\nimport { Navigate, RouterState } from '@ngxs/router-plugin';\nimport { Select, Store } from '@ngxs/store';\nimport { OAuthService } from 'angular-oauth2-oidc';\nimport compare from 'just-compare';\nimport { fromEvent, Observable } from 'rxjs';\nimport { debounceTime, filter, map } from 'rxjs/operators';\nimport snq from 'snq';\nimport { AddNavigationElement } from '../../actions';\nimport { Layout } from '../../models/layout';\nimport { LayoutState } from '../../states';\n\n@Component({\n selector: 'abp-layout-application',\n templateUrl: './application-layout.component.html',\n})\nexport class ApplicationLayoutComponent implements AfterViewInit, OnDestroy {\n // required for dynamic component\n static type = eLayoutType.application;\n\n @Select(ConfigState.getOne('routes'))\n routes$: Observable;\n\n @Select(ConfigState.getOne('currentUser'))\n currentUser$: Observable;\n\n @Select(ConfigState.getDeep('localization.languages'))\n languages$: Observable;\n\n @Select(LayoutState.getNavigationElements)\n navElements$: Observable;\n\n @ViewChild('currentUser', { static: false, read: TemplateRef })\n currentUserRef: TemplateRef;\n\n @ViewChild('language', { static: false, read: TemplateRef })\n languageRef: TemplateRef;\n\n @ViewChildren('navbarRootDropdown', { read: NgbDropdown })\n navbarRootDropdowns: QueryList;\n\n isOpenChangePassword: boolean = false;\n\n isOpenProfile: boolean = false;\n\n isDropdownChildDynamic: boolean;\n\n get visibleRoutes$(): Observable {\n return this.routes$.pipe(map(routes => getVisibleRoutes(routes)));\n }\n\n get defaultLanguage$(): Observable {\n return this.languages$.pipe(\n map(\n languages => snq(() => languages.find(lang => lang.cultureName === this.selectedLangCulture).displayName),\n '',\n ),\n );\n }\n\n get dropdownLanguages$(): Observable {\n return this.languages$.pipe(\n map(languages => snq(() => languages.filter(lang => lang.cultureName !== this.selectedLangCulture)), []),\n );\n }\n\n get selectedLangCulture(): string {\n return this.store.selectSnapshot(SessionState.getLanguage);\n }\n\n rightPartElements: TemplateRef[] = [];\n\n trackByFn: TrackByFunction = (_, item) => item.name;\n\n trackElementByFn: TrackByFunction = (_, element) => element;\n\n constructor(private store: Store, private oauthService: OAuthService) {}\n\n private checkWindowWidth() {\n setTimeout(() => {\n this.navbarRootDropdowns.forEach(item => {\n item.close();\n });\n if (window.innerWidth < 768) {\n this.isDropdownChildDynamic = false;\n } else {\n this.isDropdownChildDynamic = true;\n }\n }, 0);\n }\n\n ngAfterViewInit() {\n const navigations = this.store.selectSnapshot(LayoutState.getNavigationElements).map(({ name }) => name);\n\n if (navigations.indexOf('LanguageRef') < 0) {\n this.store.dispatch(\n new AddNavigationElement([\n { element: this.languageRef, order: 4, name: 'LanguageRef' },\n { element: this.currentUserRef, order: 5, name: 'CurrentUserRef' },\n ]),\n );\n }\n\n this.navElements$\n .pipe(\n map(elements => elements.map(({ element }) => element)),\n filter(elements => !compare(elements, this.rightPartElements)),\n takeUntilDestroy(this),\n )\n .subscribe(elements => {\n setTimeout(() => (this.rightPartElements = elements), 0);\n });\n\n this.checkWindowWidth();\n\n fromEvent(window, 'resize')\n .pipe(\n takeUntilDestroy(this),\n debounceTime(250),\n )\n .subscribe(() => {\n this.checkWindowWidth();\n });\n }\n\n ngOnDestroy() {}\n\n onChangeLang(cultureName: string) {\n this.store.dispatch(new SetLanguage(cultureName));\n }\n\n logout() {\n this.oauthService.logOut();\n this.store.dispatch(\n new Navigate(['/'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n this.store.dispatch(new GetAppConfiguration());\n }\n}\n\nfunction getVisibleRoutes(routes: ABP.FullRoute[]) {\n return routes.reduce((acc, val) => {\n if (val.invisible) return acc;\n\n if (val.children && val.children.length) {\n val.children = getVisibleRoutes(val.children);\n }\n\n return [...acc, val];\n }, []);\n}\n","import { Component } from '@angular/core';\nimport { eLayoutType } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-layout-empty',\n template: `\n Layout-empty\n \n `,\n})\nexport class EmptyLayoutComponent {\n static type = eLayoutType.empty;\n}\n","import { Config, ConfigState } from '@abp/ng.core';\nimport { slideFromBottom } from '@abp/ng.theme.shared';\nimport { Component } from '@angular/core';\nimport { Store } from '@ngxs/store';\n\n@Component({\n selector: ' abp-layout',\n templateUrl: './layout.component.html',\n animations: [slideFromBottom],\n})\nexport class LayoutComponent {\n isCollapsed: boolean = true;\n\n get appInfo(): Config.Application {\n return this.store.selectSnapshot(ConfigState.getApplicationInfo);\n }\n\n constructor(private store: Store) {}\n}\n","import { CoreModule } from '@abp/ng.core';\nimport { ThemeSharedModule } from '@abp/ng.theme.shared';\nimport { NgModule } from '@angular/core';\nimport { NgbCollapseModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { NgxsModule } from '@ngxs/store';\nimport { ToastModule } from 'primeng/toast';\nimport { AccountLayoutComponent } from './components/account-layout/account-layout.component';\nimport { ApplicationLayoutComponent } from './components/application-layout/application-layout.component';\nimport { EmptyLayoutComponent } from './components/empty-layout/empty-layout.component';\nimport { LayoutComponent } from './components/layout/layout.component';\nimport { LayoutState } from './states/layout.state';\n\nexport const LAYOUTS = [ApplicationLayoutComponent, AccountLayoutComponent, EmptyLayoutComponent];\n\n@NgModule({\n declarations: [...LAYOUTS, LayoutComponent],\n imports: [\n CoreModule,\n ThemeSharedModule,\n NgbCollapseModule,\n NgbDropdownModule,\n ToastModule,\n NgxValidateCoreModule,\n NgxsModule.forFeature([LayoutState]),\n ],\n exports: [...LAYOUTS],\n entryComponents: [...LAYOUTS],\n})\nexport class ThemeBasicModule {}\n","import { TemplateRef } from '@angular/core';\n\nexport namespace Layout {\n export interface State {\n navigationElements: NavigationElement[];\n }\n\n export interface NavigationElement {\n name: string;\n element: TemplateRef;\n order?: number;\n }\n}\n"],"names":["tslib_1.__spread","tslib_1.__decorate"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/lib/actions/index.d.ts b/npm/ng-packs/dist/theme-basic/lib/actions/index.d.ts deleted file mode 100644 index 2e29080de8..0000000000 --- a/npm/ng-packs/dist/theme-basic/lib/actions/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './layout.actions'; diff --git a/npm/ng-packs/dist/theme-basic/lib/actions/layout.actions.d.ts b/npm/ng-packs/dist/theme-basic/lib/actions/layout.actions.d.ts deleted file mode 100644 index 0af529c5c3..0000000000 --- a/npm/ng-packs/dist/theme-basic/lib/actions/layout.actions.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { Layout } from '../models/layout'; -export declare class AddNavigationElement { - payload: Layout.NavigationElement | Layout.NavigationElement[]; - static readonly type = "[Layout] Add Navigation Element"; - constructor(payload: Layout.NavigationElement | Layout.NavigationElement[]); -} -export declare class RemoveNavigationElementByName { - name: string; - static readonly type = "[Layout] Remove Navigation ElementByName"; - constructor(name: string); -} diff --git a/npm/ng-packs/dist/theme-basic/lib/components/account-layout/account-layout.component.d.ts b/npm/ng-packs/dist/theme-basic/lib/components/account-layout/account-layout.component.d.ts deleted file mode 100644 index 6f276026a9..0000000000 --- a/npm/ng-packs/dist/theme-basic/lib/components/account-layout/account-layout.component.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { eLayoutType } from '@abp/ng.core'; -export declare class AccountLayoutComponent { - static type: eLayoutType; -} diff --git a/npm/ng-packs/dist/theme-basic/lib/components/application-layout/application-layout.component.d.ts b/npm/ng-packs/dist/theme-basic/lib/components/application-layout/application-layout.component.d.ts deleted file mode 100644 index bae9e8fb23..0000000000 --- a/npm/ng-packs/dist/theme-basic/lib/components/application-layout/application-layout.component.d.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { ABP, ApplicationConfiguration, eLayoutType } from '@abp/ng.core'; -import { AfterViewInit, OnDestroy, QueryList, TemplateRef, TrackByFunction } from '@angular/core'; -import { NgbDropdown } from '@ng-bootstrap/ng-bootstrap'; -import { Store } from '@ngxs/store'; -import { OAuthService } from 'angular-oauth2-oidc'; -import { Observable } from 'rxjs'; -import { Layout } from '../../models/layout'; -export declare class ApplicationLayoutComponent implements AfterViewInit, OnDestroy { - private store; - private oauthService; - static type: eLayoutType; - routes$: Observable; - currentUser$: Observable; - languages$: Observable; - navElements$: Observable; - currentUserRef: TemplateRef; - languageRef: TemplateRef; - navbarRootDropdowns: QueryList; - isOpenChangePassword: boolean; - isOpenProfile: boolean; - isDropdownChildDynamic: boolean; - readonly visibleRoutes$: Observable; - readonly defaultLanguage$: Observable; - readonly dropdownLanguages$: Observable; - readonly selectedLangCulture: string; - rightPartElements: TemplateRef[]; - trackByFn: TrackByFunction; - trackElementByFn: TrackByFunction; - constructor(store: Store, oauthService: OAuthService); - private checkWindowWidth; - ngAfterViewInit(): void; - ngOnDestroy(): void; - onChangeLang(cultureName: string): void; - logout(): void; -} diff --git a/npm/ng-packs/dist/theme-basic/lib/components/empty-layout/empty-layout.component.d.ts b/npm/ng-packs/dist/theme-basic/lib/components/empty-layout/empty-layout.component.d.ts deleted file mode 100644 index e3282108b0..0000000000 --- a/npm/ng-packs/dist/theme-basic/lib/components/empty-layout/empty-layout.component.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { eLayoutType } from '@abp/ng.core'; -export declare class EmptyLayoutComponent { - static type: eLayoutType; -} diff --git a/npm/ng-packs/dist/theme-basic/lib/components/index.d.ts b/npm/ng-packs/dist/theme-basic/lib/components/index.d.ts deleted file mode 100644 index ca8f7982bc..0000000000 --- a/npm/ng-packs/dist/theme-basic/lib/components/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './account-layout/account-layout.component'; -export * from './application-layout/application-layout.component'; -export * from './empty-layout/empty-layout.component'; diff --git a/npm/ng-packs/dist/theme-basic/lib/components/layout/layout.component.d.ts b/npm/ng-packs/dist/theme-basic/lib/components/layout/layout.component.d.ts deleted file mode 100644 index 8f32e7874d..0000000000 --- a/npm/ng-packs/dist/theme-basic/lib/components/layout/layout.component.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { Config } from '@abp/ng.core'; -import { Store } from '@ngxs/store'; -export declare class LayoutComponent { - private store; - isCollapsed: boolean; - readonly appInfo: Config.Application; - constructor(store: Store); -} diff --git a/npm/ng-packs/dist/theme-basic/lib/models/index.d.ts b/npm/ng-packs/dist/theme-basic/lib/models/index.d.ts deleted file mode 100644 index 5d15fe1b3c..0000000000 --- a/npm/ng-packs/dist/theme-basic/lib/models/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './layout'; diff --git a/npm/ng-packs/dist/theme-basic/lib/models/layout.d.ts b/npm/ng-packs/dist/theme-basic/lib/models/layout.d.ts deleted file mode 100644 index f172d9682f..0000000000 --- a/npm/ng-packs/dist/theme-basic/lib/models/layout.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { TemplateRef } from '@angular/core'; -export declare namespace Layout { - interface State { - navigationElements: NavigationElement[]; - } - interface NavigationElement { - name: string; - element: TemplateRef; - order?: number; - } -} diff --git a/npm/ng-packs/dist/theme-basic/lib/states/index.d.ts b/npm/ng-packs/dist/theme-basic/lib/states/index.d.ts deleted file mode 100644 index 71bff26b8b..0000000000 --- a/npm/ng-packs/dist/theme-basic/lib/states/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from "./layout.state"; diff --git a/npm/ng-packs/dist/theme-basic/lib/states/layout.state.d.ts b/npm/ng-packs/dist/theme-basic/lib/states/layout.state.d.ts deleted file mode 100644 index d1ceb93110..0000000000 --- a/npm/ng-packs/dist/theme-basic/lib/states/layout.state.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { StateContext } from '@ngxs/store'; -import { AddNavigationElement, RemoveNavigationElementByName } from '../actions/layout.actions'; -import { Layout } from '../models/layout'; -export declare class LayoutState { - static getNavigationElements({ navigationElements }: Layout.State): Layout.NavigationElement[]; - layoutAddAction({ getState, patchState }: StateContext, { payload }: AddNavigationElement): Layout.State; - layoutRemoveAction({ getState, patchState }: StateContext, { name }: RemoveNavigationElementByName): Layout.State; -} diff --git a/npm/ng-packs/dist/theme-basic/lib/theme-basic.module.d.ts b/npm/ng-packs/dist/theme-basic/lib/theme-basic.module.d.ts deleted file mode 100644 index 0cf31961cb..0000000000 --- a/npm/ng-packs/dist/theme-basic/lib/theme-basic.module.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { AccountLayoutComponent } from './components/account-layout/account-layout.component'; -import { ApplicationLayoutComponent } from './components/application-layout/application-layout.component'; -export declare const LAYOUTS: (typeof ApplicationLayoutComponent | typeof AccountLayoutComponent)[]; -export declare class ThemeBasicModule { -} diff --git a/npm/ng-packs/dist/theme-basic/package.json b/npm/ng-packs/dist/theme-basic/package.json deleted file mode 100644 index b816bf17e7..0000000000 --- a/npm/ng-packs/dist/theme-basic/package.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "name": "@abp/ng.theme.basic", - "version": "0.8.3", - "dependencies": { - "@abp/ng.theme.shared": "^0.8.3", - "tslib": "^1.9.0" - }, - "publishConfig": { - "access": "public" - }, - "main": "bundles/abp-ng.theme.basic.umd.js", - "module": "fesm5/abp-ng.theme.basic.js", - "es2015": "fesm2015/abp-ng.theme.basic.js", - "esm5": "esm5/abp-ng.theme.basic.js", - "esm2015": "esm2015/abp-ng.theme.basic.js", - "fesm5": "fesm5/abp-ng.theme.basic.js", - "fesm2015": "fesm2015/abp-ng.theme.basic.js", - "typings": "abp-ng.theme.basic.d.ts", - "metadata": "abp-ng.theme.basic.metadata.json", - "sideEffects": false -} diff --git a/npm/ng-packs/dist/theme-basic/public-api.d.ts b/npm/ng-packs/dist/theme-basic/public-api.d.ts deleted file mode 100644 index eb08fe58c4..0000000000 --- a/npm/ng-packs/dist/theme-basic/public-api.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export * from './lib/theme-basic.module'; -export * from './lib/actions'; -export * from './lib/components'; -export * from './lib/models'; -export * from './lib/states'; diff --git a/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.d.ts b/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.d.ts index 6c76bd406f..36e23d62fc 100644 --- a/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.d.ts +++ b/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.d.ts @@ -2,17 +2,18 @@ * Generated bundle index. Do not edit. */ export * from './public-api'; -export { AbstractToaster as ɵe } from './lib/abstracts/toaster'; -export { BreadcrumbComponent as ɵm } from './lib/components/breadcrumb/breadcrumb.component'; -export { ButtonComponent as ɵb } from './lib/components/button/button.component'; -export { ChangePasswordComponent as ɵj } from './lib/components/change-password/change-password.component'; -export { ConfirmationComponent as ɵc } from './lib/components/confirmation/confirmation.component'; -export { ErrorComponent as ɵh } from './lib/components/errors/error.component'; +export { AbstractToaster as ɵf } from './lib/abstracts/toaster'; +export { BreadcrumbComponent as ɵb } from './lib/components/breadcrumb/breadcrumb.component'; +export { ButtonComponent as ɵc } from './lib/components/button/button.component'; +export { ChangePasswordComponent as ɵd } from './lib/components/change-password/change-password.component'; +export { ChartComponent as ɵg } from './lib/components/chart/chart.component'; +export { ConfirmationComponent as ɵh } from './lib/components/confirmation/confirmation.component'; +export { ErrorComponent as ɵj } from './lib/components/errors/error.component'; export { ValidationErrorComponent as ɵa } from './lib/components/errors/validation-error.component'; -export { LoaderBarComponent as ɵi } from './lib/components/loader-bar/loader-bar.component'; -export { ModalComponent as ɵg } from './lib/components/modal/modal.component'; -export { ProfileComponent as ɵl } from './lib/components/profile/profile.component'; -export { ToastComponent as ɵf } from './lib/components/toast/toast.component'; -export { ErrorHandler as ɵn } from './lib/handlers/error.handler'; -export { ConfirmationService as ɵd } from './lib/services/confirmation.service'; -export { ToasterService as ɵk } from './lib/services/toaster.service'; +export { LoaderBarComponent as ɵk } from './lib/components/loader-bar/loader-bar.component'; +export { ModalComponent as ɵl } from './lib/components/modal/modal.component'; +export { ProfileComponent as ɵm } from './lib/components/profile/profile.component'; +export { ToastComponent as ɵn } from './lib/components/toast/toast.component'; +export { ErrorHandler as ɵo } from './lib/handlers/error.handler'; +export { ConfirmationService as ɵi } from './lib/services/confirmation.service'; +export { ToasterService as ɵe } from './lib/services/toaster.service'; diff --git a/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.metadata.json b/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.metadata.json index 023e254454..cb79486943 100644 --- a/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.metadata.json +++ b/npm/ng-packs/dist/theme-shared/abp-ng.theme.shared.metadata.json @@ -1 +1 @@ -{"__symbolic":"module","version":4,"exports":[{"from":"./lib/confirmation.service"},{"from":"./lib/toaster.service"},{"from":"./lib/setting-management"},{"from":"./lib/confirmation/confirmation.component"},{"from":"./lib/loader-bar/loader-bar.component"},{"from":"./lib/modal/modal.component"},{"from":"./lib/profile/profile.component"},{"from":"./lib/toast/toast.component"}],"metadata":{"appendScript":{"__symbolic":"function"},"ThemeSharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":38,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":40,"character":4},{"__symbolic":"reference","module":"primeng/toast","name":"ToastModule","line":41,"character":4},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngx-validate/core","name":"NgxValidateCoreModule","line":42,"character":4},"member":"forRoot"},"arguments":[{"targetSelector":".form-group","blueprints":{"email":"AbpAccount::ThisFieldIsNotAValidEmailAddress.","max":"AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]","maxlength":"AbpAccount::ThisFieldMustBeAStringWithAMaximumLengthOf{1}[{{ requiredLength }}]","min":"AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]","minlength":"AbpAccount::ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf[{{ min }},{{ max }}]","required":"AbpAccount::ThisFieldIsRequired.","passwordMismatch":"AbpIdentity::Identity.PasswordConfirmationFailed"},"errorTemplate":{"__symbolic":"reference","name":"ɵa"}}]}],"declarations":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","name":"ɵg"},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵi"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","name":"ɵm"}],"exports":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","name":"ɵg"},{"__symbolic":"reference","name":"ɵi"},{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","name":"ɵm"}],"entryComponents":[{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵa"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"ThemeSharedModule"},"providers":[{"provide":{"__symbolic":"reference","module":"@angular/core","name":"APP_INITIALIZER","line":86,"character":19},"multi":true,"deps":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":88,"character":17},{"__symbolic":"reference","name":"ɵn"}],"useFactory":{"__symbolic":"reference","name":"appendScript"}},{"provide":{"__symbolic":"reference","module":"primeng/components/common/messageservice","name":"MessageService","line":91,"character":19},"useClass":{"__symbolic":"reference","module":"primeng/components/common/messageservice","name":"MessageService","line":91,"character":45}}]}}}},"ɵa":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@ngx-validate/core","name":"ValidationErrorComponent","line":13,"character":46},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"abp-validation-error","template":"\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n ","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":10,"character":19},"member":"OnPush"},"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":11,"character":17},"member":"None"}}]}],"members":{}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"abp-button","template":"\n \n "}]}],"members":{"buttonClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"iconClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"loading":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}]}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"abp-confirmation","template":"\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n "}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵd"}]}],"close":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵe"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{},"statics":{"ngInjectableDef":{}}},"ɵe":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"primeng/components/common/messageservice","name":"MessageService","line":11,"character":40}]}],"info":[{"__symbolic":"method"}],"success":[{"__symbolic":"method"}],"warn":[{"__symbolic":"method"}],"error":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}]}},"ɵf":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"abp-toast","template":"\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n "}]}],"members":{}},"ɵg":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":23,"character":1},"arguments":[{"selector":"abp-modal","template":"\n \n
    \n
    \n \n\n \n
    \n \n \n\n
    \n \n
    \n
    \n \n \n\n \n\n"}]}],"members":{"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"busy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":58,"character":3}}]}],"centered":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":70,"character":3}}]}],"modalClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":72,"character":3}}]}],"size":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":74,"character":3}}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":76,"character":3}}]}],"minHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":78,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":80,"character":3}}]}],"init":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":82,"character":3}}]}],"abpHeader":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":84,"character":3},"arguments":["abpHeader",{"static":false}]}]}],"abpBody":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":86,"character":3},"arguments":["abpBody",{"static":false}]}]}],"abpFooter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":88,"character":3},"arguments":["abpFooter",{"static":false}]}]}],"abpClose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":90,"character":3},"arguments":["abpClose",{"static":false,"read":{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":90,"character":51}}]}]}],"abpSubmit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":92,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵb"},{"static":false,"read":{"__symbolic":"reference","name":"ɵb"}}]}]}],"modalContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":94,"character":3},"arguments":["abpModalContent",{"static":false}]}]}],"abpButtons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChildren","line":96,"character":3},"arguments":["abp-button"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":110,"character":32},{"__symbolic":"reference","name":"ɵd"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"setVisible":[{"__symbolic":"method"}],"listen":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}]}},"ɵh":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"abp-error","template":"\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n ","styles":[".error{position:fixed;top:0;background-color:#fff;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}"]}]}],"members":{"destroy":[{"__symbolic":"method"}]}},"ɵi":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"abp-loader-bar","template":"\n
    \n
    \n
    \n ","styles":[".abp-loader-bar{left:0;opacity:0;position:fixed;top:0;transition:opacity .4s linear .4s;z-index:99999}.abp-loader-bar.is-loading{opacity:1;transition:none}.abp-loader-bar .abp-progress{background:#77b6ff;box-shadow:0 0 10px rgba(119,182,255,.7);height:2px;left:0;position:fixed;top:0;transition:width .4s}"]}]}],"members":{"containerClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"progressClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"isLoading":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}],"filter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Actions","line":33,"character":31},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":33,"character":56}]}],"ngOnDestroy":[{"__symbolic":"method"}],"startLoading":[{"__symbolic":"method"}],"stopLoading":[{"__symbolic":"method"}]}},"ɵj":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":21,"character":1},"arguments":[{"selector":"abp-change-password","template":"\n \n

    {{ 'AbpIdentity::ChangePassword' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n"}]}],"members":{"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":38,"character":3}}]}],"modalContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":41,"character":3},"arguments":["modalContent",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":48,"character":26},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":48,"character":54},{"__symbolic":"reference","name":"ɵk"}]}],"ngOnInit":[{"__symbolic":"method"}],"onSubmit":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ɵk":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵe"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"addAll":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵl":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"abp-profile","template":"\n \n

    {{ 'AbpIdentity::PersonalInfo' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n"}]}],"members":{"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"profile$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":29,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ProfileState","line":29,"character":10},"member":"getProfile"}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":36,"character":26},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":36,"character":54}]}],"buildForm":[{"__symbolic":"method"}],"submit":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ɵm":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"abp-breadcrumb","template":"\n
      \n
    1. \n \n
    2. \n \n {{ segment | abpLocalization }}\n \n
    \n "}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":28,"character":30},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":28,"character":53}]}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵn":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":40,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Actions","line":43,"character":21},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":44,"character":19},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","module":"@angular/core","name":"ApplicationRef","line":46,"character":20},{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":47,"character":19},{"__symbolic":"reference","module":"@angular/core","name":"RendererFactory2","line":48,"character":29},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":49,"character":22}]}],"showError":[{"__symbolic":"method"}],"navigateToLogin":[{"__symbolic":"method"}],"createErrorComponent":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}}},"origins":{"appendScript":"./lib/theme-shared.module","ThemeSharedModule":"./lib/theme-shared.module","ɵa":"./lib/components/errors/validation-error.component","ɵb":"./lib/components/button/button.component","ɵc":"./lib/components/confirmation/confirmation.component","ɵd":"./lib/services/confirmation.service","ɵe":"./lib/abstracts/toaster","ɵf":"./lib/components/toast/toast.component","ɵg":"./lib/components/modal/modal.component","ɵh":"./lib/components/errors/error.component","ɵi":"./lib/components/loader-bar/loader-bar.component","ɵj":"./lib/components/change-password/change-password.component","ɵk":"./lib/services/toaster.service","ɵl":"./lib/components/profile/profile.component","ɵm":"./lib/components/breadcrumb/breadcrumb.component","ɵn":"./lib/handlers/error.handler"},"importAs":"@abp/ng.theme.shared"} \ No newline at end of file +{"__symbolic":"module","version":4,"exports":[{"from":"./lib/widget-utils"},{"from":"./lib/toaster.service"},{"from":"./lib/statistics"},{"from":"./lib/toaster"},{"from":"./lib/confirmation/confirmation.component"},{"from":"./lib/loader-bar/loader-bar.component"},{"from":"./lib/modal/modal.component"},{"from":"./lib/profile/profile.component"},{"from":"./lib/toast/toast.component"}],"metadata":{"appendScript":{"__symbolic":"function"},"ThemeSharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":42,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@abp/ng.core","name":"CoreModule","line":44,"character":4},{"__symbolic":"reference","module":"primeng/toast","name":"ToastModule","line":45,"character":4},{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@ngx-validate/core","name":"NgxValidateCoreModule","line":46,"character":4},"member":"forRoot"},"arguments":[{"targetSelector":".form-group","blueprints":{"email":"AbpAccount::ThisFieldIsNotAValidEmailAddress.","max":"AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]","maxlength":"AbpAccount::ThisFieldMustBeAStringWithAMaximumLengthOf{1}[{{ requiredLength }}]","min":"AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]","minlength":"AbpAccount::ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf[{{ min }},{{ max }}]","required":"AbpAccount::ThisFieldIsRequired.","passwordMismatch":"AbpIdentity::Identity.PasswordConfirmationFailed"},"errorTemplate":{"__symbolic":"reference","name":"ɵa"}}]}],"declarations":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","name":"ɵg"},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"reference","name":"ɵk"},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","name":"ɵm"},{"__symbolic":"reference","name":"ɵn"},{"__symbolic":"reference","name":"ɵa"}],"exports":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","name":"ɵg"},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵk"},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","name":"ɵm"},{"__symbolic":"reference","name":"ɵn"}],"entryComponents":[{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"reference","name":"ɵa"}]}]}],"members":{},"statics":{"forRoot":{"__symbolic":"function","parameters":[],"value":{"ngModule":{"__symbolic":"reference","name":"ThemeSharedModule"},"providers":[{"provide":{"__symbolic":"reference","module":"@angular/core","name":"APP_INITIALIZER","line":92,"character":19},"multi":true,"deps":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":94,"character":17},{"__symbolic":"reference","name":"ɵo"}],"useFactory":{"__symbolic":"reference","name":"appendScript"}},{"provide":{"__symbolic":"reference","module":"primeng/components/common/messageservice","name":"MessageService","line":97,"character":19},"useClass":{"__symbolic":"reference","module":"primeng/components/common/messageservice","name":"MessageService","line":97,"character":45}}]}}}},"ɵa":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@ngx-validate/core","name":"ValidationErrorComponent","line":13,"character":46},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"abp-validation-error","template":"\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n ","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":10,"character":19},"member":"OnPush"},"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":11,"character":17},"member":"None"}}]}],"members":{}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":5,"character":1},"arguments":[{"selector":"abp-breadcrumb","template":"\n
      \n
    1. \n \n
    2. \n \n {{ segment | abpLocalization }}\n \n
    \n "}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":28,"character":30},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":28,"character":53}]}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"abp-button","template":"\n \n "}]}],"members":{"buttonClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"iconClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"loading":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}]}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":21,"character":1},"arguments":[{"selector":"abp-change-password","template":"\n \n

    {{ 'AbpIdentity::ChangePassword' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n"}]}],"members":{"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":38,"character":3}}]}],"modalContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":41,"character":3},"arguments":["modalContent",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":48,"character":26},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":48,"character":54},{"__symbolic":"reference","name":"ɵe"}]}],"ngOnInit":[{"__symbolic":"method"}],"onSubmit":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ɵe":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵf"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"addAll":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}},"ɵf":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"primeng/components/common/messageservice","name":"MessageService","line":11,"character":40}]}],"info":[{"__symbolic":"method"}],"success":[{"__symbolic":"method"}],"warn":[{"__symbolic":"method"}],"error":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}],"clear":[{"__symbolic":"method"}]}},"ɵg":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":14,"character":1},"arguments":[{"selector":"abp-chart","template":"\n \n\n"}]}],"members":{"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"options":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"plugins":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}],"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"responsive":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"onDataSelect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":31,"character":3}}]}],"initialized":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":33,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":41,"character":25},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":41,"character":52}]}],"data":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":43,"character":3}}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"ɵh":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"abp-confirmation","template":"\n \n \n \n
    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n "}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ɵi"}]}],"close":[{"__symbolic":"method"}]}},"ɵi":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵf"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":4,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{},"statics":{"ngInjectableDef":{}}},"ɵj":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"abp-error","template":"\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n ","styles":[".error{position:fixed;top:0;background-color:#fff;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}"]}]}],"members":{"destroy":[{"__symbolic":"method"}]}},"ɵk":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"abp-loader-bar","template":"\n
    \n
    \n
    \n ","styles":[".abp-loader-bar{left:0;opacity:0;position:fixed;top:0;transition:opacity .4s linear .4s;z-index:99999}.abp-loader-bar.is-loading{opacity:1;transition:none}.abp-loader-bar .abp-progress{background:#77b6ff;box-shadow:0 0 10px rgba(119,182,255,.7);height:2px;left:0;position:fixed;top:0;transition:width .4s}"]}]}],"members":{"containerClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"progressClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"isLoading":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3}}]}],"filter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Actions","line":33,"character":31},{"__symbolic":"reference","module":"@angular/router","name":"Router","line":33,"character":56}]}],"ngOnDestroy":[{"__symbolic":"method"}],"startLoading":[{"__symbolic":"method"}],"stopLoading":[{"__symbolic":"method"}]}},"ɵl":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":23,"character":1},"arguments":[{"selector":"abp-modal","template":"\n \n
    \n
    \n \n\n \n
    \n \n \n
    \n
    \n \n
    \n \n \n\n \n\n"}]}],"members":{"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"busy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":58,"character":3}}]}],"centered":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":70,"character":3}}]}],"modalClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":72,"character":3}}]}],"size":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":74,"character":3}}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":76,"character":3}}]}],"minHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":78,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":80,"character":3}}]}],"init":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":82,"character":3}}]}],"abpHeader":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":84,"character":3},"arguments":["abpHeader",{"static":false}]}]}],"abpBody":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":86,"character":3},"arguments":["abpBody",{"static":false}]}]}],"abpFooter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":88,"character":3},"arguments":["abpFooter",{"static":false}]}]}],"abpClose":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":90,"character":3},"arguments":["abpClose",{"static":false,"read":{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":90,"character":51}}]}]}],"abpSubmit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":92,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵc"},{"static":false,"read":{"__symbolic":"reference","name":"ɵc"}}]}]}],"modalContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":94,"character":3},"arguments":["abpModalContent",{"static":false}]}]}],"abpButtons":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChildren","line":96,"character":3},"arguments":["abp-button"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":110,"character":32},{"__symbolic":"reference","name":"ɵi"}]}],"ngOnDestroy":[{"__symbolic":"method"}],"setVisible":[{"__symbolic":"method"}],"listen":[{"__symbolic":"method"}],"close":[{"__symbolic":"method"}]}},"ɵm":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"abp-profile","template":"\n \n

    {{ 'AbpIdentity::PersonalInfo' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n"}]}],"members":{"visible":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"visibleChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"profile$":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@ngxs/store","name":"Select","line":29,"character":3},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@abp/ng.core","name":"ProfileState","line":29,"character":10},"member":"getProfile"}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":36,"character":26},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":36,"character":54}]}],"buildForm":[{"__symbolic":"method"}],"submit":[{"__symbolic":"method"}],"openModal":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ɵn":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"abp-toast","template":"\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n "}]}],"members":{}},"ɵo":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":40,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@ngxs/store","name":"Actions","line":43,"character":21},{"__symbolic":"reference","module":"@ngxs/store","name":"Store","line":44,"character":19},{"__symbolic":"reference","name":"ɵi"},{"__symbolic":"reference","module":"@angular/core","name":"ApplicationRef","line":46,"character":20},{"__symbolic":"reference","module":"@angular/core","name":"ComponentFactoryResolver","line":47,"character":19},{"__symbolic":"reference","module":"@angular/core","name":"RendererFactory2","line":48,"character":29},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":49,"character":22}]}],"showError":[{"__symbolic":"method"}],"navigateToLogin":[{"__symbolic":"method"}],"createErrorComponent":[{"__symbolic":"method"}]},"statics":{"ngInjectableDef":{}}}},"origins":{"appendScript":"./lib/theme-shared.module","ThemeSharedModule":"./lib/theme-shared.module","ɵa":"./lib/components/errors/validation-error.component","ɵb":"./lib/components/breadcrumb/breadcrumb.component","ɵc":"./lib/components/button/button.component","ɵd":"./lib/components/change-password/change-password.component","ɵe":"./lib/services/toaster.service","ɵf":"./lib/abstracts/toaster","ɵg":"./lib/components/chart/chart.component","ɵh":"./lib/components/confirmation/confirmation.component","ɵi":"./lib/services/confirmation.service","ɵj":"./lib/components/errors/error.component","ɵk":"./lib/components/loader-bar/loader-bar.component","ɵl":"./lib/components/modal/modal.component","ɵm":"./lib/components/profile/profile.component","ɵn":"./lib/components/toast/toast.component","ɵo":"./lib/handlers/error.handler"},"importAs":"@abp/ng.theme.shared"} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js b/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js index 05df2930a2..ec2fa017c9 100644 --- a/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js +++ b/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js @@ -1,8 +1,8 @@ (function (global, factory) { - typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@abp/ng.core'), require('@angular/core'), require('@ngx-validate/core'), require('primeng/components/common/messageservice'), require('primeng/toast'), require('rxjs'), require('rxjs/operators'), require('@angular/router'), require('@ngxs/store'), require('@angular/common/http'), require('@ngxs/router-plugin'), require('snq'), require('@angular/forms'), require('@angular/animations')) : - typeof define === 'function' && define.amd ? define('@abp/ng.theme.shared', ['exports', '@abp/ng.core', '@angular/core', '@ngx-validate/core', 'primeng/components/common/messageservice', 'primeng/toast', 'rxjs', 'rxjs/operators', '@angular/router', '@ngxs/store', '@angular/common/http', '@ngxs/router-plugin', 'snq', '@angular/forms', '@angular/animations'], factory) : - (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng.theme = global.abp.ng.theme || {}, global.abp.ng.theme.shared = {}), global.ng_core, global.ng.core, global.core$1, global.messageservice, global.toast, global.rxjs, global.rxjs.operators, global.ng.router, global.store, global.ng.common.http, global.routerPlugin, global.snq, global.ng.forms, global.ng.animations)); -}(this, function (exports, ng_core, core, core$1, messageservice, toast, rxjs, operators, router, store, http, routerPlugin, snq, forms, animations) { 'use strict'; + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@abp/ng.core'), require('@angular/core'), require('@ngx-validate/core'), require('primeng/components/common/messageservice'), require('primeng/toast'), require('rxjs'), require('rxjs/operators'), require('@angular/router'), require('@ngxs/store'), require('@angular/forms'), require('snq'), require('@angular/common/http'), require('@ngxs/router-plugin'), require('@angular/animations')) : + typeof define === 'function' && define.amd ? define('@abp/ng.theme.shared', ['exports', '@abp/ng.core', '@angular/core', '@ngx-validate/core', 'primeng/components/common/messageservice', 'primeng/toast', 'rxjs', 'rxjs/operators', '@angular/router', '@ngxs/store', '@angular/forms', 'snq', '@angular/common/http', '@ngxs/router-plugin', '@angular/animations'], factory) : + (global = global || self, factory((global.abp = global.abp || {}, global.abp.ng = global.abp.ng || {}, global.abp.ng.theme = global.abp.ng.theme || {}, global.abp.ng.theme.shared = {}), global.ng_core, global.ng.core, global.core$1, global.messageservice, global.toast, global.rxjs, global.rxjs.operators, global.ng.router, global.store, global.ng.forms, global.snq, global.ng.common.http, global.routerPlugin, global.ng.animations)); +}(this, function (exports, ng_core, core, core$1, messageservice, toast, rxjs, operators, router, store, forms, snq, http, routerPlugin, animations) { 'use strict'; snq = snq && snq.hasOwnProperty('default') ? snq['default'] : snq; @@ -203,6 +203,136 @@ return (mod && mod.__esModule) ? mod : { default: mod }; } + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var BreadcrumbComponent = /** @class */ (function () { + function BreadcrumbComponent(router, store) { + this.router = router; + this.store = store; + this.segments = []; + this.show = !!this.store.selectSnapshot((/** + * @param {?} state + * @return {?} + */ + function (state) { return state.LeptonLayoutState; })); + } + /** + * @return {?} + */ + BreadcrumbComponent.prototype.ngOnInit = /** + * @return {?} + */ + function () { + /** @type {?} */ + var splittedUrl = this.router.url.split('/').filter((/** + * @param {?} chunk + * @return {?} + */ + function (chunk) { return chunk; })); + /** @type {?} */ + var currentUrl = this.store.selectSnapshot(ng_core.ConfigState.getRoute(splittedUrl[0])); + this.segments.push(currentUrl.name); + if (splittedUrl.length > 1) { + var _a = __read(splittedUrl), arr = _a.slice(1); + /** @type {?} */ + var childRoute = currentUrl; + var _loop_1 = function (i) { + /** @type {?} */ + var element = arr[i]; + childRoute = childRoute.children.find((/** + * @param {?} child + * @return {?} + */ + function (child) { return child.path === element; })); + this_1.segments.push(childRoute.name); + }; + var this_1 = this; + for (var i = 0; i < arr.length; i++) { + _loop_1(i); + } + } + }; + BreadcrumbComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'abp-breadcrumb', + template: "\n
      \n
    1. \n \n
    2. \n \n {{ segment | abpLocalization }}\n \n
    \n " + }] } + ]; + /** @nocollapse */ + BreadcrumbComponent.ctorParameters = function () { return [ + { type: router.Router }, + { type: store.Store } + ]; }; + return BreadcrumbComponent; + }()); + if (false) { + /** @type {?} */ + BreadcrumbComponent.prototype.show; + /** @type {?} */ + BreadcrumbComponent.prototype.segments; + /** + * @type {?} + * @private + */ + BreadcrumbComponent.prototype.router; + /** + * @type {?} + * @private + */ + BreadcrumbComponent.prototype.store; + } + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var ButtonComponent = /** @class */ (function () { + function ButtonComponent() { + this.buttonClass = 'btn btn-primary'; + this.type = 'button'; + this.loading = false; + this.disabled = false; + } + Object.defineProperty(ButtonComponent.prototype, "icon", { + get: /** + * @return {?} + */ + function () { + return "" + (this.loading ? 'fa fa-spin fa-spinner' : this.iconClass || 'd-none'); + }, + enumerable: true, + configurable: true + }); + ButtonComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'abp-button', + template: "\n \n " + }] } + ]; + ButtonComponent.propDecorators = { + buttonClass: [{ type: core.Input }], + type: [{ type: core.Input }], + iconClass: [{ type: core.Input }], + loading: [{ type: core.Input }], + disabled: [{ type: core.Input }] + }; + return ButtonComponent; + }()); + if (false) { + /** @type {?} */ + ButtonComponent.prototype.buttonClass; + /** @type {?} */ + ButtonComponent.prototype.type; + /** @type {?} */ + ButtonComponent.prototype.iconClass; + /** @type {?} */ + ButtonComponent.prototype.loading; + /** @type {?} */ + ButtonComponent.prototype.disabled; + } + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -334,396 +464,336 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - var ConfirmationService = /** @class */ (function (_super) { - __extends(ConfirmationService, _super); - function ConfirmationService() { - var _this = _super !== null && _super.apply(this, arguments) || this; - _this.key = 'abpConfirmation'; - _this.sticky = true; - return _this; + var ToasterService = /** @class */ (function (_super) { + __extends(ToasterService, _super); + function ToasterService() { + return _super !== null && _super.apply(this, arguments) || this; } - ConfirmationService.decorators = [ + /** + * @param {?} messages + * @return {?} + */ + ToasterService.prototype.addAll = /** + * @param {?} messages + * @return {?} + */ + function (messages) { + var _this = this; + this.messageService.addAll(messages.map((/** + * @param {?} message + * @return {?} + */ + function (message) { return (__assign({ key: _this.key }, message)); }))); + }; + ToasterService.decorators = [ { type: core.Injectable, args: [{ providedIn: 'root' },] } ]; - /** @nocollapse */ ConfirmationService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ConfirmationService_Factory() { return new ConfirmationService(core.ɵɵinject(messageservice.MessageService)); }, token: ConfirmationService, providedIn: "root" }); - return ConfirmationService; + /** @nocollapse */ ToasterService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ToasterService_Factory() { return new ToasterService(core.ɵɵinject(messageservice.MessageService)); }, token: ToasterService, providedIn: "root" }); + return ToasterService; }(AbstractToaster)); - if (false) { - /** @type {?} */ - ConfirmationService.prototype.key; - /** @type {?} */ - ConfirmationService.prototype.sticky; - } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - var ConfirmationComponent = /** @class */ (function () { - function ConfirmationComponent(confirmationService) { - this.confirmationService = confirmationService; - this.confirm = "confirm" /* confirm */; - this.reject = "reject" /* reject */; - this.dismiss = "dismiss" /* dismiss */; + var minLength = forms.Validators.minLength, required = forms.Validators.required; + var ChangePasswordComponent = /** @class */ (function () { + function ChangePasswordComponent(fb, store, toasterService) { + this.fb = fb; + this.store = store; + this.toasterService = toasterService; + this.visibleChange = new core.EventEmitter(); + this.modalBusy = false; } + Object.defineProperty(ChangePasswordComponent.prototype, "visible", { + get: /** + * @return {?} + */ + function () { + return this._visible; + }, + set: /** + * @param {?} value + * @return {?} + */ + function (value) { + this._visible = value; + this.visibleChange.emit(value); + }, + enumerable: true, + configurable: true + }); /** - * @param {?} status * @return {?} */ - ConfirmationComponent.prototype.close = /** - * @param {?} status + ChangePasswordComponent.prototype.ngOnInit = /** * @return {?} */ - function (status) { - this.confirmationService.clear(status); + function () { + this.form = this.fb.group({ + password: ['', required], + newPassword: ['', required], + repeatNewPassword: ['', required], + }, { + validators: [core$1.comparePasswords(['newPassword', 'repeatNewPassword'])], + }); }; - ConfirmationComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'abp-confirmation', - template: "\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n " - }] } - ]; - /** @nocollapse */ - ConfirmationComponent.ctorParameters = function () { return [ - { type: ConfirmationService } - ]; }; - return ConfirmationComponent; - }()); - if (false) { - /** @type {?} */ - ConfirmationComponent.prototype.confirm; - /** @type {?} */ - ConfirmationComponent.prototype.reject; - /** @type {?} */ - ConfirmationComponent.prototype.dismiss; - /** - * @type {?} - * @private - */ - ConfirmationComponent.prototype.confirmationService; - } - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var ErrorComponent = /** @class */ (function () { - function ErrorComponent() { - this.title = 'Oops!'; - this.details = 'Sorry, an error has occured.'; - } /** * @return {?} */ - ErrorComponent.prototype.destroy = /** + ChangePasswordComponent.prototype.onSubmit = /** * @return {?} */ function () { - this.renderer.removeChild(this.host, this.elementRef.nativeElement); - }; - ErrorComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'abp-error', - template: "\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n ", - styles: [".error{position:fixed;top:0;background-color:#fff;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}"] - }] } - ]; - return ErrorComponent; - }()); - if (false) { - /** @type {?} */ - ErrorComponent.prototype.title; - /** @type {?} */ - ErrorComponent.prototype.details; - /** @type {?} */ - ErrorComponent.prototype.renderer; - /** @type {?} */ - ErrorComponent.prototype.elementRef; - /** @type {?} */ - ErrorComponent.prototype.host; - } - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var LoaderBarComponent = /** @class */ (function () { - function LoaderBarComponent(actions, router$1) { var _this = this; - this.actions = actions; - this.router = router$1; - this.containerClass = 'abp-loader-bar'; - this.progressClass = 'abp-progress'; - this.isLoading = false; - this.filter = (/** - * @param {?} action - * @return {?} - */ - function (action) { return action.payload.url.indexOf('openid-configuration') < 0; }); - this.progressLevel = 0; - actions - .pipe(store.ofActionSuccessful(ng_core.StartLoader, ng_core.StopLoader), operators.filter(this.filter), core$1.takeUntilDestroy(this)) - .subscribe((/** - * @param {?} action - * @return {?} - */ - function (action) { - if (action instanceof ng_core.StartLoader) - _this.startLoading(); - else - _this.stopLoading(); - })); - router$1.events - .pipe(operators.filter((/** - * @param {?} event - * @return {?} - */ - function (event) { - return event instanceof router.NavigationStart || event instanceof router.NavigationEnd || event instanceof router.NavigationError; - })), core$1.takeUntilDestroy(this)) - .subscribe((/** - * @param {?} event + if (this.form.invalid) + return; + this.modalBusy = true; + this.store + .dispatch(new ng_core.ChangePassword({ + currentPassword: this.form.get('password').value, + newPassword: this.form.get('newPassword').value, + })) + .pipe(operators.finalize((/** * @return {?} */ - function (event) { - if (event instanceof router.NavigationStart) - _this.startLoading(); - else - _this.stopLoading(); - })); - } - /** - * @return {?} - */ - LoaderBarComponent.prototype.ngOnDestroy = /** - * @return {?} - */ - function () { }; + function () { + _this.modalBusy = false; + }))) + .subscribe({ + next: (/** + * @return {?} + */ + function () { + _this.visible = false; + _this.form.reset(); + }), + error: (/** + * @param {?} err + * @return {?} + */ + function (err) { + _this.toasterService.error(snq((/** + * @return {?} + */ + function () { return err.error.error.message; }), 'AbpAccount::DefaultErrorMessage'), 'Error', { + life: 7000, + }); + }), + }); + }; /** * @return {?} */ - LoaderBarComponent.prototype.startLoading = /** + ChangePasswordComponent.prototype.openModal = /** * @return {?} */ function () { - var _this = this; - this.isLoading = true; - /** @type {?} */ - var interval = setInterval((/** - * @return {?} - */ - function () { - if (_this.progressLevel < 75) { - _this.progressLevel += Math.random() * 10; - } - else if (_this.progressLevel < 90) { - _this.progressLevel += 0.4; - } - else if (_this.progressLevel < 100) { - _this.progressLevel += 0.1; - } - else { - clearInterval(interval); - } - }), 300); - this.interval = interval; + this.visible = true; }; /** + * @param {?} __0 * @return {?} */ - LoaderBarComponent.prototype.stopLoading = /** + ChangePasswordComponent.prototype.ngOnChanges = /** + * @param {?} __0 * @return {?} */ - function () { - var _this = this; - clearInterval(this.interval); - this.progressLevel = 100; - this.isLoading = false; - setTimeout((/** - * @return {?} - */ - function () { - _this.progressLevel = 0; - }), 800); + function (_a) { + var visible = _a.visible; + if (!visible) + return; + if (visible.currentValue) { + this.openModal(); + } + else if (visible.currentValue === false && this.visible) { + this.visible = false; + } }; - LoaderBarComponent.decorators = [ + ChangePasswordComponent.decorators = [ { type: core.Component, args: [{ - selector: 'abp-loader-bar', - template: "\n
    \n
    \n
    \n ", - styles: [".abp-loader-bar{left:0;opacity:0;position:fixed;top:0;transition:opacity .4s linear .4s;z-index:99999}.abp-loader-bar.is-loading{opacity:1;transition:none}.abp-loader-bar .abp-progress{background:#77b6ff;box-shadow:0 0 10px rgba(119,182,255,.7);height:2px;left:0;position:fixed;top:0;transition:width .4s}"] + selector: 'abp-change-password', + template: "\n \n

    {{ 'AbpIdentity::ChangePassword' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n" }] } ]; /** @nocollapse */ - LoaderBarComponent.ctorParameters = function () { return [ - { type: store.Actions }, - { type: router.Router } + ChangePasswordComponent.ctorParameters = function () { return [ + { type: forms.FormBuilder }, + { type: store.Store }, + { type: ToasterService } ]; }; - LoaderBarComponent.propDecorators = { - containerClass: [{ type: core.Input }], - progressClass: [{ type: core.Input }], - isLoading: [{ type: core.Input }], - filter: [{ type: core.Input }] + ChangePasswordComponent.propDecorators = { + visible: [{ type: core.Input }], + visibleChange: [{ type: core.Output }], + modalContent: [{ type: core.ViewChild, args: ['modalContent', { static: false },] }] }; - return LoaderBarComponent; + return ChangePasswordComponent; }()); if (false) { + /** + * @type {?} + * @protected + */ + ChangePasswordComponent.prototype._visible; /** @type {?} */ - LoaderBarComponent.prototype.containerClass; - /** @type {?} */ - LoaderBarComponent.prototype.progressClass; - /** @type {?} */ - LoaderBarComponent.prototype.isLoading; + ChangePasswordComponent.prototype.visibleChange; /** @type {?} */ - LoaderBarComponent.prototype.filter; + ChangePasswordComponent.prototype.modalContent; /** @type {?} */ - LoaderBarComponent.prototype.progressLevel; + ChangePasswordComponent.prototype.form; /** @type {?} */ - LoaderBarComponent.prototype.interval; + ChangePasswordComponent.prototype.modalBusy; /** * @type {?} * @private */ - LoaderBarComponent.prototype.actions; + ChangePasswordComponent.prototype.fb; /** * @type {?} * @private */ - LoaderBarComponent.prototype.router; + ChangePasswordComponent.prototype.store; + /** + * @type {?} + * @private + */ + ChangePasswordComponent.prototype.toasterService; } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - var ButtonComponent = /** @class */ (function () { - function ButtonComponent() { - this.buttonClass = 'btn btn-primary'; - this.type = 'button'; - this.loading = false; - this.disabled = false; - } - Object.defineProperty(ButtonComponent.prototype, "icon", { - get: /** - * @return {?} - */ - function () { - return "" + (this.loading ? 'fa fa-spin fa-spinner' : this.iconClass || 'd-none'); - }, - enumerable: true, - configurable: true - }); - ButtonComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'abp-button', - template: "\n \n " - }] } - ]; - ButtonComponent.propDecorators = { - buttonClass: [{ type: core.Input }], - type: [{ type: core.Input }], - iconClass: [{ type: core.Input }], - loading: [{ type: core.Input }], - disabled: [{ type: core.Input }] - }; - return ButtonComponent; - }()); - if (false) { - /** @type {?} */ - ButtonComponent.prototype.buttonClass; - /** @type {?} */ - ButtonComponent.prototype.type; - /** @type {?} */ - ButtonComponent.prototype.iconClass; - /** @type {?} */ - ButtonComponent.prototype.loading; + /** + * @param {?} count + * @return {?} + */ + function getRandomBackgroundColor(count) { /** @type {?} */ - ButtonComponent.prototype.disabled; + var colors = []; + for (var i = 0; i < count; i++) { + /** @type {?} */ + var r = ((i + 5) * (i + 5) * 474) % 255; + /** @type {?} */ + var g = ((i + 5) * (i + 5) * 1600) % 255; + /** @type {?} */ + var b = ((i + 5) * (i + 5) * 84065) % 255; + colors.push('rgba(' + r + ', ' + g + ', ' + b + ', 0.7)'); + } + return colors; } + /** @type {?} */ + var chartJsLoaded$ = new rxjs.ReplaySubject(1); /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - /** @type {?} */ - var ANIMATION_TIMEOUT = 200; - var ModalComponent = /** @class */ (function () { - function ModalComponent(renderer, confirmationService) { - this.renderer = renderer; - this.confirmationService = confirmationService; - this.centered = false; - this.modalClass = ''; - this.size = 'lg'; - this.visibleChange = new core.EventEmitter(); - this.init = new core.EventEmitter(); - this._visible = false; - this._busy = false; - this.showModal = false; - this.isOpenConfirmation = false; - this.closable = false; - this.destroy$ = new rxjs.Subject(); + var ChartComponent = /** @class */ (function () { + function ChartComponent(el, cdRef) { + var _this = this; + this.el = el; + this.cdRef = cdRef; + this.options = {}; + this.plugins = []; + this.responsive = true; + this.onDataSelect = new core.EventEmitter(); + this.initialized = new rxjs.BehaviorSubject(this); + this.onCanvasClick = (/** + * @param {?} event + * @return {?} + */ + function (event) { + if (_this.chart) { + /** @type {?} */ + var element = _this.chart.getElementAtEvent(event); + /** @type {?} */ + var dataset = _this.chart.getDatasetAtEvent(event); + if (element && element[0] && dataset) { + _this.onDataSelect.emit({ originalEvent: event, element: element[0], dataset: dataset }); + } + } + }); + this.initChart = (/** + * @return {?} + */ + function () { + /** @type {?} */ + var opts = _this.options || {}; + opts.responsive = _this.responsive; + // allows chart to resize in responsive mode + if (opts.responsive && (_this.height || _this.width)) { + opts.maintainAspectRatio = false; + } + _this.chart = new Chart(_this.el.nativeElement.children[0].children[0], { + type: _this.type, + data: _this.data, + options: _this.options, + plugins: _this.plugins, + }); + _this.cdRef.detectChanges(); + }); + this.generateLegend = (/** + * @return {?} + */ + function () { + if (_this.chart) { + return _this.chart.generateLegend(); + } + }); + this.refresh = (/** + * @return {?} + */ + function () { + if (_this.chart) { + _this.chart.update(); + _this.cdRef.detectChanges(); + } + }); + this.reinit = (/** + * @return {?} + */ + function () { + if (_this.chart) { + _this.chart.destroy(); + _this.initChart(); + } + }); } - Object.defineProperty(ModalComponent.prototype, "visible", { + Object.defineProperty(ChartComponent.prototype, "data", { get: /** * @return {?} */ function () { - return this._visible; + return this._data; }, set: /** - * @param {?} value + * @param {?} val * @return {?} */ - function (value) { - var _this = this; - if (typeof value !== 'boolean') - return; - if (!this.modalContent) { - if (value) { - setTimeout((/** - * @return {?} - */ - function () { - _this.showModal = value; - _this.visible = value; - }), 0); - } - return; - } - if (value) { - this.setVisible(value); - this.listen(); - } - else { - this.closable = false; - this.renderer.addClass(this.modalContent.nativeElement, 'fade-out-top'); - setTimeout((/** - * @return {?} - */ - function () { - _this.setVisible(value); - _this.ngOnDestroy(); - }), ANIMATION_TIMEOUT - 10); - } + function (val) { + this._data = val; + this.reinit(); }, enumerable: true, configurable: true }); - Object.defineProperty(ModalComponent.prototype, "busy", { + Object.defineProperty(ChartComponent.prototype, "canvas", { get: /** * @return {?} */ function () { - return this._busy; + return this.el.nativeElement.children[0].children[0]; }, - set: /** - * @param {?} value + enumerable: true, + configurable: true + }); + Object.defineProperty(ChartComponent.prototype, "base64Image", { + get: /** * @return {?} */ - function (value) { - if (this.abpSubmit && this.abpSubmit instanceof ButtonComponent) { - this.abpSubmit.loading = value; - } - this._busy = value; + function () { + return this.chart.toBase64Image(); }, enumerable: true, configurable: true @@ -731,563 +801,498 @@ /** * @return {?} */ - ModalComponent.prototype.ngOnDestroy = /** - * @return {?} - */ - function () { - this.destroy$.next(); - }; - /** - * @param {?} value - * @return {?} - */ - ModalComponent.prototype.setVisible = /** - * @param {?} value - * @return {?} - */ - function (value) { - var _this = this; - this._visible = value; - this.visibleChange.emit(value); - this.showModal = value; - value - ? rxjs.timer(ANIMATION_TIMEOUT + 100) - .pipe(operators.take(1)) - .subscribe((/** - * @param {?} _ - * @return {?} - */ - function (_) { return (_this.closable = true); })) - : (this.closable = false); - }; - /** - * @return {?} - */ - ModalComponent.prototype.listen = /** + ChartComponent.prototype.ngAfterViewInit = /** * @return {?} */ function () { var _this = this; - rxjs.fromEvent(document, 'keyup') - .pipe(operators.takeUntil(this.destroy$), operators.debounceTime(150), operators.filter((/** - * @param {?} key - * @return {?} - */ - function (key) { return key && key.code === 'Escape' && _this.closable; }))) - .subscribe((/** - * @param {?} _ - * @return {?} - */ - function (_) { - _this.close(); - })); - setTimeout((/** + chartJsLoaded$.subscribe((/** * @return {?} */ function () { - if (!_this.abpClose) + try { + Chart; + } + catch (error) { + console.error("Chart is not found. Import the Chart from app.module like shown below:\n import('chart.js');\n "); return; - rxjs.fromEvent(_this.abpClose.nativeElement, 'click') - .pipe(operators.takeUntil(_this.destroy$), operators.filter((/** - * @return {?} - */ - function () { return !!(_this.closable && _this.modalContent); }))) - .subscribe((/** - * @return {?} - */ - function () { return _this.close(); })); - }), 0); - this.init.emit(); + } + _this.initChart(); + _this._initialized = true; + })); }; /** * @return {?} */ - ModalComponent.prototype.close = /** + ChartComponent.prototype.ngOnDestroy = /** * @return {?} */ function () { - var _this = this; - if (!this.closable || this.busy) - return; - /** @type {?} */ - var nodes = getFlatNodes(((/** @type {?} */ (this.modalContent.nativeElement.querySelector('#abp-modal-body')))).childNodes); - if (hasNgDirty(nodes)) { - if (this.isOpenConfirmation) - return; - this.isOpenConfirmation = true; - this.confirmationService - .warn('AbpAccount::AreYouSureYouWantToCancelEditingWarningMessage', 'AbpAccount::AreYouSure') - .subscribe((/** - * @param {?} status - * @return {?} - */ - function (status) { - rxjs.timer(ANIMATION_TIMEOUT).subscribe((/** - * @return {?} - */ - function () { - _this.isOpenConfirmation = false; - })); - if (status === "confirm" /* confirm */) { - _this.visible = false; - } - })); - } - else { - this.visible = false; + if (this.chart) { + this.chart.destroy(); + this._initialized = false; + this.chart = null; } }; - ModalComponent.decorators = [ + ChartComponent.decorators = [ { type: core.Component, args: [{ - selector: 'abp-modal', - template: "\n \n
    \n
    \n \n\n \n
    \n \n \n\n
    \n \n
    \n
    \n \n \n\n \n\n" + selector: 'abp-chart', + template: "\n \n\n" }] } ]; /** @nocollapse */ - ModalComponent.ctorParameters = function () { return [ - { type: core.Renderer2 }, - { type: ConfirmationService } + ChartComponent.ctorParameters = function () { return [ + { type: core.ElementRef }, + { type: core.ChangeDetectorRef } ]; }; - ModalComponent.propDecorators = { - visible: [{ type: core.Input }], - busy: [{ type: core.Input }], - centered: [{ type: core.Input }], - modalClass: [{ type: core.Input }], - size: [{ type: core.Input }], + ChartComponent.propDecorators = { + type: [{ type: core.Input }], + options: [{ type: core.Input }], + plugins: [{ type: core.Input }], + width: [{ type: core.Input }], height: [{ type: core.Input }], - minHeight: [{ type: core.Input }], - visibleChange: [{ type: core.Output }], - init: [{ type: core.Output }], - abpHeader: [{ type: core.ContentChild, args: ['abpHeader', { static: false },] }], - abpBody: [{ type: core.ContentChild, args: ['abpBody', { static: false },] }], - abpFooter: [{ type: core.ContentChild, args: ['abpFooter', { static: false },] }], - abpClose: [{ type: core.ContentChild, args: ['abpClose', { static: false, read: core.ElementRef },] }], - abpSubmit: [{ type: core.ContentChild, args: [ButtonComponent, { static: false, read: ButtonComponent },] }], - modalContent: [{ type: core.ViewChild, args: ['abpModalContent', { static: false },] }], - abpButtons: [{ type: core.ViewChildren, args: ['abp-button',] }] + responsive: [{ type: core.Input }], + onDataSelect: [{ type: core.Output }], + initialized: [{ type: core.Output }], + data: [{ type: core.Input }] }; - return ModalComponent; + return ChartComponent; }()); if (false) { /** @type {?} */ - ModalComponent.prototype.centered; - /** @type {?} */ - ModalComponent.prototype.modalClass; - /** @type {?} */ - ModalComponent.prototype.size; - /** @type {?} */ - ModalComponent.prototype.height; - /** @type {?} */ - ModalComponent.prototype.minHeight; + ChartComponent.prototype.type; /** @type {?} */ - ModalComponent.prototype.visibleChange; + ChartComponent.prototype.options; /** @type {?} */ - ModalComponent.prototype.init; + ChartComponent.prototype.plugins; /** @type {?} */ - ModalComponent.prototype.abpHeader; + ChartComponent.prototype.width; /** @type {?} */ - ModalComponent.prototype.abpBody; + ChartComponent.prototype.height; /** @type {?} */ - ModalComponent.prototype.abpFooter; + ChartComponent.prototype.responsive; /** @type {?} */ - ModalComponent.prototype.abpClose; + ChartComponent.prototype.onDataSelect; /** @type {?} */ - ModalComponent.prototype.abpSubmit; + ChartComponent.prototype.initialized; + /** + * @type {?} + * @private + */ + ChartComponent.prototype._initialized; /** @type {?} */ - ModalComponent.prototype.modalContent; + ChartComponent.prototype._data; /** @type {?} */ - ModalComponent.prototype.abpButtons; + ChartComponent.prototype.chart; /** @type {?} */ - ModalComponent.prototype._visible; + ChartComponent.prototype.onCanvasClick; /** @type {?} */ - ModalComponent.prototype._busy; + ChartComponent.prototype.initChart; /** @type {?} */ - ModalComponent.prototype.showModal; + ChartComponent.prototype.generateLegend; /** @type {?} */ - ModalComponent.prototype.isOpenConfirmation; + ChartComponent.prototype.refresh; /** @type {?} */ - ModalComponent.prototype.closable; + ChartComponent.prototype.reinit; /** @type {?} */ - ModalComponent.prototype.destroy$; - /** - * @type {?} - * @private - */ - ModalComponent.prototype.renderer; + ChartComponent.prototype.el; /** * @type {?} * @private */ - ModalComponent.prototype.confirmationService; + ChartComponent.prototype.cdRef; } + /** - * @param {?} nodes - * @return {?} + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - function getFlatNodes(nodes) { - return Array.from(nodes).reduce((/** - * @param {?} acc - * @param {?} val - * @return {?} - */ - function (acc, val) { return __spread(acc, (val.childNodes && val.childNodes.length ? getFlatNodes(val.childNodes) : [val])); }), []); - } - /** - * @param {?} nodes - * @return {?} + var ConfirmationService = /** @class */ (function (_super) { + __extends(ConfirmationService, _super); + function ConfirmationService() { + var _this = _super !== null && _super.apply(this, arguments) || this; + _this.key = 'abpConfirmation'; + _this.sticky = true; + return _this; + } + ConfirmationService.decorators = [ + { type: core.Injectable, args: [{ providedIn: 'root' },] } + ]; + /** @nocollapse */ ConfirmationService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ConfirmationService_Factory() { return new ConfirmationService(core.ɵɵinject(messageservice.MessageService)); }, token: ConfirmationService, providedIn: "root" }); + return ConfirmationService; + }(AbstractToaster)); + if (false) { + /** @type {?} */ + ConfirmationService.prototype.key; + /** @type {?} */ + ConfirmationService.prototype.sticky; + } + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - function hasNgDirty(nodes) { - return nodes.findIndex((/** - * @param {?} node + var ConfirmationComponent = /** @class */ (function () { + function ConfirmationComponent(confirmationService) { + this.confirmationService = confirmationService; + this.confirm = "confirm" /* confirm */; + this.reject = "reject" /* reject */; + this.dismiss = "dismiss" /* dismiss */; + } + /** + * @param {?} status * @return {?} */ - function (node) { return (node.className || '').indexOf('ng-dirty') > -1; })) > -1; + ConfirmationComponent.prototype.close = /** + * @param {?} status + * @return {?} + */ + function (status) { + this.confirmationService.clear(status); + }; + ConfirmationComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'abp-confirmation', + template: "\n \n \n \n
    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n " + }] } + ]; + /** @nocollapse */ + ConfirmationComponent.ctorParameters = function () { return [ + { type: ConfirmationService } + ]; }; + return ConfirmationComponent; + }()); + if (false) { + /** @type {?} */ + ConfirmationComponent.prototype.confirm; + /** @type {?} */ + ConfirmationComponent.prototype.reject; + /** @type {?} */ + ConfirmationComponent.prototype.dismiss; + /** + * @type {?} + * @private + */ + ConfirmationComponent.prototype.confirmationService; } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - var ToastComponent = /** @class */ (function () { - function ToastComponent() { + var ErrorComponent = /** @class */ (function () { + function ErrorComponent() { + this.title = 'Oops!'; + this.details = 'Sorry, an error has occured.'; } - ToastComponent.decorators = [ + /** + * @return {?} + */ + ErrorComponent.prototype.destroy = /** + * @return {?} + */ + function () { + this.renderer.removeChild(this.host, this.elementRef.nativeElement); + }; + ErrorComponent.decorators = [ { type: core.Component, args: [{ - selector: 'abp-toast', - template: "\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n " + selector: 'abp-error', + template: "\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n ", + styles: [".error{position:fixed;top:0;background-color:#fff;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}"] }] } ]; - return ToastComponent; + return ErrorComponent; }()); + if (false) { + /** @type {?} */ + ErrorComponent.prototype.title; + /** @type {?} */ + ErrorComponent.prototype.details; + /** @type {?} */ + ErrorComponent.prototype.renderer; + /** @type {?} */ + ErrorComponent.prototype.elementRef; + /** @type {?} */ + ErrorComponent.prototype.host; + } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - var styles = "\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.navbar .dropdown-menu {\n min-width: 215px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis-inline {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-ellipsis {\n overflow: hidden !important;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* -1) { + return __assign({}, error, { message: error.message.slice(0, index), interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(',') }); + } + return error; + })); + }, + enumerable: true, + configurable: true + }); + ValidationErrorComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'abp-validation-error', + template: "\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n ", + changeDetection: core.ChangeDetectionStrategy.OnPush, + encapsulation: core.ViewEncapsulation.None + }] } + ]; + return ValidationErrorComponent; + }(core$1.ValidationErrorComponent)); /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - /** @type {?} */ - var DEFAULTS = { - defaultError: { - message: 'An error has occurred!', - details: 'Error detail not sent by server.', - }, - defaultError401: { - message: 'You are not authenticated!', - details: 'You should be authenticated (sign in) in order to perform this operation.', - }, - defaultError403: { - message: 'You are not authorized!', - details: 'You are not allowed to perform this operation.', - }, - defaultError404: { - message: 'Resource not found!', - details: 'The resource requested could not found on the server.', - }, - }; - var ErrorHandler = /** @class */ (function () { - function ErrorHandler(actions, store$1, confirmationService, appRef, cfRes, rendererFactory, injector) { + var LoaderBarComponent = /** @class */ (function () { + function LoaderBarComponent(actions, router$1) { var _this = this; this.actions = actions; - this.store = store$1; - this.confirmationService = confirmationService; - this.appRef = appRef; - this.cfRes = cfRes; - this.rendererFactory = rendererFactory; - this.injector = injector; - actions.pipe(store.ofActionSuccessful(ng_core.RestOccurError)).subscribe((/** - * @param {?} res + this.router = router$1; + this.containerClass = 'abp-loader-bar'; + this.progressClass = 'abp-progress'; + this.isLoading = false; + this.filter = (/** + * @param {?} action * @return {?} */ - function (res) { - var _a = res.payload, err = _a === void 0 ? (/** @type {?} */ ({})) : _a; - /** @type {?} */ - var body = snq((/** - * @return {?} - */ - function () { return ((/** @type {?} */ (err))).error.error; }), DEFAULTS.defaultError.message); - if (err instanceof http.HttpErrorResponse && err.headers.get('_AbpErrorFormat')) { - /** @type {?} */ - var confirmation$ = _this.showError(null, null, body); - if (err.status === 401) { - confirmation$.subscribe((/** - * @return {?} - */ - function () { - _this.navigateToLogin(); - })); - } - } - else { - switch (((/** @type {?} */ (err))).status) { - case 401: - _this.showError(DEFAULTS.defaultError401.details, DEFAULTS.defaultError401.message).subscribe((/** - * @return {?} - */ - function () { - return _this.navigateToLogin(); - })); - break; - case 403: - _this.createErrorComponent({ - title: DEFAULTS.defaultError403.message, - details: DEFAULTS.defaultError403.details, - }); - break; - case 404: - _this.showError(DEFAULTS.defaultError404.details, DEFAULTS.defaultError404.message); - break; - case 500: - _this.createErrorComponent({ - title: '500', - details: 'AbpAccount::InternalServerErrorMessage', - }); - break; - case 0: - if (((/** @type {?} */ (err))).statusText === 'Unknown Error') { - _this.createErrorComponent({ - title: 'Unknown Error', - details: 'AbpAccount::InternalServerErrorMessage', - }); - } - break; - default: - _this.showError(DEFAULTS.defaultError.details, DEFAULTS.defaultError.message); - break; - } - } + function (action) { return action.payload.url.indexOf('openid-configuration') < 0; }); + this.progressLevel = 0; + actions + .pipe(store.ofActionSuccessful(ng_core.StartLoader, ng_core.StopLoader), operators.filter(this.filter), core$1.takeUntilDestroy(this)) + .subscribe((/** + * @param {?} action + * @return {?} + */ + function (action) { + if (action instanceof ng_core.StartLoader) + _this.startLoading(); + else + _this.stopLoading(); + })); + router$1.events + .pipe(operators.filter((/** + * @param {?} event + * @return {?} + */ + function (event) { + return event instanceof router.NavigationStart || event instanceof router.NavigationEnd || event instanceof router.NavigationError; + })), core$1.takeUntilDestroy(this)) + .subscribe((/** + * @param {?} event + * @return {?} + */ + function (event) { + if (event instanceof router.NavigationStart) + _this.startLoading(); + else + _this.stopLoading(); })); } /** - * @private - * @param {?=} message - * @param {?=} title - * @param {?=} body * @return {?} */ - ErrorHandler.prototype.showError = /** - * @private - * @param {?=} message - * @param {?=} title - * @param {?=} body + LoaderBarComponent.prototype.ngOnDestroy = /** * @return {?} */ - function (message, title, body) { - if (body) { - if (body.details) { - message = body.details; - title = body.message; - } - else { - message = body.message || DEFAULTS.defaultError.message; - } - } - return this.confirmationService.error(message, title, { - hideCancelBtn: true, - yesCopy: 'OK', - }); - }; + function () { }; /** - * @private * @return {?} */ - ErrorHandler.prototype.navigateToLogin = /** - * @private + LoaderBarComponent.prototype.startLoading = /** * @return {?} */ function () { - this.store.dispatch(new routerPlugin.Navigate(['/account/login'], null, { - state: { redirectUrl: this.store.selectSnapshot(routerPlugin.RouterState).state.url }, - })); + var _this = this; + this.isLoading = true; + /** @type {?} */ + var interval = setInterval((/** + * @return {?} + */ + function () { + if (_this.progressLevel < 75) { + _this.progressLevel += Math.random() * 10; + } + else if (_this.progressLevel < 90) { + _this.progressLevel += 0.4; + } + else if (_this.progressLevel < 100) { + _this.progressLevel += 0.1; + } + else { + clearInterval(interval); + } + }), 300); + this.interval = interval; }; /** - * @param {?} instance * @return {?} */ - ErrorHandler.prototype.createErrorComponent = /** - * @param {?} instance + LoaderBarComponent.prototype.stopLoading = /** * @return {?} */ - function (instance) { - /** @type {?} */ - var renderer = this.rendererFactory.createRenderer(null, null); - /** @type {?} */ - var host = renderer.selectRootElement('app-root', true); - /** @type {?} */ - var componentRef = this.cfRes.resolveComponentFactory(ErrorComponent).create(this.injector); - for (var key in componentRef.instance) { - if (componentRef.instance.hasOwnProperty(key)) { - componentRef.instance[key] = instance[key]; - } - } - this.appRef.attachView(componentRef.hostView); - renderer.appendChild(host, ((/** @type {?} */ (componentRef.hostView))).rootNodes[0]); - componentRef.instance.renderer = renderer; - componentRef.instance.elementRef = componentRef.location; - componentRef.instance.host = host; + function () { + var _this = this; + clearInterval(this.interval); + this.progressLevel = 100; + this.isLoading = false; + setTimeout((/** + * @return {?} + */ + function () { + _this.progressLevel = 0; + }), 800); }; - ErrorHandler.decorators = [ - { type: core.Injectable, args: [{ providedIn: 'root' },] } + LoaderBarComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'abp-loader-bar', + template: "\n
    \n
    \n
    \n ", + styles: [".abp-loader-bar{left:0;opacity:0;position:fixed;top:0;transition:opacity .4s linear .4s;z-index:99999}.abp-loader-bar.is-loading{opacity:1;transition:none}.abp-loader-bar .abp-progress{background:#77b6ff;box-shadow:0 0 10px rgba(119,182,255,.7);height:2px;left:0;position:fixed;top:0;transition:width .4s}"] + }] } ]; /** @nocollapse */ - ErrorHandler.ctorParameters = function () { return [ + LoaderBarComponent.ctorParameters = function () { return [ { type: store.Actions }, - { type: store.Store }, - { type: ConfirmationService }, - { type: core.ApplicationRef }, - { type: core.ComponentFactoryResolver }, - { type: core.RendererFactory2 }, - { type: core.Injector } + { type: router.Router } ]; }; - /** @nocollapse */ ErrorHandler.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ErrorHandler_Factory() { return new ErrorHandler(core.ɵɵinject(store.Actions), core.ɵɵinject(store.Store), core.ɵɵinject(ConfirmationService), core.ɵɵinject(core.ApplicationRef), core.ɵɵinject(core.ComponentFactoryResolver), core.ɵɵinject(core.RendererFactory2), core.ɵɵinject(core.INJECTOR)); }, token: ErrorHandler, providedIn: "root" }); - return ErrorHandler; + LoaderBarComponent.propDecorators = { + containerClass: [{ type: core.Input }], + progressClass: [{ type: core.Input }], + isLoading: [{ type: core.Input }], + filter: [{ type: core.Input }] + }; + return LoaderBarComponent; }()); if (false) { + /** @type {?} */ + LoaderBarComponent.prototype.containerClass; + /** @type {?} */ + LoaderBarComponent.prototype.progressClass; + /** @type {?} */ + LoaderBarComponent.prototype.isLoading; + /** @type {?} */ + LoaderBarComponent.prototype.filter; + /** @type {?} */ + LoaderBarComponent.prototype.progressLevel; + /** @type {?} */ + LoaderBarComponent.prototype.interval; /** * @type {?} * @private */ - ErrorHandler.prototype.actions; - /** - * @type {?} - * @private - */ - ErrorHandler.prototype.store; - /** - * @type {?} - * @private - */ - ErrorHandler.prototype.confirmationService; - /** - * @type {?} - * @private - */ - ErrorHandler.prototype.appRef; - /** - * @type {?} - * @private - */ - ErrorHandler.prototype.cfRes; - /** - * @type {?} - * @private - */ - ErrorHandler.prototype.rendererFactory; + LoaderBarComponent.prototype.actions; /** * @type {?} * @private */ - ErrorHandler.prototype.injector; + LoaderBarComponent.prototype.router; } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ - var ValidationErrorComponent = /** @class */ (function (_super) { - __extends(ValidationErrorComponent, _super); - function ValidationErrorComponent() { - return _super !== null && _super.apply(this, arguments) || this; + /** @type {?} */ + var ANIMATION_TIMEOUT = 200; + var ModalComponent = /** @class */ (function () { + function ModalComponent(renderer, confirmationService) { + this.renderer = renderer; + this.confirmationService = confirmationService; + this.centered = false; + this.modalClass = ''; + this.size = 'lg'; + this.visibleChange = new core.EventEmitter(); + this.init = new core.EventEmitter(); + this._visible = false; + this._busy = false; + this.showModal = false; + this.isOpenConfirmation = false; + this.closable = false; + this.destroy$ = new rxjs.Subject(); } - Object.defineProperty(ValidationErrorComponent.prototype, "abpErrors", { + Object.defineProperty(ModalComponent.prototype, "visible", { get: /** * @return {?} */ function () { - if (!this.errors || !this.errors.length) - return []; - return this.errors.map((/** - * @param {?} error - * @return {?} - */ - function (error) { - if (!error.message) - return error; - /** @type {?} */ - var index = error.message.indexOf('['); - if (index > -1) { - return __assign({}, error, { message: error.message.slice(0, index), interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(',') }); + return this._visible; + }, + set: /** + * @param {?} value + * @return {?} + */ + function (value) { + var _this = this; + if (typeof value !== 'boolean') + return; + if (!this.modalContent) { + if (value) { + setTimeout((/** + * @return {?} + */ + function () { + _this.showModal = value; + _this.visible = value; + }), 0); } - return error; - })); + return; + } + if (value) { + this.setVisible(value); + this.listen(); + } + else { + this.closable = false; + this.renderer.addClass(this.modalContent.nativeElement, 'fade-out-top'); + setTimeout((/** + * @return {?} + */ + function () { + _this.setVisible(value); + _this.ngOnDestroy(); + }), ANIMATION_TIMEOUT - 10); + } }, enumerable: true, configurable: true }); - ValidationErrorComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'abp-validation-error', - template: "\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n ", - changeDetection: core.ChangeDetectionStrategy.OnPush, - encapsulation: core.ViewEncapsulation.None - }] } - ]; - return ValidationErrorComponent; - }(core$1.ValidationErrorComponent)); - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var ToasterService = /** @class */ (function (_super) { - __extends(ToasterService, _super); - function ToasterService() { - return _super !== null && _super.apply(this, arguments) || this; - } - /** - * @param {?} messages - * @return {?} - */ - ToasterService.prototype.addAll = /** - * @param {?} messages - * @return {?} - */ - function (messages) { - var _this = this; - this.messageService.addAll(messages.map((/** - * @param {?} message - * @return {?} - */ - function (message) { return (__assign({ key: _this.key }, message)); }))); - }; - ToasterService.decorators = [ - { type: core.Injectable, args: [{ providedIn: 'root' },] } - ]; - /** @nocollapse */ ToasterService.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ToasterService_Factory() { return new ToasterService(core.ɵɵinject(messageservice.MessageService)); }, token: ToasterService, providedIn: "root" }); - return ToasterService; - }(AbstractToaster)); - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var minLength = forms.Validators.minLength, required = forms.Validators.required; - var ChangePasswordComponent = /** @class */ (function () { - function ChangePasswordComponent(fb, store, toasterService) { - this.fb = fb; - this.store = store; - this.toasterService = toasterService; - this.visibleChange = new core.EventEmitter(); - this.modalBusy = false; - } - Object.defineProperty(ChangePasswordComponent.prototype, "visible", { + Object.defineProperty(ModalComponent.prototype, "busy", { get: /** * @return {?} */ function () { - return this._visible; + return this._busy; }, set: /** * @param {?} value * @return {?} */ function (value) { - this._visible = value; - this.visibleChange.emit(value); + if (this.abpSubmit && this.abpSubmit instanceof ButtonComponent) { + this.abpSubmit.loading = value; + } + this._busy = value; }, enumerable: true, configurable: true @@ -1295,138 +1300,222 @@ /** * @return {?} */ - ChangePasswordComponent.prototype.ngOnInit = /** + ModalComponent.prototype.ngOnDestroy = /** * @return {?} */ function () { - this.form = this.fb.group({ - password: ['', required], - newPassword: ['', required], - repeatNewPassword: ['', required], - }, { - validators: [core$1.comparePasswords(['newPassword', 'repeatNewPassword'])], - }); + this.destroy$.next(); }; /** + * @param {?} value * @return {?} */ - ChangePasswordComponent.prototype.onSubmit = /** + ModalComponent.prototype.setVisible = /** + * @param {?} value * @return {?} */ - function () { + function (value) { var _this = this; - if (this.form.invalid) - return; - this.modalBusy = true; - this.store - .dispatch(new ng_core.ChangePassword({ - currentPassword: this.form.get('password').value, - newPassword: this.form.get('newPassword').value, - })) - .pipe(operators.finalize((/** - * @return {?} - */ - function () { - _this.modalBusy = false; - }))) - .subscribe({ - next: (/** - * @return {?} - */ - function () { - _this.visible = false; - _this.form.reset(); - }), - error: (/** - * @param {?} err + this._visible = value; + this.visibleChange.emit(value); + this.showModal = value; + if (value) { + rxjs.timer(ANIMATION_TIMEOUT + 100) + .pipe(operators.take(1)) + .subscribe((/** + * @param {?} _ * @return {?} */ - function (err) { - _this.toasterService.error(snq((/** - * @return {?} - */ - function () { return err.error.error.message; }), 'AbpAccount::DefaultErrorMessage'), 'Error', { - life: 7000, - }); - }), - }); + function (_) { return (_this.closable = true); })); + this.renderer.addClass(document.body, 'modal-open'); + } + else { + this.closable = false; + this.renderer.removeClass(document.body, 'modal-open'); + } }; /** * @return {?} */ - ChangePasswordComponent.prototype.openModal = /** + ModalComponent.prototype.listen = /** * @return {?} */ function () { - this.visible = true; + var _this = this; + rxjs.fromEvent(document, 'keyup') + .pipe(operators.takeUntil(this.destroy$), operators.debounceTime(150), operators.filter((/** + * @param {?} key + * @return {?} + */ + function (key) { return key && key.code === 'Escape' && _this.closable; }))) + .subscribe((/** + * @param {?} _ + * @return {?} + */ + function (_) { + _this.close(); + })); + setTimeout((/** + * @return {?} + */ + function () { + if (!_this.abpClose) + return; + rxjs.fromEvent(_this.abpClose.nativeElement, 'click') + .pipe(operators.takeUntil(_this.destroy$), operators.filter((/** + * @return {?} + */ + function () { return !!(_this.closable && _this.modalContent); }))) + .subscribe((/** + * @return {?} + */ + function () { return _this.close(); })); + }), 0); + this.init.emit(); }; /** - * @param {?} __0 * @return {?} */ - ChangePasswordComponent.prototype.ngOnChanges = /** - * @param {?} __0 + ModalComponent.prototype.close = /** * @return {?} */ - function (_a) { - var visible = _a.visible; - if (!visible) + function () { + var _this = this; + if (!this.closable || this.busy) return; - if (visible.currentValue) { - this.openModal(); + /** @type {?} */ + var nodes = getFlatNodes(((/** @type {?} */ (this.modalContent.nativeElement.querySelector('#abp-modal-body')))).childNodes); + if (hasNgDirty(nodes)) { + if (this.isOpenConfirmation) + return; + this.isOpenConfirmation = true; + this.confirmationService + .warn('AbpAccount::AreYouSureYouWantToCancelEditingWarningMessage', 'AbpAccount::AreYouSure') + .subscribe((/** + * @param {?} status + * @return {?} + */ + function (status) { + rxjs.timer(ANIMATION_TIMEOUT).subscribe((/** + * @return {?} + */ + function () { + _this.isOpenConfirmation = false; + })); + if (status === "confirm" /* confirm */) { + _this.visible = false; + } + })); } - else if (visible.currentValue === false && this.visible) { + else { this.visible = false; } }; - ChangePasswordComponent.decorators = [ + ModalComponent.decorators = [ { type: core.Component, args: [{ - selector: 'abp-change-password', - template: "\n \n

    {{ 'AbpIdentity::ChangePassword' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n" + selector: 'abp-modal', + template: "\n \n
    \n
    \n \n\n \n
    \n \n \n
    \n
    \n \n
    \n \n \n\n \n\n" }] } ]; /** @nocollapse */ - ChangePasswordComponent.ctorParameters = function () { return [ - { type: forms.FormBuilder }, - { type: store.Store }, - { type: ToasterService } + ModalComponent.ctorParameters = function () { return [ + { type: core.Renderer2 }, + { type: ConfirmationService } ]; }; - ChangePasswordComponent.propDecorators = { + ModalComponent.propDecorators = { visible: [{ type: core.Input }], + busy: [{ type: core.Input }], + centered: [{ type: core.Input }], + modalClass: [{ type: core.Input }], + size: [{ type: core.Input }], + height: [{ type: core.Input }], + minHeight: [{ type: core.Input }], visibleChange: [{ type: core.Output }], - modalContent: [{ type: core.ViewChild, args: ['modalContent', { static: false },] }] + init: [{ type: core.Output }], + abpHeader: [{ type: core.ContentChild, args: ['abpHeader', { static: false },] }], + abpBody: [{ type: core.ContentChild, args: ['abpBody', { static: false },] }], + abpFooter: [{ type: core.ContentChild, args: ['abpFooter', { static: false },] }], + abpClose: [{ type: core.ContentChild, args: ['abpClose', { static: false, read: core.ElementRef },] }], + abpSubmit: [{ type: core.ContentChild, args: [ButtonComponent, { static: false, read: ButtonComponent },] }], + modalContent: [{ type: core.ViewChild, args: ['abpModalContent', { static: false },] }], + abpButtons: [{ type: core.ViewChildren, args: ['abp-button',] }] }; - return ChangePasswordComponent; + return ModalComponent; }()); if (false) { - /** - * @type {?} - * @protected - */ - ChangePasswordComponent.prototype._visible; /** @type {?} */ - ChangePasswordComponent.prototype.visibleChange; + ModalComponent.prototype.centered; + /** @type {?} */ + ModalComponent.prototype.modalClass; + /** @type {?} */ + ModalComponent.prototype.size; + /** @type {?} */ + ModalComponent.prototype.height; + /** @type {?} */ + ModalComponent.prototype.minHeight; + /** @type {?} */ + ModalComponent.prototype.visibleChange; + /** @type {?} */ + ModalComponent.prototype.init; + /** @type {?} */ + ModalComponent.prototype.abpHeader; + /** @type {?} */ + ModalComponent.prototype.abpBody; + /** @type {?} */ + ModalComponent.prototype.abpFooter; + /** @type {?} */ + ModalComponent.prototype.abpClose; /** @type {?} */ - ChangePasswordComponent.prototype.modalContent; + ModalComponent.prototype.abpSubmit; /** @type {?} */ - ChangePasswordComponent.prototype.form; + ModalComponent.prototype.modalContent; /** @type {?} */ - ChangePasswordComponent.prototype.modalBusy; + ModalComponent.prototype.abpButtons; + /** @type {?} */ + ModalComponent.prototype._visible; + /** @type {?} */ + ModalComponent.prototype._busy; + /** @type {?} */ + ModalComponent.prototype.showModal; + /** @type {?} */ + ModalComponent.prototype.isOpenConfirmation; + /** @type {?} */ + ModalComponent.prototype.closable; + /** @type {?} */ + ModalComponent.prototype.destroy$; /** * @type {?} * @private */ - ChangePasswordComponent.prototype.fb; + ModalComponent.prototype.renderer; /** * @type {?} * @private */ - ChangePasswordComponent.prototype.store; - /** - * @type {?} - * @private + ModalComponent.prototype.confirmationService; + } + /** + * @param {?} nodes + * @return {?} + */ + function getFlatNodes(nodes) { + return Array.from(nodes).reduce((/** + * @param {?} acc + * @param {?} val + * @return {?} */ - ChangePasswordComponent.prototype.toasterService; + function (acc, val) { return __spread(acc, (val.childNodes && val.childNodes.length ? getFlatNodes(val.childNodes) : [val])); }), []); + } + /** + * @param {?} nodes + * @return {?} + */ + function hasNgDirty(nodes) { + return nodes.findIndex((/** + * @param {?} node + * @return {?} + */ + function (node) { return (node.className || '').indexOf('ng-dirty') > -1; })) > -1; } /** @@ -1508,158 +1597,317 @@ /** * @return {?} */ - ProfileComponent.prototype.openModal = /** + ProfileComponent.prototype.openModal = /** + * @return {?} + */ + function () { + this.buildForm(); + this.visible = true; + }; + /** + * @param {?} __0 + * @return {?} + */ + ProfileComponent.prototype.ngOnChanges = /** + * @param {?} __0 + * @return {?} + */ + function (_a) { + var visible = _a.visible; + if (!visible) + return; + if (visible.currentValue) { + this.openModal(); + } + else if (visible.currentValue === false && this.visible) { + this.visible = false; + } + }; + ProfileComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'abp-profile', + template: "\n \n

    {{ 'AbpIdentity::PersonalInfo' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n
    \n" + }] } + ]; + /** @nocollapse */ + ProfileComponent.ctorParameters = function () { return [ + { type: forms.FormBuilder }, + { type: store.Store } + ]; }; + ProfileComponent.propDecorators = { + visible: [{ type: core.Input }], + visibleChange: [{ type: core.Output }] + }; + __decorate([ + store.Select(ng_core.ProfileState.getProfile), + __metadata("design:type", rxjs.Observable) + ], ProfileComponent.prototype, "profile$", void 0); + return ProfileComponent; + }()); + if (false) { + /** + * @type {?} + * @protected + */ + ProfileComponent.prototype._visible; + /** @type {?} */ + ProfileComponent.prototype.visibleChange; + /** @type {?} */ + ProfileComponent.prototype.profile$; + /** @type {?} */ + ProfileComponent.prototype.form; + /** @type {?} */ + ProfileComponent.prototype.modalBusy; + /** + * @type {?} + * @private + */ + ProfileComponent.prototype.fb; + /** + * @type {?} + * @private + */ + ProfileComponent.prototype.store; + } + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var ToastComponent = /** @class */ (function () { + function ToastComponent() { + } + ToastComponent.decorators = [ + { type: core.Component, args: [{ + selector: 'abp-toast', + template: "\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n " + }] } + ]; + return ToastComponent; + }()); + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var styles = "\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.navbar .dropdown-menu {\n min-width: 215px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis-inline {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-ellipsis {\n overflow: hidden !important;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-toast .ui-toast-message {\n box-sizing: border-box !important;\n border: 2px solid transparent !important;\n border-radius: 4px !important;\n background-color: #f4f4f7 !important;\n color: #1b1d29 !important;\n}\n\n.abp-toast .ui-toast-message-content {\n padding: 10px !important;\n}\n\n.abp-toast .ui-toast-message-content .ui-toast-icon {\n top: 0 !important;\n left: 0 !important;\n padding: 10px !important;\n}\n\n.abp-toast .ui-toast-summary {\n margin: 0 !important;\n font-weight: 700 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-error {\n border-color: #ba1659 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-error .ui-toast-message-content .ui-toast-icon {\n color: #ba1659 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-warning {\n border-color: #ed5d98 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-warning .ui-toast-message-content .ui-toast-icon {\n color: #ed5d98 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-success {\n border-color: #1c9174 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-success .ui-toast-message-content .ui-toast-icon {\n color: #1c9174 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-info {\n border-color: #fccb31 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-info .ui-toast-message-content .ui-toast-icon {\n color: #fccb31 !important;\n}\n\n.abp-confirm .ui-toast-message {\n box-sizing: border-box !important;\n padding: 0px !important;\n border:0 none !important;\n border-radius: 4px !important;\n background-color: #fff !important;\n color: rgba(0, 0, 0, .65) !important;\n font-family: \"Poppins\", sans-serif;\n text-align: center !important;\n}\n\n.abp-confirm .ui-toast-message-content {\n padding: 0px !important;\n}\n\n.abp-confirm .abp-confirm-icon {\n margin: 32px 50px 5px !important;\n color: #f8bb86 !important;\n font-size: 52px !important;\n}\n\n.abp-confirm .ui-toast-close-icon {\n display: none !important;\n}\n\n.abp-confirm .abp-confirm-summary {\n display: block !important;\n margin-bottom: 13px !important;\n padding: 13px 16px 0px !important;\n font-weight: 600 !important;\n font-size: 18px !important;\n}\n\n.abp-confirm .abp-confirm-body {\n display: inline-block !important;\n padding: 0px 10px !important;\n}\n\n.abp-confirm .abp-confirm-footer {\n display: block !important;\n margin-top: 30px !important;\n padding: 16px !important;\n background-color: #f4f4f7 !important;\n text-align: right !important;\n}\n\n.abp-confirm .abp-confirm-footer .btn {\n margin-left: 10px !important;\n}\n\n/* \n \n

    {{ 'AbpIdentity::PersonalInfo' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ 'AbpIdentity::Save' | abpLocalization }}\n \n\n" - }] } + ErrorHandler.decorators = [ + { type: core.Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ - ProfileComponent.ctorParameters = function () { return [ - { type: forms.FormBuilder }, - { type: store.Store } + ErrorHandler.ctorParameters = function () { return [ + { type: store.Actions }, + { type: store.Store }, + { type: ConfirmationService }, + { type: core.ApplicationRef }, + { type: core.ComponentFactoryResolver }, + { type: core.RendererFactory2 }, + { type: core.Injector } ]; }; - ProfileComponent.propDecorators = { - visible: [{ type: core.Input }], - visibleChange: [{ type: core.Output }] - }; - __decorate([ - store.Select(ng_core.ProfileState.getProfile), - __metadata("design:type", rxjs.Observable) - ], ProfileComponent.prototype, "profile$", void 0); - return ProfileComponent; + /** @nocollapse */ ErrorHandler.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function ErrorHandler_Factory() { return new ErrorHandler(core.ɵɵinject(store.Actions), core.ɵɵinject(store.Store), core.ɵɵinject(ConfirmationService), core.ɵɵinject(core.ApplicationRef), core.ɵɵinject(core.ComponentFactoryResolver), core.ɵɵinject(core.RendererFactory2), core.ɵɵinject(core.INJECTOR)); }, token: ErrorHandler, providedIn: "root" }); + return ErrorHandler; }()); if (false) { /** * @type {?} - * @protected + * @private */ - ProfileComponent.prototype._visible; - /** @type {?} */ - ProfileComponent.prototype.visibleChange; - /** @type {?} */ - ProfileComponent.prototype.profile$; - /** @type {?} */ - ProfileComponent.prototype.form; - /** @type {?} */ - ProfileComponent.prototype.modalBusy; + ErrorHandler.prototype.actions; /** * @type {?} * @private */ - ProfileComponent.prototype.fb; + ErrorHandler.prototype.store; /** * @type {?} * @private */ - ProfileComponent.prototype.store; - } - - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - var BreadcrumbComponent = /** @class */ (function () { - function BreadcrumbComponent(router, store) { - this.router = router; - this.store = store; - this.segments = []; - this.show = !!this.store.selectSnapshot((/** - * @param {?} state - * @return {?} - */ - function (state) { return state.LeptonLayoutState; })); - } + ErrorHandler.prototype.confirmationService; /** - * @return {?} + * @type {?} + * @private */ - BreadcrumbComponent.prototype.ngOnInit = /** - * @return {?} + ErrorHandler.prototype.appRef; + /** + * @type {?} + * @private */ - function () { - /** @type {?} */ - var splittedUrl = this.router.url.split('/').filter((/** - * @param {?} chunk - * @return {?} - */ - function (chunk) { return chunk; })); - /** @type {?} */ - var currentUrl = this.store.selectSnapshot(ng_core.ConfigState.getRoute(splittedUrl[0])); - this.segments.push(currentUrl.name); - if (splittedUrl.length > 1) { - var _a = __read(splittedUrl), arr = _a.slice(1); - /** @type {?} */ - var childRoute = currentUrl; - var _loop_1 = function (i) { - /** @type {?} */ - var element = arr[i]; - childRoute = childRoute.children.find((/** - * @param {?} child - * @return {?} - */ - function (child) { return child.path === element; })); - this_1.segments.push(childRoute.name); - }; - var this_1 = this; - for (var i = 0; i < arr.length; i++) { - _loop_1(i); - } - } - }; - BreadcrumbComponent.decorators = [ - { type: core.Component, args: [{ - selector: 'abp-breadcrumb', - template: "\n
      \n
    1. \n \n
    2. \n \n {{ segment | abpLocalization }}\n \n
    \n " - }] } - ]; - /** @nocollapse */ - BreadcrumbComponent.ctorParameters = function () { return [ - { type: router.Router }, - { type: store.Store } - ]; }; - return BreadcrumbComponent; - }()); - if (false) { - /** @type {?} */ - BreadcrumbComponent.prototype.show; - /** @type {?} */ - BreadcrumbComponent.prototype.segments; + ErrorHandler.prototype.cfRes; /** * @type {?} * @private */ - BreadcrumbComponent.prototype.router; + ErrorHandler.prototype.rendererFactory; /** * @type {?} * @private */ - BreadcrumbComponent.prototype.store; + ErrorHandler.prototype.injector; } /** @@ -1676,6 +1924,10 @@ * @return {?} */ function () { + import('chart.js').then((/** + * @return {?} + */ + function () { return chartJsLoaded$.next(true); })); /** @type {?} */ var lazyLoadService = injector.get(ng_core.LazyLoadService); return rxjs.forkJoin(lazyLoadService.load(null, 'style', styles, 'head', 'afterbegin') /* lazyLoadService.load(null, 'script', scripts) */).pipe(operators.take(1)); @@ -1725,26 +1977,28 @@ }), ], declarations: [ + BreadcrumbComponent, ButtonComponent, + ChangePasswordComponent, + ChartComponent, ConfirmationComponent, - ToastComponent, - ModalComponent, ErrorComponent, LoaderBarComponent, - ValidationErrorComponent, - ChangePasswordComponent, + ModalComponent, ProfileComponent, - BreadcrumbComponent, + ToastComponent, + ValidationErrorComponent, ], exports: [ + BreadcrumbComponent, ButtonComponent, + ChangePasswordComponent, + ChartComponent, ConfirmationComponent, - ToastComponent, - ModalComponent, LoaderBarComponent, - ChangePasswordComponent, + ModalComponent, ProfileComponent, - BreadcrumbComponent, + ToastComponent, ], entryComponents: [ErrorComponent, ValidationErrorComponent], },] } @@ -1807,6 +2061,58 @@ } })(Confirmation || (Confirmation = {})); + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + /** + * @record + */ + function SettingTab() { } + if (false) { + /** @type {?} */ + SettingTab.prototype.name; + /** @type {?} */ + SettingTab.prototype.order; + /** @type {?|undefined} */ + SettingTab.prototype.requiredPolicy; + /** @type {?|undefined} */ + SettingTab.prototype.url; + } + + /** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ + var Statistics; + (function (Statistics) { + /** + * @record + */ + function Response() { } + Statistics.Response = Response; + if (false) { + /** @type {?} */ + Response.prototype.data; + } + /** + * @record + */ + function Data() { } + Statistics.Data = Data; + /** + * @record + */ + function Filter() { } + Statistics.Filter = Filter; + if (false) { + /** @type {?} */ + Filter.prototype.startDate; + /** @type {?} */ + Filter.prototype.endDate; + } + })(Statistics || (Statistics = {})); + /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc @@ -1836,28 +2142,10 @@ } })(exports.Toaster || (exports.Toaster = {})); - /** - * @fileoverview added by tsickle - * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc - */ - /** - * @record - */ - function SettingTab() { } - if (false) { - /** @type {?} */ - SettingTab.prototype.name; - /** @type {?} */ - SettingTab.prototype.order; - /** @type {?} */ - SettingTab.prototype.component; - /** @type {?|undefined} */ - SettingTab.prototype.requiredPolicy; - } - exports.BreadcrumbComponent = BreadcrumbComponent; exports.ButtonComponent = ButtonComponent; exports.ChangePasswordComponent = ChangePasswordComponent; + exports.ChartComponent = ChartComponent; exports.ConfirmationComponent = ConfirmationComponent; exports.ConfirmationService = ConfirmationService; exports.LoaderBarComponent = LoaderBarComponent; @@ -1867,22 +2155,25 @@ exports.ToastComponent = ToastComponent; exports.ToasterService = ToasterService; exports.appendScript = appendScript; + exports.chartJsLoaded$ = chartJsLoaded$; exports.fade = fade; + exports.getRandomBackgroundColor = getRandomBackgroundColor; exports.slideFromBottom = slideFromBottom; exports.ɵa = ValidationErrorComponent; - exports.ɵb = ButtonComponent; - exports.ɵc = ConfirmationComponent; - exports.ɵd = ConfirmationService; - exports.ɵe = AbstractToaster; - exports.ɵf = ToastComponent; - exports.ɵg = ModalComponent; - exports.ɵh = ErrorComponent; - exports.ɵi = LoaderBarComponent; - exports.ɵj = ChangePasswordComponent; - exports.ɵk = ToasterService; - exports.ɵl = ProfileComponent; - exports.ɵm = BreadcrumbComponent; - exports.ɵn = ErrorHandler; + exports.ɵb = BreadcrumbComponent; + exports.ɵc = ButtonComponent; + exports.ɵd = ChangePasswordComponent; + exports.ɵe = ToasterService; + exports.ɵf = AbstractToaster; + exports.ɵg = ChartComponent; + exports.ɵh = ConfirmationComponent; + exports.ɵi = ConfirmationService; + exports.ɵj = ErrorComponent; + exports.ɵk = LoaderBarComponent; + exports.ɵl = ModalComponent; + exports.ɵm = ProfileComponent; + exports.ɵn = ToastComponent; + exports.ɵo = ErrorHandler; Object.defineProperty(exports, '__esModule', { value: true }); diff --git a/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js.map b/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js.map index e77b970b56..02bb214671 100644 --- a/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js.map +++ b/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.js.map @@ -1 +1 @@ -{"version":3,"file":"abp-ng.theme.shared.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.theme.shared/lib/abstracts/toaster.ts","ng://@abp/ng.theme.shared/lib/services/confirmation.service.ts","ng://@abp/ng.theme.shared/lib/components/confirmation/confirmation.component.ts","ng://@abp/ng.theme.shared/lib/components/errors/error.component.ts","ng://@abp/ng.theme.shared/lib/components/loader-bar/loader-bar.component.ts","ng://@abp/ng.theme.shared/lib/components/button/button.component.ts","ng://@abp/ng.theme.shared/lib/components/modal/modal.component.ts","ng://@abp/ng.theme.shared/lib/components/toast/toast.component.ts","ng://@abp/ng.theme.shared/lib/contants/styles.ts","ng://@abp/ng.theme.shared/lib/handlers/error.handler.ts","ng://@abp/ng.theme.shared/lib/components/errors/validation-error.component.ts","ng://@abp/ng.theme.shared/lib/services/toaster.service.ts","ng://@abp/ng.theme.shared/lib/components/change-password/change-password.component.ts","ng://@abp/ng.theme.shared/lib/components/profile/profile.component.ts","ng://@abp/ng.theme.shared/lib/components/breadcrumb/breadcrumb.component.ts","ng://@abp/ng.theme.shared/lib/theme-shared.module.ts","ng://@abp/ng.theme.shared/lib/animations/fade.animations.ts","ng://@abp/ng.theme.shared/lib/animations/slide.animations.ts","ng://@abp/ng.theme.shared/lib/models/confirmation.ts","ng://@abp/ng.theme.shared/lib/models/toaster.ts","ng://@abp/ng.theme.shared/lib/models/setting-management.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { MessageService } from 'primeng/components/common/messageservice';\nimport { Observable, Subject } from 'rxjs';\nimport { Toaster } from '../models/toaster';\n\nexport class AbstractToaster {\n status$: Subject;\n\n key: string = 'abpToast';\n\n sticky: boolean = false;\n\n constructor(protected messageService: MessageService) {}\n info(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'info', options);\n }\n\n success(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'success', options);\n }\n\n warn(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'warn', options);\n }\n\n error(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'error', options);\n }\n\n protected show(message: string, title: string, severity: Toaster.Severity, options?: T): Observable {\n this.messageService.clear(this.key);\n\n this.messageService.add({\n severity,\n detail: message || '',\n summary: title || '',\n ...options,\n key: this.key,\n ...(typeof (options || ({} as any)).sticky === 'undefined' && { sticky: this.sticky }),\n });\n this.status$ = new Subject();\n return this.status$;\n }\n\n clear(status?: Toaster.Status) {\n this.messageService.clear(this.key);\n this.status$.next(status || Toaster.Status.dismiss);\n this.status$.complete();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToaster } from '../abstracts/toaster';\nimport { Confirmation } from '../models/confirmation';\n\n@Injectable({ providedIn: 'root' })\nexport class ConfirmationService extends AbstractToaster {\n key: string = 'abpConfirmation';\n\n sticky: boolean = true;\n}\n","import { Component } from '@angular/core';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { Toaster } from '../../models/toaster';\n\n@Component({\n selector: 'abp-confirmation',\n template: `\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n `,\n})\nexport class ConfirmationComponent {\n confirm = Toaster.Status.confirm;\n reject = Toaster.Status.reject;\n dismiss = Toaster.Status.dismiss;\n\n constructor(private confirmationService: ConfirmationService) {}\n\n close(status: Toaster.Status) {\n this.confirmationService.clear(status);\n }\n}\n","import { Component, Renderer2, ElementRef } from '@angular/core';\n\n@Component({\n selector: 'abp-error',\n template: `\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n `,\n styleUrls: ['error.component.scss'],\n})\nexport class ErrorComponent {\n title = 'Oops!';\n\n details = 'Sorry, an error has occured.';\n\n renderer: Renderer2;\n\n elementRef: ElementRef;\n\n host: any;\n\n destroy() {\n this.renderer.removeChild(this.host, this.elementRef.nativeElement);\n }\n}\n","import { StartLoader, StopLoader } from '@abp/ng.core';\nimport { Component, Input, OnDestroy } from '@angular/core';\nimport { NavigationEnd, NavigationStart, Router, NavigationError } from '@angular/router';\nimport { takeUntilDestroy } from '@ngx-validate/core';\nimport { Actions, ofActionSuccessful } from '@ngxs/store';\nimport { filter } from 'rxjs/operators';\n\n@Component({\n selector: 'abp-loader-bar',\n template: `\n
    \n
    \n
    \n `,\n styleUrls: ['./loader-bar.component.scss'],\n})\nexport class LoaderBarComponent implements OnDestroy {\n @Input()\n containerClass: string = 'abp-loader-bar';\n\n @Input()\n progressClass: string = 'abp-progress';\n\n @Input()\n isLoading: boolean = false;\n\n @Input()\n filter = (action: StartLoader | StopLoader) => action.payload.url.indexOf('openid-configuration') < 0;\n\n progressLevel: number = 0;\n\n interval: any;\n\n constructor(private actions: Actions, private router: Router) {\n actions\n .pipe(\n ofActionSuccessful(StartLoader, StopLoader),\n filter(this.filter),\n takeUntilDestroy(this),\n )\n .subscribe(action => {\n if (action instanceof StartLoader) this.startLoading();\n else this.stopLoading();\n });\n\n router.events\n .pipe(\n filter(\n event =>\n event instanceof NavigationStart || event instanceof NavigationEnd || event instanceof NavigationError,\n ),\n takeUntilDestroy(this),\n )\n .subscribe(event => {\n if (event instanceof NavigationStart) this.startLoading();\n else this.stopLoading();\n });\n }\n\n ngOnDestroy() {}\n\n startLoading() {\n this.isLoading = true;\n const interval = setInterval(() => {\n if (this.progressLevel < 75) {\n this.progressLevel += Math.random() * 10;\n } else if (this.progressLevel < 90) {\n this.progressLevel += 0.4;\n } else if (this.progressLevel < 100) {\n this.progressLevel += 0.1;\n } else {\n clearInterval(interval);\n }\n }, 300);\n\n this.interval = interval;\n }\n\n stopLoading() {\n clearInterval(this.interval);\n this.progressLevel = 100;\n this.isLoading = false;\n\n setTimeout(() => {\n this.progressLevel = 0;\n }, 800);\n }\n}\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'abp-button',\n template: `\n \n `,\n})\nexport class ButtonComponent {\n @Input()\n buttonClass: string = 'btn btn-primary';\n\n @Input()\n type: string = 'button';\n\n @Input()\n iconClass: string;\n\n @Input()\n loading: boolean = false;\n\n @Input()\n disabled: boolean = false;\n\n get icon(): string {\n return `${this.loading ? 'fa fa-spin fa-spinner' : this.iconClass || 'd-none'}`;\n }\n}\n","import {\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { fromEvent, Subject, timer } from 'rxjs';\nimport { filter, take, takeUntil, debounceTime } from 'rxjs/operators';\nimport { Toaster } from '../../models/toaster';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { ButtonComponent } from '../button/button.component';\n\nexport type ModalSize = 'sm' | 'md' | 'lg' | 'xl';\n\nconst ANIMATION_TIMEOUT = 200;\n\n@Component({\n selector: 'abp-modal',\n templateUrl: './modal.component.html',\n})\nexport class ModalComponent implements OnDestroy {\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n set visible(value: boolean) {\n if (typeof value !== 'boolean') return;\n\n if (!this.modalContent) {\n if (value) {\n setTimeout(() => {\n this.showModal = value;\n this.visible = value;\n }, 0);\n }\n return;\n }\n\n if (value) {\n this.setVisible(value);\n this.listen();\n } else {\n this.closable = false;\n this.renderer.addClass(this.modalContent.nativeElement, 'fade-out-top');\n setTimeout(() => {\n this.setVisible(value);\n this.ngOnDestroy();\n }, ANIMATION_TIMEOUT - 10);\n }\n }\n\n @Input()\n get busy(): boolean {\n return this._busy;\n }\n set busy(value: boolean) {\n if (this.abpSubmit && this.abpSubmit instanceof ButtonComponent) {\n this.abpSubmit.loading = value;\n }\n\n this._busy = value;\n }\n\n @Input() centered: boolean = false;\n\n @Input() modalClass: string = '';\n\n @Input() size: ModalSize = 'lg';\n\n @Input() height: number;\n\n @Input() minHeight: number;\n\n @Output() visibleChange = new EventEmitter();\n\n @Output() init = new EventEmitter();\n\n @ContentChild('abpHeader', { static: false }) abpHeader: TemplateRef;\n\n @ContentChild('abpBody', { static: false }) abpBody: TemplateRef;\n\n @ContentChild('abpFooter', { static: false }) abpFooter: TemplateRef;\n\n @ContentChild('abpClose', { static: false, read: ElementRef }) abpClose: ElementRef;\n\n @ContentChild(ButtonComponent, { static: false, read: ButtonComponent }) abpSubmit: ButtonComponent;\n\n @ViewChild('abpModalContent', { static: false }) modalContent: ElementRef;\n\n @ViewChildren('abp-button') abpButtons;\n\n _visible: boolean = false;\n\n _busy: boolean = false;\n\n showModal: boolean = false;\n\n isOpenConfirmation: boolean = false;\n\n closable: boolean = false;\n\n destroy$ = new Subject();\n\n constructor(private renderer: Renderer2, private confirmationService: ConfirmationService) {}\n\n ngOnDestroy(): void {\n this.destroy$.next();\n }\n\n setVisible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n this.showModal = value;\n\n value\n ? timer(ANIMATION_TIMEOUT + 100)\n .pipe(take(1))\n .subscribe(_ => (this.closable = true))\n : (this.closable = false);\n }\n\n listen() {\n fromEvent(document, 'keyup')\n .pipe(\n takeUntil(this.destroy$),\n debounceTime(150),\n filter((key: KeyboardEvent) => key && key.code === 'Escape' && this.closable),\n )\n .subscribe(_ => {\n this.close();\n });\n\n setTimeout(() => {\n if (!this.abpClose) return;\n fromEvent(this.abpClose.nativeElement, 'click')\n .pipe(\n takeUntil(this.destroy$),\n filter(() => !!(this.closable && this.modalContent)),\n )\n .subscribe(() => this.close());\n }, 0);\n\n this.init.emit();\n }\n\n close() {\n if (!this.closable || this.busy) return;\n\n const nodes = getFlatNodes(\n (this.modalContent.nativeElement.querySelector('#abp-modal-body') as HTMLElement).childNodes,\n );\n\n if (hasNgDirty(nodes)) {\n if (this.isOpenConfirmation) return;\n\n this.isOpenConfirmation = true;\n this.confirmationService\n .warn('AbpAccount::AreYouSureYouWantToCancelEditingWarningMessage', 'AbpAccount::AreYouSure')\n .subscribe((status: Toaster.Status) => {\n timer(ANIMATION_TIMEOUT).subscribe(() => {\n this.isOpenConfirmation = false;\n });\n\n if (status === Toaster.Status.confirm) {\n this.visible = false;\n }\n });\n } else {\n this.visible = false;\n }\n }\n}\n\nfunction getFlatNodes(nodes: NodeList): HTMLElement[] {\n return Array.from(nodes).reduce(\n (acc, val) => [...acc, ...(val.childNodes && val.childNodes.length ? getFlatNodes(val.childNodes) : [val])],\n [],\n );\n}\n\nfunction hasNgDirty(nodes: HTMLElement[]) {\n return nodes.findIndex(node => (node.className || '').indexOf('ng-dirty') > -1) > -1;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-toast',\n template: `\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n `,\n})\nexport class ToastComponent {}\n","export default `\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.navbar .dropdown-menu {\n min-width: 215px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis-inline {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-ellipsis {\n overflow: hidden !important;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* {\n const { payload: err = {} as HttpErrorResponse | any } = res;\n const body = snq(() => (err as HttpErrorResponse).error.error, DEFAULTS.defaultError.message);\n\n if (err instanceof HttpErrorResponse && err.headers.get('_AbpErrorFormat')) {\n const confirmation$ = this.showError(null, null, body);\n\n if (err.status === 401) {\n confirmation$.subscribe(() => {\n this.navigateToLogin();\n });\n }\n } else {\n switch ((err as HttpErrorResponse).status) {\n case 401:\n this.showError(DEFAULTS.defaultError401.details, DEFAULTS.defaultError401.message).subscribe(() =>\n this.navigateToLogin(),\n );\n break;\n case 403:\n this.createErrorComponent({\n title: DEFAULTS.defaultError403.message,\n details: DEFAULTS.defaultError403.details,\n });\n break;\n case 404:\n this.showError(DEFAULTS.defaultError404.details, DEFAULTS.defaultError404.message);\n break;\n case 500:\n this.createErrorComponent({\n title: '500',\n details: 'AbpAccount::InternalServerErrorMessage',\n });\n break;\n case 0:\n if ((err as HttpErrorResponse).statusText === 'Unknown Error') {\n this.createErrorComponent({\n title: 'Unknown Error',\n details: 'AbpAccount::InternalServerErrorMessage',\n });\n }\n break;\n default:\n this.showError(DEFAULTS.defaultError.details, DEFAULTS.defaultError.message);\n break;\n }\n }\n });\n }\n\n private showError(message?: string, title?: string, body?: any): Observable {\n if (body) {\n if (body.details) {\n message = body.details;\n title = body.message;\n } else {\n message = body.message || DEFAULTS.defaultError.message;\n }\n }\n\n return this.confirmationService.error(message, title, {\n hideCancelBtn: true,\n yesCopy: 'OK',\n });\n }\n\n private navigateToLogin() {\n this.store.dispatch(\n new Navigate(['/account/login'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n }\n\n createErrorComponent(instance: Partial) {\n const renderer = this.rendererFactory.createRenderer(null, null);\n const host = renderer.selectRootElement('app-root', true);\n\n const componentRef = this.cfRes.resolveComponentFactory(ErrorComponent).create(this.injector);\n\n for (const key in componentRef.instance) {\n if (componentRef.instance.hasOwnProperty(key)) {\n componentRef.instance[key] = instance[key];\n }\n }\n\n this.appRef.attachView(componentRef.hostView);\n renderer.appendChild(host, (componentRef.hostView as EmbeddedViewRef).rootNodes[0]);\n\n componentRef.instance.renderer = renderer;\n componentRef.instance.elementRef = componentRef.location;\n componentRef.instance.host = host;\n }\n}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { Validation, ValidationErrorComponent as ErrorComponent } from '@ngx-validate/core';\n\n@Component({\n selector: 'abp-validation-error',\n template: `\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class ValidationErrorComponent extends ErrorComponent {\n get abpErrors(): Validation.Error[] & { interpoliteParams?: string[] } {\n if (!this.errors || !this.errors.length) return [];\n\n return this.errors.map(error => {\n if (!error.message) return error;\n\n const index = error.message.indexOf('[');\n\n if (index > -1) {\n return {\n ...error,\n message: error.message.slice(0, index),\n interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(','),\n };\n }\n\n return error;\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToaster } from '../abstracts/toaster';\nimport { Message } from 'primeng/components/common/message';\n\n@Injectable({ providedIn: 'root' })\nexport class ToasterService extends AbstractToaster {\n addAll(messages: Message[]): void {\n this.messageService.addAll(messages.map(message => ({ key: this.key, ...message })));\n }\n}\n","import { ChangePassword } from '@abp/ng.core';\nimport {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { comparePasswords } from '@ngx-validate/core';\nimport { Store } from '@ngxs/store';\nimport snq from 'snq';\nimport { finalize } from 'rxjs/operators';\nimport { ToasterService } from '../../services/toaster.service';\n\nconst { minLength, required } = Validators;\n\n@Component({\n selector: 'abp-change-password',\n templateUrl: './change-password.component.html',\n})\nexport class ChangePasswordComponent implements OnInit, OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n modalBusy: boolean = false;\n\n constructor(private fb: FormBuilder, private store: Store, private toasterService: ToasterService) {}\n\n ngOnInit(): void {\n this.form = this.fb.group(\n {\n password: ['', required],\n newPassword: ['', required],\n repeatNewPassword: ['', required],\n },\n {\n validators: [comparePasswords(['newPassword', 'repeatNewPassword'])],\n },\n );\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n new ChangePassword({\n currentPassword: this.form.get('password').value,\n newPassword: this.form.get('newPassword').value,\n }),\n )\n .pipe(\n finalize(() => {\n this.modalBusy = false;\n }),\n )\n .subscribe({\n next: () => {\n this.visible = false;\n this.form.reset();\n },\n error: err => {\n this.toasterService.error(snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'), 'Error', {\n life: 7000,\n });\n },\n });\n }\n\n openModal() {\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { Profile, GetProfile, ProfileState, UpdateProfile } from '@abp/ng.core';\nimport { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { take, withLatestFrom } from 'rxjs/operators';\n\nconst { maxLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-profile',\n templateUrl: './profile.component.html',\n})\nexport class ProfileComponent implements OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(ProfileState.getProfile)\n profile$: Observable;\n\n form: FormGroup;\n\n modalBusy: boolean = false;\n\n constructor(private fb: FormBuilder, private store: Store) {}\n\n buildForm() {\n this.store\n .dispatch(new GetProfile())\n .pipe(\n withLatestFrom(this.profile$),\n take(1),\n )\n .subscribe(([, profile]) => {\n this.form = this.fb.group({\n userName: [profile.userName, [required, maxLength(256)]],\n email: [profile.email, [required, email, maxLength(256)]],\n name: [profile.name || '', [maxLength(64)]],\n surname: [profile.surname || '', [maxLength(64)]],\n phoneNumber: [profile.phoneNumber || '', [maxLength(16)]],\n });\n });\n }\n\n submit() {\n if (this.form.invalid) return;\n this.modalBusy = true;\n\n this.store.dispatch(new UpdateProfile(this.form.value)).subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n this.form.reset();\n });\n }\n\n openModal() {\n this.buildForm();\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { ConfigState, ABP } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-breadcrumb',\n template: `\n
      \n
    1. \n \n
    2. \n \n {{ segment | abpLocalization }}\n \n
    \n `,\n})\nexport class BreadcrumbComponent implements OnInit {\n show: boolean;\n\n segments: string[] = [];\n\n constructor(private router: Router, private store: Store) {\n this.show = !!this.store.selectSnapshot(state => state.LeptonLayoutState);\n }\n\n ngOnInit(): void {\n const splittedUrl = this.router.url.split('/').filter(chunk => chunk);\n\n const currentUrl: ABP.FullRoute = this.store.selectSnapshot(ConfigState.getRoute(splittedUrl[0]));\n this.segments.push(currentUrl.name);\n\n if (splittedUrl.length > 1) {\n const [, ...arr] = splittedUrl;\n\n let childRoute: ABP.FullRoute = currentUrl;\n for (let i = 0; i < arr.length; i++) {\n const element = arr[i];\n childRoute = childRoute.children.find(child => child.path === element);\n\n this.segments.push(childRoute.name);\n }\n }\n }\n}\n","import { CoreModule, LazyLoadService } from '@abp/ng.core';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { MessageService } from 'primeng/components/common/messageservice';\nimport { ToastModule } from 'primeng/toast';\nimport { forkJoin } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { ConfirmationComponent } from './components/confirmation/confirmation.component';\nimport { ErrorComponent } from './components/errors/error.component';\nimport { LoaderBarComponent } from './components/loader-bar/loader-bar.component';\nimport { ModalComponent } from './components/modal/modal.component';\nimport { ToastComponent } from './components/toast/toast.component';\nimport styles from './contants/styles';\nimport { ErrorHandler } from './handlers/error.handler';\nimport { ButtonComponent } from './components/button/button.component';\nimport { ValidationErrorComponent } from './components/errors/validation-error.component';\nimport { ChangePasswordComponent } from './components/change-password/change-password.component';\nimport { ProfileComponent } from './components/profile/profile.component';\nimport { BreadcrumbComponent } from './components/breadcrumb/breadcrumb.component';\n\nexport function appendScript(injector: Injector) {\n const fn = function() {\n const lazyLoadService: LazyLoadService = injector.get(LazyLoadService);\n\n return forkJoin(\n lazyLoadService.load(\n null,\n 'style',\n styles,\n 'head',\n 'afterbegin',\n ) /* lazyLoadService.load(null, 'script', scripts) */,\n ).pipe(take(1));\n };\n\n return fn;\n}\n\n@NgModule({\n imports: [\n CoreModule,\n ToastModule,\n NgxValidateCoreModule.forRoot({\n targetSelector: '.form-group',\n blueprints: {\n email: `AbpAccount::ThisFieldIsNotAValidEmailAddress.`,\n max: `AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]`,\n maxlength: `AbpAccount::ThisFieldMustBeAStringWithAMaximumLengthOf{1}[{{ requiredLength }}]`,\n min: `AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]`,\n minlength: `AbpAccount::ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf[{{ min }},{{ max }}]`,\n required: `AbpAccount::ThisFieldIsRequired.`,\n passwordMismatch: `AbpIdentity::Identity.PasswordConfirmationFailed`,\n },\n errorTemplate: ValidationErrorComponent,\n }),\n ],\n declarations: [\n ButtonComponent,\n ConfirmationComponent,\n ToastComponent,\n ModalComponent,\n ErrorComponent,\n LoaderBarComponent,\n ValidationErrorComponent,\n ChangePasswordComponent,\n ProfileComponent,\n BreadcrumbComponent,\n ],\n exports: [\n ButtonComponent,\n ConfirmationComponent,\n ToastComponent,\n ModalComponent,\n LoaderBarComponent,\n ChangePasswordComponent,\n ProfileComponent,\n BreadcrumbComponent,\n ],\n entryComponents: [ErrorComponent, ValidationErrorComponent],\n})\nexport class ThemeSharedModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: ThemeSharedModule,\n providers: [\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector, ErrorHandler],\n useFactory: appendScript,\n },\n { provide: MessageService, useClass: MessageService },\n ],\n };\n }\n}\n","import { animate, state, style, transition, trigger } from '@angular/animations';\n\nexport const fade = trigger('fade', [\n state('void', style({ opacity: 1 })),\n transition(':enter', [style({ opacity: 0 }), animate(250)]),\n transition(':leave', animate(250, style({ opacity: 0 }))),\n]);\n","import { animate, state, style, transition, trigger, query } from '@angular/animations';\nexport const slideFromBottom = trigger('routeAnimations', [\n state('void', style({ 'margin-top': '20px', opacity: '0' })),\n state('*', style({ 'margin-top': '0px', opacity: '1' })),\n transition(':enter', [animate('0.2s ease-out', style({ opacity: '1', 'margin-top': '0px' }))]),\n]);\n","import { Toaster } from './toaster';\n\nexport namespace Confirmation {\n export interface Options extends Toaster.Options {\n hideCancelBtn?: boolean;\n hideYesBtn?: boolean;\n cancelCopy?: string;\n yesCopy?: string;\n }\n}\n","export namespace Toaster {\n export interface Options {\n id?: any;\n closable?: boolean;\n life?: number;\n sticky?: boolean;\n data?: any;\n messageLocalizationParams?: string[];\n titleLocalizationParams?: string[];\n }\n\n export type Severity = 'success' | 'info' | 'warn' | 'error';\n\n export const enum Status {\n confirm = 'confirm',\n reject = 'reject',\n dismiss = 'dismiss',\n }\n}\n","import { Type } from '@angular/core';\n\nexport interface SettingTab {\n name: string;\n order: number;\n component: Type;\n requiredPolicy?: string;\n}\n"],"names":["Subject","tslib_1.__extends","Injectable","Component","router","ofActionSuccessful","StartLoader","StopLoader","filter","takeUntilDestroy","NavigationStart","NavigationEnd","NavigationError","Actions","Router","Input","EventEmitter","timer","take","fromEvent","takeUntil","debounceTime","Renderer2","Output","ContentChild","ElementRef","ViewChild","ViewChildren","store","RestOccurError","HttpErrorResponse","Navigate","RouterState","Store","ApplicationRef","ComponentFactoryResolver","RendererFactory2","Injector","ChangeDetectionStrategy","ViewEncapsulation","ErrorComponent","comparePasswords","ChangePassword","finalize","FormBuilder","required","GetProfile","withLatestFrom","UpdateProfile","tslib_1.__decorate","Select","ProfileState","Observable","ConfigState","LazyLoadService","forkJoin","APP_INITIALIZER","MessageService","NgModule","CoreModule","ToastModule","NgxValidateCoreModule","trigger","state","style","transition","animate","Toaster"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"abp-ng.theme.shared.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.theme.shared/lib/components/breadcrumb/breadcrumb.component.ts","ng://@abp/ng.theme.shared/lib/components/button/button.component.ts","ng://@abp/ng.theme.shared/lib/abstracts/toaster.ts","ng://@abp/ng.theme.shared/lib/services/toaster.service.ts","ng://@abp/ng.theme.shared/lib/components/change-password/change-password.component.ts","ng://@abp/ng.theme.shared/lib/utils/widget-utils.ts","ng://@abp/ng.theme.shared/lib/components/chart/chart.component.ts","ng://@abp/ng.theme.shared/lib/services/confirmation.service.ts","ng://@abp/ng.theme.shared/lib/components/confirmation/confirmation.component.ts","ng://@abp/ng.theme.shared/lib/components/errors/error.component.ts","ng://@abp/ng.theme.shared/lib/components/errors/validation-error.component.ts","ng://@abp/ng.theme.shared/lib/components/loader-bar/loader-bar.component.ts","ng://@abp/ng.theme.shared/lib/components/modal/modal.component.ts","ng://@abp/ng.theme.shared/lib/components/profile/profile.component.ts","ng://@abp/ng.theme.shared/lib/components/toast/toast.component.ts","ng://@abp/ng.theme.shared/lib/contants/styles.ts","ng://@abp/ng.theme.shared/lib/handlers/error.handler.ts","ng://@abp/ng.theme.shared/lib/theme-shared.module.ts","ng://@abp/ng.theme.shared/lib/animations/fade.animations.ts","ng://@abp/ng.theme.shared/lib/animations/slide.animations.ts","ng://@abp/ng.theme.shared/lib/models/confirmation.ts","ng://@abp/ng.theme.shared/lib/models/setting-management.ts","ng://@abp/ng.theme.shared/lib/models/statistics.ts","ng://@abp/ng.theme.shared/lib/models/toaster.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { ConfigState, ABP } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-breadcrumb',\n template: `\n
      \n
    1. \n \n
    2. \n \n {{ segment | abpLocalization }}\n \n
    \n `,\n})\nexport class BreadcrumbComponent implements OnInit {\n show: boolean;\n\n segments: string[] = [];\n\n constructor(private router: Router, private store: Store) {\n this.show = !!this.store.selectSnapshot(state => state.LeptonLayoutState);\n }\n\n ngOnInit(): void {\n const splittedUrl = this.router.url.split('/').filter(chunk => chunk);\n\n const currentUrl: ABP.FullRoute = this.store.selectSnapshot(ConfigState.getRoute(splittedUrl[0]));\n this.segments.push(currentUrl.name);\n\n if (splittedUrl.length > 1) {\n const [, ...arr] = splittedUrl;\n\n let childRoute: ABP.FullRoute = currentUrl;\n for (let i = 0; i < arr.length; i++) {\n const element = arr[i];\n childRoute = childRoute.children.find(child => child.path === element);\n\n this.segments.push(childRoute.name);\n }\n }\n }\n}\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'abp-button',\n template: `\n \n `,\n})\nexport class ButtonComponent {\n @Input()\n buttonClass: string = 'btn btn-primary';\n\n @Input()\n type: string = 'button';\n\n @Input()\n iconClass: string;\n\n @Input()\n loading: boolean = false;\n\n @Input()\n disabled: boolean = false;\n\n get icon(): string {\n return `${this.loading ? 'fa fa-spin fa-spinner' : this.iconClass || 'd-none'}`;\n }\n}\n","import { MessageService } from 'primeng/components/common/messageservice';\nimport { Observable, Subject } from 'rxjs';\nimport { Toaster } from '../models/toaster';\n\nexport class AbstractToaster {\n status$: Subject;\n\n key: string = 'abpToast';\n\n sticky: boolean = false;\n\n constructor(protected messageService: MessageService) {}\n info(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'info', options);\n }\n\n success(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'success', options);\n }\n\n warn(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'warn', options);\n }\n\n error(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'error', options);\n }\n\n protected show(message: string, title: string, severity: Toaster.Severity, options?: T): Observable {\n this.messageService.clear(this.key);\n\n this.messageService.add({\n severity,\n detail: message || '',\n summary: title || '',\n ...options,\n key: this.key,\n ...(typeof (options || ({} as any)).sticky === 'undefined' && { sticky: this.sticky }),\n });\n this.status$ = new Subject();\n return this.status$;\n }\n\n clear(status?: Toaster.Status) {\n this.messageService.clear(this.key);\n this.status$.next(status || Toaster.Status.dismiss);\n this.status$.complete();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToaster } from '../abstracts/toaster';\nimport { Message } from 'primeng/components/common/message';\n\n@Injectable({ providedIn: 'root' })\nexport class ToasterService extends AbstractToaster {\n addAll(messages: Message[]): void {\n this.messageService.addAll(messages.map(message => ({ key: this.key, ...message })));\n }\n}\n","import { ChangePassword } from '@abp/ng.core';\nimport {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { comparePasswords } from '@ngx-validate/core';\nimport { Store } from '@ngxs/store';\nimport snq from 'snq';\nimport { finalize } from 'rxjs/operators';\nimport { ToasterService } from '../../services/toaster.service';\n\nconst { minLength, required } = Validators;\n\n@Component({\n selector: 'abp-change-password',\n templateUrl: './change-password.component.html',\n})\nexport class ChangePasswordComponent implements OnInit, OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n modalBusy: boolean = false;\n\n constructor(private fb: FormBuilder, private store: Store, private toasterService: ToasterService) {}\n\n ngOnInit(): void {\n this.form = this.fb.group(\n {\n password: ['', required],\n newPassword: ['', required],\n repeatNewPassword: ['', required],\n },\n {\n validators: [comparePasswords(['newPassword', 'repeatNewPassword'])],\n },\n );\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n new ChangePassword({\n currentPassword: this.form.get('password').value,\n newPassword: this.form.get('newPassword').value,\n }),\n )\n .pipe(\n finalize(() => {\n this.modalBusy = false;\n }),\n )\n .subscribe({\n next: () => {\n this.visible = false;\n this.form.reset();\n },\n error: err => {\n this.toasterService.error(snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'), 'Error', {\n life: 7000,\n });\n },\n });\n }\n\n openModal() {\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { ReplaySubject } from 'rxjs';\n\nexport function getRandomBackgroundColor(count) {\n const colors = [];\n\n for (let i = 0; i < count; i++) {\n const r = ((i + 5) * (i + 5) * 474) % 255;\n const g = ((i + 5) * (i + 5) * 1600) % 255;\n const b = ((i + 5) * (i + 5) * 84065) % 255;\n colors.push('rgba(' + r + ', ' + g + ', ' + b + ', 0.7)');\n }\n\n return colors;\n}\n\nexport const chartJsLoaded$ = new ReplaySubject(1);\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n ChangeDetectorRef,\n} from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { chartJsLoaded$ } from '../../utils/widget-utils';\ndeclare const Chart: any;\n\n@Component({\n selector: 'abp-chart',\n templateUrl: './chart.component.html',\n})\nexport class ChartComponent implements AfterViewInit, OnDestroy {\n @Input() type: string;\n\n @Input() options: any = {};\n\n @Input() plugins: any[] = [];\n\n @Input() width: string;\n\n @Input() height: string;\n\n @Input() responsive: boolean = true;\n\n @Output() onDataSelect: EventEmitter = new EventEmitter();\n\n @Output() initialized = new BehaviorSubject(this);\n\n private _initialized: boolean;\n\n _data: any;\n\n chart: any;\n\n constructor(public el: ElementRef, private cdRef: ChangeDetectorRef) {}\n\n @Input() get data(): any {\n return this._data;\n }\n\n set data(val: any) {\n this._data = val;\n this.reinit();\n }\n\n get canvas() {\n return this.el.nativeElement.children[0].children[0];\n }\n\n get base64Image() {\n return this.chart.toBase64Image();\n }\n\n ngAfterViewInit() {\n chartJsLoaded$.subscribe(() => {\n try {\n Chart;\n } catch (error) {\n console.error(`Chart is not found. Import the Chart from app.module like shown below:\n import('chart.js');\n `);\n return;\n }\n\n this.initChart();\n this._initialized = true;\n });\n }\n\n onCanvasClick = event => {\n if (this.chart) {\n let element = this.chart.getElementAtEvent(event);\n let dataset = this.chart.getDatasetAtEvent(event);\n if (element && element[0] && dataset) {\n this.onDataSelect.emit({ originalEvent: event, element: element[0], dataset: dataset });\n }\n }\n };\n\n initChart = () => {\n let opts = this.options || {};\n opts.responsive = this.responsive;\n\n // allows chart to resize in responsive mode\n if (opts.responsive && (this.height || this.width)) {\n opts.maintainAspectRatio = false;\n }\n\n this.chart = new Chart(this.el.nativeElement.children[0].children[0], {\n type: this.type,\n data: this.data,\n options: this.options,\n plugins: this.plugins,\n });\n\n this.cdRef.detectChanges();\n };\n\n generateLegend = () => {\n if (this.chart) {\n return this.chart.generateLegend();\n }\n };\n\n refresh = () => {\n if (this.chart) {\n this.chart.update();\n this.cdRef.detectChanges();\n }\n };\n\n reinit = () => {\n if (this.chart) {\n this.chart.destroy();\n this.initChart();\n }\n };\n\n ngOnDestroy() {\n if (this.chart) {\n this.chart.destroy();\n this._initialized = false;\n this.chart = null;\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToaster } from '../abstracts/toaster';\nimport { Confirmation } from '../models/confirmation';\n\n@Injectable({ providedIn: 'root' })\nexport class ConfirmationService extends AbstractToaster {\n key: string = 'abpConfirmation';\n\n sticky: boolean = true;\n}\n","import { Component } from '@angular/core';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { Toaster } from '../../models/toaster';\n\n@Component({\n selector: 'abp-confirmation',\n template: `\n \n \n \n
    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n `,\n})\nexport class ConfirmationComponent {\n confirm = Toaster.Status.confirm;\n reject = Toaster.Status.reject;\n dismiss = Toaster.Status.dismiss;\n\n constructor(private confirmationService: ConfirmationService) {}\n\n close(status: Toaster.Status) {\n this.confirmationService.clear(status);\n }\n}\n","import { Component, Renderer2, ElementRef } from '@angular/core';\n\n@Component({\n selector: 'abp-error',\n template: `\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n `,\n styleUrls: ['error.component.scss'],\n})\nexport class ErrorComponent {\n title = 'Oops!';\n\n details = 'Sorry, an error has occured.';\n\n renderer: Renderer2;\n\n elementRef: ElementRef;\n\n host: any;\n\n destroy() {\n this.renderer.removeChild(this.host, this.elementRef.nativeElement);\n }\n}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { Validation, ValidationErrorComponent as ErrorComponent } from '@ngx-validate/core';\n\n@Component({\n selector: 'abp-validation-error',\n template: `\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class ValidationErrorComponent extends ErrorComponent {\n get abpErrors(): Validation.Error[] & { interpoliteParams?: string[] } {\n if (!this.errors || !this.errors.length) return [];\n\n return this.errors.map(error => {\n if (!error.message) return error;\n\n const index = error.message.indexOf('[');\n\n if (index > -1) {\n return {\n ...error,\n message: error.message.slice(0, index),\n interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(','),\n };\n }\n\n return error;\n });\n }\n}\n","import { StartLoader, StopLoader } from '@abp/ng.core';\nimport { Component, Input, OnDestroy } from '@angular/core';\nimport { NavigationEnd, NavigationStart, Router, NavigationError } from '@angular/router';\nimport { takeUntilDestroy } from '@ngx-validate/core';\nimport { Actions, ofActionSuccessful } from '@ngxs/store';\nimport { filter } from 'rxjs/operators';\n\n@Component({\n selector: 'abp-loader-bar',\n template: `\n
    \n
    \n
    \n `,\n styleUrls: ['./loader-bar.component.scss'],\n})\nexport class LoaderBarComponent implements OnDestroy {\n @Input()\n containerClass: string = 'abp-loader-bar';\n\n @Input()\n progressClass: string = 'abp-progress';\n\n @Input()\n isLoading: boolean = false;\n\n @Input()\n filter = (action: StartLoader | StopLoader) => action.payload.url.indexOf('openid-configuration') < 0;\n\n progressLevel: number = 0;\n\n interval: any;\n\n constructor(private actions: Actions, private router: Router) {\n actions\n .pipe(\n ofActionSuccessful(StartLoader, StopLoader),\n filter(this.filter),\n takeUntilDestroy(this),\n )\n .subscribe(action => {\n if (action instanceof StartLoader) this.startLoading();\n else this.stopLoading();\n });\n\n router.events\n .pipe(\n filter(\n event =>\n event instanceof NavigationStart || event instanceof NavigationEnd || event instanceof NavigationError,\n ),\n takeUntilDestroy(this),\n )\n .subscribe(event => {\n if (event instanceof NavigationStart) this.startLoading();\n else this.stopLoading();\n });\n }\n\n ngOnDestroy() {}\n\n startLoading() {\n this.isLoading = true;\n const interval = setInterval(() => {\n if (this.progressLevel < 75) {\n this.progressLevel += Math.random() * 10;\n } else if (this.progressLevel < 90) {\n this.progressLevel += 0.4;\n } else if (this.progressLevel < 100) {\n this.progressLevel += 0.1;\n } else {\n clearInterval(interval);\n }\n }, 300);\n\n this.interval = interval;\n }\n\n stopLoading() {\n clearInterval(this.interval);\n this.progressLevel = 100;\n this.isLoading = false;\n\n setTimeout(() => {\n this.progressLevel = 0;\n }, 800);\n }\n}\n","import {\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { fromEvent, Subject, timer } from 'rxjs';\nimport { filter, take, takeUntil, debounceTime } from 'rxjs/operators';\nimport { Toaster } from '../../models/toaster';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { ButtonComponent } from '../button/button.component';\n\nexport type ModalSize = 'sm' | 'md' | 'lg' | 'xl';\n\nconst ANIMATION_TIMEOUT = 200;\n\n@Component({\n selector: 'abp-modal',\n templateUrl: './modal.component.html',\n})\nexport class ModalComponent implements OnDestroy {\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n set visible(value: boolean) {\n if (typeof value !== 'boolean') return;\n\n if (!this.modalContent) {\n if (value) {\n setTimeout(() => {\n this.showModal = value;\n this.visible = value;\n }, 0);\n }\n return;\n }\n\n if (value) {\n this.setVisible(value);\n this.listen();\n } else {\n this.closable = false;\n this.renderer.addClass(this.modalContent.nativeElement, 'fade-out-top');\n setTimeout(() => {\n this.setVisible(value);\n this.ngOnDestroy();\n }, ANIMATION_TIMEOUT - 10);\n }\n }\n\n @Input()\n get busy(): boolean {\n return this._busy;\n }\n set busy(value: boolean) {\n if (this.abpSubmit && this.abpSubmit instanceof ButtonComponent) {\n this.abpSubmit.loading = value;\n }\n\n this._busy = value;\n }\n\n @Input() centered: boolean = false;\n\n @Input() modalClass: string = '';\n\n @Input() size: ModalSize = 'lg';\n\n @Input() height: number;\n\n @Input() minHeight: number;\n\n @Output() visibleChange = new EventEmitter();\n\n @Output() init = new EventEmitter();\n\n @ContentChild('abpHeader', { static: false }) abpHeader: TemplateRef;\n\n @ContentChild('abpBody', { static: false }) abpBody: TemplateRef;\n\n @ContentChild('abpFooter', { static: false }) abpFooter: TemplateRef;\n\n @ContentChild('abpClose', { static: false, read: ElementRef }) abpClose: ElementRef;\n\n @ContentChild(ButtonComponent, { static: false, read: ButtonComponent }) abpSubmit: ButtonComponent;\n\n @ViewChild('abpModalContent', { static: false }) modalContent: ElementRef;\n\n @ViewChildren('abp-button') abpButtons;\n\n _visible: boolean = false;\n\n _busy: boolean = false;\n\n showModal: boolean = false;\n\n isOpenConfirmation: boolean = false;\n\n closable: boolean = false;\n\n destroy$ = new Subject();\n\n constructor(private renderer: Renderer2, private confirmationService: ConfirmationService) {}\n\n ngOnDestroy(): void {\n this.destroy$.next();\n }\n\n setVisible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n this.showModal = value;\n\n if (value) {\n timer(ANIMATION_TIMEOUT + 100)\n .pipe(take(1))\n .subscribe(_ => (this.closable = true));\n\n this.renderer.addClass(document.body, 'modal-open');\n } else {\n this.closable = false;\n this.renderer.removeClass(document.body, 'modal-open');\n }\n }\n\n listen() {\n fromEvent(document, 'keyup')\n .pipe(\n takeUntil(this.destroy$),\n debounceTime(150),\n filter((key: KeyboardEvent) => key && key.code === 'Escape' && this.closable),\n )\n .subscribe(_ => {\n this.close();\n });\n\n setTimeout(() => {\n if (!this.abpClose) return;\n fromEvent(this.abpClose.nativeElement, 'click')\n .pipe(\n takeUntil(this.destroy$),\n filter(() => !!(this.closable && this.modalContent)),\n )\n .subscribe(() => this.close());\n }, 0);\n\n this.init.emit();\n }\n\n close() {\n if (!this.closable || this.busy) return;\n\n const nodes = getFlatNodes(\n (this.modalContent.nativeElement.querySelector('#abp-modal-body') as HTMLElement).childNodes,\n );\n\n if (hasNgDirty(nodes)) {\n if (this.isOpenConfirmation) return;\n\n this.isOpenConfirmation = true;\n this.confirmationService\n .warn('AbpAccount::AreYouSureYouWantToCancelEditingWarningMessage', 'AbpAccount::AreYouSure')\n .subscribe((status: Toaster.Status) => {\n timer(ANIMATION_TIMEOUT).subscribe(() => {\n this.isOpenConfirmation = false;\n });\n\n if (status === Toaster.Status.confirm) {\n this.visible = false;\n }\n });\n } else {\n this.visible = false;\n }\n }\n}\n\nfunction getFlatNodes(nodes: NodeList): HTMLElement[] {\n return Array.from(nodes).reduce(\n (acc, val) => [...acc, ...(val.childNodes && val.childNodes.length ? getFlatNodes(val.childNodes) : [val])],\n [],\n );\n}\n\nfunction hasNgDirty(nodes: HTMLElement[]) {\n return nodes.findIndex(node => (node.className || '').indexOf('ng-dirty') > -1) > -1;\n}\n","import { Profile, GetProfile, ProfileState, UpdateProfile } from '@abp/ng.core';\nimport { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { take, withLatestFrom } from 'rxjs/operators';\n\nconst { maxLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-profile',\n templateUrl: './profile.component.html',\n})\nexport class ProfileComponent implements OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(ProfileState.getProfile)\n profile$: Observable;\n\n form: FormGroup;\n\n modalBusy: boolean = false;\n\n constructor(private fb: FormBuilder, private store: Store) {}\n\n buildForm() {\n this.store\n .dispatch(new GetProfile())\n .pipe(\n withLatestFrom(this.profile$),\n take(1),\n )\n .subscribe(([, profile]) => {\n this.form = this.fb.group({\n userName: [profile.userName, [required, maxLength(256)]],\n email: [profile.email, [required, email, maxLength(256)]],\n name: [profile.name || '', [maxLength(64)]],\n surname: [profile.surname || '', [maxLength(64)]],\n phoneNumber: [profile.phoneNumber || '', [maxLength(16)]],\n });\n });\n }\n\n submit() {\n if (this.form.invalid) return;\n this.modalBusy = true;\n\n this.store.dispatch(new UpdateProfile(this.form.value)).subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n this.form.reset();\n });\n }\n\n openModal() {\n this.buildForm();\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-toast',\n template: `\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n `,\n})\nexport class ToastComponent {}\n","export default `\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.navbar .dropdown-menu {\n min-width: 215px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis-inline {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-ellipsis {\n overflow: hidden !important;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-toast .ui-toast-message {\n box-sizing: border-box !important;\n border: 2px solid transparent !important;\n border-radius: 4px !important;\n background-color: #f4f4f7 !important;\n color: #1b1d29 !important;\n}\n\n.abp-toast .ui-toast-message-content {\n padding: 10px !important;\n}\n\n.abp-toast .ui-toast-message-content .ui-toast-icon {\n top: 0 !important;\n left: 0 !important;\n padding: 10px !important;\n}\n\n.abp-toast .ui-toast-summary {\n margin: 0 !important;\n font-weight: 700 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-error {\n border-color: #ba1659 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-error .ui-toast-message-content .ui-toast-icon {\n color: #ba1659 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-warning {\n border-color: #ed5d98 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-warning .ui-toast-message-content .ui-toast-icon {\n color: #ed5d98 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-success {\n border-color: #1c9174 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-success .ui-toast-message-content .ui-toast-icon {\n color: #1c9174 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-info {\n border-color: #fccb31 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-info .ui-toast-message-content .ui-toast-icon {\n color: #fccb31 !important;\n}\n\n.abp-confirm .ui-toast-message {\n box-sizing: border-box !important;\n padding: 0px !important;\n border:0 none !important;\n border-radius: 4px !important;\n background-color: #fff !important;\n color: rgba(0, 0, 0, .65) !important;\n font-family: \"Poppins\", sans-serif;\n text-align: center !important;\n}\n\n.abp-confirm .ui-toast-message-content {\n padding: 0px !important;\n}\n\n.abp-confirm .abp-confirm-icon {\n margin: 32px 50px 5px !important;\n color: #f8bb86 !important;\n font-size: 52px !important;\n}\n\n.abp-confirm .ui-toast-close-icon {\n display: none !important;\n}\n\n.abp-confirm .abp-confirm-summary {\n display: block !important;\n margin-bottom: 13px !important;\n padding: 13px 16px 0px !important;\n font-weight: 600 !important;\n font-size: 18px !important;\n}\n\n.abp-confirm .abp-confirm-body {\n display: inline-block !important;\n padding: 0px 10px !important;\n}\n\n.abp-confirm .abp-confirm-footer {\n display: block !important;\n margin-top: 30px !important;\n padding: 16px !important;\n background-color: #f4f4f7 !important;\n text-align: right !important;\n}\n\n.abp-confirm .abp-confirm-footer .btn {\n margin-left: 10px !important;\n}\n\n/* {\n const { payload: err = {} as HttpErrorResponse | any } = res;\n const body = snq(() => (err as HttpErrorResponse).error.error, DEFAULTS.defaultError.message);\n\n if (err instanceof HttpErrorResponse && err.headers.get('_AbpErrorFormat')) {\n const confirmation$ = this.showError(null, null, body);\n\n if (err.status === 401) {\n confirmation$.subscribe(() => {\n this.navigateToLogin();\n });\n }\n } else {\n switch ((err as HttpErrorResponse).status) {\n case 401:\n this.showError(DEFAULTS.defaultError401.details, DEFAULTS.defaultError401.message).subscribe(() =>\n this.navigateToLogin(),\n );\n break;\n case 403:\n this.createErrorComponent({\n title: DEFAULTS.defaultError403.message,\n details: DEFAULTS.defaultError403.details,\n });\n break;\n case 404:\n this.showError(DEFAULTS.defaultError404.details, DEFAULTS.defaultError404.message);\n break;\n case 500:\n this.createErrorComponent({\n title: '500',\n details: 'AbpAccount::InternalServerErrorMessage',\n });\n break;\n case 0:\n if ((err as HttpErrorResponse).statusText === 'Unknown Error') {\n this.createErrorComponent({\n title: 'Unknown Error',\n details: 'AbpAccount::InternalServerErrorMessage',\n });\n }\n break;\n default:\n this.showError(DEFAULTS.defaultError.details, DEFAULTS.defaultError.message);\n break;\n }\n }\n });\n }\n\n private showError(message?: string, title?: string, body?: any): Observable {\n if (body) {\n if (body.details) {\n message = body.details;\n title = body.message;\n } else {\n message = body.message || DEFAULTS.defaultError.message;\n }\n }\n\n return this.confirmationService.error(message, title, {\n hideCancelBtn: true,\n yesCopy: 'OK',\n });\n }\n\n private navigateToLogin() {\n this.store.dispatch(\n new Navigate(['/account/login'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n }\n\n createErrorComponent(instance: Partial) {\n const renderer = this.rendererFactory.createRenderer(null, null);\n const host = renderer.selectRootElement('app-root', true);\n\n const componentRef = this.cfRes.resolveComponentFactory(ErrorComponent).create(this.injector);\n\n for (const key in componentRef.instance) {\n if (componentRef.instance.hasOwnProperty(key)) {\n componentRef.instance[key] = instance[key];\n }\n }\n\n this.appRef.attachView(componentRef.hostView);\n renderer.appendChild(host, (componentRef.hostView as EmbeddedViewRef).rootNodes[0]);\n\n componentRef.instance.renderer = renderer;\n componentRef.instance.elementRef = componentRef.location;\n componentRef.instance.host = host;\n }\n}\n","import { CoreModule, LazyLoadService } from '@abp/ng.core';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { MessageService } from 'primeng/components/common/messageservice';\nimport { ToastModule } from 'primeng/toast';\nimport { forkJoin } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { BreadcrumbComponent } from './components/breadcrumb/breadcrumb.component';\nimport { ButtonComponent } from './components/button/button.component';\nimport { ChangePasswordComponent } from './components/change-password/change-password.component';\nimport { ChartComponent } from './components/chart/chart.component';\nimport { ConfirmationComponent } from './components/confirmation/confirmation.component';\nimport { ErrorComponent } from './components/errors/error.component';\nimport { ValidationErrorComponent } from './components/errors/validation-error.component';\nimport { LoaderBarComponent } from './components/loader-bar/loader-bar.component';\nimport { ModalComponent } from './components/modal/modal.component';\nimport { ProfileComponent } from './components/profile/profile.component';\nimport { ToastComponent } from './components/toast/toast.component';\nimport styles from './contants/styles';\nimport { ErrorHandler } from './handlers/error.handler';\nimport { chartJsLoaded$ } from './utils/widget-utils';\n\nexport function appendScript(injector: Injector) {\n const fn = function() {\n import('chart.js').then(() => chartJsLoaded$.next(true));\n\n const lazyLoadService: LazyLoadService = injector.get(LazyLoadService);\n\n return forkJoin(\n lazyLoadService.load(\n null,\n 'style',\n styles,\n 'head',\n 'afterbegin',\n ) /* lazyLoadService.load(null, 'script', scripts) */,\n ).pipe(take(1));\n };\n\n return fn;\n}\n\n@NgModule({\n imports: [\n CoreModule,\n ToastModule,\n NgxValidateCoreModule.forRoot({\n targetSelector: '.form-group',\n blueprints: {\n email: `AbpAccount::ThisFieldIsNotAValidEmailAddress.`,\n max: `AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]`,\n maxlength: `AbpAccount::ThisFieldMustBeAStringWithAMaximumLengthOf{1}[{{ requiredLength }}]`,\n min: `AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]`,\n minlength: `AbpAccount::ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf[{{ min }},{{ max }}]`,\n required: `AbpAccount::ThisFieldIsRequired.`,\n passwordMismatch: `AbpIdentity::Identity.PasswordConfirmationFailed`,\n },\n errorTemplate: ValidationErrorComponent,\n }),\n ],\n declarations: [\n BreadcrumbComponent,\n ButtonComponent,\n ChangePasswordComponent,\n ChartComponent,\n ConfirmationComponent,\n ErrorComponent,\n LoaderBarComponent,\n ModalComponent,\n ProfileComponent,\n ToastComponent,\n ValidationErrorComponent,\n ],\n exports: [\n BreadcrumbComponent,\n ButtonComponent,\n ChangePasswordComponent,\n ChartComponent,\n ConfirmationComponent,\n LoaderBarComponent,\n ModalComponent,\n ProfileComponent,\n ToastComponent,\n ],\n entryComponents: [ErrorComponent, ValidationErrorComponent],\n})\nexport class ThemeSharedModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: ThemeSharedModule,\n providers: [\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector, ErrorHandler],\n useFactory: appendScript,\n },\n { provide: MessageService, useClass: MessageService },\n ],\n };\n }\n}\n","import { animate, state, style, transition, trigger } from '@angular/animations';\n\nexport const fade = trigger('fade', [\n state('void', style({ opacity: 1 })),\n transition(':enter', [style({ opacity: 0 }), animate(250)]),\n transition(':leave', animate(250, style({ opacity: 0 }))),\n]);\n","import { animate, state, style, transition, trigger, query } from '@angular/animations';\nexport const slideFromBottom = trigger('routeAnimations', [\n state('void', style({ 'margin-top': '20px', opacity: '0' })),\n state('*', style({ 'margin-top': '0px', opacity: '1' })),\n transition(':enter', [animate('0.2s ease-out', style({ opacity: '1', 'margin-top': '0px' }))]),\n]);\n","import { Toaster } from './toaster';\n\nexport namespace Confirmation {\n export interface Options extends Toaster.Options {\n hideCancelBtn?: boolean;\n hideYesBtn?: boolean;\n cancelCopy?: string;\n yesCopy?: string;\n }\n}\n","export interface SettingTab {\n name: string;\n order: number;\n requiredPolicy?: string;\n url?: string;\n}\n","export namespace Statistics {\n export interface Response {\n data: Data;\n }\n\n export interface Data {\n [key: string]: number;\n }\n\n export interface Filter {\n startDate: string | Date;\n endDate: string | Date;\n }\n}\n","export namespace Toaster {\n export interface Options {\n id?: any;\n closable?: boolean;\n life?: number;\n sticky?: boolean;\n data?: any;\n messageLocalizationParams?: string[];\n titleLocalizationParams?: string[];\n }\n\n export type Severity = 'success' | 'info' | 'warn' | 'error';\n\n export const enum Status {\n confirm = 'confirm',\n reject = 'reject',\n dismiss = 'dismiss',\n }\n}\n"],"names":["ConfigState","Component","Router","Store","Input","Subject","tslib_1.__extends","Injectable","EventEmitter","comparePasswords","ChangePassword","finalize","FormBuilder","Output","ViewChild","ReplaySubject","BehaviorSubject","ElementRef","ChangeDetectorRef","ChangeDetectionStrategy","ViewEncapsulation","ErrorComponent","router","ofActionSuccessful","StartLoader","StopLoader","filter","takeUntilDestroy","NavigationStart","NavigationEnd","NavigationError","Actions","timer","take","fromEvent","takeUntil","debounceTime","Renderer2","ContentChild","ViewChildren","required","GetProfile","withLatestFrom","UpdateProfile","tslib_1.__decorate","Select","ProfileState","Observable","store","RestOccurError","HttpErrorResponse","Navigate","RouterState","ApplicationRef","ComponentFactoryResolver","RendererFactory2","Injector","LazyLoadService","forkJoin","APP_INITIALIZER","MessageService","NgModule","CoreModule","ToastModule","NgxValidateCoreModule","trigger","state","style","transition","animate","Toaster"],"mappings":"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"} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.min.js b/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.min.js index 430c584130..a5a24e220f 100644 --- a/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.min.js +++ b/npm/ng-packs/dist/theme-shared/bundles/abp-ng.theme.shared.umd.min.js @@ -1,2 +1,2 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@abp/ng.core"),require("@angular/core"),require("@ngx-validate/core"),require("primeng/components/common/messageservice"),require("primeng/toast"),require("rxjs"),require("rxjs/operators"),require("@angular/router"),require("@ngxs/store"),require("@angular/common/http"),require("@ngxs/router-plugin"),require("snq"),require("@angular/forms"),require("@angular/animations")):"function"==typeof define&&define.amd?define("@abp/ng.theme.shared",["exports","@abp/ng.core","@angular/core","@ngx-validate/core","primeng/components/common/messageservice","primeng/toast","rxjs","rxjs/operators","@angular/router","@ngxs/store","@angular/common/http","@ngxs/router-plugin","snq","@angular/forms","@angular/animations"],t):t(((e=e||self).abp=e.abp||{},e.abp.ng=e.abp.ng||{},e.abp.ng.theme=e.abp.ng.theme||{},e.abp.ng.theme.shared={}),e.ng_core,e.ng.core,e.core$1,e.messageservice,e.toast,e.rxjs,e.rxjs.operators,e.ng.router,e.store,e.ng.common.http,e.routerPlugin,e.snq,e.ng.forms,e.ng.animations)}(this,function(e,t,n,o,r,i,a,s,l,p,c,u,d,m,f){"use strict";d=d&&d.hasOwnProperty("default")?d.default:d;var b=function(e,t){return(b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function h(e,t){function n(){this.constructor=e}b(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var g=function(){return(g=Object.assign||function(e){for(var t,n=1,o=arguments.length;n0)&&!(o=i.next()).done;)a.push(o.value)}catch(e){r={error:e}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a}var C=function(){function e(e){this.messageService=e,this.key="abpToast",this.sticky=!1}return e.prototype.info=function(e,t,n){return this.show(e,t,"info",n)},e.prototype.success=function(e,t,n){return this.show(e,t,"success",n)},e.prototype.warn=function(e,t,n){return this.show(e,t,"warn",n)},e.prototype.error=function(e,t,n){return this.show(e,t,"error",n)},e.prototype.show=function(e,t,n,o){return this.messageService.clear(this.key),this.messageService.add(g({severity:n,detail:e||"",summary:t||""},o,{key:this.key},void 0===(o||{}).sticky&&{sticky:this.sticky})),this.status$=new a.Subject,this.status$},e.prototype.clear=function(e){this.messageService.clear(this.key),this.status$.next(e||"dismiss"),this.status$.complete()},e}();var w=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.key="abpConfirmation",t.sticky=!0,t}return h(t,e),t.decorators=[{type:n.Injectable,args:[{providedIn:"root"}]}],t.ngInjectableDef=n.ɵɵdefineInjectable({factory:function(){return new t(n.ɵɵinject(r.MessageService))},token:t,providedIn:"root"}),t}(C);var I=function(){function e(e){this.confirmationService=e,this.confirm="confirm",this.reject="reject",this.dismiss="dismiss"}return e.prototype.close=function(e){this.confirmationService.clear(e)},e.decorators=[{type:n.Component,args:[{selector:"abp-confirmation",template:'\n \n \n \n \n\n \n \n \n '}]}],e.ctorParameters=function(){return[{type:w}]},e}();var L=function(){function e(){this.title="Oops!",this.details="Sorry, an error has occured."}return e.prototype.destroy=function(){this.renderer.removeChild(this.host,this.elementRef.nativeElement)},e.decorators=[{type:n.Component,args:[{selector:"abp-error",template:'\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n ',styles:[".error{position:fixed;top:0;background-color:#fff;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}"]}]}],e}();var S=function(){function e(e,n){var r=this;this.actions=e,this.router=n,this.containerClass="abp-loader-bar",this.progressClass="abp-progress",this.isLoading=!1,this.filter=function(e){return e.payload.url.indexOf("openid-configuration")<0},this.progressLevel=0,e.pipe(p.ofActionSuccessful(t.StartLoader,t.StopLoader),s.filter(this.filter),o.takeUntilDestroy(this)).subscribe(function(e){e instanceof t.StartLoader?r.startLoading():r.stopLoading()}),n.events.pipe(s.filter(function(e){return e instanceof l.NavigationStart||e instanceof l.NavigationEnd||e instanceof l.NavigationError}),o.takeUntilDestroy(this)).subscribe(function(e){e instanceof l.NavigationStart?r.startLoading():r.stopLoading()})}return e.prototype.ngOnDestroy=function(){},e.prototype.startLoading=function(){var e=this;this.isLoading=!0;var t=setInterval(function(){e.progressLevel<75?e.progressLevel+=10*Math.random():e.progressLevel<90?e.progressLevel+=.4:e.progressLevel<100?e.progressLevel+=.1:clearInterval(t)},300);this.interval=t},e.prototype.stopLoading=function(){var e=this;clearInterval(this.interval),this.progressLevel=100,this.isLoading=!1,setTimeout(function(){e.progressLevel=0},800)},e.decorators=[{type:n.Component,args:[{selector:"abp-loader-bar",template:'\n
    \n
    \n
    \n ',styles:[".abp-loader-bar{left:0;opacity:0;position:fixed;top:0;transition:opacity .4s linear .4s;z-index:99999}.abp-loader-bar.is-loading{opacity:1;transition:none}.abp-loader-bar .abp-progress{background:#77b6ff;box-shadow:0 0 10px rgba(119,182,255,.7);height:2px;left:0;position:fixed;top:0;transition:width .4s}"]}]}],e.ctorParameters=function(){return[{type:p.Actions},{type:l.Router}]},e.propDecorators={containerClass:[{type:n.Input}],progressClass:[{type:n.Input}],isLoading:[{type:n.Input}],filter:[{type:n.Input}]},e}();var A=function(){function e(){this.buttonClass="btn btn-primary",this.type="button",this.loading=!1,this.disabled=!1}return Object.defineProperty(e.prototype,"icon",{get:function(){return""+(this.loading?"fa fa-spin fa-spinner":this.iconClass||"d-none")},enumerable:!0,configurable:!0}),e.decorators=[{type:n.Component,args:[{selector:"abp-button",template:'\n \n '}]}],e.propDecorators={buttonClass:[{type:n.Input}],type:[{type:n.Input}],iconClass:[{type:n.Input}],loading:[{type:n.Input}],disabled:[{type:n.Input}]},e}();var x=function(){function e(e,t){this.renderer=e,this.confirmationService=t,this.centered=!1,this.modalClass="",this.size="lg",this.visibleChange=new n.EventEmitter,this.init=new n.EventEmitter,this._visible=!1,this._busy=!1,this.showModal=!1,this.isOpenConfirmation=!1,this.closable=!1,this.destroy$=new a.Subject}return Object.defineProperty(e.prototype,"visible",{get:function(){return this._visible},set:function(e){var t=this;"boolean"==typeof e&&(this.modalContent?e?(this.setVisible(e),this.listen()):(this.closable=!1,this.renderer.addClass(this.modalContent.nativeElement,"fade-out-top"),setTimeout(function(){t.setVisible(e),t.ngOnDestroy()},190)):e&&setTimeout(function(){t.showModal=e,t.visible=e},0))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"busy",{get:function(){return this._busy},set:function(e){this.abpSubmit&&this.abpSubmit instanceof A&&(this.abpSubmit.loading=e),this._busy=e},enumerable:!0,configurable:!0}),e.prototype.ngOnDestroy=function(){this.destroy$.next()},e.prototype.setVisible=function(e){var t=this;this._visible=e,this.visibleChange.emit(e),this.showModal=e,e?a.timer(300).pipe(s.take(1)).subscribe(function(e){return t.closable=!0}):this.closable=!1},e.prototype.listen=function(){var e=this;a.fromEvent(document,"keyup").pipe(s.takeUntil(this.destroy$),s.debounceTime(150),s.filter(function(t){return t&&"Escape"===t.code&&e.closable})).subscribe(function(t){e.close()}),setTimeout(function(){e.abpClose&&a.fromEvent(e.abpClose.nativeElement,"click").pipe(s.takeUntil(e.destroy$),s.filter(function(){return!(!e.closable||!e.modalContent)})).subscribe(function(){return e.close()})},0),this.init.emit()},e.prototype.close=function(){var e=this;if(this.closable&&!this.busy)if(function(e){return e.findIndex(function(e){return(e.className||"").indexOf("ng-dirty")>-1})>-1}(function e(t){return Array.from(t).reduce(function(t,n){return function(){for(var e=[],t=0;t\n \n \n \n \n\n \n\n'}]}],e.ctorParameters=function(){return[{type:n.Renderer2},{type:w}]},e.propDecorators={visible:[{type:n.Input}],busy:[{type:n.Input}],centered:[{type:n.Input}],modalClass:[{type:n.Input}],size:[{type:n.Input}],height:[{type:n.Input}],minHeight:[{type:n.Input}],visibleChange:[{type:n.Output}],init:[{type:n.Output}],abpHeader:[{type:n.ContentChild,args:["abpHeader",{static:!1}]}],abpBody:[{type:n.ContentChild,args:["abpBody",{static:!1}]}],abpFooter:[{type:n.ContentChild,args:["abpFooter",{static:!1}]}],abpClose:[{type:n.ContentChild,args:["abpClose",{static:!1,read:n.ElementRef}]}],abpSubmit:[{type:n.ContentChild,args:[A,{static:!1,read:A}]}],modalContent:[{type:n.ViewChild,args:["abpModalContent",{static:!1}]}],abpButtons:[{type:n.ViewChildren,args:["abp-button"]}]},e}();var k=function(){function e(){}return e.decorators=[{type:n.Component,args:[{selector:"abp-toast",template:'\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n '}]}],e}(),E="\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.navbar .dropdown-menu {\n min-width: 215px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis-inline {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-ellipsis {\n overflow: hidden !important;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* -1?g({},e,{message:e.message.slice(0,t),interpoliteParams:e.message.slice(t+1,e.message.length-1).split(",")}):e}):[]},enumerable:!0,configurable:!0}),t.decorators=[{type:n.Component,args:[{selector:"abp-validation-error",template:'\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n ',changeDetection:n.ChangeDetectionStrategy.OnPush,encapsulation:n.ViewEncapsulation.None}]}],t}(o.ValidationErrorComponent),N=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return h(t,e),t.prototype.addAll=function(e){var t=this;this.messageService.addAll(e.map(function(e){return g({key:t.key},e)}))},t.decorators=[{type:n.Injectable,args:[{providedIn:"root"}]}],t.ngInjectableDef=n.ɵɵdefineInjectable({factory:function(){return new t(n.ɵɵinject(r.MessageService))},token:t,providedIn:"root"}),t}(C),z=(m.Validators.minLength,m.Validators.required),T=function(){function e(e,t,o){this.fb=e,this.store=t,this.toasterService=o,this.visibleChange=new n.EventEmitter,this.modalBusy=!1}return Object.defineProperty(e.prototype,"visible",{get:function(){return this._visible},set:function(e){this._visible=e,this.visibleChange.emit(e)},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this.form=this.fb.group({password:["",z],newPassword:["",z],repeatNewPassword:["",z]},{validators:[o.comparePasswords(["newPassword","repeatNewPassword"])]})},e.prototype.onSubmit=function(){var e=this;this.form.invalid||(this.modalBusy=!0,this.store.dispatch(new t.ChangePassword({currentPassword:this.form.get("password").value,newPassword:this.form.get("newPassword").value})).pipe(s.finalize(function(){e.modalBusy=!1})).subscribe({next:function(){e.visible=!1,e.form.reset()},error:function(t){e.toasterService.error(d(function(){return t.error.error.message},"AbpAccount::DefaultErrorMessage"),"Error",{life:7e3})}}))},e.prototype.openModal=function(){this.visible=!0},e.prototype.ngOnChanges=function(e){var t=e.visible;t&&(t.currentValue?this.openModal():!1===t.currentValue&&this.visible&&(this.visible=!1))},e.decorators=[{type:n.Component,args:[{selector:"abp-change-password",template:'\n \n

    {{ \'AbpIdentity::ChangePassword\' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ \'AbpIdentity::Save\' | abpLocalization }}\n \n
    \n'}]}],e.ctorParameters=function(){return[{type:m.FormBuilder},{type:p.Store},{type:N}]},e.propDecorators={visible:[{type:n.Input}],visibleChange:[{type:n.Output}],modalContent:[{type:n.ViewChild,args:["modalContent",{static:!1}]}]},e}();var M=m.Validators.maxLength,R=m.Validators.required,B=m.Validators.email,F=function(){function e(e,t){this.fb=e,this.store=t,this.visibleChange=new n.EventEmitter,this.modalBusy=!1}return Object.defineProperty(e.prototype,"visible",{get:function(){return this._visible},set:function(e){this._visible=e,this.visibleChange.emit(e)},enumerable:!0,configurable:!0}),e.prototype.buildForm=function(){var e=this;this.store.dispatch(new t.GetProfile).pipe(s.withLatestFrom(this.profile$),s.take(1)).subscribe(function(t){var n=v(t,2)[1];e.form=e.fb.group({userName:[n.userName,[R,M(256)]],email:[n.email,[R,B,M(256)]],name:[n.name||"",[M(64)]],surname:[n.surname||"",[M(64)]],phoneNumber:[n.phoneNumber||"",[M(16)]]})})},e.prototype.submit=function(){var e=this;this.form.invalid||(this.modalBusy=!0,this.store.dispatch(new t.UpdateProfile(this.form.value)).subscribe(function(){e.modalBusy=!1,e.visible=!1,e.form.reset()}))},e.prototype.openModal=function(){this.buildForm(),this.visible=!0},e.prototype.ngOnChanges=function(e){var t=e.visible;t&&(t.currentValue?this.openModal():!1===t.currentValue&&this.visible&&(this.visible=!1))},e.decorators=[{type:n.Component,args:[{selector:"abp-profile",template:'\n \n

    {{ \'AbpIdentity::PersonalInfo\' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ \'AbpIdentity::Save\' | abpLocalization }}\n \n
    \n'}]}],e.ctorParameters=function(){return[{type:m.FormBuilder},{type:p.Store}]},e.propDecorators={visible:[{type:n.Input}],visibleChange:[{type:n.Output}]},function(e,t,n,o){var r,i=arguments.length,a=i<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,o);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(i<3?r(a):i>3?r(t,n,a):r(t,n))||a);i>3&&a&&Object.defineProperty(t,n,a)}([p.Select(t.ProfileState.getProfile),y("design:type",a.Observable)],e.prototype,"profile$",void 0),e}();var D=function(){function e(e,t){this.router=e,this.store=t,this.segments=[],this.show=!!this.store.selectSnapshot(function(e){return e.LeptonLayoutState})}return e.prototype.ngOnInit=function(){var e=this.router.url.split("/").filter(function(e){return e}),n=this.store.selectSnapshot(t.ConfigState.getRoute(e[0]));if(this.segments.push(n.name),e.length>1)for(var o=v(e).slice(1),r=n,i=function(e){var t=o[e];r=r.children.find(function(e){return e.path===t}),a.segments.push(r.name)},a=this,s=0;s\n \n \n {{ segment | abpLocalization }}\n \n \n '}]}],e.ctorParameters=function(){return[{type:l.Router},{type:p.Store}]},e}();function q(e){return function(){var n=e.get(t.LazyLoadService);return a.forkJoin(n.load(null,"style",E,"head","afterbegin")).pipe(s.take(1))}}var _,V=function(){function e(){}return e.forRoot=function(){return{ngModule:e,providers:[{provide:n.APP_INITIALIZER,multi:!0,deps:[n.Injector,O],useFactory:q},{provide:r.MessageService,useClass:r.MessageService}]}},e.decorators=[{type:n.NgModule,args:[{imports:[t.CoreModule,i.ToastModule,o.NgxValidateCoreModule.forRoot({targetSelector:".form-group",blueprints:{email:"AbpAccount::ThisFieldIsNotAValidEmailAddress.",max:"AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]",maxlength:"AbpAccount::ThisFieldMustBeAStringWithAMaximumLengthOf{1}[{{ requiredLength }}]",min:"AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]",minlength:"AbpAccount::ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf[{{ min }},{{ max }}]",required:"AbpAccount::ThisFieldIsRequired.",passwordMismatch:"AbpIdentity::Identity.PasswordConfirmationFailed"},errorTemplate:j})],declarations:[A,I,k,x,L,S,j,T,F,D],exports:[A,I,k,x,S,T,F,D],entryComponents:[L,j]}]}],e}(),Y=f.trigger("fade",[f.state("void",f.style({opacity:1})),f.transition(":enter",[f.style({opacity:0}),f.animate(250)]),f.transition(":leave",f.animate(250,f.style({opacity:0})))]),$=f.trigger("routeAnimations",[f.state("void",f.style({"margin-top":"20px",opacity:"0"})),f.state("*",f.style({"margin-top":"0px",opacity:"1"})),f.transition(":enter",[f.animate("0.2s ease-out",f.style({opacity:"1","margin-top":"0px"}))])]);!function(e){function t(){}e.Options=t}(_||(_={})),function(t){function n(){}(e.Toaster||(e.Toaster={})).Options=n}(),e.BreadcrumbComponent=D,e.ButtonComponent=A,e.ChangePasswordComponent=T,e.ConfirmationComponent=I,e.ConfirmationService=w,e.LoaderBarComponent=S,e.ModalComponent=x,e.ProfileComponent=F,e.ThemeSharedModule=V,e.ToastComponent=k,e.ToasterService=N,e.appendScript=q,e.fade=Y,e.slideFromBottom=$,e.ɵa=j,e.ɵb=A,e.ɵc=I,e.ɵd=w,e.ɵe=C,e.ɵf=k,e.ɵg=x,e.ɵh=L,e.ɵi=S,e.ɵj=T,e.ɵk=N,e.ɵl=F,e.ɵm=D,e.ɵn=O,Object.defineProperty(e,"__esModule",{value:!0})}); +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@abp/ng.core"),require("@angular/core"),require("@ngx-validate/core"),require("primeng/components/common/messageservice"),require("primeng/toast"),require("rxjs"),require("rxjs/operators"),require("@angular/router"),require("@ngxs/store"),require("@angular/forms"),require("snq"),require("@angular/common/http"),require("@ngxs/router-plugin"),require("@angular/animations")):"function"==typeof define&&define.amd?define("@abp/ng.theme.shared",["exports","@abp/ng.core","@angular/core","@ngx-validate/core","primeng/components/common/messageservice","primeng/toast","rxjs","rxjs/operators","@angular/router","@ngxs/store","@angular/forms","snq","@angular/common/http","@ngxs/router-plugin","@angular/animations"],e):e(((t=t||self).abp=t.abp||{},t.abp.ng=t.abp.ng||{},t.abp.ng.theme=t.abp.ng.theme||{},t.abp.ng.theme.shared={}),t.ng_core,t.ng.core,t.core$1,t.messageservice,t.toast,t.rxjs,t.rxjs.operators,t.ng.router,t.store,t.ng.forms,t.snq,t.ng.common.http,t.routerPlugin,t.ng.animations)}(this,function(t,e,n,o,r,i,a,s,p,l,c,u,d,m,f){"use strict";u=u&&u.hasOwnProperty("default")?u.default:u;var b=function(t,e){return(b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};function h(t,e){function n(){this.constructor=t}b(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var g=function(){return(g=Object.assign||function(t){for(var e,n=1,o=arguments.length;n0)&&!(o=i.next()).done;)a.push(o.value)}catch(t){r={error:t}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}return a}var C=function(){function t(t,e){this.router=t,this.store=e,this.segments=[],this.show=!!this.store.selectSnapshot(function(t){return t.LeptonLayoutState})}return t.prototype.ngOnInit=function(){var t=this.router.url.split("/").filter(function(t){return t}),n=this.store.selectSnapshot(e.ConfigState.getRoute(t[0]));if(this.segments.push(n.name),t.length>1)for(var o=v(t).slice(1),r=n,i=function(t){var e=o[t];r=r.children.find(function(t){return t.path===e}),a.segments.push(r.name)},a=this,s=0;s\n \n \n {{ segment | abpLocalization }}\n \n \n '}]}],t.ctorParameters=function(){return[{type:p.Router},{type:l.Store}]},t}();var w=function(){function t(){this.buttonClass="btn btn-primary",this.type="button",this.loading=!1,this.disabled=!1}return Object.defineProperty(t.prototype,"icon",{get:function(){return""+(this.loading?"fa fa-spin fa-spinner":this.iconClass||"d-none")},enumerable:!0,configurable:!0}),t.decorators=[{type:n.Component,args:[{selector:"abp-button",template:'\n \n '}]}],t.propDecorators={buttonClass:[{type:n.Input}],type:[{type:n.Input}],iconClass:[{type:n.Input}],loading:[{type:n.Input}],disabled:[{type:n.Input}]},t}();var x=function(){function t(t){this.messageService=t,this.key="abpToast",this.sticky=!1}return t.prototype.info=function(t,e,n){return this.show(t,e,"info",n)},t.prototype.success=function(t,e,n){return this.show(t,e,"success",n)},t.prototype.warn=function(t,e,n){return this.show(t,e,"warn",n)},t.prototype.error=function(t,e,n){return this.show(t,e,"error",n)},t.prototype.show=function(t,e,n,o){return this.messageService.clear(this.key),this.messageService.add(g({severity:n,detail:t||"",summary:e||""},o,{key:this.key},void 0===(o||{}).sticky&&{sticky:this.sticky})),this.status$=new a.Subject,this.status$},t.prototype.clear=function(t){this.messageService.clear(this.key),this.status$.next(t||"dismiss"),this.status$.complete()},t}();var I=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return h(e,t),e.prototype.addAll=function(t){var e=this;this.messageService.addAll(t.map(function(t){return g({key:e.key},t)}))},e.decorators=[{type:n.Injectable,args:[{providedIn:"root"}]}],e.ngInjectableDef=n.ɵɵdefineInjectable({factory:function(){return new e(n.ɵɵinject(r.MessageService))},token:e,providedIn:"root"}),e}(x),k=(c.Validators.minLength,c.Validators.required),L=function(){function t(t,e,o){this.fb=t,this.store=e,this.toasterService=o,this.visibleChange=new n.EventEmitter,this.modalBusy=!1}return Object.defineProperty(t.prototype,"visible",{get:function(){return this._visible},set:function(t){this._visible=t,this.visibleChange.emit(t)},enumerable:!0,configurable:!0}),t.prototype.ngOnInit=function(){this.form=this.fb.group({password:["",k],newPassword:["",k],repeatNewPassword:["",k]},{validators:[o.comparePasswords(["newPassword","repeatNewPassword"])]})},t.prototype.onSubmit=function(){var t=this;this.form.invalid||(this.modalBusy=!0,this.store.dispatch(new e.ChangePassword({currentPassword:this.form.get("password").value,newPassword:this.form.get("newPassword").value})).pipe(s.finalize(function(){t.modalBusy=!1})).subscribe({next:function(){t.visible=!1,t.form.reset()},error:function(e){t.toasterService.error(u(function(){return e.error.error.message},"AbpAccount::DefaultErrorMessage"),"Error",{life:7e3})}}))},t.prototype.openModal=function(){this.visible=!0},t.prototype.ngOnChanges=function(t){var e=t.visible;e&&(e.currentValue?this.openModal():!1===e.currentValue&&this.visible&&(this.visible=!1))},t.decorators=[{type:n.Component,args:[{selector:"abp-change-password",template:'\n \n

    {{ \'AbpIdentity::ChangePassword\' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ \'AbpIdentity::Save\' | abpLocalization }}\n \n
    \n'}]}],t.ctorParameters=function(){return[{type:c.FormBuilder},{type:l.Store},{type:I}]},t.propDecorators={visible:[{type:n.Input}],visibleChange:[{type:n.Output}],modalContent:[{type:n.ViewChild,args:["modalContent",{static:!1}]}]},t}();var S=new a.ReplaySubject(1),A=function(){function t(t,e){var o=this;this.el=t,this.cdRef=e,this.options={},this.plugins=[],this.responsive=!0,this.onDataSelect=new n.EventEmitter,this.initialized=new a.BehaviorSubject(this),this.onCanvasClick=function(t){if(o.chart){var e=o.chart.getElementAtEvent(t),n=o.chart.getDatasetAtEvent(t);e&&e[0]&&n&&o.onDataSelect.emit({originalEvent:t,element:e[0],dataset:n})}},this.initChart=function(){var t=o.options||{};t.responsive=o.responsive,t.responsive&&(o.height||o.width)&&(t.maintainAspectRatio=!1),o.chart=new Chart(o.el.nativeElement.children[0].children[0],{type:o.type,data:o.data,options:o.options,plugins:o.plugins}),o.cdRef.detectChanges()},this.generateLegend=function(){if(o.chart)return o.chart.generateLegend()},this.refresh=function(){o.chart&&(o.chart.update(),o.cdRef.detectChanges())},this.reinit=function(){o.chart&&(o.chart.destroy(),o.initChart())}}return Object.defineProperty(t.prototype,"data",{get:function(){return this._data},set:function(t){this._data=t,this.reinit()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"canvas",{get:function(){return this.el.nativeElement.children[0].children[0]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"base64Image",{get:function(){return this.chart.toBase64Image()},enumerable:!0,configurable:!0}),t.prototype.ngAfterViewInit=function(){var t=this;S.subscribe(function(){try{Chart}catch(t){return void console.error("Chart is not found. Import the Chart from app.module like shown below:\n import('chart.js');\n ")}t.initChart(),t._initialized=!0})},t.prototype.ngOnDestroy=function(){this.chart&&(this.chart.destroy(),this._initialized=!1,this.chart=null)},t.decorators=[{type:n.Component,args:[{selector:"abp-chart",template:'\n \n\n'}]}],t.ctorParameters=function(){return[{type:n.ElementRef},{type:n.ChangeDetectorRef}]},t.propDecorators={type:[{type:n.Input}],options:[{type:n.Input}],plugins:[{type:n.Input}],width:[{type:n.Input}],height:[{type:n.Input}],responsive:[{type:n.Input}],onDataSelect:[{type:n.Output}],initialized:[{type:n.Output}],data:[{type:n.Input}]},t}();var E=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.key="abpConfirmation",e.sticky=!0,e}return h(e,t),e.decorators=[{type:n.Injectable,args:[{providedIn:"root"}]}],e.ngInjectableDef=n.ɵɵdefineInjectable({factory:function(){return new e(n.ɵɵinject(r.MessageService))},token:e,providedIn:"root"}),e}(x);var P=function(){function t(t){this.confirmationService=t,this.confirm="confirm",this.reject="reject",this.dismiss="dismiss"}return t.prototype.close=function(t){this.confirmationService.clear(t)},t.decorators=[{type:n.Component,args:[{selector:"abp-confirmation",template:'\n \n \n \n
    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n '}]}],t.ctorParameters=function(){return[{type:E}]},t}();var O=function(){function t(){this.title="Oops!",this.details="Sorry, an error has occured."}return t.prototype.destroy=function(){this.renderer.removeChild(this.host,this.elementRef.nativeElement)},t.decorators=[{type:n.Component,args:[{selector:"abp-error",template:'\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n ',styles:[".error{position:fixed;top:0;background-color:#fff;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}"]}]}],t}();var j=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return h(e,t),Object.defineProperty(e.prototype,"abpErrors",{get:function(){return this.errors&&this.errors.length?this.errors.map(function(t){if(!t.message)return t;var e=t.message.indexOf("[");return e>-1?g({},t,{message:t.message.slice(0,e),interpoliteParams:t.message.slice(e+1,t.message.length-1).split(",")}):t}):[]},enumerable:!0,configurable:!0}),e.decorators=[{type:n.Component,args:[{selector:"abp-validation-error",template:'\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n ',changeDetection:n.ChangeDetectionStrategy.OnPush,encapsulation:n.ViewEncapsulation.None}]}],e}(o.ValidationErrorComponent),N=function(){function t(t,n){var r=this;this.actions=t,this.router=n,this.containerClass="abp-loader-bar",this.progressClass="abp-progress",this.isLoading=!1,this.filter=function(t){return t.payload.url.indexOf("openid-configuration")<0},this.progressLevel=0,t.pipe(l.ofActionSuccessful(e.StartLoader,e.StopLoader),s.filter(this.filter),o.takeUntilDestroy(this)).subscribe(function(t){t instanceof e.StartLoader?r.startLoading():r.stopLoading()}),n.events.pipe(s.filter(function(t){return t instanceof p.NavigationStart||t instanceof p.NavigationEnd||t instanceof p.NavigationError}),o.takeUntilDestroy(this)).subscribe(function(t){t instanceof p.NavigationStart?r.startLoading():r.stopLoading()})}return t.prototype.ngOnDestroy=function(){},t.prototype.startLoading=function(){var t=this;this.isLoading=!0;var e=setInterval(function(){t.progressLevel<75?t.progressLevel+=10*Math.random():t.progressLevel<90?t.progressLevel+=.4:t.progressLevel<100?t.progressLevel+=.1:clearInterval(e)},300);this.interval=e},t.prototype.stopLoading=function(){var t=this;clearInterval(this.interval),this.progressLevel=100,this.isLoading=!1,setTimeout(function(){t.progressLevel=0},800)},t.decorators=[{type:n.Component,args:[{selector:"abp-loader-bar",template:'\n
    \n
    \n
    \n ',styles:[".abp-loader-bar{left:0;opacity:0;position:fixed;top:0;transition:opacity .4s linear .4s;z-index:99999}.abp-loader-bar.is-loading{opacity:1;transition:none}.abp-loader-bar .abp-progress{background:#77b6ff;box-shadow:0 0 10px rgba(119,182,255,.7);height:2px;left:0;position:fixed;top:0;transition:width .4s}"]}]}],t.ctorParameters=function(){return[{type:l.Actions},{type:p.Router}]},t.propDecorators={containerClass:[{type:n.Input}],progressClass:[{type:n.Input}],isLoading:[{type:n.Input}],filter:[{type:n.Input}]},t}();var z=function(){function t(t,e){this.renderer=t,this.confirmationService=e,this.centered=!1,this.modalClass="",this.size="lg",this.visibleChange=new n.EventEmitter,this.init=new n.EventEmitter,this._visible=!1,this._busy=!1,this.showModal=!1,this.isOpenConfirmation=!1,this.closable=!1,this.destroy$=new a.Subject}return Object.defineProperty(t.prototype,"visible",{get:function(){return this._visible},set:function(t){var e=this;"boolean"==typeof t&&(this.modalContent?t?(this.setVisible(t),this.listen()):(this.closable=!1,this.renderer.addClass(this.modalContent.nativeElement,"fade-out-top"),setTimeout(function(){e.setVisible(t),e.ngOnDestroy()},190)):t&&setTimeout(function(){e.showModal=t,e.visible=t},0))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"busy",{get:function(){return this._busy},set:function(t){this.abpSubmit&&this.abpSubmit instanceof w&&(this.abpSubmit.loading=t),this._busy=t},enumerable:!0,configurable:!0}),t.prototype.ngOnDestroy=function(){this.destroy$.next()},t.prototype.setVisible=function(t){var e=this;this._visible=t,this.visibleChange.emit(t),this.showModal=t,t?(a.timer(300).pipe(s.take(1)).subscribe(function(t){return e.closable=!0}),this.renderer.addClass(document.body,"modal-open")):(this.closable=!1,this.renderer.removeClass(document.body,"modal-open"))},t.prototype.listen=function(){var t=this;a.fromEvent(document,"keyup").pipe(s.takeUntil(this.destroy$),s.debounceTime(150),s.filter(function(e){return e&&"Escape"===e.code&&t.closable})).subscribe(function(e){t.close()}),setTimeout(function(){t.abpClose&&a.fromEvent(t.abpClose.nativeElement,"click").pipe(s.takeUntil(t.destroy$),s.filter(function(){return!(!t.closable||!t.modalContent)})).subscribe(function(){return t.close()})},0),this.init.emit()},t.prototype.close=function(){var t=this;if(this.closable&&!this.busy)if(function(t){return t.findIndex(function(t){return(t.className||"").indexOf("ng-dirty")>-1})>-1}(function t(e){return Array.from(e).reduce(function(e,n){return function(){for(var t=[],e=0;e\n \n \n \n \n \n\n \n\n'}]}],t.ctorParameters=function(){return[{type:n.Renderer2},{type:E}]},t.propDecorators={visible:[{type:n.Input}],busy:[{type:n.Input}],centered:[{type:n.Input}],modalClass:[{type:n.Input}],size:[{type:n.Input}],height:[{type:n.Input}],minHeight:[{type:n.Input}],visibleChange:[{type:n.Output}],init:[{type:n.Output}],abpHeader:[{type:n.ContentChild,args:["abpHeader",{static:!1}]}],abpBody:[{type:n.ContentChild,args:["abpBody",{static:!1}]}],abpFooter:[{type:n.ContentChild,args:["abpFooter",{static:!1}]}],abpClose:[{type:n.ContentChild,args:["abpClose",{static:!1,read:n.ElementRef}]}],abpSubmit:[{type:n.ContentChild,args:[w,{static:!1,read:w}]}],modalContent:[{type:n.ViewChild,args:["abpModalContent",{static:!1}]}],abpButtons:[{type:n.ViewChildren,args:["abp-button"]}]},t}();var R=c.Validators.maxLength,T=c.Validators.required,M=c.Validators.email,B=function(){function t(t,e){this.fb=t,this.store=e,this.visibleChange=new n.EventEmitter,this.modalBusy=!1}return Object.defineProperty(t.prototype,"visible",{get:function(){return this._visible},set:function(t){this._visible=t,this.visibleChange.emit(t)},enumerable:!0,configurable:!0}),t.prototype.buildForm=function(){var t=this;this.store.dispatch(new e.GetProfile).pipe(s.withLatestFrom(this.profile$),s.take(1)).subscribe(function(e){var n=v(e,2)[1];t.form=t.fb.group({userName:[n.userName,[T,R(256)]],email:[n.email,[T,M,R(256)]],name:[n.name||"",[R(64)]],surname:[n.surname||"",[R(64)]],phoneNumber:[n.phoneNumber||"",[R(16)]]})})},t.prototype.submit=function(){var t=this;this.form.invalid||(this.modalBusy=!0,this.store.dispatch(new e.UpdateProfile(this.form.value)).subscribe(function(){t.modalBusy=!1,t.visible=!1,t.form.reset()}))},t.prototype.openModal=function(){this.buildForm(),this.visible=!0},t.prototype.ngOnChanges=function(t){var e=t.visible;e&&(e.currentValue?this.openModal():!1===e.currentValue&&this.visible&&(this.visible=!1))},t.decorators=[{type:n.Component,args:[{selector:"abp-profile",template:'\n \n

    {{ \'AbpIdentity::PersonalInfo\' | abpLocalization }}

    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {{ \'AbpIdentity::Save\' | abpLocalization }}\n \n
    \n'}]}],t.ctorParameters=function(){return[{type:c.FormBuilder},{type:l.Store}]},t.propDecorators={visible:[{type:n.Input}],visibleChange:[{type:n.Output}]},function(t,e,n,o){var r,i=arguments.length,a=i<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,n):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,o);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(a=(i<3?r(a):i>3?r(e,n,a):r(e,n))||a);i>3&&a&&Object.defineProperty(e,n,a)}([l.Select(e.ProfileState.getProfile),y("design:type",a.Observable)],t.prototype,"profile$",void 0),t}();var D=function(){function t(){}return t.decorators=[{type:n.Component,args:[{selector:"abp-toast",template:'\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n '}]}],t}(),F='\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.navbar .dropdown-menu {\n min-width: 215px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis-inline {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-ellipsis {\n overflow: hidden !important;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-toast .ui-toast-message {\n box-sizing: border-box !important;\n border: 2px solid transparent !important;\n border-radius: 4px !important;\n background-color: #f4f4f7 !important;\n color: #1b1d29 !important;\n}\n\n.abp-toast .ui-toast-message-content {\n padding: 10px !important;\n}\n\n.abp-toast .ui-toast-message-content .ui-toast-icon {\n top: 0 !important;\n left: 0 !important;\n padding: 10px !important;\n}\n\n.abp-toast .ui-toast-summary {\n margin: 0 !important;\n font-weight: 700 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-error {\n border-color: #ba1659 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-error .ui-toast-message-content .ui-toast-icon {\n color: #ba1659 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-warning {\n border-color: #ed5d98 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-warning .ui-toast-message-content .ui-toast-icon {\n color: #ed5d98 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-success {\n border-color: #1c9174 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-success .ui-toast-message-content .ui-toast-icon {\n color: #1c9174 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-info {\n border-color: #fccb31 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-info .ui-toast-message-content .ui-toast-icon {\n color: #fccb31 !important;\n}\n\n.abp-confirm .ui-toast-message {\n box-sizing: border-box !important;\n padding: 0px !important;\n border:0 none !important;\n border-radius: 4px !important;\n background-color: #fff !important;\n color: rgba(0, 0, 0, .65) !important;\n font-family: "Poppins", sans-serif;\n text-align: center !important;\n}\n\n.abp-confirm .ui-toast-message-content {\n padding: 0px !important;\n}\n\n.abp-confirm .abp-confirm-icon {\n margin: 32px 50px 5px !important;\n color: #f8bb86 !important;\n font-size: 52px !important;\n}\n\n.abp-confirm .ui-toast-close-icon {\n display: none !important;\n}\n\n.abp-confirm .abp-confirm-summary {\n display: block !important;\n margin-bottom: 13px !important;\n padding: 13px 16px 0px !important;\n font-weight: 600 !important;\n font-size: 18px !important;\n}\n\n.abp-confirm .abp-confirm-body {\n display: inline-block !important;\n padding: 0px 10px !important;\n}\n\n.abp-confirm .abp-confirm-footer {\n display: block !important;\n margin-top: 30px !important;\n padding: 16px !important;\n background-color: #f4f4f7 !important;\n text-align: right !important;\n}\n\n.abp-confirm .abp-confirm-footer .btn {\n margin-left: 10px !important;\n}\n\n/* = 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { MessageService } from 'primeng/components/common/messageservice';\nimport { Observable, Subject } from 'rxjs';\nimport { Toaster } from '../models/toaster';\n\nexport class AbstractToaster {\n status$: Subject;\n\n key: string = 'abpToast';\n\n sticky: boolean = false;\n\n constructor(protected messageService: MessageService) {}\n info(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'info', options);\n }\n\n success(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'success', options);\n }\n\n warn(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'warn', options);\n }\n\n error(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'error', options);\n }\n\n protected show(message: string, title: string, severity: Toaster.Severity, options?: T): Observable {\n this.messageService.clear(this.key);\n\n this.messageService.add({\n severity,\n detail: message || '',\n summary: title || '',\n ...options,\n key: this.key,\n ...(typeof (options || ({} as any)).sticky === 'undefined' && { sticky: this.sticky }),\n });\n this.status$ = new Subject();\n return this.status$;\n }\n\n clear(status?: Toaster.Status) {\n this.messageService.clear(this.key);\n this.status$.next(status || Toaster.Status.dismiss);\n this.status$.complete();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToaster } from '../abstracts/toaster';\nimport { Confirmation } from '../models/confirmation';\n\n@Injectable({ providedIn: 'root' })\nexport class ConfirmationService extends AbstractToaster {\n key: string = 'abpConfirmation';\n\n sticky: boolean = true;\n}\n","import { Component } from '@angular/core';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { Toaster } from '../../models/toaster';\n\n@Component({\n selector: 'abp-confirmation',\n template: `\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n `,\n})\nexport class ConfirmationComponent {\n confirm = Toaster.Status.confirm;\n reject = Toaster.Status.reject;\n dismiss = Toaster.Status.dismiss;\n\n constructor(private confirmationService: ConfirmationService) {}\n\n close(status: Toaster.Status) {\n this.confirmationService.clear(status);\n }\n}\n","import { Component, Renderer2, ElementRef } from '@angular/core';\n\n@Component({\n selector: 'abp-error',\n template: `\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n `,\n styleUrls: ['error.component.scss'],\n})\nexport class ErrorComponent {\n title = 'Oops!';\n\n details = 'Sorry, an error has occured.';\n\n renderer: Renderer2;\n\n elementRef: ElementRef;\n\n host: any;\n\n destroy() {\n this.renderer.removeChild(this.host, this.elementRef.nativeElement);\n }\n}\n","import { StartLoader, StopLoader } from '@abp/ng.core';\nimport { Component, Input, OnDestroy } from '@angular/core';\nimport { NavigationEnd, NavigationStart, Router, NavigationError } from '@angular/router';\nimport { takeUntilDestroy } from '@ngx-validate/core';\nimport { Actions, ofActionSuccessful } from '@ngxs/store';\nimport { filter } from 'rxjs/operators';\n\n@Component({\n selector: 'abp-loader-bar',\n template: `\n
    \n
    \n
    \n `,\n styleUrls: ['./loader-bar.component.scss'],\n})\nexport class LoaderBarComponent implements OnDestroy {\n @Input()\n containerClass: string = 'abp-loader-bar';\n\n @Input()\n progressClass: string = 'abp-progress';\n\n @Input()\n isLoading: boolean = false;\n\n @Input()\n filter = (action: StartLoader | StopLoader) => action.payload.url.indexOf('openid-configuration') < 0;\n\n progressLevel: number = 0;\n\n interval: any;\n\n constructor(private actions: Actions, private router: Router) {\n actions\n .pipe(\n ofActionSuccessful(StartLoader, StopLoader),\n filter(this.filter),\n takeUntilDestroy(this),\n )\n .subscribe(action => {\n if (action instanceof StartLoader) this.startLoading();\n else this.stopLoading();\n });\n\n router.events\n .pipe(\n filter(\n event =>\n event instanceof NavigationStart || event instanceof NavigationEnd || event instanceof NavigationError,\n ),\n takeUntilDestroy(this),\n )\n .subscribe(event => {\n if (event instanceof NavigationStart) this.startLoading();\n else this.stopLoading();\n });\n }\n\n ngOnDestroy() {}\n\n startLoading() {\n this.isLoading = true;\n const interval = setInterval(() => {\n if (this.progressLevel < 75) {\n this.progressLevel += Math.random() * 10;\n } else if (this.progressLevel < 90) {\n this.progressLevel += 0.4;\n } else if (this.progressLevel < 100) {\n this.progressLevel += 0.1;\n } else {\n clearInterval(interval);\n }\n }, 300);\n\n this.interval = interval;\n }\n\n stopLoading() {\n clearInterval(this.interval);\n this.progressLevel = 100;\n this.isLoading = false;\n\n setTimeout(() => {\n this.progressLevel = 0;\n }, 800);\n }\n}\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'abp-button',\n template: `\n \n `,\n})\nexport class ButtonComponent {\n @Input()\n buttonClass: string = 'btn btn-primary';\n\n @Input()\n type: string = 'button';\n\n @Input()\n iconClass: string;\n\n @Input()\n loading: boolean = false;\n\n @Input()\n disabled: boolean = false;\n\n get icon(): string {\n return `${this.loading ? 'fa fa-spin fa-spinner' : this.iconClass || 'd-none'}`;\n }\n}\n","import {\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { fromEvent, Subject, timer } from 'rxjs';\nimport { filter, take, takeUntil, debounceTime } from 'rxjs/operators';\nimport { Toaster } from '../../models/toaster';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { ButtonComponent } from '../button/button.component';\n\nexport type ModalSize = 'sm' | 'md' | 'lg' | 'xl';\n\nconst ANIMATION_TIMEOUT = 200;\n\n@Component({\n selector: 'abp-modal',\n templateUrl: './modal.component.html',\n})\nexport class ModalComponent implements OnDestroy {\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n set visible(value: boolean) {\n if (typeof value !== 'boolean') return;\n\n if (!this.modalContent) {\n if (value) {\n setTimeout(() => {\n this.showModal = value;\n this.visible = value;\n }, 0);\n }\n return;\n }\n\n if (value) {\n this.setVisible(value);\n this.listen();\n } else {\n this.closable = false;\n this.renderer.addClass(this.modalContent.nativeElement, 'fade-out-top');\n setTimeout(() => {\n this.setVisible(value);\n this.ngOnDestroy();\n }, ANIMATION_TIMEOUT - 10);\n }\n }\n\n @Input()\n get busy(): boolean {\n return this._busy;\n }\n set busy(value: boolean) {\n if (this.abpSubmit && this.abpSubmit instanceof ButtonComponent) {\n this.abpSubmit.loading = value;\n }\n\n this._busy = value;\n }\n\n @Input() centered: boolean = false;\n\n @Input() modalClass: string = '';\n\n @Input() size: ModalSize = 'lg';\n\n @Input() height: number;\n\n @Input() minHeight: number;\n\n @Output() visibleChange = new EventEmitter();\n\n @Output() init = new EventEmitter();\n\n @ContentChild('abpHeader', { static: false }) abpHeader: TemplateRef;\n\n @ContentChild('abpBody', { static: false }) abpBody: TemplateRef;\n\n @ContentChild('abpFooter', { static: false }) abpFooter: TemplateRef;\n\n @ContentChild('abpClose', { static: false, read: ElementRef }) abpClose: ElementRef;\n\n @ContentChild(ButtonComponent, { static: false, read: ButtonComponent }) abpSubmit: ButtonComponent;\n\n @ViewChild('abpModalContent', { static: false }) modalContent: ElementRef;\n\n @ViewChildren('abp-button') abpButtons;\n\n _visible: boolean = false;\n\n _busy: boolean = false;\n\n showModal: boolean = false;\n\n isOpenConfirmation: boolean = false;\n\n closable: boolean = false;\n\n destroy$ = new Subject();\n\n constructor(private renderer: Renderer2, private confirmationService: ConfirmationService) {}\n\n ngOnDestroy(): void {\n this.destroy$.next();\n }\n\n setVisible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n this.showModal = value;\n\n value\n ? timer(ANIMATION_TIMEOUT + 100)\n .pipe(take(1))\n .subscribe(_ => (this.closable = true))\n : (this.closable = false);\n }\n\n listen() {\n fromEvent(document, 'keyup')\n .pipe(\n takeUntil(this.destroy$),\n debounceTime(150),\n filter((key: KeyboardEvent) => key && key.code === 'Escape' && this.closable),\n )\n .subscribe(_ => {\n this.close();\n });\n\n setTimeout(() => {\n if (!this.abpClose) return;\n fromEvent(this.abpClose.nativeElement, 'click')\n .pipe(\n takeUntil(this.destroy$),\n filter(() => !!(this.closable && this.modalContent)),\n )\n .subscribe(() => this.close());\n }, 0);\n\n this.init.emit();\n }\n\n close() {\n if (!this.closable || this.busy) return;\n\n const nodes = getFlatNodes(\n (this.modalContent.nativeElement.querySelector('#abp-modal-body') as HTMLElement).childNodes,\n );\n\n if (hasNgDirty(nodes)) {\n if (this.isOpenConfirmation) return;\n\n this.isOpenConfirmation = true;\n this.confirmationService\n .warn('AbpAccount::AreYouSureYouWantToCancelEditingWarningMessage', 'AbpAccount::AreYouSure')\n .subscribe((status: Toaster.Status) => {\n timer(ANIMATION_TIMEOUT).subscribe(() => {\n this.isOpenConfirmation = false;\n });\n\n if (status === Toaster.Status.confirm) {\n this.visible = false;\n }\n });\n } else {\n this.visible = false;\n }\n }\n}\n\nfunction getFlatNodes(nodes: NodeList): HTMLElement[] {\n return Array.from(nodes).reduce(\n (acc, val) => [...acc, ...(val.childNodes && val.childNodes.length ? getFlatNodes(val.childNodes) : [val])],\n [],\n );\n}\n\nfunction hasNgDirty(nodes: HTMLElement[]) {\n return nodes.findIndex(node => (node.className || '').indexOf('ng-dirty') > -1) > -1;\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-toast',\n template: `\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n `,\n})\nexport class ToastComponent {}\n","export default `\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.navbar .dropdown-menu {\n min-width: 215px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis-inline {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-ellipsis {\n overflow: hidden !important;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* {\n const { payload: err = {} as HttpErrorResponse | any } = res;\n const body = snq(() => (err as HttpErrorResponse).error.error, DEFAULTS.defaultError.message);\n\n if (err instanceof HttpErrorResponse && err.headers.get('_AbpErrorFormat')) {\n const confirmation$ = this.showError(null, null, body);\n\n if (err.status === 401) {\n confirmation$.subscribe(() => {\n this.navigateToLogin();\n });\n }\n } else {\n switch ((err as HttpErrorResponse).status) {\n case 401:\n this.showError(DEFAULTS.defaultError401.details, DEFAULTS.defaultError401.message).subscribe(() =>\n this.navigateToLogin(),\n );\n break;\n case 403:\n this.createErrorComponent({\n title: DEFAULTS.defaultError403.message,\n details: DEFAULTS.defaultError403.details,\n });\n break;\n case 404:\n this.showError(DEFAULTS.defaultError404.details, DEFAULTS.defaultError404.message);\n break;\n case 500:\n this.createErrorComponent({\n title: '500',\n details: 'AbpAccount::InternalServerErrorMessage',\n });\n break;\n case 0:\n if ((err as HttpErrorResponse).statusText === 'Unknown Error') {\n this.createErrorComponent({\n title: 'Unknown Error',\n details: 'AbpAccount::InternalServerErrorMessage',\n });\n }\n break;\n default:\n this.showError(DEFAULTS.defaultError.details, DEFAULTS.defaultError.message);\n break;\n }\n }\n });\n }\n\n private showError(message?: string, title?: string, body?: any): Observable {\n if (body) {\n if (body.details) {\n message = body.details;\n title = body.message;\n } else {\n message = body.message || DEFAULTS.defaultError.message;\n }\n }\n\n return this.confirmationService.error(message, title, {\n hideCancelBtn: true,\n yesCopy: 'OK',\n });\n }\n\n private navigateToLogin() {\n this.store.dispatch(\n new Navigate(['/account/login'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n }\n\n createErrorComponent(instance: Partial) {\n const renderer = this.rendererFactory.createRenderer(null, null);\n const host = renderer.selectRootElement('app-root', true);\n\n const componentRef = this.cfRes.resolveComponentFactory(ErrorComponent).create(this.injector);\n\n for (const key in componentRef.instance) {\n if (componentRef.instance.hasOwnProperty(key)) {\n componentRef.instance[key] = instance[key];\n }\n }\n\n this.appRef.attachView(componentRef.hostView);\n renderer.appendChild(host, (componentRef.hostView as EmbeddedViewRef).rootNodes[0]);\n\n componentRef.instance.renderer = renderer;\n componentRef.instance.elementRef = componentRef.location;\n componentRef.instance.host = host;\n }\n}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { Validation, ValidationErrorComponent as ErrorComponent } from '@ngx-validate/core';\n\n@Component({\n selector: 'abp-validation-error',\n template: `\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class ValidationErrorComponent extends ErrorComponent {\n get abpErrors(): Validation.Error[] & { interpoliteParams?: string[] } {\n if (!this.errors || !this.errors.length) return [];\n\n return this.errors.map(error => {\n if (!error.message) return error;\n\n const index = error.message.indexOf('[');\n\n if (index > -1) {\n return {\n ...error,\n message: error.message.slice(0, index),\n interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(','),\n };\n }\n\n return error;\n });\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToaster } from '../abstracts/toaster';\nimport { Message } from 'primeng/components/common/message';\n\n@Injectable({ providedIn: 'root' })\nexport class ToasterService extends AbstractToaster {\n addAll(messages: Message[]): void {\n this.messageService.addAll(messages.map(message => ({ key: this.key, ...message })));\n }\n}\n","import { ChangePassword } from '@abp/ng.core';\nimport {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { comparePasswords } from '@ngx-validate/core';\nimport { Store } from '@ngxs/store';\nimport snq from 'snq';\nimport { finalize } from 'rxjs/operators';\nimport { ToasterService } from '../../services/toaster.service';\n\nconst { minLength, required } = Validators;\n\n@Component({\n selector: 'abp-change-password',\n templateUrl: './change-password.component.html',\n})\nexport class ChangePasswordComponent implements OnInit, OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n modalBusy: boolean = false;\n\n constructor(private fb: FormBuilder, private store: Store, private toasterService: ToasterService) {}\n\n ngOnInit(): void {\n this.form = this.fb.group(\n {\n password: ['', required],\n newPassword: ['', required],\n repeatNewPassword: ['', required],\n },\n {\n validators: [comparePasswords(['newPassword', 'repeatNewPassword'])],\n },\n );\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n new ChangePassword({\n currentPassword: this.form.get('password').value,\n newPassword: this.form.get('newPassword').value,\n }),\n )\n .pipe(\n finalize(() => {\n this.modalBusy = false;\n }),\n )\n .subscribe({\n next: () => {\n this.visible = false;\n this.form.reset();\n },\n error: err => {\n this.toasterService.error(snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'), 'Error', {\n life: 7000,\n });\n },\n });\n }\n\n openModal() {\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { Profile, GetProfile, ProfileState, UpdateProfile } from '@abp/ng.core';\nimport { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { take, withLatestFrom } from 'rxjs/operators';\n\nconst { maxLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-profile',\n templateUrl: './profile.component.html',\n})\nexport class ProfileComponent implements OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(ProfileState.getProfile)\n profile$: Observable;\n\n form: FormGroup;\n\n modalBusy: boolean = false;\n\n constructor(private fb: FormBuilder, private store: Store) {}\n\n buildForm() {\n this.store\n .dispatch(new GetProfile())\n .pipe(\n withLatestFrom(this.profile$),\n take(1),\n )\n .subscribe(([, profile]) => {\n this.form = this.fb.group({\n userName: [profile.userName, [required, maxLength(256)]],\n email: [profile.email, [required, email, maxLength(256)]],\n name: [profile.name || '', [maxLength(64)]],\n surname: [profile.surname || '', [maxLength(64)]],\n phoneNumber: [profile.phoneNumber || '', [maxLength(16)]],\n });\n });\n }\n\n submit() {\n if (this.form.invalid) return;\n this.modalBusy = true;\n\n this.store.dispatch(new UpdateProfile(this.form.value)).subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n this.form.reset();\n });\n }\n\n openModal() {\n this.buildForm();\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { ConfigState, ABP } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-breadcrumb',\n template: `\n
      \n
    1. \n \n
    2. \n \n {{ segment | abpLocalization }}\n \n
    \n `,\n})\nexport class BreadcrumbComponent implements OnInit {\n show: boolean;\n\n segments: string[] = [];\n\n constructor(private router: Router, private store: Store) {\n this.show = !!this.store.selectSnapshot(state => state.LeptonLayoutState);\n }\n\n ngOnInit(): void {\n const splittedUrl = this.router.url.split('/').filter(chunk => chunk);\n\n const currentUrl: ABP.FullRoute = this.store.selectSnapshot(ConfigState.getRoute(splittedUrl[0]));\n this.segments.push(currentUrl.name);\n\n if (splittedUrl.length > 1) {\n const [, ...arr] = splittedUrl;\n\n let childRoute: ABP.FullRoute = currentUrl;\n for (let i = 0; i < arr.length; i++) {\n const element = arr[i];\n childRoute = childRoute.children.find(child => child.path === element);\n\n this.segments.push(childRoute.name);\n }\n }\n }\n}\n","import { CoreModule, LazyLoadService } from '@abp/ng.core';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { MessageService } from 'primeng/components/common/messageservice';\nimport { ToastModule } from 'primeng/toast';\nimport { forkJoin } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { ConfirmationComponent } from './components/confirmation/confirmation.component';\nimport { ErrorComponent } from './components/errors/error.component';\nimport { LoaderBarComponent } from './components/loader-bar/loader-bar.component';\nimport { ModalComponent } from './components/modal/modal.component';\nimport { ToastComponent } from './components/toast/toast.component';\nimport styles from './contants/styles';\nimport { ErrorHandler } from './handlers/error.handler';\nimport { ButtonComponent } from './components/button/button.component';\nimport { ValidationErrorComponent } from './components/errors/validation-error.component';\nimport { ChangePasswordComponent } from './components/change-password/change-password.component';\nimport { ProfileComponent } from './components/profile/profile.component';\nimport { BreadcrumbComponent } from './components/breadcrumb/breadcrumb.component';\n\nexport function appendScript(injector: Injector) {\n const fn = function() {\n const lazyLoadService: LazyLoadService = injector.get(LazyLoadService);\n\n return forkJoin(\n lazyLoadService.load(\n null,\n 'style',\n styles,\n 'head',\n 'afterbegin',\n ) /* lazyLoadService.load(null, 'script', scripts) */,\n ).pipe(take(1));\n };\n\n return fn;\n}\n\n@NgModule({\n imports: [\n CoreModule,\n ToastModule,\n NgxValidateCoreModule.forRoot({\n targetSelector: '.form-group',\n blueprints: {\n email: `AbpAccount::ThisFieldIsNotAValidEmailAddress.`,\n max: `AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]`,\n maxlength: `AbpAccount::ThisFieldMustBeAStringWithAMaximumLengthOf{1}[{{ requiredLength }}]`,\n min: `AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]`,\n minlength: `AbpAccount::ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf[{{ min }},{{ max }}]`,\n required: `AbpAccount::ThisFieldIsRequired.`,\n passwordMismatch: `AbpIdentity::Identity.PasswordConfirmationFailed`,\n },\n errorTemplate: ValidationErrorComponent,\n }),\n ],\n declarations: [\n ButtonComponent,\n ConfirmationComponent,\n ToastComponent,\n ModalComponent,\n ErrorComponent,\n LoaderBarComponent,\n ValidationErrorComponent,\n ChangePasswordComponent,\n ProfileComponent,\n BreadcrumbComponent,\n ],\n exports: [\n ButtonComponent,\n ConfirmationComponent,\n ToastComponent,\n ModalComponent,\n LoaderBarComponent,\n ChangePasswordComponent,\n ProfileComponent,\n BreadcrumbComponent,\n ],\n entryComponents: [ErrorComponent, ValidationErrorComponent],\n})\nexport class ThemeSharedModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: ThemeSharedModule,\n providers: [\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector, ErrorHandler],\n useFactory: appendScript,\n },\n { provide: MessageService, useClass: MessageService },\n ],\n };\n }\n}\n","import { Toaster } from './toaster';\n\nexport namespace Confirmation {\n export interface Options extends Toaster.Options {\n hideCancelBtn?: boolean;\n hideYesBtn?: boolean;\n cancelCopy?: string;\n yesCopy?: string;\n }\n}\n","import { animate, state, style, transition, trigger } from '@angular/animations';\n\nexport const fade = trigger('fade', [\n state('void', style({ opacity: 1 })),\n transition(':enter', [style({ opacity: 0 }), animate(250)]),\n transition(':leave', animate(250, style({ opacity: 0 }))),\n]);\n","import { animate, state, style, transition, trigger, query } from '@angular/animations';\nexport const slideFromBottom = trigger('routeAnimations', [\n state('void', style({ 'margin-top': '20px', opacity: '0' })),\n state('*', style({ 'margin-top': '0px', opacity: '1' })),\n transition(':enter', [animate('0.2s ease-out', style({ opacity: '1', 'margin-top': '0px' }))]),\n]);\n","export namespace Toaster {\n export interface Options {\n id?: any;\n closable?: boolean;\n life?: number;\n sticky?: boolean;\n data?: any;\n messageLocalizationParams?: string[];\n titleLocalizationParams?: string[];\n }\n\n export type Severity = 'success' | 'info' | 'warn' | 'error';\n\n export const enum Status {\n confirm = 'confirm',\n reject = 'reject',\n dismiss = 'dismiss',\n }\n}\n"]} \ No newline at end of file +{"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","ng://@abp/ng.theme.shared/lib/components/breadcrumb/breadcrumb.component.ts","ng://@abp/ng.theme.shared/lib/components/button/button.component.ts","ng://@abp/ng.theme.shared/lib/abstracts/toaster.ts","ng://@abp/ng.theme.shared/lib/services/toaster.service.ts","ng://@abp/ng.theme.shared/lib/components/change-password/change-password.component.ts","ng://@abp/ng.theme.shared/lib/utils/widget-utils.ts","ng://@abp/ng.theme.shared/lib/components/chart/chart.component.ts","ng://@abp/ng.theme.shared/lib/services/confirmation.service.ts","ng://@abp/ng.theme.shared/lib/components/confirmation/confirmation.component.ts","ng://@abp/ng.theme.shared/lib/components/errors/error.component.ts","ng://@abp/ng.theme.shared/lib/components/errors/validation-error.component.ts","ng://@abp/ng.theme.shared/lib/components/loader-bar/loader-bar.component.ts","ng://@abp/ng.theme.shared/lib/components/modal/modal.component.ts","ng://@abp/ng.theme.shared/lib/components/profile/profile.component.ts","ng://@abp/ng.theme.shared/lib/components/toast/toast.component.ts","ng://@abp/ng.theme.shared/lib/contants/styles.ts","ng://@abp/ng.theme.shared/lib/handlers/error.handler.ts","ng://@abp/ng.theme.shared/lib/theme-shared.module.ts","ng://@abp/ng.theme.shared/lib/models/confirmation.ts","ng://@abp/ng.theme.shared/lib/models/statistics.ts","ng://@abp/ng.theme.shared/lib/animations/fade.animations.ts","ng://@abp/ng.theme.shared/lib/animations/slide.animations.ts","ng://@abp/ng.theme.shared/lib/models/toaster.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","__extends","__","this","constructor","prototype","create","__assign","assign","t","s","i","n","arguments","length","call","apply","__metadata","metadataKey","metadataValue","Reflect","metadata","__read","o","m","Symbol","iterator","r","e","ar","next","done","push","value","error","BreadcrumbComponent","router","store","segments","show","selectSnapshot","state","LeptonLayoutState","ngOnInit","splittedUrl","url","split","filter","chunk","currentUrl","ConfigState","getRoute","name","arr","slice","childRoute","element","children","find","child","path","this_1","Component","args","selector","template","Router","Store","ButtonComponent","buttonClass","type","loading","disabled","defineProperty","iconClass","Input","AbstractToaster","messageService","key","sticky","info","message","title","options","success","warn","severity","clear","add","detail","summary","status$","Subject","status","complete","ToasterService","tslib_1.__extends","addAll","messages","_this","map","Injectable","providedIn","required","forms","Validators","minLength","ChangePasswordComponent","fb","toasterService","visibleChange","EventEmitter","modalBusy","_visible","emit","form","group","password","newPassword","repeatNewPassword","validators","comparePasswords","onSubmit","invalid","dispatch","ChangePassword","currentPassword","get","pipe","finalize","subscribe","visible","reset","err","snq","life","openModal","ngOnChanges","_a","currentValue","FormBuilder","Output","ViewChild","static","chartJsLoaded$","ReplaySubject","ChartComponent","el","cdRef","plugins","responsive","onDataSelect","initialized","BehaviorSubject","onCanvasClick","event","chart","getElementAtEvent","dataset","getDatasetAtEvent","originalEvent","initChart","opts","height","width","maintainAspectRatio","Chart","nativeElement","data","detectChanges","generateLegend","refresh","update","reinit","destroy","_data","val","toBase64Image","ngAfterViewInit","console","_initialized","ngOnDestroy","ElementRef","ChangeDetectorRef","ConfirmationService","_super","ConfirmationComponent","confirmationService","confirm","reject","dismiss","close","ErrorComponent","details","renderer","removeChild","host","elementRef","ValidationErrorComponent","errors","index","indexOf","interpoliteParams","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","LoaderBarComponent","actions","containerClass","progressClass","isLoading","action","payload","progressLevel","ofActionSuccessful","StartLoader","StopLoader","takeUntilDestroy","startLoading","stopLoading","events","NavigationStart","NavigationEnd","NavigationError","interval","setInterval","Math","random","clearInterval","setTimeout","Actions","ModalComponent","centered","modalClass","size","init","_busy","showModal","isOpenConfirmation","closable","destroy$","modalContent","setVisible","listen","addClass","ANIMATION_TIMEOUT","abpSubmit","timer","take","_","document","body","removeClass","fromEvent","takeUntil","debounceTime","code","abpClose","busy","nodes","findIndex","node","className","hasNgDirty","getFlatNodes","from","reduce","acc","concat","__spread","childNodes","querySelector","Renderer2","ContentChild","read","ViewChildren","maxLength","email","ProfileComponent","buildForm","GetProfile","withLatestFrom","profile$","profile","userName","surname","phoneNumber","submit","UpdateProfile","decorators","target","desc","c","getOwnPropertyDescriptor","decorate","tslib_1.__decorate","Select","ProfileState","getProfile","Observable","ToastComponent","styles","DEFAULTS","defaultError","defaultError401","defaultError403","defaultError404","ErrorHandler","appRef","cfRes","rendererFactory","injector","RestOccurError","res","HttpErrorResponse","headers","confirmation$","showError","navigateToLogin","createErrorComponent","statusText","hideCancelBtn","yesCopy","Navigate","redirectUrl","RouterState","instance","createRenderer","selectRootElement","componentRef","resolveComponentFactory","attachView","hostView","appendChild","rootNodes","location","ApplicationRef","ComponentFactoryResolver","RendererFactory2","Injector","appendScript","import","then","lazyLoadService","LazyLoadService","forkJoin","load","Confirmation","Statistics","ThemeSharedModule","forRoot","ngModule","providers","provide","APP_INITIALIZER","multi","deps","useFactory","MessageService","useClass","NgModule","imports","CoreModule","ToastModule","NgxValidateCoreModule","targetSelector","blueprints","max","maxlength","min","minlength","passwordMismatch","errorTemplate","declarations","exports","entryComponents","fade","trigger","style","opacity","transition","animate","slideFromBottom","margin-top","Options","Response","Filter","Toaster","count","colors","g"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { Component, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { Store } from '@ngxs/store';\nimport { ConfigState, ABP } from '@abp/ng.core';\n\n@Component({\n selector: 'abp-breadcrumb',\n template: `\n
      \n
    1. \n \n
    2. \n \n {{ segment | abpLocalization }}\n \n
    \n `,\n})\nexport class BreadcrumbComponent implements OnInit {\n show: boolean;\n\n segments: string[] = [];\n\n constructor(private router: Router, private store: Store) {\n this.show = !!this.store.selectSnapshot(state => state.LeptonLayoutState);\n }\n\n ngOnInit(): void {\n const splittedUrl = this.router.url.split('/').filter(chunk => chunk);\n\n const currentUrl: ABP.FullRoute = this.store.selectSnapshot(ConfigState.getRoute(splittedUrl[0]));\n this.segments.push(currentUrl.name);\n\n if (splittedUrl.length > 1) {\n const [, ...arr] = splittedUrl;\n\n let childRoute: ABP.FullRoute = currentUrl;\n for (let i = 0; i < arr.length; i++) {\n const element = arr[i];\n childRoute = childRoute.children.find(child => child.path === element);\n\n this.segments.push(childRoute.name);\n }\n }\n }\n}\n","import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'abp-button',\n template: `\n \n `,\n})\nexport class ButtonComponent {\n @Input()\n buttonClass: string = 'btn btn-primary';\n\n @Input()\n type: string = 'button';\n\n @Input()\n iconClass: string;\n\n @Input()\n loading: boolean = false;\n\n @Input()\n disabled: boolean = false;\n\n get icon(): string {\n return `${this.loading ? 'fa fa-spin fa-spinner' : this.iconClass || 'd-none'}`;\n }\n}\n","import { MessageService } from 'primeng/components/common/messageservice';\nimport { Observable, Subject } from 'rxjs';\nimport { Toaster } from '../models/toaster';\n\nexport class AbstractToaster {\n status$: Subject;\n\n key: string = 'abpToast';\n\n sticky: boolean = false;\n\n constructor(protected messageService: MessageService) {}\n info(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'info', options);\n }\n\n success(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'success', options);\n }\n\n warn(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'warn', options);\n }\n\n error(message: string, title: string, options?: T): Observable {\n return this.show(message, title, 'error', options);\n }\n\n protected show(message: string, title: string, severity: Toaster.Severity, options?: T): Observable {\n this.messageService.clear(this.key);\n\n this.messageService.add({\n severity,\n detail: message || '',\n summary: title || '',\n ...options,\n key: this.key,\n ...(typeof (options || ({} as any)).sticky === 'undefined' && { sticky: this.sticky }),\n });\n this.status$ = new Subject();\n return this.status$;\n }\n\n clear(status?: Toaster.Status) {\n this.messageService.clear(this.key);\n this.status$.next(status || Toaster.Status.dismiss);\n this.status$.complete();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToaster } from '../abstracts/toaster';\nimport { Message } from 'primeng/components/common/message';\n\n@Injectable({ providedIn: 'root' })\nexport class ToasterService extends AbstractToaster {\n addAll(messages: Message[]): void {\n this.messageService.addAll(messages.map(message => ({ key: this.key, ...message })));\n }\n}\n","import { ChangePassword } from '@abp/ng.core';\nimport {\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { comparePasswords } from '@ngx-validate/core';\nimport { Store } from '@ngxs/store';\nimport snq from 'snq';\nimport { finalize } from 'rxjs/operators';\nimport { ToasterService } from '../../services/toaster.service';\n\nconst { minLength, required } = Validators;\n\n@Component({\n selector: 'abp-change-password',\n templateUrl: './change-password.component.html',\n})\nexport class ChangePasswordComponent implements OnInit, OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @ViewChild('modalContent', { static: false })\n modalContent: TemplateRef;\n\n form: FormGroup;\n\n modalBusy: boolean = false;\n\n constructor(private fb: FormBuilder, private store: Store, private toasterService: ToasterService) {}\n\n ngOnInit(): void {\n this.form = this.fb.group(\n {\n password: ['', required],\n newPassword: ['', required],\n repeatNewPassword: ['', required],\n },\n {\n validators: [comparePasswords(['newPassword', 'repeatNewPassword'])],\n },\n );\n }\n\n onSubmit() {\n if (this.form.invalid) return;\n this.modalBusy = true;\n\n this.store\n .dispatch(\n new ChangePassword({\n currentPassword: this.form.get('password').value,\n newPassword: this.form.get('newPassword').value,\n }),\n )\n .pipe(\n finalize(() => {\n this.modalBusy = false;\n }),\n )\n .subscribe({\n next: () => {\n this.visible = false;\n this.form.reset();\n },\n error: err => {\n this.toasterService.error(snq(() => err.error.error.message, 'AbpAccount::DefaultErrorMessage'), 'Error', {\n life: 7000,\n });\n },\n });\n }\n\n openModal() {\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { ReplaySubject } from 'rxjs';\n\nexport function getRandomBackgroundColor(count) {\n const colors = [];\n\n for (let i = 0; i < count; i++) {\n const r = ((i + 5) * (i + 5) * 474) % 255;\n const g = ((i + 5) * (i + 5) * 1600) % 255;\n const b = ((i + 5) * (i + 5) * 84065) % 255;\n colors.push('rgba(' + r + ', ' + g + ', ' + b + ', 0.7)');\n }\n\n return colors;\n}\n\nexport const chartJsLoaded$ = new ReplaySubject(1);\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n ChangeDetectorRef,\n} from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { chartJsLoaded$ } from '../../utils/widget-utils';\ndeclare const Chart: any;\n\n@Component({\n selector: 'abp-chart',\n templateUrl: './chart.component.html',\n})\nexport class ChartComponent implements AfterViewInit, OnDestroy {\n @Input() type: string;\n\n @Input() options: any = {};\n\n @Input() plugins: any[] = [];\n\n @Input() width: string;\n\n @Input() height: string;\n\n @Input() responsive: boolean = true;\n\n @Output() onDataSelect: EventEmitter = new EventEmitter();\n\n @Output() initialized = new BehaviorSubject(this);\n\n private _initialized: boolean;\n\n _data: any;\n\n chart: any;\n\n constructor(public el: ElementRef, private cdRef: ChangeDetectorRef) {}\n\n @Input() get data(): any {\n return this._data;\n }\n\n set data(val: any) {\n this._data = val;\n this.reinit();\n }\n\n get canvas() {\n return this.el.nativeElement.children[0].children[0];\n }\n\n get base64Image() {\n return this.chart.toBase64Image();\n }\n\n ngAfterViewInit() {\n chartJsLoaded$.subscribe(() => {\n try {\n Chart;\n } catch (error) {\n console.error(`Chart is not found. Import the Chart from app.module like shown below:\n import('chart.js');\n `);\n return;\n }\n\n this.initChart();\n this._initialized = true;\n });\n }\n\n onCanvasClick = event => {\n if (this.chart) {\n let element = this.chart.getElementAtEvent(event);\n let dataset = this.chart.getDatasetAtEvent(event);\n if (element && element[0] && dataset) {\n this.onDataSelect.emit({ originalEvent: event, element: element[0], dataset: dataset });\n }\n }\n };\n\n initChart = () => {\n let opts = this.options || {};\n opts.responsive = this.responsive;\n\n // allows chart to resize in responsive mode\n if (opts.responsive && (this.height || this.width)) {\n opts.maintainAspectRatio = false;\n }\n\n this.chart = new Chart(this.el.nativeElement.children[0].children[0], {\n type: this.type,\n data: this.data,\n options: this.options,\n plugins: this.plugins,\n });\n\n this.cdRef.detectChanges();\n };\n\n generateLegend = () => {\n if (this.chart) {\n return this.chart.generateLegend();\n }\n };\n\n refresh = () => {\n if (this.chart) {\n this.chart.update();\n this.cdRef.detectChanges();\n }\n };\n\n reinit = () => {\n if (this.chart) {\n this.chart.destroy();\n this.initChart();\n }\n };\n\n ngOnDestroy() {\n if (this.chart) {\n this.chart.destroy();\n this._initialized = false;\n this.chart = null;\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { AbstractToaster } from '../abstracts/toaster';\nimport { Confirmation } from '../models/confirmation';\n\n@Injectable({ providedIn: 'root' })\nexport class ConfirmationService extends AbstractToaster {\n key: string = 'abpConfirmation';\n\n sticky: boolean = true;\n}\n","import { Component } from '@angular/core';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { Toaster } from '../../models/toaster';\n\n@Component({\n selector: 'abp-confirmation',\n template: `\n \n \n \n
    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n \n `,\n})\nexport class ConfirmationComponent {\n confirm = Toaster.Status.confirm;\n reject = Toaster.Status.reject;\n dismiss = Toaster.Status.dismiss;\n\n constructor(private confirmationService: ConfirmationService) {}\n\n close(status: Toaster.Status) {\n this.confirmationService.clear(status);\n }\n}\n","import { Component, Renderer2, ElementRef } from '@angular/core';\n\n@Component({\n selector: 'abp-error',\n template: `\n
    \n \n
    \n
    \n
    \n

    \n {{ title | abpLocalization }}\n

    \n
    \n {{ details | abpLocalization }}\n
    \n \n
    \n
    \n
    \n
    \n `,\n styleUrls: ['error.component.scss'],\n})\nexport class ErrorComponent {\n title = 'Oops!';\n\n details = 'Sorry, an error has occured.';\n\n renderer: Renderer2;\n\n elementRef: ElementRef;\n\n host: any;\n\n destroy() {\n this.renderer.removeChild(this.host, this.elementRef.nativeElement);\n }\n}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\nimport { Validation, ValidationErrorComponent as ErrorComponent } from '@ngx-validate/core';\n\n@Component({\n selector: 'abp-validation-error',\n template: `\n
    \n {{ error.message | abpLocalization: error.interpoliteParams }}\n
    \n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class ValidationErrorComponent extends ErrorComponent {\n get abpErrors(): Validation.Error[] & { interpoliteParams?: string[] } {\n if (!this.errors || !this.errors.length) return [];\n\n return this.errors.map(error => {\n if (!error.message) return error;\n\n const index = error.message.indexOf('[');\n\n if (index > -1) {\n return {\n ...error,\n message: error.message.slice(0, index),\n interpoliteParams: error.message.slice(index + 1, error.message.length - 1).split(','),\n };\n }\n\n return error;\n });\n }\n}\n","import { StartLoader, StopLoader } from '@abp/ng.core';\nimport { Component, Input, OnDestroy } from '@angular/core';\nimport { NavigationEnd, NavigationStart, Router, NavigationError } from '@angular/router';\nimport { takeUntilDestroy } from '@ngx-validate/core';\nimport { Actions, ofActionSuccessful } from '@ngxs/store';\nimport { filter } from 'rxjs/operators';\n\n@Component({\n selector: 'abp-loader-bar',\n template: `\n
    \n
    \n
    \n `,\n styleUrls: ['./loader-bar.component.scss'],\n})\nexport class LoaderBarComponent implements OnDestroy {\n @Input()\n containerClass: string = 'abp-loader-bar';\n\n @Input()\n progressClass: string = 'abp-progress';\n\n @Input()\n isLoading: boolean = false;\n\n @Input()\n filter = (action: StartLoader | StopLoader) => action.payload.url.indexOf('openid-configuration') < 0;\n\n progressLevel: number = 0;\n\n interval: any;\n\n constructor(private actions: Actions, private router: Router) {\n actions\n .pipe(\n ofActionSuccessful(StartLoader, StopLoader),\n filter(this.filter),\n takeUntilDestroy(this),\n )\n .subscribe(action => {\n if (action instanceof StartLoader) this.startLoading();\n else this.stopLoading();\n });\n\n router.events\n .pipe(\n filter(\n event =>\n event instanceof NavigationStart || event instanceof NavigationEnd || event instanceof NavigationError,\n ),\n takeUntilDestroy(this),\n )\n .subscribe(event => {\n if (event instanceof NavigationStart) this.startLoading();\n else this.stopLoading();\n });\n }\n\n ngOnDestroy() {}\n\n startLoading() {\n this.isLoading = true;\n const interval = setInterval(() => {\n if (this.progressLevel < 75) {\n this.progressLevel += Math.random() * 10;\n } else if (this.progressLevel < 90) {\n this.progressLevel += 0.4;\n } else if (this.progressLevel < 100) {\n this.progressLevel += 0.1;\n } else {\n clearInterval(interval);\n }\n }, 300);\n\n this.interval = interval;\n }\n\n stopLoading() {\n clearInterval(this.interval);\n this.progressLevel = 100;\n this.isLoading = false;\n\n setTimeout(() => {\n this.progressLevel = 0;\n }, 800);\n }\n}\n","import {\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n Input,\n OnDestroy,\n Output,\n Renderer2,\n TemplateRef,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport { fromEvent, Subject, timer } from 'rxjs';\nimport { filter, take, takeUntil, debounceTime } from 'rxjs/operators';\nimport { Toaster } from '../../models/toaster';\nimport { ConfirmationService } from '../../services/confirmation.service';\nimport { ButtonComponent } from '../button/button.component';\n\nexport type ModalSize = 'sm' | 'md' | 'lg' | 'xl';\n\nconst ANIMATION_TIMEOUT = 200;\n\n@Component({\n selector: 'abp-modal',\n templateUrl: './modal.component.html',\n})\nexport class ModalComponent implements OnDestroy {\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n set visible(value: boolean) {\n if (typeof value !== 'boolean') return;\n\n if (!this.modalContent) {\n if (value) {\n setTimeout(() => {\n this.showModal = value;\n this.visible = value;\n }, 0);\n }\n return;\n }\n\n if (value) {\n this.setVisible(value);\n this.listen();\n } else {\n this.closable = false;\n this.renderer.addClass(this.modalContent.nativeElement, 'fade-out-top');\n setTimeout(() => {\n this.setVisible(value);\n this.ngOnDestroy();\n }, ANIMATION_TIMEOUT - 10);\n }\n }\n\n @Input()\n get busy(): boolean {\n return this._busy;\n }\n set busy(value: boolean) {\n if (this.abpSubmit && this.abpSubmit instanceof ButtonComponent) {\n this.abpSubmit.loading = value;\n }\n\n this._busy = value;\n }\n\n @Input() centered: boolean = false;\n\n @Input() modalClass: string = '';\n\n @Input() size: ModalSize = 'lg';\n\n @Input() height: number;\n\n @Input() minHeight: number;\n\n @Output() visibleChange = new EventEmitter();\n\n @Output() init = new EventEmitter();\n\n @ContentChild('abpHeader', { static: false }) abpHeader: TemplateRef;\n\n @ContentChild('abpBody', { static: false }) abpBody: TemplateRef;\n\n @ContentChild('abpFooter', { static: false }) abpFooter: TemplateRef;\n\n @ContentChild('abpClose', { static: false, read: ElementRef }) abpClose: ElementRef;\n\n @ContentChild(ButtonComponent, { static: false, read: ButtonComponent }) abpSubmit: ButtonComponent;\n\n @ViewChild('abpModalContent', { static: false }) modalContent: ElementRef;\n\n @ViewChildren('abp-button') abpButtons;\n\n _visible: boolean = false;\n\n _busy: boolean = false;\n\n showModal: boolean = false;\n\n isOpenConfirmation: boolean = false;\n\n closable: boolean = false;\n\n destroy$ = new Subject();\n\n constructor(private renderer: Renderer2, private confirmationService: ConfirmationService) {}\n\n ngOnDestroy(): void {\n this.destroy$.next();\n }\n\n setVisible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n this.showModal = value;\n\n if (value) {\n timer(ANIMATION_TIMEOUT + 100)\n .pipe(take(1))\n .subscribe(_ => (this.closable = true));\n\n this.renderer.addClass(document.body, 'modal-open');\n } else {\n this.closable = false;\n this.renderer.removeClass(document.body, 'modal-open');\n }\n }\n\n listen() {\n fromEvent(document, 'keyup')\n .pipe(\n takeUntil(this.destroy$),\n debounceTime(150),\n filter((key: KeyboardEvent) => key && key.code === 'Escape' && this.closable),\n )\n .subscribe(_ => {\n this.close();\n });\n\n setTimeout(() => {\n if (!this.abpClose) return;\n fromEvent(this.abpClose.nativeElement, 'click')\n .pipe(\n takeUntil(this.destroy$),\n filter(() => !!(this.closable && this.modalContent)),\n )\n .subscribe(() => this.close());\n }, 0);\n\n this.init.emit();\n }\n\n close() {\n if (!this.closable || this.busy) return;\n\n const nodes = getFlatNodes(\n (this.modalContent.nativeElement.querySelector('#abp-modal-body') as HTMLElement).childNodes,\n );\n\n if (hasNgDirty(nodes)) {\n if (this.isOpenConfirmation) return;\n\n this.isOpenConfirmation = true;\n this.confirmationService\n .warn('AbpAccount::AreYouSureYouWantToCancelEditingWarningMessage', 'AbpAccount::AreYouSure')\n .subscribe((status: Toaster.Status) => {\n timer(ANIMATION_TIMEOUT).subscribe(() => {\n this.isOpenConfirmation = false;\n });\n\n if (status === Toaster.Status.confirm) {\n this.visible = false;\n }\n });\n } else {\n this.visible = false;\n }\n }\n}\n\nfunction getFlatNodes(nodes: NodeList): HTMLElement[] {\n return Array.from(nodes).reduce(\n (acc, val) => [...acc, ...(val.childNodes && val.childNodes.length ? getFlatNodes(val.childNodes) : [val])],\n [],\n );\n}\n\nfunction hasNgDirty(nodes: HTMLElement[]) {\n return nodes.findIndex(node => (node.className || '').indexOf('ng-dirty') > -1) > -1;\n}\n","import { Profile, GetProfile, ProfileState, UpdateProfile } from '@abp/ng.core';\nimport { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\nimport { Select, Store } from '@ngxs/store';\nimport { Observable } from 'rxjs';\nimport { take, withLatestFrom } from 'rxjs/operators';\n\nconst { maxLength, required, email } = Validators;\n\n@Component({\n selector: 'abp-profile',\n templateUrl: './profile.component.html',\n})\nexport class ProfileComponent implements OnChanges {\n protected _visible;\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n\n set visible(value: boolean) {\n this._visible = value;\n this.visibleChange.emit(value);\n }\n\n @Output()\n visibleChange = new EventEmitter();\n\n @Select(ProfileState.getProfile)\n profile$: Observable;\n\n form: FormGroup;\n\n modalBusy: boolean = false;\n\n constructor(private fb: FormBuilder, private store: Store) {}\n\n buildForm() {\n this.store\n .dispatch(new GetProfile())\n .pipe(\n withLatestFrom(this.profile$),\n take(1),\n )\n .subscribe(([, profile]) => {\n this.form = this.fb.group({\n userName: [profile.userName, [required, maxLength(256)]],\n email: [profile.email, [required, email, maxLength(256)]],\n name: [profile.name || '', [maxLength(64)]],\n surname: [profile.surname || '', [maxLength(64)]],\n phoneNumber: [profile.phoneNumber || '', [maxLength(16)]],\n });\n });\n }\n\n submit() {\n if (this.form.invalid) return;\n this.modalBusy = true;\n\n this.store.dispatch(new UpdateProfile(this.form.value)).subscribe(() => {\n this.modalBusy = false;\n this.visible = false;\n this.form.reset();\n });\n }\n\n openModal() {\n this.buildForm();\n this.visible = true;\n }\n\n ngOnChanges({ visible }: SimpleChanges): void {\n if (!visible) return;\n\n if (visible.currentValue) {\n this.openModal();\n } else if (visible.currentValue === false && this.visible) {\n this.visible = false;\n }\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'abp-toast',\n template: `\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n `,\n})\nexport class ToastComponent {}\n","export default `\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.navbar .dropdown-menu {\n min-width: 215px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis-inline {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-ellipsis {\n overflow: hidden !important;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-toast .ui-toast-message {\n box-sizing: border-box !important;\n border: 2px solid transparent !important;\n border-radius: 4px !important;\n background-color: #f4f4f7 !important;\n color: #1b1d29 !important;\n}\n\n.abp-toast .ui-toast-message-content {\n padding: 10px !important;\n}\n\n.abp-toast .ui-toast-message-content .ui-toast-icon {\n top: 0 !important;\n left: 0 !important;\n padding: 10px !important;\n}\n\n.abp-toast .ui-toast-summary {\n margin: 0 !important;\n font-weight: 700 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-error {\n border-color: #ba1659 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-error .ui-toast-message-content .ui-toast-icon {\n color: #ba1659 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-warning {\n border-color: #ed5d98 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-warning .ui-toast-message-content .ui-toast-icon {\n color: #ed5d98 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-success {\n border-color: #1c9174 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-success .ui-toast-message-content .ui-toast-icon {\n color: #1c9174 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-info {\n border-color: #fccb31 !important;\n}\n\n.abp-toast .ui-toast-message.ui-toast-message-info .ui-toast-message-content .ui-toast-icon {\n color: #fccb31 !important;\n}\n\n.abp-confirm .ui-toast-message {\n box-sizing: border-box !important;\n padding: 0px !important;\n border:0 none !important;\n border-radius: 4px !important;\n background-color: #fff !important;\n color: rgba(0, 0, 0, .65) !important;\n font-family: \"Poppins\", sans-serif;\n text-align: center !important;\n}\n\n.abp-confirm .ui-toast-message-content {\n padding: 0px !important;\n}\n\n.abp-confirm .abp-confirm-icon {\n margin: 32px 50px 5px !important;\n color: #f8bb86 !important;\n font-size: 52px !important;\n}\n\n.abp-confirm .ui-toast-close-icon {\n display: none !important;\n}\n\n.abp-confirm .abp-confirm-summary {\n display: block !important;\n margin-bottom: 13px !important;\n padding: 13px 16px 0px !important;\n font-weight: 600 !important;\n font-size: 18px !important;\n}\n\n.abp-confirm .abp-confirm-body {\n display: inline-block !important;\n padding: 0px 10px !important;\n}\n\n.abp-confirm .abp-confirm-footer {\n display: block !important;\n margin-top: 30px !important;\n padding: 16px !important;\n background-color: #f4f4f7 !important;\n text-align: right !important;\n}\n\n.abp-confirm .abp-confirm-footer .btn {\n margin-left: 10px !important;\n}\n\n/* {\n const { payload: err = {} as HttpErrorResponse | any } = res;\n const body = snq(() => (err as HttpErrorResponse).error.error, DEFAULTS.defaultError.message);\n\n if (err instanceof HttpErrorResponse && err.headers.get('_AbpErrorFormat')) {\n const confirmation$ = this.showError(null, null, body);\n\n if (err.status === 401) {\n confirmation$.subscribe(() => {\n this.navigateToLogin();\n });\n }\n } else {\n switch ((err as HttpErrorResponse).status) {\n case 401:\n this.showError(DEFAULTS.defaultError401.details, DEFAULTS.defaultError401.message).subscribe(() =>\n this.navigateToLogin(),\n );\n break;\n case 403:\n this.createErrorComponent({\n title: DEFAULTS.defaultError403.message,\n details: DEFAULTS.defaultError403.details,\n });\n break;\n case 404:\n this.showError(DEFAULTS.defaultError404.details, DEFAULTS.defaultError404.message);\n break;\n case 500:\n this.createErrorComponent({\n title: '500',\n details: 'AbpAccount::InternalServerErrorMessage',\n });\n break;\n case 0:\n if ((err as HttpErrorResponse).statusText === 'Unknown Error') {\n this.createErrorComponent({\n title: 'Unknown Error',\n details: 'AbpAccount::InternalServerErrorMessage',\n });\n }\n break;\n default:\n this.showError(DEFAULTS.defaultError.details, DEFAULTS.defaultError.message);\n break;\n }\n }\n });\n }\n\n private showError(message?: string, title?: string, body?: any): Observable {\n if (body) {\n if (body.details) {\n message = body.details;\n title = body.message;\n } else {\n message = body.message || DEFAULTS.defaultError.message;\n }\n }\n\n return this.confirmationService.error(message, title, {\n hideCancelBtn: true,\n yesCopy: 'OK',\n });\n }\n\n private navigateToLogin() {\n this.store.dispatch(\n new Navigate(['/account/login'], null, {\n state: { redirectUrl: this.store.selectSnapshot(RouterState).state.url },\n }),\n );\n }\n\n createErrorComponent(instance: Partial) {\n const renderer = this.rendererFactory.createRenderer(null, null);\n const host = renderer.selectRootElement('app-root', true);\n\n const componentRef = this.cfRes.resolveComponentFactory(ErrorComponent).create(this.injector);\n\n for (const key in componentRef.instance) {\n if (componentRef.instance.hasOwnProperty(key)) {\n componentRef.instance[key] = instance[key];\n }\n }\n\n this.appRef.attachView(componentRef.hostView);\n renderer.appendChild(host, (componentRef.hostView as EmbeddedViewRef).rootNodes[0]);\n\n componentRef.instance.renderer = renderer;\n componentRef.instance.elementRef = componentRef.location;\n componentRef.instance.host = host;\n }\n}\n","import { CoreModule, LazyLoadService } from '@abp/ng.core';\nimport { APP_INITIALIZER, Injector, ModuleWithProviders, NgModule } from '@angular/core';\nimport { NgxValidateCoreModule } from '@ngx-validate/core';\nimport { MessageService } from 'primeng/components/common/messageservice';\nimport { ToastModule } from 'primeng/toast';\nimport { forkJoin } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { BreadcrumbComponent } from './components/breadcrumb/breadcrumb.component';\nimport { ButtonComponent } from './components/button/button.component';\nimport { ChangePasswordComponent } from './components/change-password/change-password.component';\nimport { ChartComponent } from './components/chart/chart.component';\nimport { ConfirmationComponent } from './components/confirmation/confirmation.component';\nimport { ErrorComponent } from './components/errors/error.component';\nimport { ValidationErrorComponent } from './components/errors/validation-error.component';\nimport { LoaderBarComponent } from './components/loader-bar/loader-bar.component';\nimport { ModalComponent } from './components/modal/modal.component';\nimport { ProfileComponent } from './components/profile/profile.component';\nimport { ToastComponent } from './components/toast/toast.component';\nimport styles from './contants/styles';\nimport { ErrorHandler } from './handlers/error.handler';\nimport { chartJsLoaded$ } from './utils/widget-utils';\n\nexport function appendScript(injector: Injector) {\n const fn = function() {\n import('chart.js').then(() => chartJsLoaded$.next(true));\n\n const lazyLoadService: LazyLoadService = injector.get(LazyLoadService);\n\n return forkJoin(\n lazyLoadService.load(\n null,\n 'style',\n styles,\n 'head',\n 'afterbegin',\n ) /* lazyLoadService.load(null, 'script', scripts) */,\n ).pipe(take(1));\n };\n\n return fn;\n}\n\n@NgModule({\n imports: [\n CoreModule,\n ToastModule,\n NgxValidateCoreModule.forRoot({\n targetSelector: '.form-group',\n blueprints: {\n email: `AbpAccount::ThisFieldIsNotAValidEmailAddress.`,\n max: `AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]`,\n maxlength: `AbpAccount::ThisFieldMustBeAStringWithAMaximumLengthOf{1}[{{ requiredLength }}]`,\n min: `AbpAccount::ThisFieldMustBeBetween{0}And{1}[{{ min }},{{ max }}]`,\n minlength: `AbpAccount::ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf[{{ min }},{{ max }}]`,\n required: `AbpAccount::ThisFieldIsRequired.`,\n passwordMismatch: `AbpIdentity::Identity.PasswordConfirmationFailed`,\n },\n errorTemplate: ValidationErrorComponent,\n }),\n ],\n declarations: [\n BreadcrumbComponent,\n ButtonComponent,\n ChangePasswordComponent,\n ChartComponent,\n ConfirmationComponent,\n ErrorComponent,\n LoaderBarComponent,\n ModalComponent,\n ProfileComponent,\n ToastComponent,\n ValidationErrorComponent,\n ],\n exports: [\n BreadcrumbComponent,\n ButtonComponent,\n ChangePasswordComponent,\n ChartComponent,\n ConfirmationComponent,\n LoaderBarComponent,\n ModalComponent,\n ProfileComponent,\n ToastComponent,\n ],\n entryComponents: [ErrorComponent, ValidationErrorComponent],\n})\nexport class ThemeSharedModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: ThemeSharedModule,\n providers: [\n {\n provide: APP_INITIALIZER,\n multi: true,\n deps: [Injector, ErrorHandler],\n useFactory: appendScript,\n },\n { provide: MessageService, useClass: MessageService },\n ],\n };\n }\n}\n","import { Toaster } from './toaster';\n\nexport namespace Confirmation {\n export interface Options extends Toaster.Options {\n hideCancelBtn?: boolean;\n hideYesBtn?: boolean;\n cancelCopy?: string;\n yesCopy?: string;\n }\n}\n","export namespace Statistics {\n export interface Response {\n data: Data;\n }\n\n export interface Data {\n [key: string]: number;\n }\n\n export interface Filter {\n startDate: string | Date;\n endDate: string | Date;\n }\n}\n","import { animate, state, style, transition, trigger } from '@angular/animations';\n\nexport const fade = trigger('fade', [\n state('void', style({ opacity: 1 })),\n transition(':enter', [style({ opacity: 0 }), animate(250)]),\n transition(':leave', animate(250, style({ opacity: 0 }))),\n]);\n","import { animate, state, style, transition, trigger, query } from '@angular/animations';\nexport const slideFromBottom = trigger('routeAnimations', [\n state('void', style({ 'margin-top': '20px', opacity: '0' })),\n state('*', style({ 'margin-top': '0px', opacity: '1' })),\n transition(':enter', [animate('0.2s ease-out', style({ opacity: '1', 'margin-top': '0px' }))]),\n]);\n","export namespace Toaster {\n export interface Options {\n id?: any;\n closable?: boolean;\n life?: number;\n sticky?: boolean;\n data?: any;\n messageLocalizationParams?: string[];\n titleLocalizationParams?: string[];\n }\n\n export type Severity = 'success' | 'info' | 'warn' | 'error';\n\n export const enum Status {\n confirm = 'confirm',\n reject = 'reject',\n dismiss = 'dismiss',\n }\n}\n"]} \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/abp-ng.theme.shared.js b/npm/ng-packs/dist/theme-shared/esm2015/abp-ng.theme.shared.js index 43d4337172..5bd81abc33 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/abp-ng.theme.shared.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/abp-ng.theme.shared.js @@ -5,19 +5,20 @@ /** * Generated bundle index. Do not edit. */ -export { appendScript, ThemeSharedModule, fade, slideFromBottom, ButtonComponent, BreadcrumbComponent, ChangePasswordComponent, ConfirmationComponent, LoaderBarComponent, ModalComponent, ProfileComponent, ToastComponent, Toaster, ConfirmationService, ToasterService } from './public-api'; -export { AbstractToaster as ɵe } from './lib/abstracts/toaster'; -export { BreadcrumbComponent as ɵm } from './lib/components/breadcrumb/breadcrumb.component'; -export { ButtonComponent as ɵb } from './lib/components/button/button.component'; -export { ChangePasswordComponent as ɵj } from './lib/components/change-password/change-password.component'; -export { ConfirmationComponent as ɵc } from './lib/components/confirmation/confirmation.component'; -export { ErrorComponent as ɵh } from './lib/components/errors/error.component'; +export { appendScript, ThemeSharedModule, fade, slideFromBottom, BreadcrumbComponent, ButtonComponent, ChangePasswordComponent, ChartComponent, ConfirmationComponent, LoaderBarComponent, ModalComponent, ProfileComponent, ToastComponent, Toaster, ConfirmationService, ToasterService, getRandomBackgroundColor, chartJsLoaded$ } from './public-api'; +export { AbstractToaster as ɵf } from './lib/abstracts/toaster'; +export { BreadcrumbComponent as ɵb } from './lib/components/breadcrumb/breadcrumb.component'; +export { ButtonComponent as ɵc } from './lib/components/button/button.component'; +export { ChangePasswordComponent as ɵd } from './lib/components/change-password/change-password.component'; +export { ChartComponent as ɵg } from './lib/components/chart/chart.component'; +export { ConfirmationComponent as ɵh } from './lib/components/confirmation/confirmation.component'; +export { ErrorComponent as ɵj } from './lib/components/errors/error.component'; export { ValidationErrorComponent as ɵa } from './lib/components/errors/validation-error.component'; -export { LoaderBarComponent as ɵi } from './lib/components/loader-bar/loader-bar.component'; -export { ModalComponent as ɵg } from './lib/components/modal/modal.component'; -export { ProfileComponent as ɵl } from './lib/components/profile/profile.component'; -export { ToastComponent as ɵf } from './lib/components/toast/toast.component'; -export { ErrorHandler as ɵn } from './lib/handlers/error.handler'; -export { ConfirmationService as ɵd } from './lib/services/confirmation.service'; -export { ToasterService as ɵk } from './lib/services/toaster.service'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLnNoYXJlZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsiYWJwLW5nLnRoZW1lLnNoYXJlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsaVJBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQzNGLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDL0UsT0FBTyxFQUFDLHVCQUF1QixJQUFJLEVBQUUsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQ3pHLE9BQU8sRUFBQyxxQkFBcUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUNqRyxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQzdFLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxvREFBb0QsQ0FBQztBQUNsRyxPQUFPLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDMUYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbEYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLGdDQUFnQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0Fic3RyYWN0VG9hc3RlciBhcyDJtWV9IGZyb20gJy4vbGliL2Fic3RyYWN0cy90b2FzdGVyJztcbmV4cG9ydCB7QnJlYWRjcnVtYkNvbXBvbmVudCBhcyDJtW19IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudCc7XG5leHBvcnQge0J1dHRvbkNvbXBvbmVudCBhcyDJtWJ9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0IHtDaGFuZ2VQYXNzd29yZENvbXBvbmVudCBhcyDJtWp9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQnO1xuZXhwb3J0IHtDb25maXJtYXRpb25Db21wb25lbnQgYXMgybVjfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi9jb25maXJtYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCB7RXJyb3JDb21wb25lbnQgYXMgybVofSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9ycy9lcnJvci5jb21wb25lbnQnO1xuZXhwb3J0IHtWYWxpZGF0aW9uRXJyb3JDb21wb25lbnQgYXMgybVhfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9ycy92YWxpZGF0aW9uLWVycm9yLmNvbXBvbmVudCc7XG5leHBvcnQge0xvYWRlckJhckNvbXBvbmVudCBhcyDJtWl9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvbG9hZGVyLWJhci9sb2FkZXItYmFyLmNvbXBvbmVudCc7XG5leHBvcnQge01vZGFsQ29tcG9uZW50IGFzIMm1Z30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0IHtQcm9maWxlQ29tcG9uZW50IGFzIMm1bH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JztcbmV4cG9ydCB7VG9hc3RDb21wb25lbnQgYXMgybVmfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5leHBvcnQge0Vycm9ySGFuZGxlciBhcyDJtW59IGZyb20gJy4vbGliL2hhbmRsZXJzL2Vycm9yLmhhbmRsZXInO1xuZXhwb3J0IHtDb25maXJtYXRpb25TZXJ2aWNlIGFzIMm1ZH0gZnJvbSAnLi9saWIvc2VydmljZXMvY29uZmlybWF0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHtUb2FzdGVyU2VydmljZSBhcyDJtWt9IGZyb20gJy4vbGliL3NlcnZpY2VzL3RvYXN0ZXIuc2VydmljZSc7Il19 \ No newline at end of file +export { LoaderBarComponent as ɵk } from './lib/components/loader-bar/loader-bar.component'; +export { ModalComponent as ɵl } from './lib/components/modal/modal.component'; +export { ProfileComponent as ɵm } from './lib/components/profile/profile.component'; +export { ToastComponent as ɵn } from './lib/components/toast/toast.component'; +export { ErrorHandler as ɵo } from './lib/handlers/error.handler'; +export { ConfirmationService as ɵi } from './lib/services/confirmation.service'; +export { ToasterService as ɵe } from './lib/services/toaster.service'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLnNoYXJlZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsiYWJwLW5nLnRoZW1lLnNoYXJlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsMlVBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQzNGLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDL0UsT0FBTyxFQUFDLHVCQUF1QixJQUFJLEVBQUUsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQ3pHLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQ2pHLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDN0UsT0FBTyxFQUFDLHdCQUF3QixJQUFJLEVBQUUsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBQ2xHLE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUMxRixPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxnQkFBZ0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUNsRixPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7QWJzdHJhY3RUb2FzdGVyIGFzIMm1Zn0gZnJvbSAnLi9saWIvYWJzdHJhY3RzL3RvYXN0ZXInO1xuZXhwb3J0IHtCcmVhZGNydW1iQ29tcG9uZW50IGFzIMm1Yn0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50JztcbmV4cG9ydCB7QnV0dG9uQ29tcG9uZW50IGFzIMm1Y30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQge0NoYW5nZVBhc3N3b3JkQ29tcG9uZW50IGFzIMm1ZH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudCc7XG5leHBvcnQge0NoYXJ0Q29tcG9uZW50IGFzIMm1Z30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9jaGFydC9jaGFydC5jb21wb25lbnQnO1xuZXhwb3J0IHtDb25maXJtYXRpb25Db21wb25lbnQgYXMgybVofSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi9jb25maXJtYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCB7RXJyb3JDb21wb25lbnQgYXMgybVqfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9ycy9lcnJvci5jb21wb25lbnQnO1xuZXhwb3J0IHtWYWxpZGF0aW9uRXJyb3JDb21wb25lbnQgYXMgybVhfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9ycy92YWxpZGF0aW9uLWVycm9yLmNvbXBvbmVudCc7XG5leHBvcnQge0xvYWRlckJhckNvbXBvbmVudCBhcyDJtWt9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvbG9hZGVyLWJhci9sb2FkZXItYmFyLmNvbXBvbmVudCc7XG5leHBvcnQge01vZGFsQ29tcG9uZW50IGFzIMm1bH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0IHtQcm9maWxlQ29tcG9uZW50IGFzIMm1bX0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JztcbmV4cG9ydCB7VG9hc3RDb21wb25lbnQgYXMgybVufSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5leHBvcnQge0Vycm9ySGFuZGxlciBhcyDJtW99IGZyb20gJy4vbGliL2hhbmRsZXJzL2Vycm9yLmhhbmRsZXInO1xuZXhwb3J0IHtDb25maXJtYXRpb25TZXJ2aWNlIGFzIMm1aX0gZnJvbSAnLi9saWIvc2VydmljZXMvY29uZmlybWF0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHtUb2FzdGVyU2VydmljZSBhcyDJtWV9IGZyb20gJy4vbGliL3NlcnZpY2VzL3RvYXN0ZXIuc2VydmljZSc7Il19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/chart/chart.component.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/chart/chart.component.js new file mode 100644 index 0000000000..1532d96f68 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/chart/chart.component.js @@ -0,0 +1,206 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Component, ElementRef, EventEmitter, Input, Output, ChangeDetectorRef, } from '@angular/core'; +import { BehaviorSubject } from 'rxjs'; +import { chartJsLoaded$ } from '../../utils/widget-utils'; +export class ChartComponent { + /** + * @param {?} el + * @param {?} cdRef + */ + constructor(el, cdRef) { + this.el = el; + this.cdRef = cdRef; + this.options = {}; + this.plugins = []; + this.responsive = true; + this.onDataSelect = new EventEmitter(); + this.initialized = new BehaviorSubject(this); + this.onCanvasClick = (/** + * @param {?} event + * @return {?} + */ + event => { + if (this.chart) { + /** @type {?} */ + let element = this.chart.getElementAtEvent(event); + /** @type {?} */ + let dataset = this.chart.getDatasetAtEvent(event); + if (element && element[0] && dataset) { + this.onDataSelect.emit({ originalEvent: event, element: element[0], dataset: dataset }); + } + } + }); + this.initChart = (/** + * @return {?} + */ + () => { + /** @type {?} */ + let opts = this.options || {}; + opts.responsive = this.responsive; + // allows chart to resize in responsive mode + if (opts.responsive && (this.height || this.width)) { + opts.maintainAspectRatio = false; + } + this.chart = new Chart(this.el.nativeElement.children[0].children[0], { + type: this.type, + data: this.data, + options: this.options, + plugins: this.plugins, + }); + this.cdRef.detectChanges(); + }); + this.generateLegend = (/** + * @return {?} + */ + () => { + if (this.chart) { + return this.chart.generateLegend(); + } + }); + this.refresh = (/** + * @return {?} + */ + () => { + if (this.chart) { + this.chart.update(); + this.cdRef.detectChanges(); + } + }); + this.reinit = (/** + * @return {?} + */ + () => { + if (this.chart) { + this.chart.destroy(); + this.initChart(); + } + }); + } + /** + * @return {?} + */ + get data() { + return this._data; + } + /** + * @param {?} val + * @return {?} + */ + set data(val) { + this._data = val; + this.reinit(); + } + /** + * @return {?} + */ + get canvas() { + return this.el.nativeElement.children[0].children[0]; + } + /** + * @return {?} + */ + get base64Image() { + return this.chart.toBase64Image(); + } + /** + * @return {?} + */ + ngAfterViewInit() { + chartJsLoaded$.subscribe((/** + * @return {?} + */ + () => { + try { + Chart; + } + catch (error) { + console.error(`Chart is not found. Import the Chart from app.module like shown below: + import('chart.js'); + `); + return; + } + this.initChart(); + this._initialized = true; + })); + } + /** + * @return {?} + */ + ngOnDestroy() { + if (this.chart) { + this.chart.destroy(); + this._initialized = false; + this.chart = null; + } + } +} +ChartComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-chart', + template: "\n \n\n" + }] } +]; +/** @nocollapse */ +ChartComponent.ctorParameters = () => [ + { type: ElementRef }, + { type: ChangeDetectorRef } +]; +ChartComponent.propDecorators = { + type: [{ type: Input }], + options: [{ type: Input }], + plugins: [{ type: Input }], + width: [{ type: Input }], + height: [{ type: Input }], + responsive: [{ type: Input }], + onDataSelect: [{ type: Output }], + initialized: [{ type: Output }], + data: [{ type: Input }] +}; +if (false) { + /** @type {?} */ + ChartComponent.prototype.type; + /** @type {?} */ + ChartComponent.prototype.options; + /** @type {?} */ + ChartComponent.prototype.plugins; + /** @type {?} */ + ChartComponent.prototype.width; + /** @type {?} */ + ChartComponent.prototype.height; + /** @type {?} */ + ChartComponent.prototype.responsive; + /** @type {?} */ + ChartComponent.prototype.onDataSelect; + /** @type {?} */ + ChartComponent.prototype.initialized; + /** + * @type {?} + * @private + */ + ChartComponent.prototype._initialized; + /** @type {?} */ + ChartComponent.prototype._data; + /** @type {?} */ + ChartComponent.prototype.chart; + /** @type {?} */ + ChartComponent.prototype.onCanvasClick; + /** @type {?} */ + ChartComponent.prototype.initChart; + /** @type {?} */ + ChartComponent.prototype.generateLegend; + /** @type {?} */ + ChartComponent.prototype.refresh; + /** @type {?} */ + ChartComponent.prototype.reinit; + /** @type {?} */ + ChartComponent.prototype.el; + /** + * @type {?} + * @private + */ + ChartComponent.prototype.cdRef; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9jaGFydC9jaGFydC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQU8xRCxNQUFNLE9BQU8sY0FBYzs7Ozs7SUF1QnpCLFlBQW1CLEVBQWMsRUFBVSxLQUF3QjtRQUFoRCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFwQjFELFlBQU8sR0FBUSxFQUFFLENBQUM7UUFFbEIsWUFBTyxHQUFVLEVBQUUsQ0FBQztRQU1wQixlQUFVLEdBQVksSUFBSSxDQUFDO1FBRTFCLGlCQUFZLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFckQsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQTJDbEQsa0JBQWE7Ozs7UUFBRyxLQUFLLENBQUMsRUFBRTtZQUN0QixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7O29CQUNWLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQzs7b0JBQzdDLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQztnQkFDakQsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLE9BQU8sRUFBRTtvQkFDcEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxhQUFh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Q0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7WUFDMUIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7U0FDbkI7SUFDSCxDQUFDOzs7WUFySEYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxXQUFXO2dCQUNyQix3V0FBcUM7YUFDdEM7Ozs7WUFkQyxVQUFVO1lBS1YsaUJBQWlCOzs7bUJBV2hCLEtBQUs7c0JBRUwsS0FBSztzQkFFTCxLQUFLO29CQUVMLEtBQUs7cUJBRUwsS0FBSzt5QkFFTCxLQUFLOzJCQUVMLE1BQU07MEJBRU4sTUFBTTttQkFVTixLQUFLOzs7O0lBeEJOLDhCQUFzQjs7SUFFdEIsaUNBQTJCOztJQUUzQixpQ0FBNkI7O0lBRTdCLCtCQUF1Qjs7SUFFdkIsZ0NBQXdCOztJQUV4QixvQ0FBb0M7O0lBRXBDLHNDQUErRDs7SUFFL0QscUNBQWtEOzs7OztJQUVsRCxzQ0FBOEI7O0lBRTlCLCtCQUFXOztJQUVYLCtCQUFXOztJQXFDWCx1Q0FRRTs7SUFFRixtQ0FpQkU7O0lBRUYsd0NBSUU7O0lBRUYsaUNBS0U7O0lBRUYsZ0NBS0U7O0lBbEZVLDRCQUFxQjs7Ozs7SUFBRSwrQkFBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNoYXJ0SnNMb2FkZWQkIH0gZnJvbSAnLi4vLi4vdXRpbHMvd2lkZ2V0LXV0aWxzJztcbmRlY2xhcmUgY29uc3QgQ2hhcnQ6IGFueTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLWNoYXJ0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoYXJ0LmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgQ2hhcnRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSB0eXBlOiBzdHJpbmc7XG5cbiAgQElucHV0KCkgb3B0aW9uczogYW55ID0ge307XG5cbiAgQElucHV0KCkgcGx1Z2luczogYW55W10gPSBbXTtcblxuICBASW5wdXQoKSB3aWR0aDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIGhlaWdodDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIHJlc3BvbnNpdmU6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBPdXRwdXQoKSBvbkRhdGFTZWxlY3Q6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKSBpbml0aWFsaXplZCA9IG5ldyBCZWhhdmlvclN1YmplY3QodGhpcyk7XG5cbiAgcHJpdmF0ZSBfaW5pdGlhbGl6ZWQ6IGJvb2xlYW47XG5cbiAgX2RhdGE6IGFueTtcblxuICBjaGFydDogYW55O1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBlbDogRWxlbWVudFJlZiwgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgQElucHV0KCkgZ2V0IGRhdGEoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YTtcbiAgfVxuXG4gIHNldCBkYXRhKHZhbDogYW55KSB7XG4gICAgdGhpcy5fZGF0YSA9IHZhbDtcbiAgICB0aGlzLnJlaW5pdCgpO1xuICB9XG5cbiAgZ2V0IGNhbnZhcygpIHtcbiAgICByZXR1cm4gdGhpcy5lbC5uYXRpdmVFbGVtZW50LmNoaWxkcmVuWzBdLmNoaWxkcmVuWzBdO1xuICB9XG5cbiAgZ2V0IGJhc2U2NEltYWdlKCkge1xuICAgIHJldHVybiB0aGlzLmNoYXJ0LnRvQmFzZTY0SW1hZ2UoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBjaGFydEpzTG9hZGVkJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgQ2hhcnQ7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBjb25zb2xlLmVycm9yKGBDaGFydCBpcyBub3QgZm91bmQuIEltcG9ydCB0aGUgQ2hhcnQgZnJvbSBhcHAubW9kdWxlIGxpa2Ugc2hvd24gYmVsb3c6XG4gICAgICAgIGltcG9ydCgnY2hhcnQuanMnKTtcbiAgICAgICAgYCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdGhpcy5pbml0Q2hhcnQoKTtcbiAgICAgIHRoaXMuX2luaXRpYWxpemVkID0gdHJ1ZTtcbiAgICB9KTtcbiAgfVxuXG4gIG9uQ2FudmFzQ2xpY2sgPSBldmVudCA9PiB7XG4gICAgaWYgKHRoaXMuY2hhcnQpIHtcbiAgICAgIGxldCBlbGVtZW50ID0gdGhpcy5jaGFydC5nZXRFbGVtZW50QXRFdmVudChldmVudCk7XG4gICAgICBsZXQgZGF0YXNldCA9IHRoaXMuY2hhcnQuZ2V0RGF0YXNldEF0RXZlbnQoZXZlbnQpO1xuICAgICAgaWYgKGVsZW1lbnQgJiYgZWxlbWVudFswXSAmJiBkYXRhc2V0KSB7XG4gICAgICAgIHRoaXMub25EYXRhU2VsZWN0LmVtaXQoeyBvcmlnaW5hbEV2ZW50OiBldmVudCwgZWxlbWVudDogZWxlbWVudFswXSwgZGF0YXNldDogZGF0YXNldCB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgaW5pdENoYXJ0ID0gKCkgPT4ge1xuICAgIGxldCBvcHRzID0gdGhpcy5vcHRpb25zIHx8IHt9O1xuICAgIG9wdHMucmVzcG9uc2l2ZSA9IHRoaXMucmVzcG9uc2l2ZTtcblxuICAgIC8vIGFsbG93cyBjaGFydCB0byByZXNpemUgaW4gcmVzcG9uc2l2ZSBtb2RlXG4gICAgaWYgKG9wdHMucmVzcG9uc2l2ZSAmJiAodGhpcy5oZWlnaHQgfHwgdGhpcy53aWR0aCkpIHtcbiAgICAgIG9wdHMubWFpbnRhaW5Bc3BlY3RSYXRpbyA9IGZhbHNlO1xuICAgIH1cblxuICAgIHRoaXMuY2hhcnQgPSBuZXcgQ2hhcnQodGhpcy5lbC5uYXRpdmVFbGVtZW50LmNoaWxkcmVuWzBdLmNoaWxkcmVuWzBdLCB7XG4gICAgICB0eXBlOiB0aGlzLnR5cGUsXG4gICAgICBkYXRhOiB0aGlzLmRhdGEsXG4gICAgICBvcHRpb25zOiB0aGlzLm9wdGlvbnMsXG4gICAgICBwbHVnaW5zOiB0aGlzLnBsdWdpbnMsXG4gICAgfSk7XG5cbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfTtcblxuICBnZW5lcmF0ZUxlZ2VuZCA9ICgpID0+IHtcbiAgICBpZiAodGhpcy5jaGFydCkge1xuICAgICAgcmV0dXJuIHRoaXMuY2hhcnQuZ2VuZXJhdGVMZWdlbmQoKTtcbiAgICB9XG4gIH07XG5cbiAgcmVmcmVzaCA9ICgpID0+IHtcbiAgICBpZiAodGhpcy5jaGFydCkge1xuICAgICAgdGhpcy5jaGFydC51cGRhdGUoKTtcbiAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfTtcblxuICByZWluaXQgPSAoKSA9PiB7XG4gICAgaWYgKHRoaXMuY2hhcnQpIHtcbiAgICAgIHRoaXMuY2hhcnQuZGVzdHJveSgpO1xuICAgICAgdGhpcy5pbml0Q2hhcnQoKTtcbiAgICB9XG4gIH07XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMuY2hhcnQpIHtcbiAgICAgIHRoaXMuY2hhcnQuZGVzdHJveSgpO1xuICAgICAgdGhpcy5faW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMuY2hhcnQgPSBudWxsO1xuICAgIH1cbiAgfVxufVxuIl19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/confirmation/confirmation.component.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/confirmation/confirmation.component.js index 1fc497334a..0ba405c862 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/confirmation/confirmation.component.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/confirmation/confirmation.component.js @@ -32,26 +32,25 @@ ConfirmationComponent.decorators = [ (onClose)="close(dismiss)" [modal]="true" [baseZIndex]="1000" - styleClass="" + styleClass="abp-confirm" > - \n \n\n \n\n" + template: "\n \n
    \n
    \n \n\n \n
    \n \n \n
    \n
    \n \n
    \n \n \n\n \n\n" }] } ]; /** @nocollapse */ @@ -284,4 +289,4 @@ function hasNgDirty(nodes) { */ node => (node.className || '').indexOf('ng-dirty') > -1)) > -1; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsV0FBVyxFQUNYLFNBQVMsRUFDVCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O01BSXZELGlCQUFpQixHQUFHLEdBQUc7QUFNN0IsTUFBTSxPQUFPLGNBQWM7Ozs7O0lBbUZ6QixZQUFvQixRQUFtQixFQUFVLG1CQUF3QztRQUFyRSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQXhDaEYsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQixlQUFVLEdBQVcsRUFBRSxDQUFDO1FBRXhCLFNBQUksR0FBYyxJQUFJLENBQUM7UUFNdEIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTVDLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBZ0IxQyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLFVBQUssR0FBWSxLQUFLLENBQUM7UUFFdkIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQix1QkFBa0IsR0FB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RSxpQ0FBc0U7O0lBRXRFLG1DQUEwRTs7SUFFMUUsa0NBQXlGOztJQUV6RixtQ0FBb0c7O0lBRXBHLHNDQUEwRTs7SUFFMUUsb0NBQXVDOztJQUV2QyxrQ0FBMEI7O0lBRTFCLCtCQUF1Qjs7SUFFdkIsbUNBQTJCOztJQUUzQiw0Q0FBb0M7O0lBRXBDLGtDQUEwQjs7SUFFMUIsa0NBQStCOzs7OztJQUVuQixrQ0FBMkI7Ozs7O0lBQUUsNkNBQWdEOzs7Ozs7QUFzRTNGLFNBQVMsWUFBWSxDQUFDLEtBQWU7SUFDbkMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU07Ozs7O0lBQzdCLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLEdBQUcsRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFDLFVBQVUsSUFBSSxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQzNHLEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQzs7Ozs7QUFFRCxTQUFTLFVBQVUsQ0FBQyxLQUFvQjtJQUN0QyxPQUFPLEtBQUssQ0FBQyxTQUFTOzs7O0lBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDdkYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJqZWN0LCB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCB0YWtlLCB0YWtlVW50aWwsIGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRvYXN0ZXIgfSBmcm9tICcuLi8uLi9tb2RlbHMvdG9hc3Rlcic7XG5pbXBvcnQgeyBDb25maXJtYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29uZmlybWF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuXG5leHBvcnQgdHlwZSBNb2RhbFNpemUgPSAnc20nIHwgJ21kJyB8ICdsZycgfCAneGwnO1xuXG5jb25zdCBBTklNQVRJT05fVElNRU9VVCA9IDIwMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcbiAgfVxuICBzZXQgdmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdib29sZWFuJykgcmV0dXJuO1xuXG4gICAgaWYgKCF0aGlzLm1vZGFsQ29udGVudCkge1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuc2hvd01vZGFsID0gdmFsdWU7XG4gICAgICAgICAgdGhpcy52aXNpYmxlID0gdmFsdWU7XG4gICAgICAgIH0sIDApO1xuICAgICAgfVxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5zZXRWaXNpYmxlKHZhbHVlKTtcbiAgICAgIHRoaXMubGlzdGVuKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2xvc2FibGUgPSBmYWxzZTtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5tb2RhbENvbnRlbnQubmF0aXZlRWxlbWVudCwgJ2ZhZGUtb3V0LXRvcCcpO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0VmlzaWJsZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMubmdPbkRlc3Ryb3koKTtcbiAgICAgIH0sIEFOSU1BVElPTl9USU1FT1VUIC0gMTApO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBidXN5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9idXN5O1xuICB9XG4gIHNldCBidXN5KHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKHRoaXMuYWJwU3VibWl0ICYmIHRoaXMuYWJwU3VibWl0IGluc3RhbmNlb2YgQnV0dG9uQ29tcG9uZW50KSB7XG4gICAgICB0aGlzLmFicFN1Ym1pdC5sb2FkaW5nID0gdmFsdWU7XG4gICAgfVxuXG4gICAgdGhpcy5fYnVzeSA9IHZhbHVlO1xuICB9XG5cbiAgQElucHV0KCkgY2VudGVyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKSBtb2RhbENsYXNzOiBzdHJpbmcgPSAnJztcblxuICBASW5wdXQoKSBzaXplOiBNb2RhbFNpemUgPSAnbGcnO1xuXG4gIEBJbnB1dCgpIGhlaWdodDogbnVtYmVyO1xuXG4gIEBJbnB1dCgpIG1pbkhlaWdodDogbnVtYmVyO1xuXG4gIEBPdXRwdXQoKSB2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIEBPdXRwdXQoKSBpbml0ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBDb250ZW50Q2hpbGQoJ2FicEhlYWRlcicsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBIZWFkZXI6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZCgnYWJwQm9keScsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBCb2R5OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBDb250ZW50Q2hpbGQoJ2FicEZvb3RlcicsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBGb290ZXI6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZCgnYWJwQ2xvc2UnLCB7IHN0YXRpYzogZmFsc2UsIHJlYWQ6IEVsZW1lbnRSZWYgfSkgYWJwQ2xvc2U6IEVsZW1lbnRSZWY8YW55PjtcblxuICBAQ29udGVudENoaWxkKEJ1dHRvbkNvbXBvbmVudCwgeyBzdGF0aWM6IGZhbHNlLCByZWFkOiBCdXR0b25Db21wb25lbnQgfSkgYWJwU3VibWl0OiBCdXR0b25Db21wb25lbnQ7XG5cbiAgQFZpZXdDaGlsZCgnYWJwTW9kYWxDb250ZW50JywgeyBzdGF0aWM6IGZhbHNlIH0pIG1vZGFsQ29udGVudDogRWxlbWVudFJlZjtcblxuICBAVmlld0NoaWxkcmVuKCdhYnAtYnV0dG9uJykgYWJwQnV0dG9ucztcblxuICBfdmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIF9idXN5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgc2hvd01vZGFsOiBib29sZWFuID0gZmFsc2U7XG5cbiAgaXNPcGVuQ29uZmlybWF0aW9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY2xvc2FibGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UpIHt9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gIH1cblxuICBzZXRWaXNpYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fdmlzaWJsZSA9IHZhbHVlO1xuICAgIHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICB0aGlzLnNob3dNb2RhbCA9IHZhbHVlO1xuXG4gICAgdmFsdWVcbiAgICAgID8gdGltZXIoQU5JTUFUSU9OX1RJTUVPVVQgKyAxMDApXG4gICAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKF8gPT4gKHRoaXMuY2xvc2FibGUgPSB0cnVlKSlcbiAgICAgIDogKHRoaXMuY2xvc2FibGUgPSBmYWxzZSk7XG4gIH1cblxuICBsaXN0ZW4oKSB7XG4gICAgZnJvbUV2ZW50KGRvY3VtZW50LCAna2V5dXAnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDE1MCksXG4gICAgICAgIGZpbHRlcigoa2V5OiBLZXlib2FyZEV2ZW50KSA9PiBrZXkgJiYga2V5LmNvZGUgPT09ICdFc2NhcGUnICYmIHRoaXMuY2xvc2FibGUpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShfID0+IHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfSk7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICghdGhpcy5hYnBDbG9zZSkgcmV0dXJuO1xuICAgICAgZnJvbUV2ZW50KHRoaXMuYWJwQ2xvc2UubmF0aXZlRWxlbWVudCwgJ2NsaWNrJylcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICAgIGZpbHRlcigoKSA9PiAhISh0aGlzLmNsb3NhYmxlICYmIHRoaXMubW9kYWxDb250ZW50KSksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNsb3NlKCkpO1xuICAgIH0sIDApO1xuXG4gICAgdGhpcy5pbml0LmVtaXQoKTtcbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIGlmICghdGhpcy5jbG9zYWJsZSB8fCB0aGlzLmJ1c3kpIHJldHVybjtcblxuICAgIGNvbnN0IG5vZGVzID0gZ2V0RmxhdE5vZGVzKFxuICAgICAgKHRoaXMubW9kYWxDb250ZW50Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignI2FicC1tb2RhbC1ib2R5JykgYXMgSFRNTEVsZW1lbnQpLmNoaWxkTm9kZXMsXG4gICAgKTtcblxuICAgIGlmIChoYXNOZ0RpcnR5KG5vZGVzKSkge1xuICAgICAgaWYgKHRoaXMuaXNPcGVuQ29uZmlybWF0aW9uKSByZXR1cm47XG5cbiAgICAgIHRoaXMuaXNPcGVuQ29uZmlybWF0aW9uID0gdHJ1ZTtcbiAgICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZVxuICAgICAgICAud2FybignQWJwQWNjb3VudDo6QXJlWW91U3VyZVlvdVdhbnRUb0NhbmNlbEVkaXRpbmdXYXJuaW5nTWVzc2FnZScsICdBYnBBY2NvdW50OjpBcmVZb3VTdXJlJylcbiAgICAgICAgLnN1YnNjcmliZSgoc3RhdHVzOiBUb2FzdGVyLlN0YXR1cykgPT4ge1xuICAgICAgICAgIHRpbWVyKEFOSU1BVElPTl9USU1FT1VUKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc09wZW5Db25maXJtYXRpb24gPSBmYWxzZTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIGlmIChzdGF0dXMgPT09IFRvYXN0ZXIuU3RhdHVzLmNvbmZpcm0pIHtcbiAgICAgICAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRGbGF0Tm9kZXMobm9kZXM6IE5vZGVMaXN0KTogSFRNTEVsZW1lbnRbXSB7XG4gIHJldHVybiBBcnJheS5mcm9tKG5vZGVzKS5yZWR1Y2UoXG4gICAgKGFjYywgdmFsKSA9PiBbLi4uYWNjLCAuLi4odmFsLmNoaWxkTm9kZXMgJiYgdmFsLmNoaWxkTm9kZXMubGVuZ3RoID8gZ2V0RmxhdE5vZGVzKHZhbC5jaGlsZE5vZGVzKSA6IFt2YWxdKV0sXG4gICAgW10sXG4gICk7XG59XG5cbmZ1bmN0aW9uIGhhc05nRGlydHkobm9kZXM6IEhUTUxFbGVtZW50W10pIHtcbiAgcmV0dXJuIG5vZGVzLmZpbmRJbmRleChub2RlID0+IChub2RlLmNsYXNzTmFtZSB8fCAnJykuaW5kZXhPZignbmctZGlydHknKSA+IC0xKSA+IC0xO1xufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEVBQ1QsV0FBVyxFQUNYLFNBQVMsRUFDVCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O01BSXZELGlCQUFpQixHQUFHLEdBQUc7QUFNN0IsTUFBTSxPQUFPLGNBQWM7Ozs7O0lBbUZ6QixZQUFvQixRQUFtQixFQUFVLG1CQUF3QztRQUFyRSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQXhDaEYsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQixlQUFVLEdBQVcsRUFBRSxDQUFDO1FBRXhCLFNBQUksR0FBYyxJQUFJLENBQUM7UUFNdEIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTVDLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBZ0IxQyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLFVBQUssR0FBWSxLQUFLLENBQUM7UUFFdkIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQix1QkFBa0IsR0FB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bnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFJlbmRlcmVyMixcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZyb21FdmVudCwgU3ViamVjdCwgdGltZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgdGFrZSwgdGFrZVVudGlsLCBkZWJvdW5jZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBUb2FzdGVyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RvYXN0ZXInO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NvbmZpcm1hdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcblxuZXhwb3J0IHR5cGUgTW9kYWxTaXplID0gJ3NtJyB8ICdtZCcgfCAnbGcnIHwgJ3hsJztcblxuY29uc3QgQU5JTUFUSU9OX1RJTUVPVVQgPSAyMDA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgQElucHV0KClcbiAgZ2V0IHZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGU7XG4gIH1cbiAgc2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnYm9vbGVhbicpIHJldHVybjtcblxuICAgIGlmICghdGhpcy5tb2RhbENvbnRlbnQpIHtcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLnNob3dNb2RhbCA9IHZhbHVlO1xuICAgICAgICAgIHRoaXMudmlzaWJsZSA9IHZhbHVlO1xuICAgICAgICB9LCAwKTtcbiAgICAgIH1cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuc2V0VmlzaWJsZSh2YWx1ZSk7XG4gICAgICB0aGlzLmxpc3RlbigpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNsb3NhYmxlID0gZmFsc2U7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMubW9kYWxDb250ZW50Lm5hdGl2ZUVsZW1lbnQsICdmYWRlLW91dC10b3AnKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLnNldFZpc2libGUodmFsdWUpO1xuICAgICAgICB0aGlzLm5nT25EZXN0cm95KCk7XG4gICAgICB9LCBBTklNQVRJT05fVElNRU9VVCAtIDEwKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgYnVzeSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fYnVzeTtcbiAgfVxuICBzZXQgYnVzeSh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLmFicFN1Ym1pdCAmJiB0aGlzLmFicFN1Ym1pdCBpbnN0YW5jZW9mIEJ1dHRvbkNvbXBvbmVudCkge1xuICAgICAgdGhpcy5hYnBTdWJtaXQubG9hZGluZyA9IHZhbHVlO1xuICAgIH1cblxuICAgIHRoaXMuX2J1c3kgPSB2YWx1ZTtcbiAgfVxuXG4gIEBJbnB1dCgpIGNlbnRlcmVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KCkgbW9kYWxDbGFzczogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KCkgc2l6ZTogTW9kYWxTaXplID0gJ2xnJztcblxuICBASW5wdXQoKSBoZWlnaHQ6IG51bWJlcjtcblxuICBASW5wdXQoKSBtaW5IZWlnaHQ6IG51bWJlcjtcblxuICBAT3V0cHV0KCkgdmlzaWJsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBAT3V0cHV0KCkgaW5pdCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAQ29udGVudENoaWxkKCdhYnBIZWFkZXInLCB7IHN0YXRpYzogZmFsc2UgfSkgYWJwSGVhZGVyOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBDb250ZW50Q2hpbGQoJ2FicEJvZHknLCB7IHN0YXRpYzogZmFsc2UgfSkgYWJwQm9keTogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAQ29udGVudENoaWxkKCdhYnBGb290ZXInLCB7IHN0YXRpYzogZmFsc2UgfSkgYWJwRm9vdGVyOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBDb250ZW50Q2hpbGQoJ2FicENsb3NlJywgeyBzdGF0aWM6IGZhbHNlLCByZWFkOiBFbGVtZW50UmVmIH0pIGFicENsb3NlOiBFbGVtZW50UmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZChCdXR0b25Db21wb25lbnQsIHsgc3RhdGljOiBmYWxzZSwgcmVhZDogQnV0dG9uQ29tcG9uZW50IH0pIGFicFN1Ym1pdDogQnV0dG9uQ29tcG9uZW50O1xuXG4gIEBWaWV3Q2hpbGQoJ2FicE1vZGFsQ29udGVudCcsIHsgc3RhdGljOiBmYWxzZSB9KSBtb2RhbENvbnRlbnQ6IEVsZW1lbnRSZWY7XG5cbiAgQFZpZXdDaGlsZHJlbignYWJwLWJ1dHRvbicpIGFicEJ1dHRvbnM7XG5cbiAgX3Zpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBfYnVzeTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHNob3dNb2RhbDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGlzT3BlbkNvbmZpcm1hdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNsb3NhYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlKSB7fVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICB9XG5cbiAgc2V0VmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3Zpc2libGUgPSB2YWx1ZTtcbiAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgdGhpcy5zaG93TW9kYWwgPSB2YWx1ZTtcblxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGltZXIoQU5JTUFUSU9OX1RJTUVPVVQgKyAxMDApXG4gICAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAgIC5zdWJzY3JpYmUoXyA9PiAodGhpcy5jbG9zYWJsZSA9IHRydWUpKTtcblxuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhkb2N1bWVudC5ib2R5LCAnbW9kYWwtb3BlbicpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNsb3NhYmxlID0gZmFsc2U7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKGRvY3VtZW50LmJvZHksICdtb2RhbC1vcGVuJyk7XG4gICAgfVxuICB9XG5cbiAgbGlzdGVuKCkge1xuICAgIGZyb21FdmVudChkb2N1bWVudCwgJ2tleXVwJylcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICAgIGRlYm91bmNlVGltZSgxNTApLFxuICAgICAgICBmaWx0ZXIoKGtleTogS2V5Ym9hcmRFdmVudCkgPT4ga2V5ICYmIGtleS5jb2RlID09PSAnRXNjYXBlJyAmJiB0aGlzLmNsb3NhYmxlKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoXyA9PiB7XG4gICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgIH0pO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAoIXRoaXMuYWJwQ2xvc2UpIHJldHVybjtcbiAgICAgIGZyb21FdmVudCh0aGlzLmFicENsb3NlLm5hdGl2ZUVsZW1lbnQsICdjbGljaycpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgICBmaWx0ZXIoKCkgPT4gISEodGhpcy5jbG9zYWJsZSAmJiB0aGlzLm1vZGFsQ29udGVudCkpLFxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZSgpKTtcbiAgICB9LCAwKTtcblxuICAgIHRoaXMuaW5pdC5lbWl0KCk7XG4gIH1cblxuICBjbG9zZSgpIHtcbiAgICBpZiAoIXRoaXMuY2xvc2FibGUgfHwgdGhpcy5idXN5KSByZXR1cm47XG5cbiAgICBjb25zdCBub2RlcyA9IGdldEZsYXROb2RlcyhcbiAgICAgICh0aGlzLm1vZGFsQ29udGVudC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJyNhYnAtbW9kYWwtYm9keScpIGFzIEhUTUxFbGVtZW50KS5jaGlsZE5vZGVzLFxuICAgICk7XG5cbiAgICBpZiAoaGFzTmdEaXJ0eShub2RlcykpIHtcbiAgICAgIGlmICh0aGlzLmlzT3BlbkNvbmZpcm1hdGlvbikgcmV0dXJuO1xuXG4gICAgICB0aGlzLmlzT3BlbkNvbmZpcm1hdGlvbiA9IHRydWU7XG4gICAgICB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2VcbiAgICAgICAgLndhcm4oJ0FicEFjY291bnQ6OkFyZVlvdVN1cmVZb3VXYW50VG9DYW5jZWxFZGl0aW5nV2FybmluZ01lc3NhZ2UnLCAnQWJwQWNjb3VudDo6QXJlWW91U3VyZScpXG4gICAgICAgIC5zdWJzY3JpYmUoKHN0YXR1czogVG9hc3Rlci5TdGF0dXMpID0+IHtcbiAgICAgICAgICB0aW1lcihBTklNQVRJT05fVElNRU9VVCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaXNPcGVuQ29uZmlybWF0aW9uID0gZmFsc2U7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICBpZiAoc3RhdHVzID09PSBUb2FzdGVyLlN0YXR1cy5jb25maXJtKSB7XG4gICAgICAgICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0RmxhdE5vZGVzKG5vZGVzOiBOb2RlTGlzdCk6IEhUTUxFbGVtZW50W10ge1xuICByZXR1cm4gQXJyYXkuZnJvbShub2RlcykucmVkdWNlKFxuICAgIChhY2MsIHZhbCkgPT4gWy4uLmFjYywgLi4uKHZhbC5jaGlsZE5vZGVzICYmIHZhbC5jaGlsZE5vZGVzLmxlbmd0aCA/IGdldEZsYXROb2Rlcyh2YWwuY2hpbGROb2RlcykgOiBbdmFsXSldLFxuICAgIFtdLFxuICApO1xufVxuXG5mdW5jdGlvbiBoYXNOZ0RpcnR5KG5vZGVzOiBIVE1MRWxlbWVudFtdKSB7XG4gIHJldHVybiBub2Rlcy5maW5kSW5kZXgobm9kZSA9PiAobm9kZS5jbGFzc05hbWUgfHwgJycpLmluZGV4T2YoJ25nLWRpcnR5JykgPiAtMSkgPiAtMTtcbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/toast/toast.component.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/toast/toast.component.js index 7e67c92c9e..1378d32773 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/lib/components/toast/toast.component.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/components/toast/toast.component.js @@ -9,7 +9,7 @@ ToastComponent.decorators = [ { type: Component, args: [{ selector: 'abp-toast', template: ` - + chartJsLoaded$.next(true))); /** @type {?} */ const lazyLoadService = injector.get(LazyLoadService); return forkJoin(lazyLoadService.load(null, 'style', styles, 'head', 'afterbegin') /* lazyLoadService.load(null, 'script', scripts) */).pipe(take(1)); @@ -76,28 +82,30 @@ ThemeSharedModule.decorators = [ }), ], declarations: [ + BreadcrumbComponent, ButtonComponent, + ChangePasswordComponent, + ChartComponent, ConfirmationComponent, - ToastComponent, - ModalComponent, ErrorComponent, LoaderBarComponent, - ValidationErrorComponent, - ChangePasswordComponent, + ModalComponent, ProfileComponent, - BreadcrumbComponent, + ToastComponent, + ValidationErrorComponent, ], exports: [ + BreadcrumbComponent, ButtonComponent, + ChangePasswordComponent, + ChartComponent, ConfirmationComponent, - ToastComponent, - ModalComponent, LoaderBarComponent, - ChangePasswordComponent, + ModalComponent, ProfileComponent, - BreadcrumbComponent, + ToastComponent, ], entryComponents: [ErrorComponent, ValidationErrorComponent], },] } ]; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtc2hhcmVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL3RoZW1lLXNoYXJlZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDekYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxNQUFNLE1BQU0sbUJBQW1CLENBQUM7QUFDdkMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUNqRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7Ozs7QUFFbkYsTUFBTSxVQUFVLFlBQVksQ0FBQyxRQUFrQjs7VUFDdkMsRUFBRTs7O0lBQUc7O2NBQ0gsZUFBZSxHQUFvQixRQUFRLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQztRQUV0RSxPQUFPLFFBQVEsQ0FDYixlQUFlLENBQUMsSUFBSSxDQUNsQixJQUFJLEVBQ0osT0FBTyxFQUNQLE1BQU0sRUFDTixNQUFNLEVBQ04sWUFBWSxDQUNiLENBQUMsbURBQW1ELENBQ3RELENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUMsQ0FBQTtJQUVELE9BQU8sRUFBRSxDQUFDO0FBQ1osQ0FBQztBQTRDRCxNQUFNLE9BQU8saUJBQWlCOzs7O0lBQzVCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxpQkFBaUI7WUFDM0IsU0FBUyxFQUFFO2dCQUNUO29CQUNFLE9BQU8sRUFBRSxlQUFlO29CQUN4QixLQUFLLEVBQUUsSUFBSTtvQkFDWCxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDO29CQUM5QixVQUFVLEVBQUUsWUFBWTtpQkFDekI7Z0JBQ0QsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUU7YUFDdEQ7U0FDRixDQUFDO0lBQ0osQ0FBQzs7O1lBeERGLFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsVUFBVTtvQkFDVixXQUFXO29CQUNYLHFCQUFxQixDQUFDLE9BQU8sQ0FBQzt3QkFDNUIsY0FBYyxFQUFFLGFBQWE7d0JBQzdCLFVBQVUsRUFBRTs0QkFDVixLQUFLLEVBQUUsK0NBQStDOzRCQUN0RCxHQUFHLEVBQUUsa0VBQWtFOzRCQUN2RSxTQUFTLEVBQUUsaUZBQWlGOzRCQUM1RixHQUFHLEVBQUUsa0VBQWtFOzRCQUN2RSxTQUFTLEVBQUUsd0ZBQXdGOzRCQUNuRyxRQUFRLEVBQUUsa0NBQWtDOzRCQUM1QyxnQkFBZ0IsRUFBRSxrREFBa0Q7eUJBQ3JFO3dCQUNELGFBQWEsRUFBRSx3QkFBd0I7cUJBQ3hDLENBQUM7aUJBQ0g7Z0JBQ0QsWUFBWSxFQUFFO29CQUNaLGVBQWU7b0JBQ2YscUJBQXFCO29CQUNyQixjQUFjO29CQUNkLGNBQWM7b0JBQ2QsY0FBYztvQkFDZCxrQkFBa0I7b0JBQ2xCLHdCQUF3QjtvQkFDeEIsdUJBQXVCO29CQUN2QixnQkFBZ0I7b0JBQ2hCLG1CQUFtQjtpQkFDcEI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLGVBQWU7b0JBQ2YscUJBQXFCO29CQUNyQixjQUFjO29CQUNkLGNBQWM7b0JBQ2Qsa0JBQWtCO29CQUNsQix1QkFBdUI7b0JBQ3ZCLGdCQUFnQjtvQkFDaEIsbUJBQW1CO2lCQUNwQjtnQkFDRCxlQUFlLEVBQUUsQ0FBQyxjQUFjLEVBQUUsd0JBQXdCLENBQUM7YUFDNUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JlTW9kdWxlLCBMYXp5TG9hZFNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSLCBJbmplY3RvciwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5neFZhbGlkYXRlQ29yZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdmFsaWRhdGUvY29yZSc7XG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvY29tcG9uZW50cy9jb21tb24vbWVzc2FnZXNlcnZpY2UnO1xuaW1wb3J0IHsgVG9hc3RNb2R1bGUgfSBmcm9tICdwcmltZW5nL3RvYXN0JztcbmltcG9ydCB7IGZvcmtKb2luIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi9jb25maXJtYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEVycm9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Vycm9ycy9lcnJvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTG9hZGVyQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTW9kYWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IFRvYXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgc3R5bGVzIGZyb20gJy4vY29udGFudHMvc3R5bGVzJztcbmltcG9ydCB7IEVycm9ySGFuZGxlciB9IGZyb20gJy4vaGFuZGxlcnMvZXJyb3IuaGFuZGxlcic7XG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgVmFsaWRhdGlvbkVycm9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Vycm9ycy92YWxpZGF0aW9uLWVycm9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9maWxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Byb2ZpbGUvcHJvZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnJlYWRjcnVtYkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50JztcblxuZXhwb3J0IGZ1bmN0aW9uIGFwcGVuZFNjcmlwdChpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgY29uc3QgZm4gPSBmdW5jdGlvbigpIHtcbiAgICBjb25zdCBsYXp5TG9hZFNlcnZpY2U6IExhenlMb2FkU2VydmljZSA9IGluamVjdG9yLmdldChMYXp5TG9hZFNlcnZpY2UpO1xuXG4gICAgcmV0dXJuIGZvcmtKb2luKFxuICAgICAgbGF6eUxvYWRTZXJ2aWNlLmxvYWQoXG4gICAgICAgIG51bGwsXG4gICAgICAgICdzdHlsZScsXG4gICAgICAgIHN0eWxlcyxcbiAgICAgICAgJ2hlYWQnLFxuICAgICAgICAnYWZ0ZXJiZWdpbicsXG4gICAgICApIC8qIGxhenlMb2FkU2VydmljZS5sb2FkKG51bGwsICdzY3JpcHQnLCBzY3JpcHRzKSAqLyxcbiAgICApLnBpcGUodGFrZSgxKSk7XG4gIH07XG5cbiAgcmV0dXJuIGZuO1xufVxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29yZU1vZHVsZSxcbiAgICBUb2FzdE1vZHVsZSxcbiAgICBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUuZm9yUm9vdCh7XG4gICAgICB0YXJnZXRTZWxlY3RvcjogJy5mb3JtLWdyb3VwJyxcbiAgICAgIGJsdWVwcmludHM6IHtcbiAgICAgICAgZW1haWw6IGBBYnBBY2NvdW50OjpUaGlzRmllbGRJc05vdEFWYWxpZEVtYWlsQWRkcmVzcy5gLFxuICAgICAgICBtYXg6IGBBYnBBY2NvdW50OjpUaGlzRmllbGRNdXN0QmVCZXR3ZWVuezB9QW5kezF9W3t7IG1pbiB9fSx7eyBtYXggfX1dYCxcbiAgICAgICAgbWF4bGVuZ3RoOiBgQWJwQWNjb3VudDo6VGhpc0ZpZWxkTXVzdEJlQVN0cmluZ1dpdGhBTWF4aW11bUxlbmd0aE9mezF9W3t7IHJlcXVpcmVkTGVuZ3RoIH19XWAsXG4gICAgICAgIG1pbjogYEFicEFjY291bnQ6OlRoaXNGaWVsZE11c3RCZUJldHdlZW57MH1BbmR7MX1be3sgbWluIH19LHt7IG1heCB9fV1gLFxuICAgICAgICBtaW5sZW5ndGg6IGBBYnBBY2NvdW50OjpUaGlzRmllbGRNdXN0QmVBU3RyaW5nT3JBcnJheVR5cGVXaXRoQU1pbmltdW1MZW5ndGhPZlt7eyBtaW4gfX0se3sgbWF4IH19XWAsXG4gICAgICAgIHJlcXVpcmVkOiBgQWJwQWNjb3VudDo6VGhpc0ZpZWxkSXNSZXF1aXJlZC5gLFxuICAgICAgICBwYXNzd29yZE1pc21hdGNoOiBgQWJwSWRlbnRpdHk6OklkZW50aXR5LlBhc3N3b3JkQ29uZmlybWF0aW9uRmFpbGVkYCxcbiAgICAgIH0sXG4gICAgICBlcnJvclRlbXBsYXRlOiBWYWxpZGF0aW9uRXJyb3JDb21wb25lbnQsXG4gICAgfSksXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBDb25maXJtYXRpb25Db21wb25lbnQsXG4gICAgVG9hc3RDb21wb25lbnQsXG4gICAgTW9kYWxDb21wb25lbnQsXG4gICAgRXJyb3JDb21wb25lbnQsXG4gICAgTG9hZGVyQmFyQ29tcG9uZW50LFxuICAgIFZhbGlkYXRpb25FcnJvckNvbXBvbmVudCxcbiAgICBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCxcbiAgICBQcm9maWxlQ29tcG9uZW50LFxuICAgIEJyZWFkY3J1bWJDb21wb25lbnQsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgQ29uZmlybWF0aW9uQ29tcG9uZW50LFxuICAgIFRvYXN0Q29tcG9uZW50LFxuICAgIE1vZGFsQ29tcG9uZW50LFxuICAgIExvYWRlckJhckNvbXBvbmVudCxcbiAgICBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCxcbiAgICBQcm9maWxlQ29tcG9uZW50LFxuICAgIEJyZWFkY3J1bWJDb21wb25lbnQsXG4gIF0sXG4gIGVudHJ5Q29tcG9uZW50czogW0Vycm9yQ29tcG9uZW50LCBWYWxpZGF0aW9uRXJyb3JDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVtZVNoYXJlZE1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnMge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogVGhlbWVTaGFyZWRNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgICBkZXBzOiBbSW5qZWN0b3IsIEVycm9ySGFuZGxlcl0sXG4gICAgICAgICAgdXNlRmFjdG9yeTogYXBwZW5kU2NyaXB0LFxuICAgICAgICB9LFxuICAgICAgICB7IHByb3ZpZGU6IE1lc3NhZ2VTZXJ2aWNlLCB1c2VDbGFzczogTWVzc2FnZVNlcnZpY2UgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUtc2hhcmVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL3RoZW1lLXNoYXJlZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbkYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN6RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDckUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDMUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLE1BQU0sTUFBTSxtQkFBbUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7OztBQUV0RCxNQUFNLFVBQVUsWUFBWSxDQUFDLFFBQWtCOztVQUN2QyxFQUFFOzs7SUFBRztRQUNULE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJOzs7UUFBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFDLENBQUM7O2NBRW5ELGVBQWUsR0FBb0IsUUFBUSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUM7UUFFdEUsT0FBTyxRQUFRLENBQ2IsZUFBZSxDQUFDLElBQUksQ0FDbEIsSUFBSSxFQUNKLE9BQU8sRUFDUCxNQUFNLEVBQ04sTUFBTSxFQUNOLFlBQVksQ0FDYixDQUFDLG1EQUFtRCxDQUN0RCxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDLENBQUE7SUFFRCxPQUFPLEVBQUUsQ0FBQztBQUNaLENBQUM7QUE4Q0QsTUFBTSxPQUFPLGlCQUFpQjs7OztJQUM1QixNQUFNLENBQUMsT0FBTztRQUNaLE9BQU87WUFDTCxRQUFRLEVBQUUsaUJBQWlCO1lBQzNCLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsZUFBZTtvQkFDeEIsS0FBSyxFQUFFLElBQUk7b0JBQ1gsSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFLFlBQVksQ0FBQztvQkFDOUIsVUFBVSxFQUFFLFlBQVk7aUJBQ3pCO2dCQUNELEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFO2FBQ3REO1NBQ0YsQ0FBQztJQUNKLENBQUM7OztZQTFERixRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFVBQVU7b0JBQ1YsV0FBVztvQkFDWCxxQkFBcUIsQ0FBQyxPQUFPLENBQUM7d0JBQzVCLGNBQWMsRUFBRSxhQUFhO3dCQUM3QixVQUFVLEVBQUU7NEJBQ1YsS0FBSyxFQUFFLCtDQUErQzs0QkFDdEQsR0FBRyxFQUFFLGtFQUFrRTs0QkFDdkUsU0FBUyxFQUFFLGlGQUFpRjs0QkFDNUYsR0FBRyxFQUFFLGtFQUFrRTs0QkFDdkUsU0FBUyxFQUFFLHdGQUF3Rjs0QkFDbkcsUUFBUSxFQUFFLGtDQUFrQzs0QkFDNUMsZ0JBQWdCLEVBQUUsa0RBQWtEO3lCQUNyRTt3QkFDRCxhQUFhLEVBQUUsd0JBQXdCO3FCQUN4QyxDQUFDO2lCQUNIO2dCQUNELFlBQVksRUFBRTtvQkFDWixtQkFBbUI7b0JBQ25CLGVBQWU7b0JBQ2YsdUJBQXVCO29CQUN2QixjQUFjO29CQUNkLHFCQUFxQjtvQkFDckIsY0FBYztvQkFDZCxrQkFBa0I7b0JBQ2xCLGNBQWM7b0JBQ2QsZ0JBQWdCO29CQUNoQixjQUFjO29CQUNkLHdCQUF3QjtpQkFDekI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLG1CQUFtQjtvQkFDbkIsZUFBZTtvQkFDZix1QkFBdUI7b0JBQ3ZCLGNBQWM7b0JBQ2QscUJBQXFCO29CQUNyQixrQkFBa0I7b0JBQ2xCLGNBQWM7b0JBQ2QsZ0JBQWdCO29CQUNoQixjQUFjO2lCQUNmO2dCQUNELGVBQWUsRUFBRSxDQUFDLGNBQWMsRUFBRSx3QkFBd0IsQ0FBQzthQUM1RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvcmVNb2R1bGUsIExhenlMb2FkU2VydmljZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XG5pbXBvcnQgeyBBUFBfSU5JVElBTElaRVIsIEluamVjdG9yLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd4VmFsaWRhdGVDb3JlTW9kdWxlIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9jb21wb25lbnRzL2NvbW1vbi9tZXNzYWdlc2VydmljZSc7XG5pbXBvcnQgeyBUb2FzdE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdG9hc3QnO1xuaW1wb3J0IHsgZm9ya0pvaW4gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCcmVhZGNydW1iQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IENoYW5nZVBhc3N3b3JkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NoYW5nZS1wYXNzd29yZC9jaGFuZ2UtcGFzc3dvcmQuY29tcG9uZW50JztcbmltcG9ydCB7IENoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NoYXJ0L2NoYXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY29uZmlybWF0aW9uL2NvbmZpcm1hdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRXJyb3JDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZXJyb3JzL2Vycm9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3JDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZXJyb3JzL3ZhbGlkYXRpb24tZXJyb3IuY29tcG9uZW50JztcbmltcG9ydCB7IExvYWRlckJhckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9sb2FkZXItYmFyL2xvYWRlci1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vZGFsL21vZGFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcm9maWxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Byb2ZpbGUvcHJvZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9hc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdG9hc3QvdG9hc3QuY29tcG9uZW50JztcbmltcG9ydCBzdHlsZXMgZnJvbSAnLi9jb250YW50cy9zdHlsZXMnO1xuaW1wb3J0IHsgRXJyb3JIYW5kbGVyIH0gZnJvbSAnLi9oYW5kbGVycy9lcnJvci5oYW5kbGVyJztcbmltcG9ydCB7IGNoYXJ0SnNMb2FkZWQkIH0gZnJvbSAnLi91dGlscy93aWRnZXQtdXRpbHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gYXBwZW5kU2NyaXB0KGluamVjdG9yOiBJbmplY3Rvcikge1xuICBjb25zdCBmbiA9IGZ1bmN0aW9uKCkge1xuICAgIGltcG9ydCgnY2hhcnQuanMnKS50aGVuKCgpID0+IGNoYXJ0SnNMb2FkZWQkLm5leHQodHJ1ZSkpO1xuXG4gICAgY29uc3QgbGF6eUxvYWRTZXJ2aWNlOiBMYXp5TG9hZFNlcnZpY2UgPSBpbmplY3Rvci5nZXQoTGF6eUxvYWRTZXJ2aWNlKTtcblxuICAgIHJldHVybiBmb3JrSm9pbihcbiAgICAgIGxhenlMb2FkU2VydmljZS5sb2FkKFxuICAgICAgICBudWxsLFxuICAgICAgICAnc3R5bGUnLFxuICAgICAgICBzdHlsZXMsXG4gICAgICAgICdoZWFkJyxcbiAgICAgICAgJ2FmdGVyYmVnaW4nLFxuICAgICAgKSAvKiBsYXp5TG9hZFNlcnZpY2UubG9hZChudWxsLCAnc2NyaXB0Jywgc2NyaXB0cykgKi8sXG4gICAgKS5waXBlKHRha2UoMSkpO1xuICB9O1xuXG4gIHJldHVybiBmbjtcbn1cblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvcmVNb2R1bGUsXG4gICAgVG9hc3RNb2R1bGUsXG4gICAgTmd4VmFsaWRhdGVDb3JlTW9kdWxlLmZvclJvb3Qoe1xuICAgICAgdGFyZ2V0U2VsZWN0b3I6ICcuZm9ybS1ncm91cCcsXG4gICAgICBibHVlcHJpbnRzOiB7XG4gICAgICAgIGVtYWlsOiBgQWJwQWNjb3VudDo6VGhpc0ZpZWxkSXNOb3RBVmFsaWRFbWFpbEFkZHJlc3MuYCxcbiAgICAgICAgbWF4OiBgQWJwQWNjb3VudDo6VGhpc0ZpZWxkTXVzdEJlQmV0d2VlbnswfUFuZHsxfVt7eyBtaW4gfX0se3sgbWF4IH19XWAsXG4gICAgICAgIG1heGxlbmd0aDogYEFicEFjY291bnQ6OlRoaXNGaWVsZE11c3RCZUFTdHJpbmdXaXRoQU1heGltdW1MZW5ndGhPZnsxfVt7eyByZXF1aXJlZExlbmd0aCB9fV1gLFxuICAgICAgICBtaW46IGBBYnBBY2NvdW50OjpUaGlzRmllbGRNdXN0QmVCZXR3ZWVuezB9QW5kezF9W3t7IG1pbiB9fSx7eyBtYXggfX1dYCxcbiAgICAgICAgbWlubGVuZ3RoOiBgQWJwQWNjb3VudDo6VGhpc0ZpZWxkTXVzdEJlQVN0cmluZ09yQXJyYXlUeXBlV2l0aEFNaW5pbXVtTGVuZ3RoT2Zbe3sgbWluIH19LHt7IG1heCB9fV1gLFxuICAgICAgICByZXF1aXJlZDogYEFicEFjY291bnQ6OlRoaXNGaWVsZElzUmVxdWlyZWQuYCxcbiAgICAgICAgcGFzc3dvcmRNaXNtYXRjaDogYEFicElkZW50aXR5OjpJZGVudGl0eS5QYXNzd29yZENvbmZpcm1hdGlvbkZhaWxlZGAsXG4gICAgICB9LFxuICAgICAgZXJyb3JUZW1wbGF0ZTogVmFsaWRhdGlvbkVycm9yQ29tcG9uZW50LFxuICAgIH0pLFxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBCcmVhZGNydW1iQ29tcG9uZW50LFxuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCxcbiAgICBDaGFydENvbXBvbmVudCxcbiAgICBDb25maXJtYXRpb25Db21wb25lbnQsXG4gICAgRXJyb3JDb21wb25lbnQsXG4gICAgTG9hZGVyQmFyQ29tcG9uZW50LFxuICAgIE1vZGFsQ29tcG9uZW50LFxuICAgIFByb2ZpbGVDb21wb25lbnQsXG4gICAgVG9hc3RDb21wb25lbnQsXG4gICAgVmFsaWRhdGlvbkVycm9yQ29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgQnJlYWRjcnVtYkNvbXBvbmVudCxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgQ2hhbmdlUGFzc3dvcmRDb21wb25lbnQsXG4gICAgQ2hhcnRDb21wb25lbnQsXG4gICAgQ29uZmlybWF0aW9uQ29tcG9uZW50LFxuICAgIExvYWRlckJhckNvbXBvbmVudCxcbiAgICBNb2RhbENvbXBvbmVudCxcbiAgICBQcm9maWxlQ29tcG9uZW50LFxuICAgIFRvYXN0Q29tcG9uZW50LFxuICBdLFxuICBlbnRyeUNvbXBvbmVudHM6IFtFcnJvckNvbXBvbmVudCwgVmFsaWRhdGlvbkVycm9yQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgVGhlbWVTaGFyZWRNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IFRoZW1lU2hhcmVkTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgZGVwczogW0luamVjdG9yLCBFcnJvckhhbmRsZXJdLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IGFwcGVuZFNjcmlwdCxcbiAgICAgICAgfSxcbiAgICAgICAgeyBwcm92aWRlOiBNZXNzYWdlU2VydmljZSwgdXNlQ2xhc3M6IE1lc3NhZ2VTZXJ2aWNlIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-basic/esm2015/lib/states/index.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/utils/index.js similarity index 50% rename from npm/ng-packs/dist/theme-basic/esm2015/lib/states/index.js rename to npm/ng-packs/dist/theme-shared/esm2015/lib/utils/index.js index 0e85d60b8b..14b5ef6d35 100644 --- a/npm/ng-packs/dist/theme-basic/esm2015/lib/states/index.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/utils/index.js @@ -2,5 +2,5 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { LayoutState } from "./layout.state"; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLmJhc2ljLyIsInNvdXJjZXMiOlsibGliL3N0YXRlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsNEJBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9sYXlvdXQuc3RhdGVcIjtcbiJdfQ== \ No newline at end of file +export { getRandomBackgroundColor, chartJsLoaded$ } from './widget-utils'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEseURBQWMsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3dpZGdldC11dGlscyc7XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/lib/utils/widget-utils.js b/npm/ng-packs/dist/theme-shared/esm2015/lib/utils/widget-utils.js new file mode 100644 index 0000000000..722af46dbe --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm2015/lib/utils/widget-utils.js @@ -0,0 +1,26 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { ReplaySubject } from 'rxjs'; +/** + * @param {?} count + * @return {?} + */ +export function getRandomBackgroundColor(count) { + /** @type {?} */ + const colors = []; + for (let i = 0; i < count; i++) { + /** @type {?} */ + const r = ((i + 5) * (i + 5) * 474) % 255; + /** @type {?} */ + const g = ((i + 5) * (i + 5) * 1600) % 255; + /** @type {?} */ + const b = ((i + 5) * (i + 5) * 84065) % 255; + colors.push('rgba(' + r + ', ' + g + ', ' + b + ', 0.7)'); + } + return colors; +} +/** @type {?} */ +export const chartJsLoaded$ = new ReplaySubject(1); +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LXV0aWxzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvdXRpbHMvd2lkZ2V0LXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7OztBQUVyQyxNQUFNLFVBQVUsd0JBQXdCLENBQUMsS0FBSzs7VUFDdEMsTUFBTSxHQUFHLEVBQUU7SUFFakIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRTs7Y0FDeEIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRzs7Y0FDbkMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsR0FBRzs7Y0FDcEMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsR0FBRztRQUMzQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO0tBQzNEO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQzs7QUFFRCxNQUFNLE9BQU8sY0FBYyxHQUFHLElBQUksYUFBYSxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFJhbmRvbUJhY2tncm91bmRDb2xvcihjb3VudCkge1xuICBjb25zdCBjb2xvcnMgPSBbXTtcblxuICBmb3IgKGxldCBpID0gMDsgaSA8IGNvdW50OyBpKyspIHtcbiAgICBjb25zdCByID0gKChpICsgNSkgKiAoaSArIDUpICogNDc0KSAlIDI1NTtcbiAgICBjb25zdCBnID0gKChpICsgNSkgKiAoaSArIDUpICogMTYwMCkgJSAyNTU7XG4gICAgY29uc3QgYiA9ICgoaSArIDUpICogKGkgKyA1KSAqIDg0MDY1KSAlIDI1NTtcbiAgICBjb2xvcnMucHVzaCgncmdiYSgnICsgciArICcsICcgKyBnICsgJywgJyArIGIgKyAnLCAwLjcpJyk7XG4gIH1cblxuICByZXR1cm4gY29sb3JzO1xufVxuXG5leHBvcnQgY29uc3QgY2hhcnRKc0xvYWRlZCQgPSBuZXcgUmVwbGF5U3ViamVjdCgxKTtcbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm2015/public-api.js b/npm/ng-packs/dist/theme-shared/esm2015/public-api.js index 3ce6f1abc8..51e892dfa6 100644 --- a/npm/ng-packs/dist/theme-shared/esm2015/public-api.js +++ b/npm/ng-packs/dist/theme-shared/esm2015/public-api.js @@ -7,7 +7,8 @@ */ export { appendScript, ThemeSharedModule } from './lib/theme-shared.module'; export { fade, slideFromBottom } from './lib/animations'; -export { ButtonComponent, BreadcrumbComponent, ChangePasswordComponent, ConfirmationComponent, LoaderBarComponent, ModalComponent, ProfileComponent, ToastComponent } from './lib/components'; +export { BreadcrumbComponent, ButtonComponent, ChangePasswordComponent, ChartComponent, ConfirmationComponent, LoaderBarComponent, ModalComponent, ProfileComponent, ToastComponent } from './lib/components'; export { Toaster } from './lib/models'; export { ConfirmationService, ToasterService } from './lib/services'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsZ0RBQWMsMkJBQTJCLENBQUM7QUFDMUMsc0NBQWMsa0JBQWtCLENBQUM7QUFDakMsMktBQWMsa0JBQWtCLENBQUM7QUFDakMsd0JBQWMsY0FBYyxDQUFDO0FBQzdCLG9EQUFjLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiB0aGVtZS1zaGFyZWRcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi90aGVtZS1zaGFyZWQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2FuaW1hdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMnO1xuIl19 \ No newline at end of file +export { getRandomBackgroundColor, chartJsLoaded$ } from './lib/utils'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsZ0RBQWMsMkJBQTJCLENBQUM7QUFDMUMsc0NBQWMsa0JBQWtCLENBQUM7QUFDakMsMkxBQWMsa0JBQWtCLENBQUM7QUFDakMsd0JBQWMsY0FBYyxDQUFDO0FBQzdCLG9EQUFjLGdCQUFnQixDQUFDO0FBQy9CLHlEQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgdGhlbWUtc2hhcmVkXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvdGhlbWUtc2hhcmVkLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9hbmltYXRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3V0aWxzJztcbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/abp-ng.theme.shared.js b/npm/ng-packs/dist/theme-shared/esm5/abp-ng.theme.shared.js index 43d4337172..5bd81abc33 100644 --- a/npm/ng-packs/dist/theme-shared/esm5/abp-ng.theme.shared.js +++ b/npm/ng-packs/dist/theme-shared/esm5/abp-ng.theme.shared.js @@ -5,19 +5,20 @@ /** * Generated bundle index. Do not edit. */ -export { appendScript, ThemeSharedModule, fade, slideFromBottom, ButtonComponent, BreadcrumbComponent, ChangePasswordComponent, ConfirmationComponent, LoaderBarComponent, ModalComponent, ProfileComponent, ToastComponent, Toaster, ConfirmationService, ToasterService } from './public-api'; -export { AbstractToaster as ɵe } from './lib/abstracts/toaster'; -export { BreadcrumbComponent as ɵm } from './lib/components/breadcrumb/breadcrumb.component'; -export { ButtonComponent as ɵb } from './lib/components/button/button.component'; -export { ChangePasswordComponent as ɵj } from './lib/components/change-password/change-password.component'; -export { ConfirmationComponent as ɵc } from './lib/components/confirmation/confirmation.component'; -export { ErrorComponent as ɵh } from './lib/components/errors/error.component'; +export { appendScript, ThemeSharedModule, fade, slideFromBottom, BreadcrumbComponent, ButtonComponent, ChangePasswordComponent, ChartComponent, ConfirmationComponent, LoaderBarComponent, ModalComponent, ProfileComponent, ToastComponent, Toaster, ConfirmationService, ToasterService, getRandomBackgroundColor, chartJsLoaded$ } from './public-api'; +export { AbstractToaster as ɵf } from './lib/abstracts/toaster'; +export { BreadcrumbComponent as ɵb } from './lib/components/breadcrumb/breadcrumb.component'; +export { ButtonComponent as ɵc } from './lib/components/button/button.component'; +export { ChangePasswordComponent as ɵd } from './lib/components/change-password/change-password.component'; +export { ChartComponent as ɵg } from './lib/components/chart/chart.component'; +export { ConfirmationComponent as ɵh } from './lib/components/confirmation/confirmation.component'; +export { ErrorComponent as ɵj } from './lib/components/errors/error.component'; export { ValidationErrorComponent as ɵa } from './lib/components/errors/validation-error.component'; -export { LoaderBarComponent as ɵi } from './lib/components/loader-bar/loader-bar.component'; -export { ModalComponent as ɵg } from './lib/components/modal/modal.component'; -export { ProfileComponent as ɵl } from './lib/components/profile/profile.component'; -export { ToastComponent as ɵf } from './lib/components/toast/toast.component'; -export { ErrorHandler as ɵn } from './lib/handlers/error.handler'; -export { ConfirmationService as ɵd } from './lib/services/confirmation.service'; -export { ToasterService as ɵk } from './lib/services/toaster.service'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLnNoYXJlZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsiYWJwLW5nLnRoZW1lLnNoYXJlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsaVJBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQzNGLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDL0UsT0FBTyxFQUFDLHVCQUF1QixJQUFJLEVBQUUsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQ3pHLE9BQU8sRUFBQyxxQkFBcUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUNqRyxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQzdFLE9BQU8sRUFBQyx3QkFBd0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxvREFBb0QsQ0FBQztBQUNsRyxPQUFPLEVBQUMsa0JBQWtCLElBQUksRUFBRSxFQUFDLE1BQU0sa0RBQWtELENBQUM7QUFDMUYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsZ0JBQWdCLElBQUksRUFBRSxFQUFDLE1BQU0sNENBQTRDLENBQUM7QUFDbEYsT0FBTyxFQUFDLGNBQWMsSUFBSSxFQUFFLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUMsWUFBWSxJQUFJLEVBQUUsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLGdDQUFnQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQge0Fic3RyYWN0VG9hc3RlciBhcyDJtWV9IGZyb20gJy4vbGliL2Fic3RyYWN0cy90b2FzdGVyJztcbmV4cG9ydCB7QnJlYWRjcnVtYkNvbXBvbmVudCBhcyDJtW19IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudCc7XG5leHBvcnQge0J1dHRvbkNvbXBvbmVudCBhcyDJtWJ9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0IHtDaGFuZ2VQYXNzd29yZENvbXBvbmVudCBhcyDJtWp9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQnO1xuZXhwb3J0IHtDb25maXJtYXRpb25Db21wb25lbnQgYXMgybVjfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi9jb25maXJtYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCB7RXJyb3JDb21wb25lbnQgYXMgybVofSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9ycy9lcnJvci5jb21wb25lbnQnO1xuZXhwb3J0IHtWYWxpZGF0aW9uRXJyb3JDb21wb25lbnQgYXMgybVhfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9ycy92YWxpZGF0aW9uLWVycm9yLmNvbXBvbmVudCc7XG5leHBvcnQge0xvYWRlckJhckNvbXBvbmVudCBhcyDJtWl9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvbG9hZGVyLWJhci9sb2FkZXItYmFyLmNvbXBvbmVudCc7XG5leHBvcnQge01vZGFsQ29tcG9uZW50IGFzIMm1Z30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0IHtQcm9maWxlQ29tcG9uZW50IGFzIMm1bH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JztcbmV4cG9ydCB7VG9hc3RDb21wb25lbnQgYXMgybVmfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5leHBvcnQge0Vycm9ySGFuZGxlciBhcyDJtW59IGZyb20gJy4vbGliL2hhbmRsZXJzL2Vycm9yLmhhbmRsZXInO1xuZXhwb3J0IHtDb25maXJtYXRpb25TZXJ2aWNlIGFzIMm1ZH0gZnJvbSAnLi9saWIvc2VydmljZXMvY29uZmlybWF0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHtUb2FzdGVyU2VydmljZSBhcyDJtWt9IGZyb20gJy4vbGliL3NlcnZpY2VzL3RvYXN0ZXIuc2VydmljZSc7Il19 \ No newline at end of file +export { LoaderBarComponent as ɵk } from './lib/components/loader-bar/loader-bar.component'; +export { ModalComponent as ɵl } from './lib/components/modal/modal.component'; +export { ProfileComponent as ɵm } from './lib/components/profile/profile.component'; +export { ToastComponent as ɵn } from './lib/components/toast/toast.component'; +export { ErrorHandler as ɵo } from './lib/handlers/error.handler'; +export { ConfirmationService as ɵi } from './lib/services/confirmation.service'; +export { ToasterService as ɵe } from './lib/services/toaster.service'; +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJwLW5nLnRoZW1lLnNoYXJlZC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsiYWJwLW5nLnRoZW1lLnNoYXJlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsMlVBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQzNGLE9BQU8sRUFBQyxlQUFlLElBQUksRUFBRSxFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDL0UsT0FBTyxFQUFDLHVCQUF1QixJQUFJLEVBQUUsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQ3pHLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFDLHFCQUFxQixJQUFJLEVBQUUsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQ2pHLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDN0UsT0FBTyxFQUFDLHdCQUF3QixJQUFJLEVBQUUsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBQ2xHLE9BQU8sRUFBQyxrQkFBa0IsSUFBSSxFQUFFLEVBQUMsTUFBTSxrREFBa0QsQ0FBQztBQUMxRixPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxnQkFBZ0IsSUFBSSxFQUFFLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUNsRixPQUFPLEVBQUMsY0FBYyxJQUFJLEVBQUUsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBQyxZQUFZLElBQUksRUFBRSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7QWJzdHJhY3RUb2FzdGVyIGFzIMm1Zn0gZnJvbSAnLi9saWIvYWJzdHJhY3RzL3RvYXN0ZXInO1xuZXhwb3J0IHtCcmVhZGNydW1iQ29tcG9uZW50IGFzIMm1Yn0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50JztcbmV4cG9ydCB7QnV0dG9uQ29tcG9uZW50IGFzIMm1Y30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQge0NoYW5nZVBhc3N3b3JkQ29tcG9uZW50IGFzIMm1ZH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudCc7XG5leHBvcnQge0NoYXJ0Q29tcG9uZW50IGFzIMm1Z30gZnJvbSAnLi9saWIvY29tcG9uZW50cy9jaGFydC9jaGFydC5jb21wb25lbnQnO1xuZXhwb3J0IHtDb25maXJtYXRpb25Db21wb25lbnQgYXMgybVofSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi9jb25maXJtYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCB7RXJyb3JDb21wb25lbnQgYXMgybVqfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9ycy9lcnJvci5jb21wb25lbnQnO1xuZXhwb3J0IHtWYWxpZGF0aW9uRXJyb3JDb21wb25lbnQgYXMgybVhfSBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9ycy92YWxpZGF0aW9uLWVycm9yLmNvbXBvbmVudCc7XG5leHBvcnQge0xvYWRlckJhckNvbXBvbmVudCBhcyDJtWt9IGZyb20gJy4vbGliL2NvbXBvbmVudHMvbG9hZGVyLWJhci9sb2FkZXItYmFyLmNvbXBvbmVudCc7XG5leHBvcnQge01vZGFsQ29tcG9uZW50IGFzIMm1bH0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0IHtQcm9maWxlQ29tcG9uZW50IGFzIMm1bX0gZnJvbSAnLi9saWIvY29tcG9uZW50cy9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JztcbmV4cG9ydCB7VG9hc3RDb21wb25lbnQgYXMgybVufSBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5leHBvcnQge0Vycm9ySGFuZGxlciBhcyDJtW99IGZyb20gJy4vbGliL2hhbmRsZXJzL2Vycm9yLmhhbmRsZXInO1xuZXhwb3J0IHtDb25maXJtYXRpb25TZXJ2aWNlIGFzIMm1aX0gZnJvbSAnLi9saWIvc2VydmljZXMvY29uZmlybWF0aW9uLnNlcnZpY2UnO1xuZXhwb3J0IHtUb2FzdGVyU2VydmljZSBhcyDJtWV9IGZyb20gJy4vbGliL3NlcnZpY2VzL3RvYXN0ZXIuc2VydmljZSc7Il19 \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/chart/chart.component.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/chart/chart.component.js new file mode 100644 index 0000000000..9b205d67a8 --- /dev/null +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/chart/chart.component.js @@ -0,0 +1,222 @@ +/** + * @fileoverview added by tsickle + * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc + */ +import { Component, ElementRef, EventEmitter, Input, Output, ChangeDetectorRef, } from '@angular/core'; +import { BehaviorSubject } from 'rxjs'; +import { chartJsLoaded$ } from '../../utils/widget-utils'; +var ChartComponent = /** @class */ (function () { + function ChartComponent(el, cdRef) { + var _this = this; + this.el = el; + this.cdRef = cdRef; + this.options = {}; + this.plugins = []; + this.responsive = true; + this.onDataSelect = new EventEmitter(); + this.initialized = new BehaviorSubject(this); + this.onCanvasClick = (/** + * @param {?} event + * @return {?} + */ + function (event) { + if (_this.chart) { + /** @type {?} */ + var element = _this.chart.getElementAtEvent(event); + /** @type {?} */ + var dataset = _this.chart.getDatasetAtEvent(event); + if (element && element[0] && dataset) { + _this.onDataSelect.emit({ originalEvent: event, element: element[0], dataset: dataset }); + } + } + }); + this.initChart = (/** + * @return {?} + */ + function () { + /** @type {?} */ + var opts = _this.options || {}; + opts.responsive = _this.responsive; + // allows chart to resize in responsive mode + if (opts.responsive && (_this.height || _this.width)) { + opts.maintainAspectRatio = false; + } + _this.chart = new Chart(_this.el.nativeElement.children[0].children[0], { + type: _this.type, + data: _this.data, + options: _this.options, + plugins: _this.plugins, + }); + _this.cdRef.detectChanges(); + }); + this.generateLegend = (/** + * @return {?} + */ + function () { + if (_this.chart) { + return _this.chart.generateLegend(); + } + }); + this.refresh = (/** + * @return {?} + */ + function () { + if (_this.chart) { + _this.chart.update(); + _this.cdRef.detectChanges(); + } + }); + this.reinit = (/** + * @return {?} + */ + function () { + if (_this.chart) { + _this.chart.destroy(); + _this.initChart(); + } + }); + } + Object.defineProperty(ChartComponent.prototype, "data", { + get: /** + * @return {?} + */ + function () { + return this._data; + }, + set: /** + * @param {?} val + * @return {?} + */ + function (val) { + this._data = val; + this.reinit(); + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ChartComponent.prototype, "canvas", { + get: /** + * @return {?} + */ + function () { + return this.el.nativeElement.children[0].children[0]; + }, + enumerable: true, + configurable: true + }); + Object.defineProperty(ChartComponent.prototype, "base64Image", { + get: /** + * @return {?} + */ + function () { + return this.chart.toBase64Image(); + }, + enumerable: true, + configurable: true + }); + /** + * @return {?} + */ + ChartComponent.prototype.ngAfterViewInit = /** + * @return {?} + */ + function () { + var _this = this; + chartJsLoaded$.subscribe((/** + * @return {?} + */ + function () { + try { + Chart; + } + catch (error) { + console.error("Chart is not found. Import the Chart from app.module like shown below:\n import('chart.js');\n "); + return; + } + _this.initChart(); + _this._initialized = true; + })); + }; + /** + * @return {?} + */ + ChartComponent.prototype.ngOnDestroy = /** + * @return {?} + */ + function () { + if (this.chart) { + this.chart.destroy(); + this._initialized = false; + this.chart = null; + } + }; + ChartComponent.decorators = [ + { type: Component, args: [{ + selector: 'abp-chart', + template: "\n \n\n" + }] } + ]; + /** @nocollapse */ + ChartComponent.ctorParameters = function () { return [ + { type: ElementRef }, + { type: ChangeDetectorRef } + ]; }; + ChartComponent.propDecorators = { + type: [{ type: Input }], + options: [{ type: Input }], + plugins: [{ type: Input }], + width: [{ type: Input }], + height: [{ type: Input }], + responsive: [{ type: Input }], + onDataSelect: [{ type: Output }], + initialized: [{ type: Output }], + data: [{ type: Input }] + }; + return ChartComponent; +}()); +export { ChartComponent }; +if (false) { + /** @type {?} */ + ChartComponent.prototype.type; + /** @type {?} */ + ChartComponent.prototype.options; + /** @type {?} */ + ChartComponent.prototype.plugins; + /** @type {?} */ + ChartComponent.prototype.width; + /** @type {?} */ + ChartComponent.prototype.height; + /** @type {?} */ + ChartComponent.prototype.responsive; + /** @type {?} */ + ChartComponent.prototype.onDataSelect; + /** @type {?} */ + ChartComponent.prototype.initialized; + /** + * @type {?} + * @private + */ + ChartComponent.prototype._initialized; + /** @type {?} */ + ChartComponent.prototype._data; + /** @type {?} */ + ChartComponent.prototype.chart; + /** @type {?} */ + ChartComponent.prototype.onCanvasClick; + /** @type {?} */ + ChartComponent.prototype.initChart; + /** @type {?} */ + ChartComponent.prototype.generateLegend; + /** @type {?} */ + ChartComponent.prototype.refresh; + /** @type {?} */ + ChartComponent.prototype.reinit; + /** @type {?} */ + ChartComponent.prototype.el; + /** + * @type {?} + * @private + */ + ChartComponent.prototype.cdRef; +} +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9jaGFydC9jaGFydC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUcxRDtJQTJCRSx3QkFBbUIsRUFBYyxFQUFVLEtBQXdCO1FBQW5FLGlCQUF1RTtRQUFwRCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFwQjFELFlBQU8sR0FBUSxFQUFFLENBQUM7UUFFbEIsWUFBTyxHQUFVLEVBQUUsQ0FBQztRQU1wQixlQUFVLEdBQVksSUFBSSxDQUFDO1FBRTFCLGlCQUFZLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFckQsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQTJDbEQsa0JBQWE7Ozs7UUFBRyxVQUFBLEtBQUs7WUFDbkIsSUFBSSxLQUFJLENBQUMsS0FBSyxFQUFFOztvQkFDVixPQUFPLEdBQUcsS0FBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUM7O29CQUM3QyxPQUFPLEdBQUcsS0FBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUM7Z0JBQ2pELElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxPQUFPLEVBQUU7b0JBQ3BDLEtBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsYUFBYSxFQUFFLEtBQUss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QUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1lBQzFCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1NBQ25CO0lBQ0gsQ0FBQzs7Z0JBckhGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsV0FBVztvQkFDckIsd1dBQXFDO2lCQUN0Qzs7OztnQkFkQyxVQUFVO2dCQUtWLGlCQUFpQjs7O3VCQVdoQixLQUFLOzBCQUVMLEtBQUs7MEJBRUwsS0FBSzt3QkFFTCxLQUFLO3lCQUVMLEtBQUs7NkJBRUwsS0FBSzsrQkFFTCxNQUFNOzhCQUVOLE1BQU07dUJBVU4sS0FBSzs7SUF5RlIscUJBQUM7Q0FBQSxBQXRIRCxJQXNIQztTQWxIWSxjQUFjOzs7SUFDekIsOEJBQXNCOztJQUV0QixpQ0FBMkI7O0lBRTNCLGlDQUE2Qjs7SUFFN0IsK0JBQXVCOztJQUV2QixnQ0FBd0I7O0lBRXhCLG9DQUFvQzs7SUFFcEMsc0NBQStEOztJQUUvRCxxQ0FBa0Q7Ozs7O0lBRWxELHNDQUE4Qjs7SUFFOUIsK0JBQVc7O0lBRVgsK0JBQVc7O0lBcUNYLHVDQVFFOztJQUVGLG1DQWlCRTs7SUFFRix3Q0FJRTs7SUFFRixpQ0FLRTs7SUFFRixnQ0FLRTs7SUFsRlUsNEJBQXFCOzs7OztJQUFFLCtCQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2hhcnRKc0xvYWRlZCQgfSBmcm9tICcuLi8uLi91dGlscy93aWRnZXQtdXRpbHMnO1xuZGVjbGFyZSBjb25zdCBDaGFydDogYW55O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtY2hhcnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hhcnQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHR5cGU6IHN0cmluZztcblxuICBASW5wdXQoKSBvcHRpb25zOiBhbnkgPSB7fTtcblxuICBASW5wdXQoKSBwbHVnaW5zOiBhbnlbXSA9IFtdO1xuXG4gIEBJbnB1dCgpIHdpZHRoOiBzdHJpbmc7XG5cbiAgQElucHV0KCkgaGVpZ2h0OiBzdHJpbmc7XG5cbiAgQElucHV0KCkgcmVzcG9uc2l2ZTogYm9vbGVhbiA9IHRydWU7XG5cbiAgQE91dHB1dCgpIG9uRGF0YVNlbGVjdDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQE91dHB1dCgpIGluaXRpYWxpemVkID0gbmV3IEJlaGF2aW9yU3ViamVjdCh0aGlzKTtcblxuICBwcml2YXRlIF9pbml0aWFsaXplZDogYm9vbGVhbjtcblxuICBfZGF0YTogYW55O1xuXG4gIGNoYXJ0OiBhbnk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGVsOiBFbGVtZW50UmVmLCBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBASW5wdXQoKSBnZXQgZGF0YSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLl9kYXRhO1xuICB9XG5cbiAgc2V0IGRhdGEodmFsOiBhbnkpIHtcbiAgICB0aGlzLl9kYXRhID0gdmFsO1xuICAgIHRoaXMucmVpbml0KCk7XG4gIH1cblxuICBnZXQgY2FudmFzKCkge1xuICAgIHJldHVybiB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMF0uY2hpbGRyZW5bMF07XG4gIH1cblxuICBnZXQgYmFzZTY0SW1hZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2hhcnQudG9CYXNlNjRJbWFnZSgpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGNoYXJ0SnNMb2FkZWQkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBDaGFydDtcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYENoYXJ0IGlzIG5vdCBmb3VuZC4gSW1wb3J0IHRoZSBDaGFydCBmcm9tIGFwcC5tb2R1bGUgbGlrZSBzaG93biBiZWxvdzpcbiAgICAgICAgaW1wb3J0KCdjaGFydC5qcycpO1xuICAgICAgICBgKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmluaXRDaGFydCgpO1xuICAgICAgdGhpcy5faW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgIH0pO1xuICB9XG5cbiAgb25DYW52YXNDbGljayA9IGV2ZW50ID0+IHtcbiAgICBpZiAodGhpcy5jaGFydCkge1xuICAgICAgbGV0IGVsZW1lbnQgPSB0aGlzLmNoYXJ0LmdldEVsZW1lbnRBdEV2ZW50KGV2ZW50KTtcbiAgICAgIGxldCBkYXRhc2V0ID0gdGhpcy5jaGFydC5nZXREYXRhc2V0QXRFdmVudChldmVudCk7XG4gICAgICBpZiAoZWxlbWVudCAmJiBlbGVtZW50WzBdICYmIGRhdGFzZXQpIHtcbiAgICAgICAgdGhpcy5vbkRhdGFTZWxlY3QuZW1pdCh7IG9yaWdpbmFsRXZlbnQ6IGV2ZW50LCBlbGVtZW50OiBlbGVtZW50WzBdLCBkYXRhc2V0OiBkYXRhc2V0IH0pO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBpbml0Q2hhcnQgPSAoKSA9PiB7XG4gICAgbGV0IG9wdHMgPSB0aGlzLm9wdGlvbnMgfHwge307XG4gICAgb3B0cy5yZXNwb25zaXZlID0gdGhpcy5yZXNwb25zaXZlO1xuXG4gICAgLy8gYWxsb3dzIGNoYXJ0IHRvIHJlc2l6ZSBpbiByZXNwb25zaXZlIG1vZGVcbiAgICBpZiAob3B0cy5yZXNwb25zaXZlICYmICh0aGlzLmhlaWdodCB8fCB0aGlzLndpZHRoKSkge1xuICAgICAgb3B0cy5tYWludGFpbkFzcGVjdFJhdGlvID0gZmFsc2U7XG4gICAgfVxuXG4gICAgdGhpcy5jaGFydCA9IG5ldyBDaGFydCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMF0uY2hpbGRyZW5bMF0sIHtcbiAgICAgIHR5cGU6IHRoaXMudHlwZSxcbiAgICAgIGRhdGE6IHRoaXMuZGF0YSxcbiAgICAgIG9wdGlvbnM6IHRoaXMub3B0aW9ucyxcbiAgICAgIHBsdWdpbnM6IHRoaXMucGx1Z2lucyxcbiAgICB9KTtcblxuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICB9O1xuXG4gIGdlbmVyYXRlTGVnZW5kID0gKCkgPT4ge1xuICAgIGlmICh0aGlzLmNoYXJ0KSB7XG4gICAgICByZXR1cm4gdGhpcy5jaGFydC5nZW5lcmF0ZUxlZ2VuZCgpO1xuICAgIH1cbiAgfTtcblxuICByZWZyZXNoID0gKCkgPT4ge1xuICAgIGlmICh0aGlzLmNoYXJ0KSB7XG4gICAgICB0aGlzLmNoYXJ0LnVwZGF0ZSgpO1xuICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9O1xuXG4gIHJlaW5pdCA9ICgpID0+IHtcbiAgICBpZiAodGhpcy5jaGFydCkge1xuICAgICAgdGhpcy5jaGFydC5kZXN0cm95KCk7XG4gICAgICB0aGlzLmluaXRDaGFydCgpO1xuICAgIH1cbiAgfTtcblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5jaGFydCkge1xuICAgICAgdGhpcy5jaGFydC5kZXN0cm95KCk7XG4gICAgICB0aGlzLl9pbml0aWFsaXplZCA9IGZhbHNlO1xuICAgICAgdGhpcy5jaGFydCA9IG51bGw7XG4gICAgfVxuICB9XG59XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/confirmation/confirmation.component.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/confirmation/confirmation.component.js index 91b23088cb..a294e46a40 100644 --- a/npm/ng-packs/dist/theme-shared/esm5/lib/components/confirmation/confirmation.component.js +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/confirmation/confirmation.component.js @@ -25,7 +25,7 @@ var ConfirmationComponent = /** @class */ (function () { ConfirmationComponent.decorators = [ { type: Component, args: [{ selector: 'abp-confirmation', - template: "\n \n \n
    \n

    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n

    \n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n
    \n " + template: "\n \n \n \n
    \n {{ message.summary | abpLocalization: message.titleLocalizationParams }}\n
    \n
    \n {{ message.detail | abpLocalization: message.messageLocalizationParams }}\n
    \n\n \n
    \n
    \n " }] } ]; /** @nocollapse */ @@ -48,4 +48,4 @@ if (false) { */ ConfirmationComponent.prototype.confirmationService; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvY29uZmlybWF0aW9uL2NvbmZpcm1hdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFHMUU7SUE0Q0UsK0JBQW9CLG1CQUF3QztRQUF4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBSjVELFlBQU8sMkJBQTBCO1FBQ2pDLFdBQU0seUJBQXlCO1FBQy9CLFlBQU8sMkJBQTBCO0lBRThCLENBQUM7Ozs7O0lBRWhFLHFDQUFLOzs7O0lBQUwsVUFBTSxNQUFzQjtRQUMxQixJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pDLENBQUM7O2dCQWhERixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsUUFBUSxFQUFFLHF2Q0FtQ1Q7aUJBQ0Y7Ozs7Z0JBekNRLG1CQUFtQjs7SUFvRDVCLDRCQUFDO0NBQUEsQUFqREQsSUFpREM7U0FWWSxxQkFBcUI7OztJQUNoQyx3Q0FBaUM7O0lBQ2pDLHVDQUErQjs7SUFDL0Isd0NBQWlDOzs7OztJQUVyQixvREFBZ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb25maXJtYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBUb2FzdGVyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RvYXN0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtY29uZmlybWF0aW9uJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8cC10b2FzdFxuICAgICAgcG9zaXRpb249XCJjZW50ZXJcIlxuICAgICAga2V5PVwiYWJwQ29uZmlybWF0aW9uXCJcbiAgICAgIChvbkNsb3NlKT1cImNsb3NlKGRpc21pc3MpXCJcbiAgICAgIFttb2RhbF09XCJ0cnVlXCJcbiAgICAgIFtiYXNlWkluZGV4XT1cIjEwMDBcIlxuICAgICAgc3R5bGVDbGFzcz1cIlwiXG4gICAgPlxuICAgICAgPG5nLXRlbXBsYXRlIGxldC1tZXNzYWdlIHBUZW1wbGF0ZT1cIm1lc3NhZ2VcIj5cbiAgICAgICAgPGRpdiAqbmdJZj1cIm1lc3NhZ2Uuc3VtbWFyeVwiIGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XG4gICAgICAgICAgPGg0IGNsYXNzPVwibW9kYWwtdGl0bGVcIj5cbiAgICAgICAgICAgIHt7IG1lc3NhZ2Uuc3VtbWFyeSB8IGFicExvY2FsaXphdGlvbjogbWVzc2FnZS50aXRsZUxvY2FsaXphdGlvblBhcmFtcyB9fVxuICAgICAgICAgIDwvaDQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiPlxuICAgICAgICAgIHt7IG1lc3NhZ2UuZGV0YWlsIHwgYWJwTG9jYWxpemF0aW9uOiBtZXNzYWdlLm1lc3NhZ2VMb2NhbGl6YXRpb25QYXJhbXMgfX1cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XG4gICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFtZXNzYWdlLmhpZGVDYW5jZWxCdG5cIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJjbG9zZShyZWplY3QpXCI+XG4gICAgICAgICAgICB7eyBtZXNzYWdlLmNhbmNlbENvcHkgfHwgJ0FicElkZW50aXR5OjpDYW5jZWwnIHwgYWJwTG9jYWxpemF0aW9uIH19XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKm5nSWY9XCIhbWVzc2FnZS5oaWRlWWVzQnRuXCJcbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiXG4gICAgICAgICAgICAoY2xpY2spPVwiY2xvc2UoY29uZmlybSlcIlxuICAgICAgICAgICAgYXV0b2ZvY3VzXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4+e3sgbWVzc2FnZS55ZXNDb3B5IHx8ICdBYnBJZGVudGl0eTo6WWVzJyB8IGFicExvY2FsaXphdGlvbiB9fTwvc3Bhbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvcC10b2FzdD5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgQ29uZmlybWF0aW9uQ29tcG9uZW50IHtcbiAgY29uZmlybSA9IFRvYXN0ZXIuU3RhdHVzLmNvbmZpcm07XG4gIHJlamVjdCA9IFRvYXN0ZXIuU3RhdHVzLnJlamVjdDtcbiAgZGlzbWlzcyA9IFRvYXN0ZXIuU3RhdHVzLmRpc21pc3M7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlKSB7fVxuXG4gIGNsb3NlKHN0YXR1czogVG9hc3Rlci5TdGF0dXMpIHtcbiAgICB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2UuY2xlYXIoc3RhdHVzKTtcbiAgfVxufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BhYnAvbmcudGhlbWUuc2hhcmVkLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvY29uZmlybWF0aW9uL2NvbmZpcm1hdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFHMUU7SUEyQ0UsK0JBQW9CLG1CQUF3QztRQUF4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBSjVELFlBQU8sMkJBQTBCO1FBQ2pDLFdBQU0seUJBQXlCO1FBQy9CLFlBQU8sMkJBQTBCO0lBRThCLENBQUM7Ozs7O0lBRWhFLHFDQUFLOzs7O0lBQUwsVUFBTSxNQUFzQjtRQUMxQixJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pDLENBQUM7O2dCQS9DRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsUUFBUSxFQUFFLHl5Q0FrQ1Q7aUJBQ0Y7Ozs7Z0JBeENRLG1CQUFtQjs7SUFtRDVCLDRCQUFDO0NBQUEsQUFoREQsSUFnREM7U0FWWSxxQkFBcUI7OztJQUNoQyx3Q0FBaUM7O0lBQ2pDLHVDQUErQjs7SUFDL0Isd0NBQWlDOzs7OztJQUVyQixvREFBZ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb25maXJtYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBUb2FzdGVyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RvYXN0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtY29uZmlybWF0aW9uJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8cC10b2FzdFxuICAgICAgcG9zaXRpb249XCJjZW50ZXJcIlxuICAgICAga2V5PVwiYWJwQ29uZmlybWF0aW9uXCJcbiAgICAgIChvbkNsb3NlKT1cImNsb3NlKGRpc21pc3MpXCJcbiAgICAgIFttb2RhbF09XCJ0cnVlXCJcbiAgICAgIFtiYXNlWkluZGV4XT1cIjEwMDBcIlxuICAgICAgc3R5bGVDbGFzcz1cImFicC1jb25maXJtXCJcbiAgICA+XG4gICAgICA8bmctdGVtcGxhdGUgbGV0LW1lc3NhZ2UgcFRlbXBsYXRlPVwibWVzc2FnZVwiPlxuICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWV4Y2xhbWF0aW9uLWNpcmNsZSBhYnAtY29uZmlybS1pY29uXCI+PC9pPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwibWVzc2FnZS5zdW1tYXJ5XCIgY2xhc3M9XCJhYnAtY29uZmlybS1zdW1tYXJ5XCI+XG4gICAgICAgICAge3sgbWVzc2FnZS5zdW1tYXJ5IHwgYWJwTG9jYWxpemF0aW9uOiBtZXNzYWdlLnRpdGxlTG9jYWxpemF0aW9uUGFyYW1zIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWJwLWNvbmZpcm0tYm9keVwiPlxuICAgICAgICAgIHt7IG1lc3NhZ2UuZGV0YWlsIHwgYWJwTG9jYWxpemF0aW9uOiBtZXNzYWdlLm1lc3NhZ2VMb2NhbGl6YXRpb25QYXJhbXMgfX1cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFicC1jb25maXJtLWZvb3RlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XG4gICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFtZXNzYWdlLmhpZGVDYW5jZWxCdG5cIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNtIGJ0bi1wcmltYXJ5XCIgKGNsaWNrKT1cImNsb3NlKHJlamVjdClcIj5cbiAgICAgICAgICAgIHt7IG1lc3NhZ2UuY2FuY2VsQ29weSB8fCAnQWJwSWRlbnRpdHk6OkNhbmNlbCcgfCBhYnBMb2NhbGl6YXRpb24gfX1cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAqbmdJZj1cIiFtZXNzYWdlLmhpZGVZZXNCdG5cIlxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tc20gYnRuLXByaW1hcnlcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImNsb3NlKGNvbmZpcm0pXCJcbiAgICAgICAgICAgIGF1dG9mb2N1c1xuICAgICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuPnt7IG1lc3NhZ2UueWVzQ29weSB8fCAnQWJwSWRlbnRpdHk6OlllcycgfCBhYnBMb2NhbGl6YXRpb24gfX08L3NwYW4+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L3AtdG9hc3Q+XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIENvbmZpcm1hdGlvbkNvbXBvbmVudCB7XG4gIGNvbmZpcm0gPSBUb2FzdGVyLlN0YXR1cy5jb25maXJtO1xuICByZWplY3QgPSBUb2FzdGVyLlN0YXR1cy5yZWplY3Q7XG4gIGRpc21pc3MgPSBUb2FzdGVyLlN0YXR1cy5kaXNtaXNzO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29uZmlybWF0aW9uU2VydmljZTogQ29uZmlybWF0aW9uU2VydmljZSkge31cblxuICBjbG9zZShzdGF0dXM6IFRvYXN0ZXIuU3RhdHVzKSB7XG4gICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlLmNsZWFyKHN0YXR1cyk7XG4gIH1cbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/index.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/index.js index 056a0009d9..7a6aeb843a 100644 --- a/npm/ng-packs/dist/theme-shared/esm5/lib/components/index.js +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/index.js @@ -2,12 +2,13 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export { ButtonComponent } from './button/button.component'; export { BreadcrumbComponent } from './breadcrumb/breadcrumb.component'; +export { ButtonComponent } from './button/button.component'; export { ChangePasswordComponent } from './change-password/change-password.component'; +export { ChartComponent } from './chart/chart.component'; export { ConfirmationComponent } from './confirmation/confirmation.component'; export { LoaderBarComponent } from './loader-bar/loader-bar.component'; export { ModalComponent } from './modal/modal.component'; export { ProfileComponent } from './profile/profile.component'; export { ToastComponent } from './toast/toast.component'; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxnQ0FBYywyQkFBMkIsQ0FBQztBQUMxQyxvQ0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCx3Q0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxzQ0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxtQ0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCwrQkFBYyx5QkFBeUIsQ0FBQztBQUN4QyxpQ0FBYyw2QkFBNkIsQ0FBQztBQUM1QywrQkFBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb25maXJtYXRpb24vY29uZmlybWF0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdG9hc3QvdG9hc3QuY29tcG9uZW50JztcbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWJwL25nLnRoZW1lLnNoYXJlZC8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxvQ0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxnQ0FBYywyQkFBMkIsQ0FBQztBQUMxQyx3Q0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCwrQkFBYyx5QkFBeUIsQ0FBQztBQUN4QyxzQ0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxtQ0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCwrQkFBYyx5QkFBeUIsQ0FBQztBQUN4QyxpQ0FBYyw2QkFBNkIsQ0FBQztBQUM1QywrQkFBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jaGFydC9jaGFydC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb25maXJtYXRpb24vY29uZmlybWF0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xvYWRlci1iYXIvbG9hZGVyLWJhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vdG9hc3QvdG9hc3QuY29tcG9uZW50JztcbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/modal/modal.component.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/modal/modal.component.js index 9317e0858b..af3bb8d864 100644 --- a/npm/ng-packs/dist/theme-shared/esm5/lib/components/modal/modal.component.js +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/modal/modal.component.js @@ -114,15 +114,20 @@ var ModalComponent = /** @class */ (function () { this._visible = value; this.visibleChange.emit(value); this.showModal = value; - value - ? timer(ANIMATION_TIMEOUT + 100) + if (value) { + timer(ANIMATION_TIMEOUT + 100) .pipe(take(1)) .subscribe((/** * @param {?} _ * @return {?} */ - function (_) { return (_this.closable = true); })) - : (this.closable = false); + function (_) { return (_this.closable = true); })); + this.renderer.addClass(document.body, 'modal-open'); + } + else { + this.closable = false; + this.renderer.removeClass(document.body, 'modal-open'); + } }; /** * @return {?} @@ -204,7 +209,7 @@ var ModalComponent = /** @class */ (function () { ModalComponent.decorators = [ { type: Component, args: [{ selector: 'abp-modal', - template: "\n \n
    \n
    \n \n\n \n
    \n \n \n\n
    \n \n
    \n
    \n \n \n\n \n\n" + template: "\n \n
    \n
    \n \n\n \n
    \n \n \n
    \n
    \n \n
    \n \n \n\n \n\n" }] } ]; /** @nocollapse */ @@ -308,4 +313,4 @@ function hasNgDirty(nodes) { */ function (node) { return (node.className || '').indexOf('ng-dirty') > -1; })) > -1; } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULFdBQVcsRUFDWCxTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztJQUl2RCxpQkFBaUIsR0FBRyxHQUFHO0FBRTdCO0lBdUZFLHdCQUFvQixRQUFtQixFQUFVLG1CQUF3QztRQUFyRSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQXhDaEYsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQixlQUFVLEdBQVcsRUFBRSxDQUFDO1FBRXhCLFNBQUksR0FBYyxJQUFJLENBQUM7UUFNdEIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTVDLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBZ0IxQyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLFVBQUssR0FBWSxLQUFLLENBQUM7UUFFdkIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQix1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFFcEMs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QUFtQzs7SUFFbkMsb0NBQWlDOztJQUVqQyw4QkFBZ0M7O0lBRWhDLGdDQUF3Qjs7SUFFeEIsbUNBQTJCOztJQUUzQix1Q0FBc0Q7O0lBRXRELDhCQUEwQzs7SUFFMUMsbUNBQTBFOztJQUUxRSxpQ0FBc0U7O0lBRXRFLG1DQUEwRTs7SUFFMUUsa0NBQXlGOztJQUV6RixtQ0FBb0c7O0lBRXBHLHNDQUEwRTs7SUFFMUUsb0NBQXVDOztJQUV2QyxrQ0FBMEI7O0lBRTFCLCtCQUF1Qjs7SUFFdkIsbUNBQTJCOztJQUUzQiw0Q0FBb0M7O0lBRXBDLGtDQUEwQjs7SUFFMUIsa0NBQStCOzs7OztJQUVuQixrQ0FBMkI7Ozs7O0lBQUUsNkNBQWdEOzs7Ozs7QUFzRTNGLFNBQVMsWUFBWSxDQUFDLEtBQWU7SUFDbkMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU07Ozs7O0lBQzdCLFVBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSyx3QkFBSSxHQUFHLEVBQUssQ0FBQyxHQUFHLENBQUMsVUFBVSxJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQTVGLENBQTZGLEdBQzNHLEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQzs7Ozs7QUFFRCxTQUFTLFVBQVUsQ0FBQyxLQUFvQjtJQUN0QyxPQUFPLEtBQUssQ0FBQyxTQUFTOzs7O0lBQUMsVUFBQSxJQUFJLElBQUksT0FBQSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUEvQyxDQUErQyxFQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDdkYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgUmVuZGVyZXIyLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3Q2hpbGRyZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJqZWN0LCB0aW1lciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCB0YWtlLCB0YWtlVW50aWwsIGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFRvYXN0ZXIgfSBmcm9tICcuLi8uLi9tb2RlbHMvdG9hc3Rlcic7XG5pbXBvcnQgeyBDb25maXJtYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29uZmlybWF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuXG5leHBvcnQgdHlwZSBNb2RhbFNpemUgPSAnc20nIHwgJ21kJyB8ICdsZycgfCAneGwnO1xuXG5jb25zdCBBTklNQVRJT05fVElNRU9VVCA9IDIwMDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWJwLW1vZGFsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZTtcbiAgfVxuICBzZXQgdmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdib29sZWFuJykgcmV0dXJuO1xuXG4gICAgaWYgKCF0aGlzLm1vZGFsQ29udGVudCkge1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuc2hvd01vZGFsID0gdmFsdWU7XG4gICAgICAgICAgdGhpcy52aXNpYmxlID0gdmFsdWU7XG4gICAgICAgIH0sIDApO1xuICAgICAgfVxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5zZXRWaXNpYmxlKHZhbHVlKTtcbiAgICAgIHRoaXMubGlzdGVuKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2xvc2FibGUgPSBmYWxzZTtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5tb2RhbENvbnRlbnQubmF0aXZlRWxlbWVudCwgJ2ZhZGUtb3V0LXRvcCcpO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0VmlzaWJsZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMubmdPbkRlc3Ryb3koKTtcbiAgICAgIH0sIEFOSU1BVElPTl9USU1FT1VUIC0gMTApO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGdldCBidXN5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9idXN5O1xuICB9XG4gIHNldCBidXN5KHZhbHVlOiBib29sZWFuKSB7XG4gICAgaWYgKHRoaXMuYWJwU3VibWl0ICYmIHRoaXMuYWJwU3VibWl0IGluc3RhbmNlb2YgQnV0dG9uQ29tcG9uZW50KSB7XG4gICAgICB0aGlzLmFicFN1Ym1pdC5sb2FkaW5nID0gdmFsdWU7XG4gICAgfVxuXG4gICAgdGhpcy5fYnVzeSA9IHZhbHVlO1xuICB9XG5cbiAgQElucHV0KCkgY2VudGVyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKSBtb2RhbENsYXNzOiBzdHJpbmcgPSAnJztcblxuICBASW5wdXQoKSBzaXplOiBNb2RhbFNpemUgPSAnbGcnO1xuXG4gIEBJbnB1dCgpIGhlaWdodDogbnVtYmVyO1xuXG4gIEBJbnB1dCgpIG1pbkhlaWdodDogbnVtYmVyO1xuXG4gIEBPdXRwdXQoKSB2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIEBPdXRwdXQoKSBpbml0ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBDb250ZW50Q2hpbGQoJ2FicEhlYWRlcicsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBIZWFkZXI6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZCgnYWJwQm9keScsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBCb2R5OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBDb250ZW50Q2hpbGQoJ2FicEZvb3RlcicsIHsgc3RhdGljOiBmYWxzZSB9KSBhYnBGb290ZXI6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZCgnYWJwQ2xvc2UnLCB7IHN0YXRpYzogZmFsc2UsIHJlYWQ6IEVsZW1lbnRSZWYgfSkgYWJwQ2xvc2U6IEVsZW1lbnRSZWY8YW55PjtcblxuICBAQ29udGVudENoaWxkKEJ1dHRvbkNvbXBvbmVudCwgeyBzdGF0aWM6IGZhbHNlLCByZWFkOiBCdXR0b25Db21wb25lbnQgfSkgYWJwU3VibWl0OiBCdXR0b25Db21wb25lbnQ7XG5cbiAgQFZpZXdDaGlsZCgnYWJwTW9kYWxDb250ZW50JywgeyBzdGF0aWM6IGZhbHNlIH0pIG1vZGFsQ29udGVudDogRWxlbWVudFJlZjtcblxuICBAVmlld0NoaWxkcmVuKCdhYnAtYnV0dG9uJykgYWJwQnV0dG9ucztcblxuICBfdmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIF9idXN5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgc2hvd01vZGFsOiBib29sZWFuID0gZmFsc2U7XG5cbiAgaXNPcGVuQ29uZmlybWF0aW9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY2xvc2FibGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UpIHt9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gIH1cblxuICBzZXRWaXNpYmxlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fdmlzaWJsZSA9IHZhbHVlO1xuICAgIHRoaXMudmlzaWJsZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICB0aGlzLnNob3dNb2RhbCA9IHZhbHVlO1xuXG4gICAgdmFsdWVcbiAgICAgID8gdGltZXIoQU5JTUFUSU9OX1RJTUVPVVQgKyAxMDApXG4gICAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKF8gPT4gKHRoaXMuY2xvc2FibGUgPSB0cnVlKSlcbiAgICAgIDogKHRoaXMuY2xvc2FibGUgPSBmYWxzZSk7XG4gIH1cblxuICBsaXN0ZW4oKSB7XG4gICAgZnJvbUV2ZW50KGRvY3VtZW50LCAna2V5dXAnKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgZGVib3VuY2VUaW1lKDE1MCksXG4gICAgICAgIGZpbHRlcigoa2V5OiBLZXlib2FyZEV2ZW50KSA9PiBrZXkgJiYga2V5LmNvZGUgPT09ICdFc2NhcGUnICYmIHRoaXMuY2xvc2FibGUpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShfID0+IHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfSk7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICghdGhpcy5hYnBDbG9zZSkgcmV0dXJuO1xuICAgICAgZnJvbUV2ZW50KHRoaXMuYWJwQ2xvc2UubmF0aXZlRWxlbWVudCwgJ2NsaWNrJylcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICAgIGZpbHRlcigoKSA9PiAhISh0aGlzLmNsb3NhYmxlICYmIHRoaXMubW9kYWxDb250ZW50KSksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNsb3NlKCkpO1xuICAgIH0sIDApO1xuXG4gICAgdGhpcy5pbml0LmVtaXQoKTtcbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIGlmICghdGhpcy5jbG9zYWJsZSB8fCB0aGlzLmJ1c3kpIHJldHVybjtcblxuICAgIGNvbnN0IG5vZGVzID0gZ2V0RmxhdE5vZGVzKFxuICAgICAgKHRoaXMubW9kYWxDb250ZW50Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcignI2FicC1tb2RhbC1ib2R5JykgYXMgSFRNTEVsZW1lbnQpLmNoaWxkTm9kZXMsXG4gICAgKTtcblxuICAgIGlmIChoYXNOZ0RpcnR5KG5vZGVzKSkge1xuICAgICAgaWYgKHRoaXMuaXNPcGVuQ29uZmlybWF0aW9uKSByZXR1cm47XG5cbiAgICAgIHRoaXMuaXNPcGVuQ29uZmlybWF0aW9uID0gdHJ1ZTtcbiAgICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZVxuICAgICAgICAud2FybignQWJwQWNjb3VudDo6QXJlWW91U3VyZVlvdVdhbnRUb0NhbmNlbEVkaXRpbmdXYXJuaW5nTWVzc2FnZScsICdBYnBBY2NvdW50OjpBcmVZb3VTdXJlJylcbiAgICAgICAgLnN1YnNjcmliZSgoc3RhdHVzOiBUb2FzdGVyLlN0YXR1cykgPT4ge1xuICAgICAgICAgIHRpbWVyKEFOSU1BVElPTl9USU1FT1VUKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc09wZW5Db25maXJtYXRpb24gPSBmYWxzZTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIGlmIChzdGF0dXMgPT09IFRvYXN0ZXIuU3RhdHVzLmNvbmZpcm0pIHtcbiAgICAgICAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRGbGF0Tm9kZXMobm9kZXM6IE5vZGVMaXN0KTogSFRNTEVsZW1lbnRbXSB7XG4gIHJldHVybiBBcnJheS5mcm9tKG5vZGVzKS5yZWR1Y2UoXG4gICAgKGFjYywgdmFsKSA9PiBbLi4uYWNjLCAuLi4odmFsLmNoaWxkTm9kZXMgJiYgdmFsLmNoaWxkTm9kZXMubGVuZ3RoID8gZ2V0RmxhdE5vZGVzKHZhbC5jaGlsZE5vZGVzKSA6IFt2YWxdKV0sXG4gICAgW10sXG4gICk7XG59XG5cbmZ1bmN0aW9uIGhhc05nRGlydHkobm9kZXM6IEhUTUxFbGVtZW50W10pIHtcbiAgcmV0dXJuIG5vZGVzLmZpbmRJbmRleChub2RlID0+IChub2RlLmNsYXNzTmFtZSB8fCAnJykuaW5kZXhPZignbmctZGlydHknKSA+IC0xKSA+IC0xO1xufVxuIl19 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULFdBQVcsRUFDWCxTQUFTLEVBQ1QsWUFBWSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztJQUl2RCxpQkFBaUIsR0FBRyxHQUFHO0FBRTdCO0lBdUZFLHdCQUFvQixRQUFtQixFQUFVLG1CQUF3QztRQUFyRSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQXhDaEYsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQixlQUFVLEdBQVcsRUFBRSxDQUFDO1FBRXhCLFNBQUksR0FBYyxJQUFJLENBQUM7UUFNdEIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRTVDLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBZ0IxQyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLFVBQUssR0FBWSxLQUFLLENBQUM7UUFFdkIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUUzQix1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFFcEMs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RyxDQUFDLENBQUMsRUFBL0MsQ0FBK0MsRUFBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQ3ZGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPdXRwdXQsXG4gIFJlbmRlcmVyMixcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZyb21FdmVudCwgU3ViamVjdCwgdGltZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgdGFrZSwgdGFrZVVudGlsLCBkZWJvdW5jZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBUb2FzdGVyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RvYXN0ZXInO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NvbmZpcm1hdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcblxuZXhwb3J0IHR5cGUgTW9kYWxTaXplID0gJ3NtJyB8ICdtZCcgfCAnbGcnIHwgJ3hsJztcblxuY29uc3QgQU5JTUFUSU9OX1RJTUVPVVQgPSAyMDA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FicC1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgQElucHV0KClcbiAgZ2V0IHZpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGU7XG4gIH1cbiAgc2V0IHZpc2libGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnYm9vbGVhbicpIHJldHVybjtcblxuICAgIGlmICghdGhpcy5tb2RhbENvbnRlbnQpIHtcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB0aGlzLnNob3dNb2RhbCA9IHZhbHVlO1xuICAgICAgICAgIHRoaXMudmlzaWJsZSA9IHZhbHVlO1xuICAgICAgICB9LCAwKTtcbiAgICAgIH1cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuc2V0VmlzaWJsZSh2YWx1ZSk7XG4gICAgICB0aGlzLmxpc3RlbigpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNsb3NhYmxlID0gZmFsc2U7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMubW9kYWxDb250ZW50Lm5hdGl2ZUVsZW1lbnQsICdmYWRlLW91dC10b3AnKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLnNldFZpc2libGUodmFsdWUpO1xuICAgICAgICB0aGlzLm5nT25EZXN0cm95KCk7XG4gICAgICB9LCBBTklNQVRJT05fVElNRU9VVCAtIDEwKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgYnVzeSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fYnVzeTtcbiAgfVxuICBzZXQgYnVzeSh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLmFicFN1Ym1pdCAmJiB0aGlzLmFicFN1Ym1pdCBpbnN0YW5jZW9mIEJ1dHRvbkNvbXBvbmVudCkge1xuICAgICAgdGhpcy5hYnBTdWJtaXQubG9hZGluZyA9IHZhbHVlO1xuICAgIH1cblxuICAgIHRoaXMuX2J1c3kgPSB2YWx1ZTtcbiAgfVxuXG4gIEBJbnB1dCgpIGNlbnRlcmVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KCkgbW9kYWxDbGFzczogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KCkgc2l6ZTogTW9kYWxTaXplID0gJ2xnJztcblxuICBASW5wdXQoKSBoZWlnaHQ6IG51bWJlcjtcblxuICBASW5wdXQoKSBtaW5IZWlnaHQ6IG51bWJlcjtcblxuICBAT3V0cHV0KCkgdmlzaWJsZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBAT3V0cHV0KCkgaW5pdCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAQ29udGVudENoaWxkKCdhYnBIZWFkZXInLCB7IHN0YXRpYzogZmFsc2UgfSkgYWJwSGVhZGVyOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBDb250ZW50Q2hpbGQoJ2FicEJvZHknLCB7IHN0YXRpYzogZmFsc2UgfSkgYWJwQm9keTogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAQ29udGVudENoaWxkKCdhYnBGb290ZXInLCB7IHN0YXRpYzogZmFsc2UgfSkgYWJwRm9vdGVyOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBDb250ZW50Q2hpbGQoJ2FicENsb3NlJywgeyBzdGF0aWM6IGZhbHNlLCByZWFkOiBFbGVtZW50UmVmIH0pIGFicENsb3NlOiBFbGVtZW50UmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZChCdXR0b25Db21wb25lbnQsIHsgc3RhdGljOiBmYWxzZSwgcmVhZDogQnV0dG9uQ29tcG9uZW50IH0pIGFicFN1Ym1pdDogQnV0dG9uQ29tcG9uZW50O1xuXG4gIEBWaWV3Q2hpbGQoJ2FicE1vZGFsQ29udGVudCcsIHsgc3RhdGljOiBmYWxzZSB9KSBtb2RhbENvbnRlbnQ6IEVsZW1lbnRSZWY7XG5cbiAgQFZpZXdDaGlsZHJlbignYWJwLWJ1dHRvbicpIGFicEJ1dHRvbnM7XG5cbiAgX3Zpc2libGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBfYnVzeTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHNob3dNb2RhbDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGlzT3BlbkNvbmZpcm1hdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNsb3NhYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlKSB7fVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICB9XG5cbiAgc2V0VmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3Zpc2libGUgPSB2YWx1ZTtcbiAgICB0aGlzLnZpc2libGVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgdGhpcy5zaG93TW9kYWwgPSB2YWx1ZTtcblxuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGltZXIoQU5JTUFUSU9OX1RJTUVPVVQgKyAxMDApXG4gICAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAgIC5zdWJzY3JpYmUoXyA9PiAodGhpcy5jbG9zYWJsZSA9IHRydWUpKTtcblxuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhkb2N1bWVudC5ib2R5LCAnbW9kYWwtb3BlbicpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNsb3NhYmxlID0gZmFsc2U7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKGRvY3VtZW50LmJvZHksICdtb2RhbC1vcGVuJyk7XG4gICAgfVxuICB9XG5cbiAgbGlzdGVuKCkge1xuICAgIGZyb21FdmVudChkb2N1bWVudCwgJ2tleXVwJylcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICAgIGRlYm91bmNlVGltZSgxNTApLFxuICAgICAgICBmaWx0ZXIoKGtleTogS2V5Ym9hcmRFdmVudCkgPT4ga2V5ICYmIGtleS5jb2RlID09PSAnRXNjYXBlJyAmJiB0aGlzLmNsb3NhYmxlKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoXyA9PiB7XG4gICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgIH0pO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAoIXRoaXMuYWJwQ2xvc2UpIHJldHVybjtcbiAgICAgIGZyb21FdmVudCh0aGlzLmFicENsb3NlLm5hdGl2ZUVsZW1lbnQsICdjbGljaycpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgICBmaWx0ZXIoKCkgPT4gISEodGhpcy5jbG9zYWJsZSAmJiB0aGlzLm1vZGFsQ29udGVudCkpLFxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZSgpKTtcbiAgICB9LCAwKTtcblxuICAgIHRoaXMuaW5pdC5lbWl0KCk7XG4gIH1cblxuICBjbG9zZSgpIHtcbiAgICBpZiAoIXRoaXMuY2xvc2FibGUgfHwgdGhpcy5idXN5KSByZXR1cm47XG5cbiAgICBjb25zdCBub2RlcyA9IGdldEZsYXROb2RlcyhcbiAgICAgICh0aGlzLm1vZGFsQ29udGVudC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJyNhYnAtbW9kYWwtYm9keScpIGFzIEhUTUxFbGVtZW50KS5jaGlsZE5vZGVzLFxuICAgICk7XG5cbiAgICBpZiAoaGFzTmdEaXJ0eShub2RlcykpIHtcbiAgICAgIGlmICh0aGlzLmlzT3BlbkNvbmZpcm1hdGlvbikgcmV0dXJuO1xuXG4gICAgICB0aGlzLmlzT3BlbkNvbmZpcm1hdGlvbiA9IHRydWU7XG4gICAgICB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2VcbiAgICAgICAgLndhcm4oJ0FicEFjY291bnQ6OkFyZVlvdVN1cmVZb3VXYW50VG9DYW5jZWxFZGl0aW5nV2FybmluZ01lc3NhZ2UnLCAnQWJwQWNjb3VudDo6QXJlWW91U3VyZScpXG4gICAgICAgIC5zdWJzY3JpYmUoKHN0YXR1czogVG9hc3Rlci5TdGF0dXMpID0+IHtcbiAgICAgICAgICB0aW1lcihBTklNQVRJT05fVElNRU9VVCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaXNPcGVuQ29uZmlybWF0aW9uID0gZmFsc2U7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICBpZiAoc3RhdHVzID09PSBUb2FzdGVyLlN0YXR1cy5jb25maXJtKSB7XG4gICAgICAgICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0RmxhdE5vZGVzKG5vZGVzOiBOb2RlTGlzdCk6IEhUTUxFbGVtZW50W10ge1xuICByZXR1cm4gQXJyYXkuZnJvbShub2RlcykucmVkdWNlKFxuICAgIChhY2MsIHZhbCkgPT4gWy4uLmFjYywgLi4uKHZhbC5jaGlsZE5vZGVzICYmIHZhbC5jaGlsZE5vZGVzLmxlbmd0aCA/IGdldEZsYXROb2Rlcyh2YWwuY2hpbGROb2RlcykgOiBbdmFsXSldLFxuICAgIFtdLFxuICApO1xufVxuXG5mdW5jdGlvbiBoYXNOZ0RpcnR5KG5vZGVzOiBIVE1MRWxlbWVudFtdKSB7XG4gIHJldHVybiBub2Rlcy5maW5kSW5kZXgobm9kZSA9PiAobm9kZS5jbGFzc05hbWUgfHwgJycpLmluZGV4T2YoJ25nLWRpcnR5JykgPiAtMSkgPiAtMTtcbn1cbiJdfQ== \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/components/toast/toast.component.js b/npm/ng-packs/dist/theme-shared/esm5/lib/components/toast/toast.component.js index b44bf3a1b4..e4bd9ccf03 100644 --- a/npm/ng-packs/dist/theme-shared/esm5/lib/components/toast/toast.component.js +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/components/toast/toast.component.js @@ -9,10 +9,10 @@ var ToastComponent = /** @class */ (function () { ToastComponent.decorators = [ { type: Component, args: [{ selector: 'abp-toast', - template: "\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n " + template: "\n \n \n \n
    \n
    {{ message.summary | abpLocalization: message.titleLocalizationParams }}
    \n
    {{ message.detail | abpLocalization: message.messageLocalizationParams }}
    \n
    \n
    \n
    \n " }] } ]; return ToastComponent; }()); export { ToastComponent }; -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy90b2FzdC90b2FzdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUM7SUFBQTtJQXNCNkIsQ0FBQzs7Z0JBdEI3QixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLFFBQVEsRUFBRSx5MEJBa0JUO2lCQUNGOztJQUM0QixxQkFBQztDQUFBLEFBdEI5QixJQXNCOEI7U0FBakIsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtdG9hc3QnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxwLXRvYXN0IHBvc2l0aW9uPVwiYm90dG9tLXJpZ2h0XCIga2V5PVwiYWJwVG9hc3RcIiBbYmFzZVpJbmRleF09XCIxMDAwXCI+XG4gICAgICA8bmctdGVtcGxhdGUgbGV0LW1lc3NhZ2UgcFRlbXBsYXRlPVwibWVzc2FnZVwiPlxuICAgICAgICA8c3BhblxuICAgICAgICAgIGNsYXNzPVwidWktdG9hc3QtaWNvbiBwaVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgJ3BpLWluZm8tY2lyY2xlJzogbWVzc2FnZS5zZXZlcml0eSA9PSAnaW5mbycsXG4gICAgICAgICAgICAncGktZXhjbGFtYXRpb24tdHJpYW5nbGUnOiBtZXNzYWdlLnNldmVyaXR5ID09ICd3YXJuJyxcbiAgICAgICAgICAgICdwaS10aW1lcyc6IG1lc3NhZ2Uuc2V2ZXJpdHkgPT0gJ2Vycm9yJyxcbiAgICAgICAgICAgICdwaS1jaGVjayc6IG1lc3NhZ2Uuc2V2ZXJpdHkgPT0gJ3N1Y2Nlc3MnXG4gICAgICAgICAgfVwiXG4gICAgICAgID48L3NwYW4+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ1aS10b2FzdC1tZXNzYWdlLXRleHQtY29udGVudFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1aS10b2FzdC1zdW1tYXJ5XCI+e3sgbWVzc2FnZS5zdW1tYXJ5IHwgYWJwTG9jYWxpemF0aW9uOiBtZXNzYWdlLnRpdGxlTG9jYWxpemF0aW9uUGFyYW1zIH19PC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInVpLXRvYXN0LWRldGFpbFwiPnt7IG1lc3NhZ2UuZGV0YWlsIHwgYWJwTG9jYWxpemF0aW9uOiBtZXNzYWdlLm1lc3NhZ2VMb2NhbGl6YXRpb25QYXJhbXMgfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvcC10b2FzdD5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgVG9hc3RDb21wb25lbnQge31cbiJdfQ== \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFicC9uZy50aGVtZS5zaGFyZWQvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy90b2FzdC90b2FzdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUM7SUFBQTtJQXNCNkIsQ0FBQzs7Z0JBdEI3QixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLFFBQVEsRUFBRSxrMkJBa0JUO2lCQUNGOztJQUM0QixxQkFBQztDQUFBLEFBdEI5QixJQXNCOEI7U0FBakIsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhYnAtdG9hc3QnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxwLXRvYXN0IHBvc2l0aW9uPVwiYm90dG9tLXJpZ2h0XCIga2V5PVwiYWJwVG9hc3RcIiBzdHlsZUNsYXNzPVwiYWJwLXRvYXN0XCIgW2Jhc2VaSW5kZXhdPVwiMTAwMFwiPlxuICAgICAgPG5nLXRlbXBsYXRlIGxldC1tZXNzYWdlIHBUZW1wbGF0ZT1cIm1lc3NhZ2VcIj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cInVpLXRvYXN0LWljb24gcGlcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICdwaS1pbmZvLWNpcmNsZSc6IG1lc3NhZ2Uuc2V2ZXJpdHkgPT0gJ2luZm8nLFxuICAgICAgICAgICAgJ3BpLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlJzogbWVzc2FnZS5zZXZlcml0eSA9PSAnd2FybicsXG4gICAgICAgICAgICAncGktdGltZXMnOiBtZXNzYWdlLnNldmVyaXR5ID09ICdlcnJvcicsXG4gICAgICAgICAgICAncGktY2hlY2snOiBtZXNzYWdlLnNldmVyaXR5ID09ICdzdWNjZXNzJ1xuICAgICAgICAgIH1cIlxuICAgICAgICA+PC9zcGFuPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidWktdG9hc3QtbWVzc2FnZS10ZXh0LWNvbnRlbnRcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidWktdG9hc3Qtc3VtbWFyeVwiPnt7IG1lc3NhZ2Uuc3VtbWFyeSB8IGFicExvY2FsaXphdGlvbjogbWVzc2FnZS50aXRsZUxvY2FsaXphdGlvblBhcmFtcyB9fTwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1aS10b2FzdC1kZXRhaWxcIj57eyBtZXNzYWdlLmRldGFpbCB8IGFicExvY2FsaXphdGlvbjogbWVzc2FnZS5tZXNzYWdlTG9jYWxpemF0aW9uUGFyYW1zIH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L3AtdG9hc3Q+XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0Q29tcG9uZW50IHt9XG4iXX0= \ No newline at end of file diff --git a/npm/ng-packs/dist/theme-shared/esm5/lib/contants/styles.js b/npm/ng-packs/dist/theme-shared/esm5/lib/contants/styles.js index f1819c2696..f45481e3ad 100644 --- a/npm/ng-packs/dist/theme-shared/esm5/lib/contants/styles.js +++ b/npm/ng-packs/dist/theme-shared/esm5/lib/contants/styles.js @@ -2,5 +2,5 @@ * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ -export default "\n.is-invalid .form-control {\n border-color: #dc3545;\n border-style: solid !important;\n}\n\n.is-invalid .invalid-feedback,\n.is-invalid + * .invalid-feedback {\n display: block;\n}\n\n.data-tables-filter {\n text-align: right;\n}\n\n.pointer {\n cursor: pointer;\n}\n\n.navbar .dropdown-submenu a::after {\n transform: rotate(-90deg);\n position: absolute;\n right: 16px;\n top: 18px;\n}\n\n.navbar .dropdown-menu {\n min-width: 215px;\n}\n\n.modal {\n background-color: rgba(0, 0, 0, .6);\n}\n\n.abp-ellipsis-inline {\n display: inline-block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.abp-ellipsis {\n overflow: hidden !important;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/*