@abp/ng.core 5.0.0-rc.1 → 5.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/abp-ng.core.d.ts +5 -5
- package/bundles/abp-ng.core-locale.umd.js +361 -361
- package/bundles/abp-ng.core-locale.umd.js.map +1 -1
- package/bundles/abp-ng.core-testing.umd.js +442 -442
- package/bundles/abp-ng.core.umd.js +4873 -4860
- package/bundles/abp-ng.core.umd.js.map +1 -1
- package/esm2015/abp-ng.core.js +4 -4
- package/esm2015/lib/abstracts/index.js +1 -1
- package/esm2015/lib/abstracts/ng-model.component.js +58 -58
- package/esm2015/lib/components/dynamic-layout.component.js +89 -99
- package/esm2015/lib/components/index.js +3 -3
- package/esm2015/lib/components/replaceable-route-container.component.js +37 -37
- package/esm2015/lib/components/router-outlet.component.js +14 -14
- package/esm2015/lib/constants/different-locales.js +336 -336
- package/esm2015/lib/constants/index.js +1 -1
- package/esm2015/lib/core.module.js +280 -280
- package/esm2015/lib/directives/autofocus.directive.js +29 -29
- package/esm2015/lib/directives/debounce.directive.js +35 -35
- package/esm2015/lib/directives/for.directive.js +150 -150
- package/esm2015/lib/directives/form-submit.directive.js +68 -68
- package/esm2015/lib/directives/index.js +8 -8
- package/esm2015/lib/directives/init.directive.js +20 -20
- package/esm2015/lib/directives/permission.directive.js +47 -47
- package/esm2015/lib/directives/replaceable-template.directive.js +120 -120
- package/esm2015/lib/directives/stop-propagation.directive.js +31 -31
- package/esm2015/lib/enums/common.js +1 -1
- package/esm2015/lib/enums/index.js +1 -1
- package/esm2015/lib/guards/auth.guard.js +28 -28
- package/esm2015/lib/guards/index.js +2 -2
- package/esm2015/lib/guards/permission.guard.js +43 -43
- package/esm2015/lib/handlers/oauth-configuration.handler.js +36 -36
- package/esm2015/lib/handlers/routes.handler.js +46 -46
- package/esm2015/lib/interceptors/api.interceptor.js +53 -53
- package/esm2015/lib/interceptors/index.js +1 -1
- package/esm2015/lib/localization.module.js +15 -15
- package/esm2015/lib/models/auth.js +1 -1
- package/esm2015/lib/models/common.js +1 -1
- package/esm2015/lib/models/dtos.js +118 -118
- package/esm2015/lib/models/environment.js +1 -1
- package/esm2015/lib/models/index.js +9 -9
- package/esm2015/lib/models/localization.js +1 -1
- package/esm2015/lib/models/replaceable-components.js +1 -1
- package/esm2015/lib/models/rest.js +2 -2
- package/esm2015/lib/models/session.js +1 -1
- package/esm2015/lib/models/utility.js +1 -1
- package/esm2015/lib/pipes/index.js +2 -2
- package/esm2015/lib/pipes/localization.pipe.js +32 -32
- package/esm2015/lib/pipes/sort.pipe.js +48 -48
- package/esm2015/lib/providers/cookie-language.provider.js +21 -21
- package/esm2015/lib/providers/locale.provider.js +21 -21
- package/esm2015/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.js +28 -28
- package/esm2015/lib/proxy/pages/abp/multi-tenancy/index.js +1 -1
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.js +23 -23
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/index.js +1 -1
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.js +24 -24
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/index.js +4 -4
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/models.js +1 -1
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/index.js +1 -1
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/models.js +2 -2
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/index.js +1 -1
- package/esm2015/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/models.js +1 -1
- package/esm2015/lib/proxy/volo/abp/http/modeling/index.js +1 -1
- package/esm2015/lib/proxy/volo/abp/http/modeling/models.js +2 -2
- package/esm2015/lib/proxy/volo/abp/localization/index.js +1 -1
- package/esm2015/lib/proxy/volo/abp/localization/models.js +1 -1
- package/esm2015/lib/proxy/volo/abp/models.js +1 -1
- package/esm2015/lib/services/auth.service.js +46 -46
- package/esm2015/lib/services/config-state.service.js +129 -129
- package/esm2015/lib/services/content-projection.service.js +16 -16
- package/esm2015/lib/services/dom-insertion.service.js +31 -31
- package/esm2015/lib/services/environment.service.js +34 -34
- package/esm2015/lib/services/http-error-reporter.service.js +28 -28
- package/esm2015/lib/services/http-wait.service.js +71 -71
- package/esm2015/lib/services/index.js +21 -21
- package/esm2015/lib/services/lazy-load.service.js +37 -37
- package/esm2015/lib/services/list.service.js +102 -102
- package/esm2015/lib/services/localization.service.js +181 -181
- package/esm2015/lib/services/multi-tenancy.service.js +47 -47
- package/esm2015/lib/services/permission.service.js +63 -63
- package/esm2015/lib/services/replaceable-components.service.js +48 -48
- package/esm2015/lib/services/resource-wait.service.js +38 -38
- package/esm2015/lib/services/rest.service.js +63 -59
- package/esm2015/lib/services/router-events.service.js +37 -37
- package/esm2015/lib/services/router-wait.service.js +50 -50
- package/esm2015/lib/services/routes.service.js +146 -146
- package/esm2015/lib/services/session-state.service.js +75 -75
- package/esm2015/lib/services/subscription.service.js +40 -40
- package/esm2015/lib/services/track-by.service.js +20 -20
- package/esm2015/lib/strategies/auth-flow.strategy.js +201 -201
- package/esm2015/lib/strategies/container.strategy.js +37 -37
- package/esm2015/lib/strategies/content-security.strategy.js +27 -27
- package/esm2015/lib/strategies/content.strategy.js +47 -47
- package/esm2015/lib/strategies/context.strategy.js +36 -36
- package/esm2015/lib/strategies/cross-origin.strategy.js +25 -25
- package/esm2015/lib/strategies/dom.strategy.js +26 -26
- package/esm2015/lib/strategies/index.js +8 -8
- package/esm2015/lib/strategies/loading.strategy.js +57 -57
- package/esm2015/lib/strategies/projection.strategy.js +79 -79
- package/esm2015/lib/tokens/app-config.token.js +2 -2
- package/esm2015/lib/tokens/cookie-language-key.token.js +4 -4
- package/esm2015/lib/tokens/index.js +8 -8
- package/esm2015/lib/tokens/list.token.js +2 -2
- package/esm2015/lib/tokens/localization.token.js +9 -9
- package/esm2015/lib/tokens/lodaer-delay.token.js +2 -2
- package/esm2015/lib/tokens/manage-profile.token.js +11 -11
- package/esm2015/lib/tokens/options.token.js +7 -7
- package/esm2015/lib/tokens/tenant-key.token.js +2 -2
- package/esm2015/lib/utils/array-utils.js +6 -6
- package/esm2015/lib/utils/auth-utils.js +41 -41
- package/esm2015/lib/utils/common-utils.js +28 -28
- package/esm2015/lib/utils/date-extensions.js +5 -5
- package/esm2015/lib/utils/date-utils.js +12 -12
- package/esm2015/lib/utils/environment-utils.js +35 -35
- package/esm2015/lib/utils/factory-utils.js +23 -23
- package/esm2015/lib/utils/file-utils.js +13 -13
- package/esm2015/lib/utils/form-utils.js +11 -11
- package/esm2015/lib/utils/generator-utils.js +33 -33
- package/esm2015/lib/utils/http-utils.js +18 -18
- package/esm2015/lib/utils/index.js +20 -20
- package/esm2015/lib/utils/initial-utils.js +63 -63
- package/esm2015/lib/utils/internal-store-utils.js +35 -35
- package/esm2015/lib/utils/lazy-load-utils.js +39 -39
- package/esm2015/lib/utils/localization-utils.js +49 -49
- package/esm2015/lib/utils/multi-tenancy-utils.js +82 -82
- package/esm2015/lib/utils/number-utils.js +3 -3
- package/esm2015/lib/utils/object-utils.js +36 -36
- package/esm2015/lib/utils/route-utils.js +26 -26
- package/esm2015/lib/utils/string-utils.js +25 -21
- package/esm2015/lib/utils/tree-utils.js +53 -53
- package/esm2015/lib/validators/age.validator.js +13 -13
- package/esm2015/lib/validators/credit-card.validator.js +20 -20
- package/esm2015/lib/validators/index.js +22 -22
- package/esm2015/lib/validators/range.validator.js +14 -14
- package/esm2015/lib/validators/required.validator.js +12 -12
- package/esm2015/lib/validators/string-length.validator.js +14 -14
- package/esm2015/lib/validators/url.validator.js +15 -15
- package/esm2015/locale/abp-ng.core-locale.js +4 -4
- package/esm2015/locale/public-api.js +1 -1
- package/esm2015/locale/utils/register-locale.js +43 -43
- package/esm2015/public-api.js +25 -25
- package/esm2015/testing/abp-ng.core-testing.js +4 -4
- package/esm2015/testing/lib/core-testing.module.js +61 -61
- package/esm2015/testing/lib/services/index.js +2 -2
- package/esm2015/testing/lib/services/mock-permission.service.js +34 -34
- package/esm2015/testing/lib/services/mock-rest.service.js +29 -29
- package/esm2015/testing/lib/utils/clear-page.util.js +9 -9
- package/esm2015/testing/lib/utils/index.js +2 -2
- package/esm2015/testing/lib/utils/wait.util.js +4 -4
- package/esm2015/testing/public-api.js +3 -3
- package/fesm2015/abp-ng.core-locale.js +40 -40
- package/fesm2015/abp-ng.core-locale.js.map +1 -1
- package/fesm2015/abp-ng.core-testing.js +113 -113
- package/fesm2015/abp-ng.core.js +3976 -3977
- package/fesm2015/abp-ng.core.js.map +1 -1
- package/lib/abstracts/index.d.ts +1 -1
- package/lib/abstracts/ng-model.component.d.ts +25 -25
- package/lib/components/dynamic-layout.component.d.ts +27 -27
- package/lib/components/index.d.ts +3 -3
- package/lib/components/replaceable-route-container.component.d.ts +17 -17
- package/lib/components/router-outlet.component.d.ts +5 -5
- package/lib/constants/different-locales.d.ts +334 -334
- package/lib/constants/index.d.ts +1 -1
- package/lib/core.module.d.ts +56 -56
- package/lib/directives/autofocus.directive.d.ts +12 -12
- package/lib/directives/debounce.directive.d.ts +13 -13
- package/lib/directives/for.directive.d.ts +36 -36
- package/lib/directives/form-submit.directive.d.ts +19 -19
- package/lib/directives/index.d.ts +8 -8
- package/lib/directives/init.directive.d.ts +10 -10
- package/lib/directives/permission.directive.d.ts +18 -18
- package/lib/directives/replaceable-template.directive.d.ts +30 -30
- package/lib/directives/stop-propagation.directive.d.ts +12 -12
- package/lib/enums/common.d.ts +5 -5
- package/lib/enums/index.d.ts +1 -1
- package/lib/guards/auth.guard.d.ts +13 -13
- package/lib/guards/index.d.ts +2 -2
- package/lib/guards/permission.guard.d.ts +16 -16
- package/lib/handlers/oauth-configuration.handler.d.ts +13 -13
- package/lib/handlers/routes.handler.d.ts +11 -11
- package/lib/interceptors/api.interceptor.d.ts +16 -16
- package/lib/interceptors/index.d.ts +1 -1
- package/lib/localization.module.d.ts +7 -7
- package/lib/models/auth.d.ts +6 -6
- package/lib/models/common.d.ts +77 -77
- package/lib/models/dtos.d.ts +95 -95
- package/lib/models/environment.d.ts +35 -35
- package/lib/models/index.d.ts +9 -9
- package/lib/models/localization.d.ts +5 -5
- package/lib/models/replaceable-components.d.ts +45 -45
- package/lib/models/rest.d.ts +35 -33
- package/lib/models/session.d.ts +7 -7
- package/lib/models/utility.d.ts +14 -14
- package/lib/pipes/index.d.ts +2 -2
- package/lib/pipes/localization.pipe.d.ts +12 -12
- package/lib/pipes/sort.pipe.d.ts +9 -9
- package/lib/providers/cookie-language.provider.d.ts +3 -3
- package/lib/providers/locale.provider.d.ts +9 -9
- package/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.d.ts +12 -12
- package/lib/proxy/pages/abp/multi-tenancy/index.d.ts +1 -1
- package/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.d.ts +11 -11
- package/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/index.d.ts +1 -1
- package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.d.ts +11 -11
- package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/index.d.ts +4 -4
- package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/models.d.ts +85 -85
- package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/index.d.ts +1 -1
- package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/models.d.ts +71 -71
- package/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/index.d.ts +1 -1
- package/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/models.d.ts +14 -14
- package/lib/proxy/volo/abp/http/modeling/index.d.ts +1 -1
- package/lib/proxy/volo/abp/http/modeling/models.d.ts +70 -70
- package/lib/proxy/volo/abp/localization/index.d.ts +1 -1
- package/lib/proxy/volo/abp/localization/models.d.ts +6 -6
- package/lib/proxy/volo/abp/models.d.ts +4 -4
- package/lib/services/auth.service.d.ts +17 -17
- package/lib/services/config-state.service.d.ts +339 -339
- package/lib/services/content-projection.service.d.ts +10 -10
- package/lib/services/dom-insertion.service.d.ts +10 -10
- package/lib/services/environment.service.d.ts +96 -96
- package/lib/services/http-error-reporter.service.d.ts +12 -12
- package/lib/services/http-wait.service.d.ts +30 -30
- package/lib/services/index.d.ts +21 -21
- package/lib/services/lazy-load.service.d.ts +13 -13
- package/lib/services/list.service.d.ts +39 -39
- package/lib/services/localization.service.d.ts +47 -47
- package/lib/services/multi-tenancy.service.d.ts +22 -22
- package/lib/services/permission.service.d.ts +19 -19
- package/lib/services/replaceable-components.service.d.ts +19 -19
- package/lib/services/resource-wait.service.d.ts +15 -15
- package/lib/services/rest.service.d.ts +20 -19
- package/lib/services/router-events.service.d.ts +29 -29
- package/lib/services/router-wait.service.d.ts +20 -20
- package/lib/services/routes.service.d.ts +50 -50
- package/lib/services/session-state.service.d.ts +25 -25
- package/lib/services/subscription.service.d.ts +17 -17
- package/lib/services/track-by.service.d.ts +11 -11
- package/lib/strategies/auth-flow.strategy.d.ts +367 -367
- package/lib/strategies/container.strategy.d.ts +22 -22
- package/lib/strategies/content-security.strategy.d.ts +17 -17
- package/lib/strategies/content.strategy.d.ts +26 -26
- package/lib/strategies/context.strategy.d.ts +23 -23
- package/lib/strategies/cross-origin.strategy.d.ts +14 -14
- package/lib/strategies/dom.strategy.d.ts +13 -13
- package/lib/strategies/index.d.ts +8 -8
- package/lib/strategies/loading.strategy.d.ts +28 -28
- package/lib/strategies/projection.strategy.d.ts +39 -39
- package/lib/tokens/app-config.token.d.ts +3 -3
- package/lib/tokens/cookie-language-key.token.d.ts +2 -2
- package/lib/tokens/index.d.ts +8 -8
- package/lib/tokens/list.token.d.ts +2 -2
- package/lib/tokens/localization.token.d.ts +6 -6
- package/lib/tokens/lodaer-delay.token.d.ts +2 -2
- package/lib/tokens/manage-profile.token.d.ts +2 -2
- package/lib/tokens/options.token.d.ts +4 -4
- package/lib/tokens/tenant-key.token.d.ts +2 -2
- package/lib/utils/array-utils.d.ts +1 -1
- package/lib/utils/auth-utils.d.ts +162 -162
- package/lib/utils/common-utils.d.ts +9 -9
- package/lib/utils/date-extensions.d.ts +6 -6
- package/lib/utils/date-utils.d.ts +4 -4
- package/lib/utils/environment-utils.d.ts +3 -3
- package/lib/utils/factory-utils.d.ts +9 -9
- package/lib/utils/file-utils.d.ts +1 -1
- package/lib/utils/form-utils.d.ts +2 -2
- package/lib/utils/generator-utils.d.ts +3 -3
- package/lib/utils/http-utils.d.ts +8 -8
- package/lib/utils/index.d.ts +20 -20
- package/lib/utils/initial-utils.d.ts +159 -159
- package/lib/utils/internal-store-utils.d.ts +14 -14
- package/lib/utils/lazy-load-utils.d.ts +4 -4
- package/lib/utils/localization-utils.d.ts +5 -5
- package/lib/utils/multi-tenancy-utils.d.ts +3 -3
- package/lib/utils/number-utils.d.ts +1 -1
- package/lib/utils/object-utils.d.ts +1 -1
- package/lib/utils/route-utils.d.ts +8 -8
- package/lib/utils/string-utils.d.ts +3 -2
- package/lib/utils/tree-utils.d.ts +19 -19
- package/lib/validators/age.validator.d.ts +10 -10
- package/lib/validators/credit-card.validator.d.ts +5 -5
- package/lib/validators/index.d.ts +22 -22
- package/lib/validators/range.validator.d.ts +12 -12
- package/lib/validators/required.validator.d.ts +8 -8
- package/lib/validators/string-length.validator.d.ts +14 -14
- package/lib/validators/url.validator.d.ts +5 -5
- package/locale/abp-ng.core-locale.d.ts +5 -5
- package/locale/public-api.d.ts +1 -1
- package/locale/utils/register-locale.d.ts +13 -13
- package/package.json +2 -2
- package/public-api.d.ts +24 -24
- package/testing/abp-ng.core-testing.d.ts +5 -5
- package/testing/lib/core-testing.module.d.ts +16 -16
- package/testing/lib/services/index.d.ts +2 -2
- package/testing/lib/services/mock-permission.service.d.ts +10 -10
- package/testing/lib/services/mock-rest.service.d.ts +13 -13
- package/testing/lib/utils/clear-page.util.d.ts +2 -2
- package/testing/lib/utils/index.d.ts +2 -2
- package/testing/lib/utils/wait.util.d.ts +2 -2
- package/testing/public-api.d.ts +3 -3
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export * from './autofocus.directive';
|
|
2
|
-
export * from './debounce.directive';
|
|
3
|
-
export * from './for.directive';
|
|
4
|
-
export * from './form-submit.directive';
|
|
5
|
-
export * from './init.directive';
|
|
6
|
-
export * from './permission.directive';
|
|
7
|
-
export * from './replaceable-template.directive';
|
|
8
|
-
export * from './stop-propagation.directive';
|
|
1
|
+
export * from './autofocus.directive';
|
|
2
|
+
export * from './debounce.directive';
|
|
3
|
+
export * from './for.directive';
|
|
4
|
+
export * from './form-submit.directive';
|
|
5
|
+
export * from './init.directive';
|
|
6
|
+
export * from './permission.directive';
|
|
7
|
+
export * from './replaceable-template.directive';
|
|
8
|
+
export * from './stop-propagation.directive';
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dG9mb2N1cy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kZWJvdW5jZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3IuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS1zdWJtaXQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vaW5pdC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9wZXJtaXNzaW9uLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlcGxhY2VhYmxlLXRlbXBsYXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3N0b3AtcHJvcGFnYXRpb24uZGlyZWN0aXZlJztcbiJdfQ==
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { Directive, Output, EventEmitter, ElementRef } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class InitDirective {
|
|
4
|
-
constructor(elRef) {
|
|
5
|
-
this.elRef = elRef;
|
|
6
|
-
this.init = new EventEmitter();
|
|
7
|
-
}
|
|
8
|
-
ngAfterViewInit() {
|
|
9
|
-
this.init.emit(this.elRef);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
InitDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: InitDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
13
|
-
InitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: InitDirective, selector: "[abpInit]", outputs: { init: "abpInit" }, ngImport: i0 });
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: InitDirective, decorators: [{
|
|
15
|
-
type: Directive,
|
|
16
|
-
args: [{ selector: '[abpInit]' }]
|
|
17
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { init: [{
|
|
18
|
-
type: Output,
|
|
19
|
-
args: ['abpInit']
|
|
20
|
-
}] } });
|
|
1
|
+
import { Directive, Output, EventEmitter, ElementRef } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class InitDirective {
|
|
4
|
+
constructor(elRef) {
|
|
5
|
+
this.elRef = elRef;
|
|
6
|
+
this.init = new EventEmitter();
|
|
7
|
+
}
|
|
8
|
+
ngAfterViewInit() {
|
|
9
|
+
this.init.emit(this.elRef);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
InitDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: InitDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
13
|
+
InitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: InitDirective, selector: "[abpInit]", outputs: { init: "abpInit" }, ngImport: i0 });
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: InitDirective, decorators: [{
|
|
15
|
+
type: Directive,
|
|
16
|
+
args: [{ selector: '[abpInit]' }]
|
|
17
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { init: [{
|
|
18
|
+
type: Output,
|
|
19
|
+
args: ['abpInit']
|
|
20
|
+
}] } });
|
|
21
21
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9pbml0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFHM0YsTUFBTSxPQUFPLGFBQWE7SUFHeEIsWUFBb0IsS0FBaUI7UUFBakIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUZULFNBQUksR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztJQUUvQixDQUFDO0lBRXpDLGVBQWU7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQzs7MkdBUFUsYUFBYTsrRkFBYixhQUFhOzRGQUFiLGFBQWE7a0JBRHpCLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFO2lHQUVOLElBQUk7c0JBQS9CLE1BQU07dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIEVsZW1lbnRSZWYsIEFmdGVyVmlld0luaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW2FicEluaXRdJyB9KVxuZXhwb3J0IGNsYXNzIEluaXREaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQE91dHB1dCgnYWJwSW5pdCcpIHJlYWRvbmx5IGluaXQgPSBuZXcgRXZlbnRFbWl0dGVyPEVsZW1lbnRSZWY8YW55Pj4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsUmVmOiBFbGVtZW50UmVmKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmluaXQuZW1pdCh0aGlzLmVsUmVmKTtcbiAgfVxufVxuIl19
|
|
@@ -1,48 +1,48 @@
|
|
|
1
|
-
import { ChangeDetectorRef, Directive, Input, Optional, TemplateRef, ViewContainerRef, } from '@angular/core';
|
|
2
|
-
import { distinctUntilChanged } from 'rxjs/operators';
|
|
3
|
-
import { PermissionService } from '../services/permission.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "../services/permission.service";
|
|
6
|
-
export class PermissionDirective {
|
|
7
|
-
constructor(templateRef, vcRef, permissionService, cdRef) {
|
|
8
|
-
this.templateRef = templateRef;
|
|
9
|
-
this.vcRef = vcRef;
|
|
10
|
-
this.permissionService = permissionService;
|
|
11
|
-
this.cdRef = cdRef;
|
|
12
|
-
}
|
|
13
|
-
check() {
|
|
14
|
-
if (this.subscription) {
|
|
15
|
-
this.subscription.unsubscribe();
|
|
16
|
-
}
|
|
17
|
-
this.subscription = this.permissionService
|
|
18
|
-
.getGrantedPolicy$(this.condition || '')
|
|
19
|
-
.pipe(distinctUntilChanged())
|
|
20
|
-
.subscribe(isGranted => {
|
|
21
|
-
this.vcRef.clear();
|
|
22
|
-
if (isGranted)
|
|
23
|
-
this.vcRef.createEmbeddedView(this.templateRef);
|
|
24
|
-
this.cdRef.detectChanges();
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
ngOnDestroy() {
|
|
28
|
-
if (this.subscription)
|
|
29
|
-
this.subscription.unsubscribe();
|
|
30
|
-
}
|
|
31
|
-
ngOnChanges() {
|
|
32
|
-
this.check();
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
PermissionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PermissionDirective, deps: [{ token: i0.TemplateRef, optional: true }, { token: i0.ViewContainerRef }, { token: i1.PermissionService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
36
|
-
PermissionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: PermissionDirective, selector: "[abpPermission]", inputs: { condition: ["abpPermission", "condition"] }, usesOnChanges: true, ngImport: i0 });
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PermissionDirective, decorators: [{
|
|
38
|
-
type: Directive,
|
|
39
|
-
args: [{
|
|
40
|
-
selector: '[abpPermission]',
|
|
41
|
-
}]
|
|
42
|
-
}], ctorParameters: function () { return [{ type: i0.TemplateRef, decorators: [{
|
|
43
|
-
type: Optional
|
|
44
|
-
}] }, { type: i0.ViewContainerRef }, { type: i1.PermissionService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { condition: [{
|
|
45
|
-
type: Input,
|
|
46
|
-
args: ['abpPermission']
|
|
47
|
-
}] } });
|
|
1
|
+
import { ChangeDetectorRef, Directive, Input, Optional, TemplateRef, ViewContainerRef, } from '@angular/core';
|
|
2
|
+
import { distinctUntilChanged } from 'rxjs/operators';
|
|
3
|
+
import { PermissionService } from '../services/permission.service';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "../services/permission.service";
|
|
6
|
+
export class PermissionDirective {
|
|
7
|
+
constructor(templateRef, vcRef, permissionService, cdRef) {
|
|
8
|
+
this.templateRef = templateRef;
|
|
9
|
+
this.vcRef = vcRef;
|
|
10
|
+
this.permissionService = permissionService;
|
|
11
|
+
this.cdRef = cdRef;
|
|
12
|
+
}
|
|
13
|
+
check() {
|
|
14
|
+
if (this.subscription) {
|
|
15
|
+
this.subscription.unsubscribe();
|
|
16
|
+
}
|
|
17
|
+
this.subscription = this.permissionService
|
|
18
|
+
.getGrantedPolicy$(this.condition || '')
|
|
19
|
+
.pipe(distinctUntilChanged())
|
|
20
|
+
.subscribe(isGranted => {
|
|
21
|
+
this.vcRef.clear();
|
|
22
|
+
if (isGranted)
|
|
23
|
+
this.vcRef.createEmbeddedView(this.templateRef);
|
|
24
|
+
this.cdRef.detectChanges();
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
ngOnDestroy() {
|
|
28
|
+
if (this.subscription)
|
|
29
|
+
this.subscription.unsubscribe();
|
|
30
|
+
}
|
|
31
|
+
ngOnChanges() {
|
|
32
|
+
this.check();
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
PermissionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PermissionDirective, deps: [{ token: i0.TemplateRef, optional: true }, { token: i0.ViewContainerRef }, { token: i1.PermissionService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
36
|
+
PermissionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: PermissionDirective, selector: "[abpPermission]", inputs: { condition: ["abpPermission", "condition"] }, usesOnChanges: true, ngImport: i0 });
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PermissionDirective, decorators: [{
|
|
38
|
+
type: Directive,
|
|
39
|
+
args: [{
|
|
40
|
+
selector: '[abpPermission]',
|
|
41
|
+
}]
|
|
42
|
+
}], ctorParameters: function () { return [{ type: i0.TemplateRef, decorators: [{
|
|
43
|
+
type: Optional
|
|
44
|
+
}] }, { type: i0.ViewContainerRef }, { type: i1.PermissionService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { condition: [{
|
|
45
|
+
type: Input,
|
|
46
|
+
args: ['abpPermission']
|
|
47
|
+
}] } });
|
|
48
48
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9wZXJtaXNzaW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxLQUFLLEVBR0wsUUFBUSxFQUNSLFdBQVcsRUFDWCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7OztBQUtuRSxNQUFNLE9BQU8sbUJBQW1CO0lBSzlCLFlBQ3NCLFdBQTZCLEVBQ3pDLEtBQXVCLEVBQ3ZCLGlCQUFvQyxFQUNwQyxLQUF3QjtRQUhaLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtRQUN6QyxVQUFLLEdBQUwsS0FBSyxDQUFrQjtRQUN2QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLFVBQUssR0FBTCxLQUFLLENBQW1CO0lBQy9CLENBQUM7SUFFSSxLQUFLO1FBQ1gsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDakM7UUFFRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxpQkFBaUI7YUFDdkMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUM7YUFDdkMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7YUFDNUIsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbkIsSUFBSSxTQUFTO2dCQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQy9ELElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLFlBQVk7WUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3pELENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2YsQ0FBQzs7aUhBakNVLG1CQUFtQjtxR0FBbkIsbUJBQW1COzRGQUFuQixtQkFBbUI7a0JBSC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUI7OzBCQU9JLFFBQVE7MklBTGEsU0FBUztzQkFBaEMsS0FBSzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIERpcmVjdGl2ZSxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPcHRpb25hbCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFBlcm1pc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvcGVybWlzc2lvbi5zZXJ2aWNlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2FicFBlcm1pc3Npb25dJyxcbn0pXG5leHBvcnQgY2xhc3MgUGVybWlzc2lvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCdhYnBQZXJtaXNzaW9uJykgY29uZGl0aW9uOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgc3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXG4gICAgcHJpdmF0ZSB2Y1JlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICBwcml2YXRlIHBlcm1pc3Npb25TZXJ2aWNlOiBQZXJtaXNzaW9uU2VydmljZSxcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgKSB7fVxuXG4gIHByaXZhdGUgY2hlY2soKSB7XG4gICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5wZXJtaXNzaW9uU2VydmljZVxuICAgICAgLmdldEdyYW50ZWRQb2xpY3kkKHRoaXMuY29uZGl0aW9uIHx8ICcnKVxuICAgICAgLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSlcbiAgICAgIC5zdWJzY3JpYmUoaXNHcmFudGVkID0+IHtcbiAgICAgICAgdGhpcy52Y1JlZi5jbGVhcigpO1xuICAgICAgICBpZiAoaXNHcmFudGVkKSB0aGlzLnZjUmVmLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLnRlbXBsYXRlUmVmKTtcbiAgICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIHRoaXMuY2hlY2soKTtcbiAgfVxufVxuIl19
|
|
@@ -1,121 +1,121 @@
|
|
|
1
|
-
import { ComponentFactoryResolver, Directive, Injector, Input, TemplateRef, ViewContainerRef, } from '@angular/core';
|
|
2
|
-
import compare from 'just-compare';
|
|
3
|
-
import { filter } from 'rxjs/operators';
|
|
4
|
-
import { ReplaceableComponentsService } from '../services/replaceable-components.service';
|
|
5
|
-
import { SubscriptionService } from '../services/subscription.service';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../services/replaceable-components.service";
|
|
8
|
-
import * as i2 from "../services/subscription.service";
|
|
9
|
-
export class ReplaceableTemplateDirective {
|
|
10
|
-
constructor(injector, templateRef, cfRes, vcRef, replaceableComponents, subscription) {
|
|
11
|
-
this.injector = injector;
|
|
12
|
-
this.templateRef = templateRef;
|
|
13
|
-
this.cfRes = cfRes;
|
|
14
|
-
this.vcRef = vcRef;
|
|
15
|
-
this.replaceableComponents = replaceableComponents;
|
|
16
|
-
this.subscription = subscription;
|
|
17
|
-
this.providedData = {
|
|
18
|
-
inputs: {},
|
|
19
|
-
outputs: {},
|
|
20
|
-
};
|
|
21
|
-
this.context = {};
|
|
22
|
-
this.defaultComponentSubscriptions = {};
|
|
23
|
-
this.initialized = false;
|
|
24
|
-
this.context = {
|
|
25
|
-
initTemplate: (ref) => {
|
|
26
|
-
this.resetDefaultComponent();
|
|
27
|
-
this.defaultComponentRef = ref;
|
|
28
|
-
this.setDefaultComponentInputs();
|
|
29
|
-
},
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
ngOnInit() {
|
|
33
|
-
const component$ = this.replaceableComponents
|
|
34
|
-
.get$(this.data.componentKey)
|
|
35
|
-
.pipe(filter((res = {}) => !this.initialized || !compare(res.component, this.externalComponent)));
|
|
36
|
-
this.subscription.addOne(component$, (res = {}) => {
|
|
37
|
-
this.vcRef.clear();
|
|
38
|
-
this.externalComponent = res.component;
|
|
39
|
-
if (this.defaultComponentRef) {
|
|
40
|
-
this.resetDefaultComponent();
|
|
41
|
-
}
|
|
42
|
-
if (res.component) {
|
|
43
|
-
this.setProvidedData();
|
|
44
|
-
const customInjector = Injector.create({
|
|
45
|
-
providers: [{ provide: 'REPLACEABLE_DATA', useValue: this.providedData }],
|
|
46
|
-
parent: this.injector,
|
|
47
|
-
});
|
|
48
|
-
this.vcRef.createComponent(this.cfRes.resolveComponentFactory(res.component), 0, customInjector);
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
this.vcRef.createEmbeddedView(this.templateRef, this.context);
|
|
52
|
-
}
|
|
53
|
-
this.initialized = true;
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
ngOnChanges(changes) {
|
|
57
|
-
var _a, _b;
|
|
58
|
-
if (((_b = (_a = changes === null || changes === void 0 ? void 0 : changes.data) === null || _a === void 0 ? void 0 : _a.currentValue) === null || _b === void 0 ? void 0 : _b.inputs) && this.defaultComponentRef) {
|
|
59
|
-
this.setDefaultComponentInputs();
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
setDefaultComponentInputs() {
|
|
63
|
-
if (!this.defaultComponentRef || (!this.data.inputs && !this.data.outputs))
|
|
64
|
-
return;
|
|
65
|
-
if (this.data.inputs) {
|
|
66
|
-
for (const key in this.data.inputs) {
|
|
67
|
-
if (Object.prototype.hasOwnProperty.call(this.data.inputs, key)) {
|
|
68
|
-
if (!compare(this.defaultComponentRef[key], this.data.inputs[key].value)) {
|
|
69
|
-
this.defaultComponentRef[key] = this.data.inputs[key].value;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
if (this.data.outputs) {
|
|
75
|
-
for (const key in this.data.outputs) {
|
|
76
|
-
if (Object.prototype.hasOwnProperty.call(this.data.outputs, key)) {
|
|
77
|
-
if (!this.defaultComponentSubscriptions[key]) {
|
|
78
|
-
this.defaultComponentSubscriptions[key] = this.defaultComponentRef[key].subscribe((value) => {
|
|
79
|
-
var _a;
|
|
80
|
-
(_a = this.data.outputs) === null || _a === void 0 ? void 0 : _a[key](value);
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
setProvidedData() {
|
|
88
|
-
this.providedData = Object.assign(Object.assign({ outputs: {} }, this.data), { inputs: {} });
|
|
89
|
-
if (!this.data.inputs)
|
|
90
|
-
return;
|
|
91
|
-
Object.defineProperties(this.providedData.inputs, Object.assign({}, Object.keys(this.data.inputs).reduce((acc, key) => {
|
|
92
|
-
var _a;
|
|
93
|
-
return (Object.assign(Object.assign({}, acc), { [key]: Object.assign({ enumerable: true, configurable: true, get: () => { var _a; return (_a = this.data.inputs[key]) === null || _a === void 0 ? void 0 : _a.value; } }, (((_a = this.data.inputs[key]) === null || _a === void 0 ? void 0 : _a.twoWay) && {
|
|
94
|
-
set: (newValue) => {
|
|
95
|
-
this.data.inputs[key].value = newValue;
|
|
96
|
-
this.data.outputs[`${key}Change`](newValue);
|
|
97
|
-
},
|
|
98
|
-
})) }));
|
|
99
|
-
}, {})));
|
|
100
|
-
}
|
|
101
|
-
resetDefaultComponent() {
|
|
102
|
-
Object.keys(this.defaultComponentSubscriptions).forEach(key => {
|
|
103
|
-
this.defaultComponentSubscriptions[key].unsubscribe();
|
|
104
|
-
});
|
|
105
|
-
this.defaultComponentSubscriptions = {};
|
|
106
|
-
this.defaultComponentRef = null;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
ReplaceableTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ReplaceableTemplateDirective, deps: [{ token: i0.Injector }, { token: i0.TemplateRef }, { token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }, { token: i1.ReplaceableComponentsService }, { token: i2.SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
110
|
-
ReplaceableTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: { data: ["abpReplaceableTemplate", "data"] }, providers: [SubscriptionService], usesOnChanges: true, ngImport: i0 });
|
|
111
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ReplaceableTemplateDirective, decorators: [{
|
|
112
|
-
type: Directive,
|
|
113
|
-
args: [{
|
|
114
|
-
selector: '[abpReplaceableTemplate]',
|
|
115
|
-
providers: [SubscriptionService],
|
|
116
|
-
}]
|
|
117
|
-
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.TemplateRef }, { type: i0.ComponentFactoryResolver }, { type: i0.ViewContainerRef }, { type: i1.ReplaceableComponentsService }, { type: i2.SubscriptionService }]; }, propDecorators: { data: [{
|
|
118
|
-
type: Input,
|
|
119
|
-
args: ['abpReplaceableTemplate']
|
|
120
|
-
}] } });
|
|
1
|
+
import { ComponentFactoryResolver, Directive, Injector, Input, TemplateRef, ViewContainerRef, } from '@angular/core';
|
|
2
|
+
import compare from 'just-compare';
|
|
3
|
+
import { filter } from 'rxjs/operators';
|
|
4
|
+
import { ReplaceableComponentsService } from '../services/replaceable-components.service';
|
|
5
|
+
import { SubscriptionService } from '../services/subscription.service';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../services/replaceable-components.service";
|
|
8
|
+
import * as i2 from "../services/subscription.service";
|
|
9
|
+
export class ReplaceableTemplateDirective {
|
|
10
|
+
constructor(injector, templateRef, cfRes, vcRef, replaceableComponents, subscription) {
|
|
11
|
+
this.injector = injector;
|
|
12
|
+
this.templateRef = templateRef;
|
|
13
|
+
this.cfRes = cfRes;
|
|
14
|
+
this.vcRef = vcRef;
|
|
15
|
+
this.replaceableComponents = replaceableComponents;
|
|
16
|
+
this.subscription = subscription;
|
|
17
|
+
this.providedData = {
|
|
18
|
+
inputs: {},
|
|
19
|
+
outputs: {},
|
|
20
|
+
};
|
|
21
|
+
this.context = {};
|
|
22
|
+
this.defaultComponentSubscriptions = {};
|
|
23
|
+
this.initialized = false;
|
|
24
|
+
this.context = {
|
|
25
|
+
initTemplate: (ref) => {
|
|
26
|
+
this.resetDefaultComponent();
|
|
27
|
+
this.defaultComponentRef = ref;
|
|
28
|
+
this.setDefaultComponentInputs();
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
ngOnInit() {
|
|
33
|
+
const component$ = this.replaceableComponents
|
|
34
|
+
.get$(this.data.componentKey)
|
|
35
|
+
.pipe(filter((res = {}) => !this.initialized || !compare(res.component, this.externalComponent)));
|
|
36
|
+
this.subscription.addOne(component$, (res = {}) => {
|
|
37
|
+
this.vcRef.clear();
|
|
38
|
+
this.externalComponent = res.component;
|
|
39
|
+
if (this.defaultComponentRef) {
|
|
40
|
+
this.resetDefaultComponent();
|
|
41
|
+
}
|
|
42
|
+
if (res.component) {
|
|
43
|
+
this.setProvidedData();
|
|
44
|
+
const customInjector = Injector.create({
|
|
45
|
+
providers: [{ provide: 'REPLACEABLE_DATA', useValue: this.providedData }],
|
|
46
|
+
parent: this.injector,
|
|
47
|
+
});
|
|
48
|
+
this.vcRef.createComponent(this.cfRes.resolveComponentFactory(res.component), 0, customInjector);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
this.vcRef.createEmbeddedView(this.templateRef, this.context);
|
|
52
|
+
}
|
|
53
|
+
this.initialized = true;
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
ngOnChanges(changes) {
|
|
57
|
+
var _a, _b;
|
|
58
|
+
if (((_b = (_a = changes === null || changes === void 0 ? void 0 : changes.data) === null || _a === void 0 ? void 0 : _a.currentValue) === null || _b === void 0 ? void 0 : _b.inputs) && this.defaultComponentRef) {
|
|
59
|
+
this.setDefaultComponentInputs();
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
setDefaultComponentInputs() {
|
|
63
|
+
if (!this.defaultComponentRef || (!this.data.inputs && !this.data.outputs))
|
|
64
|
+
return;
|
|
65
|
+
if (this.data.inputs) {
|
|
66
|
+
for (const key in this.data.inputs) {
|
|
67
|
+
if (Object.prototype.hasOwnProperty.call(this.data.inputs, key)) {
|
|
68
|
+
if (!compare(this.defaultComponentRef[key], this.data.inputs[key].value)) {
|
|
69
|
+
this.defaultComponentRef[key] = this.data.inputs[key].value;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
if (this.data.outputs) {
|
|
75
|
+
for (const key in this.data.outputs) {
|
|
76
|
+
if (Object.prototype.hasOwnProperty.call(this.data.outputs, key)) {
|
|
77
|
+
if (!this.defaultComponentSubscriptions[key]) {
|
|
78
|
+
this.defaultComponentSubscriptions[key] = this.defaultComponentRef[key].subscribe((value) => {
|
|
79
|
+
var _a;
|
|
80
|
+
(_a = this.data.outputs) === null || _a === void 0 ? void 0 : _a[key](value);
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
setProvidedData() {
|
|
88
|
+
this.providedData = Object.assign(Object.assign({ outputs: {} }, this.data), { inputs: {} });
|
|
89
|
+
if (!this.data.inputs)
|
|
90
|
+
return;
|
|
91
|
+
Object.defineProperties(this.providedData.inputs, Object.assign({}, Object.keys(this.data.inputs).reduce((acc, key) => {
|
|
92
|
+
var _a;
|
|
93
|
+
return (Object.assign(Object.assign({}, acc), { [key]: Object.assign({ enumerable: true, configurable: true, get: () => { var _a; return (_a = this.data.inputs[key]) === null || _a === void 0 ? void 0 : _a.value; } }, (((_a = this.data.inputs[key]) === null || _a === void 0 ? void 0 : _a.twoWay) && {
|
|
94
|
+
set: (newValue) => {
|
|
95
|
+
this.data.inputs[key].value = newValue;
|
|
96
|
+
this.data.outputs[`${key}Change`](newValue);
|
|
97
|
+
},
|
|
98
|
+
})) }));
|
|
99
|
+
}, {})));
|
|
100
|
+
}
|
|
101
|
+
resetDefaultComponent() {
|
|
102
|
+
Object.keys(this.defaultComponentSubscriptions).forEach(key => {
|
|
103
|
+
this.defaultComponentSubscriptions[key].unsubscribe();
|
|
104
|
+
});
|
|
105
|
+
this.defaultComponentSubscriptions = {};
|
|
106
|
+
this.defaultComponentRef = null;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
ReplaceableTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ReplaceableTemplateDirective, deps: [{ token: i0.Injector }, { token: i0.TemplateRef }, { token: i0.ComponentFactoryResolver }, { token: i0.ViewContainerRef }, { token: i1.ReplaceableComponentsService }, { token: i2.SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
110
|
+
ReplaceableTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: { data: ["abpReplaceableTemplate", "data"] }, providers: [SubscriptionService], usesOnChanges: true, ngImport: i0 });
|
|
111
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ReplaceableTemplateDirective, decorators: [{
|
|
112
|
+
type: Directive,
|
|
113
|
+
args: [{
|
|
114
|
+
selector: '[abpReplaceableTemplate]',
|
|
115
|
+
providers: [SubscriptionService],
|
|
116
|
+
}]
|
|
117
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.TemplateRef }, { type: i0.ComponentFactoryResolver }, { type: i0.ViewContainerRef }, { type: i1.ReplaceableComponentsService }, { type: i2.SubscriptionService }]; }, propDecorators: { data: [{
|
|
118
|
+
type: Input,
|
|
119
|
+
args: ['abpReplaceableTemplate']
|
|
120
|
+
}] } });
|
|
121
121
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwbGFjZWFibGUtdGVtcGxhdGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvcmVwbGFjZWFibGUtdGVtcGxhdGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx3QkFBd0IsRUFDeEIsU0FBUyxFQUNULFFBQVEsRUFDUixLQUFLLEVBSUwsV0FBVyxFQUVYLGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLE9BQU8sTUFBTSxjQUFjLENBQUM7QUFFbkMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3hDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7O0FBTXZFLE1BQU0sT0FBTyw0QkFBNEI7SUFtQnZDLFlBQ1UsUUFBa0IsRUFDbEIsV0FBNkIsRUFDN0IsS0FBK0IsRUFDL0IsS0FBdUIsRUFDdkIscUJBQW1ELEVBQ25ELFlBQWlDO1FBTGpDLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO1FBQzdCLFVBQUssR0FBTCxLQUFLLENBQTBCO1FBQy9CLFVBQUssR0FBTCxLQUFLLENBQWtCO1FBQ3ZCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBOEI7UUFDbkQsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBckIzQyxpQkFBWSxHQUFHO1lBQ2IsTUFBTSxFQUFFLEVBQUU7WUFDVixPQUFPLEVBQUUsRUFBRTtTQUMrQyxDQUFDO1FBRTdELFlBQU8sR0FBRyxFQUFTLENBQUM7UUFNcEIsa0NBQTZCLEdBQUcsRUFBa0MsQ0FBQztRQUVuRSxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQVVsQixJQUFJLENBQUMsT0FBTyxH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QVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFNBQVMsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUNqQzs0UUFHQyxJQUFJO3NCQURILEtBQUs7dUJBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICBEaXJlY3RpdmUsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBUeXBlLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBjb21wYXJlIGZyb20gJ2p1c3QtY29tcGFyZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEFCUCB9IGZyb20gJy4uL21vZGVscy9jb21tb24nO1xuaW1wb3J0IHsgUmVwbGFjZWFibGVDb21wb25lbnRzIH0gZnJvbSAnLi4vbW9kZWxzL3JlcGxhY2VhYmxlLWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgUmVwbGFjZWFibGVDb21wb25lbnRzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3JlcGxhY2VhYmxlLWNvbXBvbmVudHMuc2VydmljZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvc3Vic2NyaXB0aW9uLnNlcnZpY2UnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYWJwUmVwbGFjZWFibGVUZW1wbGF0ZV0nLFxuICBwcm92aWRlcnM6IFtTdWJzY3JpcHRpb25TZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgUmVwbGFjZWFibGVUZW1wbGF0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCdhYnBSZXBsYWNlYWJsZVRlbXBsYXRlJylcbiAgZGF0YTogUmVwbGFjZWFibGVDb21wb25lbnRzLlJlcGxhY2VhYmxlVGVtcGxhdGVEaXJlY3RpdmVJbnB1dDxhbnksIGFueT47XG5cbiAgcHJvdmlkZWREYXRhID0ge1xuICAgIGlucHV0czoge30sXG4gICAgb3V0cHV0czoge30sXG4gIH0gYXMgUmVwbGFjZWFibGVDb21wb25lbnRzLlJlcGxhY2VhYmxlVGVtcGxhdGVEYXRhPGFueSwgYW55PjtcblxuICBjb250ZXh0ID0ge30gYXMgYW55O1xuXG4gIGV4dGVybmFsQ29tcG9uZW50ITogVHlwZTxhbnk+O1xuXG4gIGRlZmF1bHRDb21wb25lbnRSZWY6IGFueTtcblxuICBkZWZhdWx0Q29tcG9uZW50U3Vic2NyaXB0aW9ucyA9IHt9IGFzIEFCUC5EaWN0aW9uYXJ5PFN1YnNjcmlwdGlvbj47XG5cbiAgaW5pdGlhbGl6ZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+LFxuICAgIHByaXZhdGUgY2ZSZXM6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBwcml2YXRlIHZjUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHByaXZhdGUgcmVwbGFjZWFibGVDb21wb25lbnRzOiBSZXBsYWNlYWJsZUNvbXBvbmVudHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb25TZXJ2aWNlLFxuICApIHtcbiAgICB0aGlzLmNvbnRleHQgPSB7XG4gICAgICBpbml0VGVtcGxhdGU6IChyZWY6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLnJlc2V0RGVmYXVsdENvbXBvbmVudCgpO1xuICAgICAgICB0aGlzLmRlZmF1bHRDb21wb25lbnRSZWYgPSByZWY7XG4gICAgICAgIHRoaXMuc2V0RGVmYXVsdENvbXBvbmVudElucHV0cygpO1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgY29uc3QgY29tcG9uZW50JCA9IHRoaXMucmVwbGFjZWFibGVDb21wb25lbnRzXG4gICAgICAuZ2V0JCh0aGlzLmRhdGEuY29tcG9uZW50S2V5KVxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcihcbiAgICAgICAgICAocmVzID0ge30gYXMgUmVwbGFjZWFibGVDb21wb25lbnRzLlJlcGxhY2VhYmxlQ29tcG9uZW50KSA9PlxuICAgICAgICAgICAgIXRoaXMuaW5pdGlhbGl6ZWQgfHwgIWNvbXBhcmUocmVzLmNvbXBvbmVudCwgdGhpcy5leHRlcm5hbENvbXBvbmVudCksXG4gICAgICAgICksXG4gICAgICApO1xuXG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkT25lKFxuICAgICAgY29tcG9uZW50JCxcbiAgICAgIChyZXMgPSB7fSBhcyBSZXBsYWNlYWJsZUNvbXBvbmVudHMuUmVwbGFjZWFibGVDb21wb25lbnQpID0+IHtcbiAgICAgICAgdGhpcy52Y1JlZi5jbGVhcigpO1xuICAgICAgICB0aGlzLmV4dGVybmFsQ29tcG9uZW50ID0gcmVzLmNvbXBvbmVudDtcbiAgICAgICAgaWYgKHRoaXMuZGVmYXVsdENvbXBvbmVudFJlZikge1xuICAgICAgICAgIHRoaXMucmVzZXREZWZhdWx0Q29tcG9uZW50KCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocmVzLmNvbXBvbmVudCkge1xuICAgICAgICAgIHRoaXMuc2V0UHJvdmlkZWREYXRhKCk7XG4gICAgICAgICAgY29uc3QgY3VzdG9tSW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiAnUkVQTEFDRUFCTEVfREFUQScsIHVzZVZhbHVlOiB0aGlzLnByb3ZpZGVkRGF0YSB9XSxcbiAgICAgICAgICAgIHBhcmVudDogdGhpcy5pbmplY3RvcixcbiAgICAgICAgICB9KTtcbiAgICAgICAgICB0aGlzLnZjUmVmLmNyZWF0ZUNvbXBvbmVudChcbiAgICAgICAgICAgIHRoaXMuY2ZSZXMucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkocmVzLmNvbXBvbmVudCksXG4gICAgICAgICAgICAwLFxuICAgICAgICAgICAgY3VzdG9tSW5qZWN0b3IsXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnZjUmVmLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLnRlbXBsYXRlUmVmLCB0aGlzLmNvbnRleHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5pbml0aWFsaXplZCA9IHRydWU7XG4gICAgICB9LFxuICAgICk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXM/LmRhdGE/LmN1cnJlbnRWYWx1ZT8uaW5wdXRzICYmIHRoaXMuZGVmYXVsdENvbXBvbmVudFJlZikge1xuICAgICAgdGhpcy5zZXREZWZhdWx0Q29tcG9uZW50SW5wdXRzKCk7XG4gICAgfVxuICB9XG5cbiAgc2V0RGVmYXVsdENvbXBvbmVudElucHV0cygpIHtcbiAgICBpZiAoIXRoaXMuZGVmYXVsdENvbXBvbmVudFJlZiB8fCAoIXRoaXMuZGF0YS5pbnB1dHMgJiYgIXRoaXMuZGF0YS5vdXRwdXRzKSkgcmV0dXJuO1xuXG4gICAgaWYgKHRoaXMuZGF0YS5pbnB1dHMpIHtcbiAgICAgIGZvciAoY29uc3Qga2V5IGluIHRoaXMuZGF0YS5pbnB1dHMpIHtcbiAgICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0aGlzLmRhdGEuaW5wdXRzLCBrZXkpKSB7XG4gICAgICAgICAgaWYgKCFjb21wYXJlKHRoaXMuZGVmYXVsdENvbXBvbmVudFJlZltrZXldLCB0aGlzLmRhdGEuaW5wdXRzW2tleV0udmFsdWUpKSB7XG4gICAgICAgICAgICB0aGlzLmRlZmF1bHRDb21wb25lbnRSZWZba2V5XSA9IHRoaXMuZGF0YS5pbnB1dHNba2V5XS52YWx1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5kYXRhLm91dHB1dHMpIHtcbiAgICAgIGZvciAoY29uc3Qga2V5IGluIHRoaXMuZGF0YS5vdXRwdXRzKSB7XG4gICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcy5kYXRhLm91dHB1dHMsIGtleSkpIHtcbiAgICAgICAgICBpZiAoIXRoaXMuZGVmYXVsdENvbXBvbmVudFN1YnNjcmlwdGlvbnNba2V5XSkge1xuICAgICAgICAgICAgdGhpcy5kZWZhdWx0Q29tcG9uZW50U3Vic2NyaXB0aW9uc1trZXldID0gdGhpcy5kZWZhdWx0Q29tcG9uZW50UmVmW2tleV0uc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAodmFsdWU6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZGF0YS5vdXRwdXRzPy5ba2V5XSh2YWx1ZSk7XG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHNldFByb3ZpZGVkRGF0YSgpIHtcbiAgICB0aGlzLnByb3ZpZGVkRGF0YSA9IHsgb3V0cHV0czoge30sIC4uLnRoaXMuZGF0YSwgaW5wdXRzOiB7fSB9O1xuXG4gICAgaWYgKCF0aGlzLmRhdGEuaW5wdXRzKSByZXR1cm47XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnRpZXModGhpcy5wcm92aWRlZERhdGEuaW5wdXRzLCB7XG4gICAgICAuLi5PYmplY3Qua2V5cyh0aGlzLmRhdGEuaW5wdXRzKS5yZWR1Y2UoXG4gICAgICAgIChhY2MsIGtleSkgPT4gKHtcbiAgICAgICAgICAuLi5hY2MsXG4gICAgICAgICAgW2tleV06IHtcbiAgICAgICAgICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgICAgICAgICBjb25maWd1cmFibGU6IHRydWUsXG4gICAgICAgICAgICBnZXQ6ICgpID0+IHRoaXMuZGF0YS5pbnB1dHNba2V5XT8udmFsdWUsXG4gICAgICAgICAgICAuLi4odGhpcy5kYXRhLmlucHV0c1trZXldPy50d29XYXkgJiYge1xuICAgICAgICAgICAgICBzZXQ6IChuZXdWYWx1ZTogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhLmlucHV0c1trZXldLnZhbHVlID0gbmV3VmFsdWU7XG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhLm91dHB1dHNbYCR7a2V5fUNoYW5nZWBdKG5ld1ZhbHVlKTtcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pLFxuICAgICAgICB7fSxcbiAgICAgICksXG4gICAgfSk7XG4gIH1cblxuICByZXNldERlZmF1bHRDb21wb25lbnQoKSB7XG4gICAgT2JqZWN0LmtleXModGhpcy5kZWZhdWx0Q29tcG9uZW50U3Vic2NyaXB0aW9ucykuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgdGhpcy5kZWZhdWx0Q29tcG9uZW50U3Vic2NyaXB0aW9uc1trZXldLnVuc3Vic2NyaWJlKCk7XG4gICAgfSk7XG4gICAgdGhpcy5kZWZhdWx0Q29tcG9uZW50U3Vic2NyaXB0aW9ucyA9IHt9IGFzIEFCUC5EaWN0aW9uYXJ5PFN1YnNjcmlwdGlvbj47XG4gICAgdGhpcy5kZWZhdWx0Q29tcG9uZW50UmVmID0gbnVsbDtcbiAgfVxufVxuIl19
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
import { Directive, ElementRef, EventEmitter, Output } from '@angular/core';
|
|
2
|
-
import { fromEvent } from 'rxjs';
|
|
3
|
-
import { SubscriptionService } from '../services/subscription.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "../services/subscription.service";
|
|
6
|
-
export class StopPropagationDirective {
|
|
7
|
-
constructor(el, subscription) {
|
|
8
|
-
this.el = el;
|
|
9
|
-
this.subscription = subscription;
|
|
10
|
-
this.stopPropEvent = new EventEmitter();
|
|
11
|
-
}
|
|
12
|
-
ngOnInit() {
|
|
13
|
-
this.subscription.addOne(fromEvent(this.el.nativeElement, 'click'), (event) => {
|
|
14
|
-
event.stopPropagation();
|
|
15
|
-
this.stopPropEvent.emit(event);
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
StopPropagationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: StopPropagationDirective, deps: [{ token: i0.ElementRef }, { token: i1.SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
20
|
-
StopPropagationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: StopPropagationDirective, selector: "[click.stop]", outputs: { stopPropEvent: "click.stop" }, providers: [SubscriptionService], ngImport: i0 });
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: StopPropagationDirective, decorators: [{
|
|
22
|
-
type: Directive,
|
|
23
|
-
args: [{
|
|
24
|
-
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
25
|
-
selector: '[click.stop]',
|
|
26
|
-
providers: [SubscriptionService],
|
|
27
|
-
}]
|
|
28
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.SubscriptionService }]; }, propDecorators: { stopPropEvent: [{
|
|
29
|
-
type: Output,
|
|
30
|
-
args: ['click.stop']
|
|
31
|
-
}] } });
|
|
1
|
+
import { Directive, ElementRef, EventEmitter, Output } from '@angular/core';
|
|
2
|
+
import { fromEvent } from 'rxjs';
|
|
3
|
+
import { SubscriptionService } from '../services/subscription.service';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "../services/subscription.service";
|
|
6
|
+
export class StopPropagationDirective {
|
|
7
|
+
constructor(el, subscription) {
|
|
8
|
+
this.el = el;
|
|
9
|
+
this.subscription = subscription;
|
|
10
|
+
this.stopPropEvent = new EventEmitter();
|
|
11
|
+
}
|
|
12
|
+
ngOnInit() {
|
|
13
|
+
this.subscription.addOne(fromEvent(this.el.nativeElement, 'click'), (event) => {
|
|
14
|
+
event.stopPropagation();
|
|
15
|
+
this.stopPropEvent.emit(event);
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
StopPropagationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: StopPropagationDirective, deps: [{ token: i0.ElementRef }, { token: i1.SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
20
|
+
StopPropagationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: StopPropagationDirective, selector: "[click.stop]", outputs: { stopPropEvent: "click.stop" }, providers: [SubscriptionService], ngImport: i0 });
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: StopPropagationDirective, decorators: [{
|
|
22
|
+
type: Directive,
|
|
23
|
+
args: [{
|
|
24
|
+
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
25
|
+
selector: '[click.stop]',
|
|
26
|
+
providers: [SubscriptionService],
|
|
27
|
+
}]
|
|
28
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.SubscriptionService }]; }, propDecorators: { stopPropEvent: [{
|
|
29
|
+
type: Output,
|
|
30
|
+
args: ['click.stop']
|
|
31
|
+
}] } });
|
|
32
32
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcC1wcm9wYWdhdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9zdG9wLXByb3BhZ2F0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7OztBQU92RSxNQUFNLE9BQU8sd0JBQXdCO0lBR25DLFlBQW9CLEVBQWMsRUFBVSxZQUFpQztRQUF6RCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBRjlDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztJQUVFLENBQUM7SUFFakYsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsRUFBRSxDQUFDLEtBQWlCLEVBQUUsRUFBRTtZQUN4RixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztzSEFWVSx3QkFBd0I7MEdBQXhCLHdCQUF3QixpRkFGeEIsQ0FBQyxtQkFBbUIsQ0FBQzs0RkFFckIsd0JBQXdCO2tCQUxwQyxTQUFTO21CQUFDO29CQUNULDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFNBQVMsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUNqQzttSUFFZ0MsYUFBYTtzQkFBM0MsTUFBTTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmcm9tRXZlbnQgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvblNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9zdWJzY3JpcHRpb24uc2VydmljZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICBzZWxlY3RvcjogJ1tjbGljay5zdG9wXScsXG4gIHByb3ZpZGVyczogW1N1YnNjcmlwdGlvblNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBTdG9wUHJvcGFnYXRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuICBAT3V0cHV0KCdjbGljay5zdG9wJykgcmVhZG9ubHkgc3RvcFByb3BFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmLCBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGRPbmUoZnJvbUV2ZW50KHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2NsaWNrJyksIChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICB0aGlzLnN0b3BQcm9wRXZlbnQuZW1pdChldmVudCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL2VudW1zL2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGVudW0gZUxheW91dFR5cGUge1xuICBhY2NvdW50ID0gJ2FjY291bnQnLFxuICBhcHBsaWNhdGlvbiA9ICdhcHBsaWNhdGlvbicsXG4gIGVtcHR5ID0gJ2VtcHR5Jyxcbn1cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './common';
|
|
1
|
+
export * from './common';
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvZW51bXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbW1vbic7XG4iXX0=
|
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { OAuthService } from 'angular-oauth2-oidc';
|
|
3
|
-
import { AuthService } from '../services/auth.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "angular-oauth2-oidc";
|
|
6
|
-
import * as i2 from "../services/auth.service";
|
|
7
|
-
export class AuthGuard {
|
|
8
|
-
constructor(oauthService, authService) {
|
|
9
|
-
this.oauthService = oauthService;
|
|
10
|
-
this.authService = authService;
|
|
11
|
-
}
|
|
12
|
-
canActivate() {
|
|
13
|
-
const hasValidAccessToken = this.oauthService.hasValidAccessToken();
|
|
14
|
-
if (hasValidAccessToken) {
|
|
15
|
-
return true;
|
|
16
|
-
}
|
|
17
|
-
this.authService.navigateToLogin();
|
|
18
|
-
return false;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
AuthGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AuthGuard, deps: [{ token: i1.OAuthService }, { token: i2.AuthService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
22
|
-
AuthGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AuthGuard, providedIn: 'root' });
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AuthGuard, decorators: [{
|
|
24
|
-
type: Injectable,
|
|
25
|
-
args: [{
|
|
26
|
-
providedIn: 'root',
|
|
27
|
-
}]
|
|
28
|
-
}], ctorParameters: function () { return [{ type: i1.OAuthService }, { type: i2.AuthService }]; } });
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { OAuthService } from 'angular-oauth2-oidc';
|
|
3
|
+
import { AuthService } from '../services/auth.service';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "angular-oauth2-oidc";
|
|
6
|
+
import * as i2 from "../services/auth.service";
|
|
7
|
+
export class AuthGuard {
|
|
8
|
+
constructor(oauthService, authService) {
|
|
9
|
+
this.oauthService = oauthService;
|
|
10
|
+
this.authService = authService;
|
|
11
|
+
}
|
|
12
|
+
canActivate() {
|
|
13
|
+
const hasValidAccessToken = this.oauthService.hasValidAccessToken();
|
|
14
|
+
if (hasValidAccessToken) {
|
|
15
|
+
return true;
|
|
16
|
+
}
|
|
17
|
+
this.authService.navigateToLogin();
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
AuthGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AuthGuard, deps: [{ token: i1.OAuthService }, { token: i2.AuthService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
22
|
+
AuthGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AuthGuard, providedIn: 'root' });
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: AuthGuard, decorators: [{
|
|
24
|
+
type: Injectable,
|
|
25
|
+
args: [{
|
|
26
|
+
providedIn: 'root',
|
|
27
|
+
}]
|
|
28
|
+
}], ctorParameters: function () { return [{ type: i1.OAuthService }, { type: i2.AuthService }]; } });
|
|
29
29
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9ndWFyZHMvYXV0aC5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7QUFLdkQsTUFBTSxPQUFPLFNBQVM7SUFDcEIsWUFBb0IsWUFBMEIsRUFBVSxXQUF3QjtRQUE1RCxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBQUcsQ0FBQztJQUVwRixXQUFXO1FBQ1QsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDcEUsSUFBSSxtQkFBbUIsRUFBRTtZQUN2QixPQUFPLElBQUksQ0FBQztTQUNiO1FBRUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNuQyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7O3VHQVhVLFNBQVM7MkdBQVQsU0FBUyxjQUZSLE1BQU07NEZBRVAsU0FBUztrQkFIckIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDYW5BY3RpdmF0ZSwgVXJsVHJlZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPQXV0aFNlcnZpY2UgfSBmcm9tICdhbmd1bGFyLW9hdXRoMi1vaWRjJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEF1dGhHdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBvYXV0aFNlcnZpY2U6IE9BdXRoU2VydmljZSwgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UpIHt9XG5cbiAgY2FuQWN0aXZhdGUoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB8IGJvb2xlYW4gfCBVcmxUcmVlIHtcbiAgICBjb25zdCBoYXNWYWxpZEFjY2Vzc1Rva2VuID0gdGhpcy5vYXV0aFNlcnZpY2UuaGFzVmFsaWRBY2Nlc3NUb2tlbigpO1xuICAgIGlmIChoYXNWYWxpZEFjY2Vzc1Rva2VuKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICB0aGlzLmF1dGhTZXJ2aWNlLm5hdmlnYXRlVG9Mb2dpbigpO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIl19
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from './auth.guard';
|
|
2
|
-
export * from './permission.guard';
|
|
1
|
+
export * from './auth.guard';
|
|
2
|
+
export * from './permission.guard';
|
|
3
3
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvZ3VhcmRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dGguZ3VhcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9wZXJtaXNzaW9uLmd1YXJkJztcbiJdfQ==
|