@abp/ng.core 7.2.2 → 7.3.0-rc.1
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/{esm2020 → esm2022}/abp-ng.core.mjs +4 -4
- package/esm2022/lib/abstracts/abstract-guard.mjs +2 -0
- package/{esm2020 → esm2022}/lib/abstracts/auth-response.model.mjs +1 -1
- package/esm2022/lib/abstracts/auth.guard.mjs +18 -0
- package/esm2022/lib/abstracts/auth.service.mjs +46 -0
- package/esm2022/lib/abstracts/index.mjs +6 -0
- package/esm2022/lib/abstracts/ng-model.component.mjs +60 -0
- package/esm2022/lib/clients/http.client.mjs +29 -0
- package/{esm2020 → esm2022}/lib/clients/index.mjs +1 -1
- package/esm2022/lib/components/dynamic-layout.component.mjs +101 -0
- package/{esm2020 → esm2022}/lib/components/index.mjs +3 -3
- package/esm2022/lib/components/replaceable-route-container.component.mjs +43 -0
- package/esm2022/lib/components/router-outlet.component.mjs +16 -0
- package/{esm2020 → esm2022}/lib/constants/different-locales.mjs +336 -336
- package/{esm2020 → esm2022}/lib/constants/index.mjs +1 -1
- package/esm2022/lib/core.module.mjs +285 -0
- package/esm2022/lib/directives/autofocus.directive.mjs +31 -0
- package/esm2022/lib/directives/debounce.directive.mjs +37 -0
- package/esm2022/lib/directives/for.directive.mjs +160 -0
- package/esm2022/lib/directives/form-submit.directive.mjs +78 -0
- package/{esm2020 → esm2022}/lib/directives/index.mjs +8 -8
- package/esm2022/lib/directives/init.directive.mjs +22 -0
- package/esm2022/lib/directives/permission.directive.mjs +75 -0
- package/esm2022/lib/directives/replaceable-template.directive.mjs +133 -0
- package/esm2022/lib/directives/stop-propagation.directive.mjs +33 -0
- package/{esm2020 → esm2022}/lib/enums/common.mjs +1 -1
- package/{esm2020 → esm2022}/lib/enums/index.mjs +1 -1
- package/{esm2020 → esm2022}/lib/guards/index.mjs +1 -1
- package/esm2022/lib/guards/permission.guard.mjs +41 -0
- package/esm2022/lib/handlers/routes.handler.mjs +52 -0
- package/esm2022/lib/interceptors/api.interceptor.mjs +28 -0
- package/{esm2020 → esm2022}/lib/interceptors/index.mjs +1 -1
- package/esm2022/lib/localization.module.mjs +17 -0
- package/{esm2020 → esm2022}/lib/models/auth.mjs +1 -1
- package/{esm2020 → esm2022}/lib/models/common.mjs +1 -1
- package/{esm2020 → esm2022}/lib/models/dtos.mjs +134 -134
- package/{esm2020 → esm2022}/lib/models/environment.mjs +1 -1
- package/{esm2020 → esm2022}/lib/models/index.mjs +9 -9
- package/{esm2020 → esm2022}/lib/models/localization.mjs +1 -1
- package/{esm2020 → esm2022}/lib/models/replaceable-components.mjs +1 -1
- package/{esm2020 → esm2022}/lib/models/rest.mjs +1 -1
- package/{esm2020 → esm2022}/lib/models/session.mjs +1 -1
- package/{esm2020 → esm2022}/lib/models/utility.mjs +1 -1
- package/{esm2020 → esm2022}/lib/pipes/index.mjs +7 -7
- package/esm2022/lib/pipes/localization.pipe.mjs +34 -0
- package/esm2022/lib/pipes/safe-html.pipe.mjs +24 -0
- package/esm2022/lib/pipes/short-date-time.pipe.mjs +35 -0
- package/esm2022/lib/pipes/short-date.pipe.mjs +35 -0
- package/esm2022/lib/pipes/short-time.pipe.mjs +35 -0
- package/esm2022/lib/pipes/sort.pipe.mjs +50 -0
- package/esm2022/lib/pipes/to-injector.pipe.mjs +30 -0
- package/{esm2020 → esm2022}/lib/providers/cookie-language.provider.mjs +21 -21
- package/{esm2020 → esm2022}/lib/providers/include-localization-resources.provider.mjs +5 -5
- package/{esm2020 → esm2022}/lib/providers/locale.provider.mjs +25 -25
- package/esm2022/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.mjs +28 -0
- package/{esm2020 → esm2022}/lib/proxy/pages/abp/multi-tenancy/index.mjs +1 -1
- package/esm2022/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.mjs +25 -0
- package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/index.mjs +1 -1
- package/esm2022/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.mjs +25 -0
- package/esm2022/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-localization.service.mjs +25 -0
- package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/index.mjs +5 -5
- package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/models.mjs +1 -1
- package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/index.mjs +1 -1
- package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/object-extending/models.mjs +1 -1
- package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/index.mjs +1 -1
- package/{esm2020 → esm2022}/lib/proxy/volo/abp/asp-net-core/mvc/multi-tenancy/models.mjs +1 -1
- package/{esm2020 → esm2022}/lib/proxy/volo/abp/http/modeling/index.mjs +1 -1
- package/{esm2020 → esm2022}/lib/proxy/volo/abp/http/modeling/models.mjs +1 -1
- package/{esm2020 → esm2022}/lib/proxy/volo/abp/localization/index.mjs +1 -1
- package/{esm2020 → esm2022}/lib/proxy/volo/abp/localization/models.mjs +1 -1
- package/{esm2020 → esm2022}/lib/proxy/volo/abp/models.mjs +1 -1
- package/esm2022/lib/services/config-state.service.mjs +182 -0
- package/esm2022/lib/services/content-projection.service.mjs +18 -0
- package/esm2022/lib/services/dom-insertion.service.mjs +35 -0
- package/esm2022/lib/services/environment.service.mjs +49 -0
- package/esm2022/lib/services/http-error-reporter.service.mjs +30 -0
- package/esm2022/lib/services/http-wait.service.mjs +76 -0
- package/{esm2020 → esm2022}/lib/services/index.mjs +21 -21
- package/esm2022/lib/services/lazy-load.service.mjs +41 -0
- package/esm2022/lib/services/list.service.mjs +103 -0
- package/esm2022/lib/services/local-storage.service.mjs +33 -0
- package/esm2022/lib/services/localization.service.mjs +218 -0
- package/esm2022/lib/services/multi-tenancy.service.mjs +49 -0
- package/esm2022/lib/services/permission.service.mjs +64 -0
- package/esm2022/lib/services/replaceable-components.service.mjs +50 -0
- package/esm2022/lib/services/resource-wait.service.mjs +40 -0
- package/esm2022/lib/services/rest.service.mjs +79 -0
- package/esm2022/lib/services/router-events.service.mjs +39 -0
- package/esm2022/lib/services/router-wait.service.mjs +52 -0
- package/esm2022/lib/services/routes.service.mjs +165 -0
- package/esm2022/lib/services/session-state.service.mjs +81 -0
- package/esm2022/lib/services/subscription.service.mjs +44 -0
- package/esm2022/lib/services/track-by.service.mjs +22 -0
- package/{esm2020 → esm2022}/lib/strategies/container.strategy.mjs +37 -37
- package/{esm2020 → esm2022}/lib/strategies/content-security.strategy.mjs +29 -29
- package/{esm2020 → esm2022}/lib/strategies/content.strategy.mjs +51 -51
- package/{esm2020 → esm2022}/lib/strategies/context.strategy.mjs +36 -36
- package/{esm2020 → esm2022}/lib/strategies/cross-origin.strategy.mjs +27 -27
- package/{esm2020 → esm2022}/lib/strategies/dom.strategy.mjs +26 -26
- package/{esm2020 → esm2022}/lib/strategies/index.mjs +8 -8
- package/{esm2020 → esm2022}/lib/strategies/loading.strategy.mjs +57 -57
- package/{esm2020 → esm2022}/lib/strategies/projection.strategy.mjs +79 -79
- package/{esm2020 → esm2022}/lib/tokens/app-config.token.mjs +2 -2
- package/{esm2020 → esm2022}/lib/tokens/check-authentication-state.mjs +2 -2
- package/{esm2020 → esm2022}/lib/tokens/cookie-language-key.token.mjs +4 -4
- package/{esm2020 → esm2022}/lib/tokens/http-context.token.mjs +2 -2
- package/{esm2020 → esm2022}/lib/tokens/include-localization-resources.token.mjs +2 -2
- package/{esm2020 → esm2022}/lib/tokens/index.mjs +15 -15
- package/{esm2020 → esm2022}/lib/tokens/list.token.mjs +2 -2
- package/{esm2020 → esm2022}/lib/tokens/localization.token.mjs +9 -9
- package/{esm2020 → esm2022}/lib/tokens/lodaer-delay.token.mjs +2 -2
- package/{esm2020 → esm2022}/lib/tokens/manage-profile.token.mjs +2 -2
- package/{esm2020 → esm2022}/lib/tokens/options.token.mjs +7 -7
- package/{esm2020 → esm2022}/lib/tokens/others-group.token.mjs +2 -2
- package/{esm2020 → esm2022}/lib/tokens/pipe-to-login.token.mjs +2 -2
- package/{esm2020 → esm2022}/lib/tokens/queue.token.mjs +2 -2
- package/{esm2020 → esm2022}/lib/tokens/set-token-response-to-storage.token.mjs +5 -5
- package/{esm2020 → esm2022}/lib/tokens/tenant-key.token.mjs +2 -2
- package/{esm2020 → esm2022}/lib/utils/array-utils.mjs +6 -6
- package/{esm2020 → esm2022}/lib/utils/common-utils.mjs +34 -34
- package/{esm2020 → esm2022}/lib/utils/date-extensions.mjs +5 -5
- package/{esm2020 → esm2022}/lib/utils/date-utils.mjs +12 -12
- package/{esm2020 → esm2022}/lib/utils/environment-utils.mjs +35 -35
- package/{esm2020 → esm2022}/lib/utils/factory-utils.mjs +24 -24
- package/{esm2020 → esm2022}/lib/utils/file-utils.mjs +13 -13
- package/{esm2020 → esm2022}/lib/utils/form-utils.mjs +11 -11
- package/{esm2020 → esm2022}/lib/utils/generator-utils.mjs +33 -33
- package/{esm2020 → esm2022}/lib/utils/http-utils.mjs +18 -18
- package/{esm2020 → esm2022}/lib/utils/index.mjs +20 -20
- package/{esm2020 → esm2022}/lib/utils/initial-utils.mjs +59 -59
- package/esm2022/lib/utils/internal-store-utils.mjs +37 -0
- package/{esm2020 → esm2022}/lib/utils/lazy-load-utils.mjs +39 -39
- package/{esm2020 → esm2022}/lib/utils/localization-utils.mjs +48 -48
- package/{esm2020 → esm2022}/lib/utils/multi-tenancy-utils.mjs +80 -80
- package/{esm2020 → esm2022}/lib/utils/number-utils.mjs +3 -3
- package/{esm2020 → esm2022}/lib/utils/object-utils.mjs +36 -36
- package/{esm2020 → esm2022}/lib/utils/queue.mjs +40 -40
- package/{esm2020 → esm2022}/lib/utils/route-utils.mjs +25 -25
- package/{esm2020 → esm2022}/lib/utils/string-utils.mjs +29 -29
- package/{esm2020 → esm2022}/lib/utils/tree-utils.mjs +69 -69
- package/{esm2020 → esm2022}/lib/validators/age.validator.mjs +13 -13
- package/{esm2020 → esm2022}/lib/validators/credit-card.validator.mjs +20 -20
- package/esm2022/lib/validators/index.mjs +29 -0
- package/{esm2020 → esm2022}/lib/validators/range.validator.mjs +14 -14
- package/{esm2020 → esm2022}/lib/validators/required.validator.mjs +14 -14
- package/{esm2020 → esm2022}/lib/validators/string-length.validator.mjs +14 -14
- package/esm2022/lib/validators/unique-character.validator.mjs +13 -0
- package/{esm2020 → esm2022}/lib/validators/url.validator.mjs +16 -16
- package/{esm2020 → esm2022}/lib/validators/username.validator.mjs +13 -13
- package/{esm2020 → esm2022}/locale/abp-ng.core-locale.mjs +4 -4
- package/{esm2020 → esm2022}/locale/public-api.mjs +1 -1
- package/{esm2020 → esm2022}/locale/utils/register-locale.mjs +46 -46
- package/{esm2020 → esm2022}/public-api.mjs +26 -26
- package/{esm2020 → esm2022}/testing/abp-ng.core-testing.mjs +4 -4
- package/esm2022/testing/lib/core-testing.module.mjs +68 -0
- package/{esm2020 → esm2022}/testing/lib/services/index.mjs +2 -2
- package/esm2022/testing/lib/services/mock-permission.service.mjs +36 -0
- package/esm2022/testing/lib/services/mock-rest.service.mjs +32 -0
- package/{esm2020 → esm2022}/testing/lib/utils/clear-page.util.mjs +9 -9
- package/{esm2020 → esm2022}/testing/lib/utils/index.mjs +2 -2
- package/{esm2020 → esm2022}/testing/lib/utils/wait.util.mjs +4 -4
- package/{esm2020 → esm2022}/testing/public-api.mjs +3 -3
- package/{fesm2020 → fesm2022}/abp-ng.core-locale.mjs +45 -45
- package/{fesm2020 → fesm2022}/abp-ng.core-testing.mjs +120 -120
- package/{fesm2020 → fesm2022}/abp-ng.core-testing.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/abp-ng.core.mjs +4199 -4187
- package/fesm2022/abp-ng.core.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/abstracts/abstract-guard.d.ts +5 -0
- package/lib/abstracts/auth-response.model.d.ts +10 -10
- package/lib/abstracts/auth.guard.d.ts +9 -10
- package/lib/abstracts/auth.service.d.ts +30 -30
- package/lib/abstracts/index.d.ts +5 -4
- package/lib/abstracts/ng-model.component.d.ts +25 -25
- package/lib/clients/http.client.d.ts +11 -11
- package/lib/clients/index.d.ts +1 -1
- package/lib/components/dynamic-layout.component.d.ts +28 -28
- 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 +57 -57
- 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 +23 -23
- package/lib/directives/index.d.ts +8 -8
- package/lib/directives/init.directive.d.ts +10 -10
- package/lib/directives/permission.directive.d.ts +24 -24
- package/lib/directives/replaceable-template.directive.d.ts +29 -29
- 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/index.d.ts +1 -1
- package/lib/guards/permission.guard.d.ts +16 -16
- package/lib/handlers/routes.handler.d.ts +11 -11
- package/lib/interceptors/api.interceptor.d.ts +14 -14
- package/lib/interceptors/index.d.ts +1 -1
- package/lib/localization.module.d.ts +7 -7
- package/lib/models/auth.d.ts +14 -14
- package/lib/models/common.d.ts +79 -79
- package/lib/models/dtos.d.ts +107 -107
- package/lib/models/environment.d.ts +38 -38
- 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 +36 -36
- package/lib/models/session.d.ts +7 -7
- package/lib/models/utility.d.ts +14 -14
- package/lib/pipes/index.d.ts +7 -7
- package/lib/pipes/localization.pipe.d.ts +12 -12
- package/lib/pipes/safe-html.pipe.d.ts +9 -9
- package/lib/pipes/short-date-time.pipe.d.ts +12 -12
- package/lib/pipes/short-date.pipe.d.ts +12 -12
- package/lib/pipes/short-time.pipe.d.ts +12 -12
- package/lib/pipes/sort.pipe.d.ts +9 -9
- package/lib/pipes/to-injector.pipe.d.ts +10 -10
- package/lib/providers/cookie-language.provider.d.ts +3 -3
- package/lib/providers/include-localization-resources.provider.d.ts +2 -2
- 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/abp-application-localization.service.d.ts +11 -11
- package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/index.d.ts +5 -5
- package/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/models.d.ts +106 -106
- 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 +88 -88
- package/lib/proxy/volo/abp/localization/index.d.ts +1 -1
- package/lib/proxy/volo/abp/localization/models.d.ts +7 -7
- package/lib/proxy/volo/abp/models.d.ts +4 -4
- package/lib/services/config-state.service.d.ts +379 -378
- 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 +103 -103
- 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/local-storage.service.d.ts +13 -13
- package/lib/services/localization.service.d.ts +54 -54
- 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 +24 -24
- 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 +57 -57
- package/lib/services/session-state.service.d.ts +27 -27
- package/lib/services/subscription.service.d.ts +17 -17
- package/lib/services/track-by.service.d.ts +11 -11
- 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/check-authentication-state.d.ts +3 -3
- package/lib/tokens/cookie-language-key.token.d.ts +2 -2
- package/lib/tokens/http-context.token.d.ts +2 -2
- package/lib/tokens/include-localization-resources.token.d.ts +2 -2
- package/lib/tokens/index.d.ts +15 -15
- 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/others-group.token.d.ts +2 -2
- package/lib/tokens/pipe-to-login.token.d.ts +3 -3
- package/lib/tokens/queue.token.d.ts +3 -3
- package/lib/tokens/set-token-response-to-storage.token.d.ts +6 -6
- package/lib/tokens/tenant-key.token.d.ts +2 -2
- package/lib/utils/array-utils.d.ts +1 -1
- package/lib/utils/common-utils.d.ts +11 -11
- 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 +11 -11
- 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 +3 -3
- 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 +2 -2
- package/lib/utils/queue.d.ts +14 -14
- package/lib/utils/route-utils.d.ts +8 -8
- package/lib/utils/string-utils.d.ts +3 -3
- package/lib/utils/tree-utils.d.ts +26 -26
- 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 +28 -24
- 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/unique-character.validator.d.ts +5 -0
- package/lib/validators/url.validator.d.ts +5 -5
- package/lib/validators/username.validator.d.ts +10 -10
- package/locale/index.d.ts +5 -5
- package/locale/public-api.d.ts +1 -1
- package/locale/utils/register-locale.d.ts +13 -13
- package/package.json +12 -22
- package/public-api.d.ts +25 -25
- package/testing/index.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 +14 -14
- 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
- package/esm2020/lib/abstracts/auth.guard.mjs +0 -17
- package/esm2020/lib/abstracts/auth.service.mjs +0 -45
- package/esm2020/lib/abstracts/index.mjs +0 -5
- package/esm2020/lib/abstracts/ng-model.component.mjs +0 -59
- package/esm2020/lib/clients/http.client.mjs +0 -34
- package/esm2020/lib/components/dynamic-layout.component.mjs +0 -100
- package/esm2020/lib/components/replaceable-route-container.component.mjs +0 -42
- package/esm2020/lib/components/router-outlet.component.mjs +0 -15
- package/esm2020/lib/core.module.mjs +0 -282
- package/esm2020/lib/directives/autofocus.directive.mjs +0 -30
- package/esm2020/lib/directives/debounce.directive.mjs +0 -36
- package/esm2020/lib/directives/for.directive.mjs +0 -159
- package/esm2020/lib/directives/form-submit.directive.mjs +0 -77
- package/esm2020/lib/directives/init.directive.mjs +0 -21
- package/esm2020/lib/directives/permission.directive.mjs +0 -74
- package/esm2020/lib/directives/replaceable-template.directive.mjs +0 -132
- package/esm2020/lib/directives/stop-propagation.directive.mjs +0 -32
- package/esm2020/lib/guards/permission.guard.mjs +0 -44
- package/esm2020/lib/handlers/routes.handler.mjs +0 -51
- package/esm2020/lib/interceptors/api.interceptor.mjs +0 -27
- package/esm2020/lib/localization.module.mjs +0 -16
- package/esm2020/lib/pipes/localization.pipe.mjs +0 -33
- package/esm2020/lib/pipes/safe-html.pipe.mjs +0 -23
- package/esm2020/lib/pipes/short-date-time.pipe.mjs +0 -34
- package/esm2020/lib/pipes/short-date.pipe.mjs +0 -34
- package/esm2020/lib/pipes/short-time.pipe.mjs +0 -34
- package/esm2020/lib/pipes/sort.pipe.mjs +0 -49
- package/esm2020/lib/pipes/to-injector.pipe.mjs +0 -29
- package/esm2020/lib/proxy/pages/abp/multi-tenancy/abp-tenant.service.mjs +0 -27
- package/esm2020/lib/proxy/volo/abp/asp-net-core/mvc/api-exploring/abp-api-definition.service.mjs +0 -24
- package/esm2020/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-configuration.service.mjs +0 -24
- package/esm2020/lib/proxy/volo/abp/asp-net-core/mvc/application-configurations/abp-application-localization.service.mjs +0 -24
- package/esm2020/lib/services/config-state.service.mjs +0 -178
- package/esm2020/lib/services/content-projection.service.mjs +0 -17
- package/esm2020/lib/services/dom-insertion.service.mjs +0 -34
- package/esm2020/lib/services/environment.service.mjs +0 -48
- package/esm2020/lib/services/http-error-reporter.service.mjs +0 -29
- package/esm2020/lib/services/http-wait.service.mjs +0 -75
- package/esm2020/lib/services/lazy-load.service.mjs +0 -40
- package/esm2020/lib/services/list.service.mjs +0 -102
- package/esm2020/lib/services/local-storage.service.mjs +0 -32
- package/esm2020/lib/services/localization.service.mjs +0 -217
- package/esm2020/lib/services/multi-tenancy.service.mjs +0 -48
- package/esm2020/lib/services/permission.service.mjs +0 -63
- package/esm2020/lib/services/replaceable-components.service.mjs +0 -49
- package/esm2020/lib/services/resource-wait.service.mjs +0 -39
- package/esm2020/lib/services/rest.service.mjs +0 -78
- package/esm2020/lib/services/router-events.service.mjs +0 -38
- package/esm2020/lib/services/router-wait.service.mjs +0 -51
- package/esm2020/lib/services/routes.service.mjs +0 -163
- package/esm2020/lib/services/session-state.service.mjs +0 -80
- package/esm2020/lib/services/subscription.service.mjs +0 -43
- package/esm2020/lib/services/track-by.service.mjs +0 -21
- package/esm2020/lib/utils/internal-store-utils.mjs +0 -37
- package/esm2020/lib/validators/index.mjs +0 -25
- package/esm2020/testing/lib/core-testing.module.mjs +0 -67
- package/esm2020/testing/lib/services/mock-permission.service.mjs +0 -35
- package/esm2020/testing/lib/services/mock-rest.service.mjs +0 -31
- package/fesm2015/abp-ng.core-locale.mjs +0 -57
- package/fesm2015/abp-ng.core-locale.mjs.map +0 -1
- package/fesm2015/abp-ng.core-testing.mjs +0 -146
- package/fesm2015/abp-ng.core-testing.mjs.map +0 -1
- package/fesm2015/abp-ng.core.mjs +0 -4460
- package/fesm2015/abp-ng.core.mjs.map +0 -1
- package/fesm2020/abp-ng.core.mjs.map +0 -1
- package/src/lib/proxy/README.md +0 -17
- /package/{fesm2020 → fesm2022}/abp-ng.core-locale.mjs.map +0 -0
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectorRef, Directive, ElementRef, EventEmitter, Input, Output, Self, } from '@angular/core';
|
|
2
|
-
import { FormGroupDirective } from '@angular/forms';
|
|
3
|
-
import { fromEvent } from 'rxjs';
|
|
4
|
-
import { debounceTime, filter } from 'rxjs/operators';
|
|
5
|
-
import { SubscriptionService } from '../services/subscription.service';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/forms";
|
|
8
|
-
import * as i2 from "../services/subscription.service";
|
|
9
|
-
/**
|
|
10
|
-
* @deprecated FormSubmitDirective will be removed in V7.0.0. Use `ngSubmit` instead.
|
|
11
|
-
*/
|
|
12
|
-
export class FormSubmitDirective {
|
|
13
|
-
constructor(formGroupDirective, host, cdRef, subscription) {
|
|
14
|
-
this.formGroupDirective = formGroupDirective;
|
|
15
|
-
this.host = host;
|
|
16
|
-
this.cdRef = cdRef;
|
|
17
|
-
this.subscription = subscription;
|
|
18
|
-
this.debounce = 200;
|
|
19
|
-
this.markAsDirtyWhenSubmit = true;
|
|
20
|
-
this.ngSubmit = new EventEmitter();
|
|
21
|
-
this.executedNgSubmit = false;
|
|
22
|
-
}
|
|
23
|
-
ngOnInit() {
|
|
24
|
-
this.subscription.addOne(this.formGroupDirective.ngSubmit, () => {
|
|
25
|
-
if (this.markAsDirtyWhenSubmit) {
|
|
26
|
-
this.markAsDirty();
|
|
27
|
-
}
|
|
28
|
-
this.executedNgSubmit = true;
|
|
29
|
-
});
|
|
30
|
-
const keyup$ = fromEvent(this.host.nativeElement, 'keyup').pipe(debounceTime(this.debounce), filter(event => !(event.target instanceof HTMLTextAreaElement)), filter(event => event && event.key === 'Enter'));
|
|
31
|
-
this.subscription.addOne(keyup$, () => {
|
|
32
|
-
if (!this.executedNgSubmit) {
|
|
33
|
-
this.host.nativeElement.dispatchEvent(new Event('submit', { bubbles: true, cancelable: true }));
|
|
34
|
-
}
|
|
35
|
-
this.executedNgSubmit = false;
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
markAsDirty() {
|
|
39
|
-
const { form } = this.formGroupDirective;
|
|
40
|
-
setDirty(form.controls);
|
|
41
|
-
form.markAsDirty();
|
|
42
|
-
this.cdRef.detectChanges();
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
FormSubmitDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: FormSubmitDirective, deps: [{ token: i1.FormGroupDirective, self: true }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i2.SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
46
|
-
FormSubmitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: { debounce: "debounce", notValidateOnSubmit: "notValidateOnSubmit", markAsDirtyWhenSubmit: "markAsDirtyWhenSubmit" }, outputs: { ngSubmit: "ngSubmit" }, providers: [SubscriptionService], ngImport: i0 });
|
|
47
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: FormSubmitDirective, decorators: [{
|
|
48
|
-
type: Directive,
|
|
49
|
-
args: [{
|
|
50
|
-
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
51
|
-
selector: 'form[ngSubmit][formGroup]',
|
|
52
|
-
providers: [SubscriptionService],
|
|
53
|
-
}]
|
|
54
|
-
}], ctorParameters: function () { return [{ type: i1.FormGroupDirective, decorators: [{
|
|
55
|
-
type: Self
|
|
56
|
-
}] }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i2.SubscriptionService }]; }, propDecorators: { debounce: [{
|
|
57
|
-
type: Input
|
|
58
|
-
}], notValidateOnSubmit: [{
|
|
59
|
-
type: Input
|
|
60
|
-
}], markAsDirtyWhenSubmit: [{
|
|
61
|
-
type: Input
|
|
62
|
-
}], ngSubmit: [{
|
|
63
|
-
type: Output
|
|
64
|
-
}] } });
|
|
65
|
-
function setDirty(controls) {
|
|
66
|
-
if (Array.isArray(controls)) {
|
|
67
|
-
controls.forEach(group => {
|
|
68
|
-
setDirty(group.controls);
|
|
69
|
-
});
|
|
70
|
-
return;
|
|
71
|
-
}
|
|
72
|
-
Object.keys(controls).forEach(key => {
|
|
73
|
-
controls[key].markAsDirty();
|
|
74
|
-
controls[key].updateValueAndValidity();
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1zdWJtaXQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvZm9ybS1zdWJtaXQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixJQUFJLEdBQ0wsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUF3QyxNQUFNLGdCQUFnQixDQUFDO0FBQzFGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7OztBQUd2RTs7R0FFRztBQU1ILE1BQU0sT0FBTyxtQkFBbUI7SUFlOUIsWUFDa0Isa0JBQXNDLEVBQzlDLElBQWlDLEVBQ2pDLEtBQXdCLEVBQ3hCLFlBQWlDO1FBSHpCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDOUMsU0FBSSxHQUFKLElBQUksQ0FBNkI7UUFDakMsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDeEIsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBakIzQyxhQUFRLEdBQUcsR0FBRyxDQUFDO1FBT2YsMEJBQXFCLEdBQUcsSUFBSSxDQUFDO1FBRVYsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFakQscUJBQWdCLEdBQUcsS0FBSyxDQUFDO0lBT3RCLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxHQUFHLEVBQUU7WUFDOUQsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUU7Z0JBQzlCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUNwQjtZQUVELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDL0IsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLE1BQU0sR0FBRyxTQUFTLENBQWdCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBNEIsRUFBRSxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQzNGLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQzNCLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxZQUFZLG1CQUFtQixDQUFDLENBQUMsRUFDL0QsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssT0FBTyxDQUFDLENBQ2hELENBQUM7UUFFRixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFO1lBQ3BDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FDbkMsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FDekQsQ0FBQzthQUNIO1lBRUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEtBQUssQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztRQUV6QyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQWlELENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM3QixDQUFDOztnSEF2RFUsbUJBQW1CO29HQUFuQixtQkFBbUIscU5BRm5CLENBQUMsbUJBQW1CLENBQUM7MkZBRXJCLG1CQUFtQjtrQkFML0IsU0FBUzttQkFBQztvQkFDVCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFNBQVMsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUNqQzs7MEJBaUJJLElBQUk7dUlBZFAsUUFBUTtzQkFEUCxLQUFLO2dCQUtOLG1CQUFtQjtzQkFEbEIsS0FBSztnQkFJTixxQkFBcUI7c0JBRHBCLEtBQUs7Z0JBR2EsUUFBUTtzQkFBMUIsTUFBTTs7QUErQ1QsU0FBUyxRQUFRLENBQUMsUUFBa0I7SUFDbEMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQzNCLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDdkIsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFpRCxDQUFDLENBQUM7UUFDcEUsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPO0tBQ1I7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUNsQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDNUIsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDekMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBEaXJlY3RpdmUsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBTZWxmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXBEaXJlY3RpdmUsIFVudHlwZWRGb3JtQ29udHJvbCwgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvc3Vic2NyaXB0aW9uLnNlcnZpY2UnO1xyXG5cclxudHlwZSBDb250cm9scyA9IHsgW2tleTogc3RyaW5nXTogVW50eXBlZEZvcm1Db250cm9sIH0gfCBVbnR5cGVkRm9ybUdyb3VwW107XHJcbi8qKlxyXG4gKiBAZGVwcmVjYXRlZCBGb3JtU3VibWl0RGlyZWN0aXZlIHdpbGwgYmUgcmVtb3ZlZCBpbiBWNy4wLjAuIFVzZSBgbmdTdWJtaXRgIGluc3RlYWQuXHJcbiAqL1xyXG5ARGlyZWN0aXZlKHtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxyXG4gIHNlbGVjdG9yOiAnZm9ybVtuZ1N1Ym1pdF1bZm9ybUdyb3VwXScsXHJcbiAgcHJvdmlkZXJzOiBbU3Vic2NyaXB0aW9uU2VydmljZV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb3JtU3VibWl0RGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKVxyXG4gIGRlYm91bmNlID0gMjAwO1xyXG5cclxuICAvLyBUT0RPOiBSZW1vdmUgdW51c2VkIGlucHV0XHJcbiAgQElucHV0KClcclxuICBub3RWYWxpZGF0ZU9uU3VibWl0Pzogc3RyaW5nIHwgYm9vbGVhbjtcclxuXHJcbiAgQElucHV0KClcclxuICBtYXJrQXNEaXJ0eVdoZW5TdWJtaXQgPSB0cnVlO1xyXG5cclxuICBAT3V0cHV0KCkgcmVhZG9ubHkgbmdTdWJtaXQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGV4ZWN1dGVkTmdTdWJtaXQgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBAU2VsZigpIHByaXZhdGUgZm9ybUdyb3VwRGlyZWN0aXZlOiBGb3JtR3JvdXBEaXJlY3RpdmUsXHJcbiAgICBwcml2YXRlIGhvc3Q6IEVsZW1lbnRSZWY8SFRNTEZvcm1FbGVtZW50PixcclxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvblNlcnZpY2UsXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZE9uZSh0aGlzLmZvcm1Hcm91cERpcmVjdGl2ZS5uZ1N1Ym1pdCwgKCkgPT4ge1xyXG4gICAgICBpZiAodGhpcy5tYXJrQXNEaXJ0eVdoZW5TdWJtaXQpIHtcclxuICAgICAgICB0aGlzLm1hcmtBc0RpcnR5KCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuZXhlY3V0ZWROZ1N1Ym1pdCA9IHRydWU7XHJcbiAgICB9KTtcclxuXHJcbiAgICBjb25zdCBrZXl1cCQgPSBmcm9tRXZlbnQ8S2V5Ym9hcmRFdmVudD4odGhpcy5ob3N0Lm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQsICdrZXl1cCcpLnBpcGUoXHJcbiAgICAgIGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlKSxcclxuICAgICAgZmlsdGVyKGV2ZW50ID0+ICEoZXZlbnQudGFyZ2V0IGluc3RhbmNlb2YgSFRNTFRleHRBcmVhRWxlbWVudCkpLFxyXG4gICAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQgJiYgZXZlbnQua2V5ID09PSAnRW50ZXInKSxcclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkT25lKGtleXVwJCwgKCkgPT4ge1xyXG4gICAgICBpZiAoIXRoaXMuZXhlY3V0ZWROZ1N1Ym1pdCkge1xyXG4gICAgICAgIHRoaXMuaG9zdC5uYXRpdmVFbGVtZW50LmRpc3BhdGNoRXZlbnQoXHJcbiAgICAgICAgICBuZXcgRXZlbnQoJ3N1Ym1pdCcsIHsgYnViYmxlczogdHJ1ZSwgY2FuY2VsYWJsZTogdHJ1ZSB9KSxcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmV4ZWN1dGVkTmdTdWJtaXQgPSBmYWxzZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbWFya0FzRGlydHkoKSB7XHJcbiAgICBjb25zdCB7IGZvcm0gfSA9IHRoaXMuZm9ybUdyb3VwRGlyZWN0aXZlO1xyXG5cclxuICAgIHNldERpcnR5KGZvcm0uY29udHJvbHMgYXMgeyBba2V5OiBzdHJpbmddOiBVbnR5cGVkRm9ybUNvbnRyb2wgfSk7XHJcbiAgICBmb3JtLm1hcmtBc0RpcnR5KCk7XHJcblxyXG4gICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiBzZXREaXJ0eShjb250cm9sczogQ29udHJvbHMpIHtcclxuICBpZiAoQXJyYXkuaXNBcnJheShjb250cm9scykpIHtcclxuICAgIGNvbnRyb2xzLmZvckVhY2goZ3JvdXAgPT4ge1xyXG4gICAgICBzZXREaXJ0eShncm91cC5jb250cm9scyBhcyB7IFtrZXk6IHN0cmluZ106IFVudHlwZWRGb3JtQ29udHJvbCB9KTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcbiAgT2JqZWN0LmtleXMoY29udHJvbHMpLmZvckVhY2goa2V5ID0+IHtcclxuICAgIGNvbnRyb2xzW2tleV0ubWFya0FzRGlydHkoKTtcclxuICAgIGNvbnRyb2xzW2tleV0udXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gIH0pO1xyXG59XHJcbiJdfQ==
|
|
@@ -1,21 +0,0 @@
|
|
|
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: "15.0.4", ngImport: i0, type: InitDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
13
|
-
InitDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: InitDirective, selector: "[abpInit]", outputs: { init: "abpInit" }, ngImport: i0 });
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", 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
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9pbml0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFHM0YsTUFBTSxPQUFPLGFBQWE7SUFHeEIsWUFBb0IsS0FBaUI7UUFBakIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUZULFNBQUksR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztJQUUvQixDQUFDO0lBRXpDLGVBQWU7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQzs7MEdBUFUsYUFBYTs4RkFBYixhQUFhOzJGQUFiLGFBQWE7a0JBRHpCLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFO2lHQUVOLElBQUk7c0JBQS9CLE1BQU07dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIEVsZW1lbnRSZWYsIEFmdGVyVmlld0luaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1thYnBJbml0XScgfSlcclxuZXhwb3J0IGNsYXNzIEluaXREaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuICBAT3V0cHV0KCdhYnBJbml0JykgcmVhZG9ubHkgaW5pdCA9IG5ldyBFdmVudEVtaXR0ZXI8RWxlbWVudFJlZjxhbnk+PigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsUmVmOiBFbGVtZW50UmVmKSB7fVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLmluaXQuZW1pdCh0aGlzLmVsUmVmKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectorRef, Directive, Inject, Input, Optional, TemplateRef, ViewContainerRef, } from '@angular/core';
|
|
2
|
-
import { ReplaySubject } from 'rxjs';
|
|
3
|
-
import { distinctUntilChanged, take } from 'rxjs/operators';
|
|
4
|
-
import { PermissionService } from '../services/permission.service';
|
|
5
|
-
import { QUEUE_MANAGER } from '../tokens/queue.token';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../services/permission.service";
|
|
8
|
-
export class PermissionDirective {
|
|
9
|
-
constructor(templateRef, vcRef, permissionService, cdRef, queue) {
|
|
10
|
-
this.templateRef = templateRef;
|
|
11
|
-
this.vcRef = vcRef;
|
|
12
|
-
this.permissionService = permissionService;
|
|
13
|
-
this.cdRef = cdRef;
|
|
14
|
-
this.queue = queue;
|
|
15
|
-
this.runChangeDetection = true;
|
|
16
|
-
this.cdrSubject = new ReplaySubject();
|
|
17
|
-
this.rendered = false;
|
|
18
|
-
}
|
|
19
|
-
check() {
|
|
20
|
-
if (this.subscription) {
|
|
21
|
-
this.subscription.unsubscribe();
|
|
22
|
-
}
|
|
23
|
-
this.subscription = this.permissionService
|
|
24
|
-
.getGrantedPolicy$(this.condition || '')
|
|
25
|
-
.pipe(distinctUntilChanged())
|
|
26
|
-
.subscribe(isGranted => {
|
|
27
|
-
this.vcRef.clear();
|
|
28
|
-
if (isGranted)
|
|
29
|
-
this.vcRef.createEmbeddedView(this.templateRef);
|
|
30
|
-
if (this.runChangeDetection) {
|
|
31
|
-
if (!this.rendered) {
|
|
32
|
-
this.cdrSubject.next();
|
|
33
|
-
}
|
|
34
|
-
else {
|
|
35
|
-
this.cdRef.detectChanges();
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
this.cdRef.markForCheck();
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
ngOnDestroy() {
|
|
44
|
-
if (this.subscription)
|
|
45
|
-
this.subscription.unsubscribe();
|
|
46
|
-
}
|
|
47
|
-
ngOnChanges() {
|
|
48
|
-
this.check();
|
|
49
|
-
}
|
|
50
|
-
ngAfterViewInit() {
|
|
51
|
-
this.cdrSubject.pipe(take(1)).subscribe(() => this.queue.add(() => this.cdRef.detectChanges()));
|
|
52
|
-
this.rendered = true;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
PermissionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PermissionDirective, deps: [{ token: i0.TemplateRef, optional: true }, { token: i0.ViewContainerRef }, { token: i1.PermissionService }, { token: i0.ChangeDetectorRef }, { token: QUEUE_MANAGER }], target: i0.ɵɵFactoryTarget.Directive });
|
|
56
|
-
PermissionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: PermissionDirective, selector: "[abpPermission]", inputs: { condition: ["abpPermission", "condition"], runChangeDetection: ["abpPermissionRunChangeDetection", "runChangeDetection"] }, usesOnChanges: true, ngImport: i0 });
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PermissionDirective, decorators: [{
|
|
58
|
-
type: Directive,
|
|
59
|
-
args: [{
|
|
60
|
-
selector: '[abpPermission]',
|
|
61
|
-
}]
|
|
62
|
-
}], ctorParameters: function () { return [{ type: i0.TemplateRef, decorators: [{
|
|
63
|
-
type: Optional
|
|
64
|
-
}] }, { type: i0.ViewContainerRef }, { type: i1.PermissionService }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
|
|
65
|
-
type: Inject,
|
|
66
|
-
args: [QUEUE_MANAGER]
|
|
67
|
-
}] }]; }, propDecorators: { condition: [{
|
|
68
|
-
type: Input,
|
|
69
|
-
args: ['abpPermission']
|
|
70
|
-
}], runChangeDetection: [{
|
|
71
|
-
type: Input,
|
|
72
|
-
args: ['abpPermissionRunChangeDetection']
|
|
73
|
-
}] } });
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9wZXJtaXNzaW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxNQUFNLEVBQ04sS0FBSyxFQUdMLFFBQVEsRUFDUixXQUFXLEVBQ1gsZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7OztBQU10RCxNQUFNLE9BQU8sbUJBQW1CO0lBVzlCLFlBQ3NCLFdBQTZCLEVBQ3pDLEtBQXVCLEVBQ3ZCLGlCQUFvQyxFQUNwQyxLQUF3QixFQUNGLEtBQW1CO1FBSjdCLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtRQUN6QyxVQUFLLEdBQUwsS0FBSyxDQUFrQjtRQUN2QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBQ0YsVUFBSyxHQUFMLEtBQUssQ0FBYztRQWJULHVCQUFrQixHQUFHLElBQUksQ0FBQztRQUlwRSxlQUFVLEdBQUcsSUFBSSxhQUFhLEVBQVEsQ0FBQztRQUV2QyxhQUFRLEdBQUcsS0FBSyxDQUFDO0lBUWQsQ0FBQztJQUVJLEtBQUs7UUFDWCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNqQztRQUVELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGlCQUFpQjthQUN2QyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLEVBQUUsQ0FBQzthQUN2QyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQzthQUM1QixTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDckIsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNuQixJQUFJLFNBQVM7Z0JBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDL0QsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7Z0JBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO29CQUNsQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO2lCQUN4QjtxQkFBTTtvQkFDTCxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO2lCQUM1QjthQUNGO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7YUFDM0I7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsWUFBWTtZQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDekQsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNoRyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztJQUN2QixDQUFDOztnSEFyRFUsbUJBQW1CLCtKQWdCcEIsYUFBYTtvR0FoQlosbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBSC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUI7OzBCQWFJLFFBQVE7OzBCQUlSLE1BQU07MkJBQUMsYUFBYTs0Q0FmQyxTQUFTO3NCQUFoQyxLQUFLO3VCQUFDLGVBQWU7Z0JBRW9CLGtCQUFrQjtzQkFBM0QsS0FBSzt1QkFBQyxpQ0FBaUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgRGlyZWN0aXZlLFxyXG4gIEluamVjdCxcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9wdGlvbmFsLFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdDb250YWluZXJSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlcGxheVN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgUGVybWlzc2lvblNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9wZXJtaXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBRVUVVRV9NQU5BR0VSIH0gZnJvbSAnLi4vdG9rZW5zL3F1ZXVlLnRva2VuJztcclxuaW1wb3J0IHsgUXVldWVNYW5hZ2VyIH0gZnJvbSAnLi4vdXRpbHMvcXVldWUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbYWJwUGVybWlzc2lvbl0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGVybWlzc2lvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0IHtcclxuICBASW5wdXQoJ2FicFBlcm1pc3Npb24nKSBjb25kaXRpb246IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuXHJcbiAgQElucHV0KCdhYnBQZXJtaXNzaW9uUnVuQ2hhbmdlRGV0ZWN0aW9uJykgcnVuQ2hhbmdlRGV0ZWN0aW9uID0gdHJ1ZTtcclxuXHJcbiAgc3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBjZHJTdWJqZWN0ID0gbmV3IFJlcGxheVN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgcmVuZGVyZWQgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+LFxyXG4gICAgcHJpdmF0ZSB2Y1JlZjogVmlld0NvbnRhaW5lclJlZixcclxuICAgIHByaXZhdGUgcGVybWlzc2lvblNlcnZpY2U6IFBlcm1pc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBASW5qZWN0KFFVRVVFX01BTkFHRVIpIHB1YmxpYyBxdWV1ZTogUXVldWVNYW5hZ2VyLFxyXG4gICkge31cclxuXHJcbiAgcHJpdmF0ZSBjaGVjaygpIHtcclxuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy5wZXJtaXNzaW9uU2VydmljZVxyXG4gICAgICAuZ2V0R3JhbnRlZFBvbGljeSQodGhpcy5jb25kaXRpb24gfHwgJycpXHJcbiAgICAgIC5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoaXNHcmFudGVkID0+IHtcclxuICAgICAgICB0aGlzLnZjUmVmLmNsZWFyKCk7XHJcbiAgICAgICAgaWYgKGlzR3JhbnRlZCkgdGhpcy52Y1JlZi5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZVJlZik7XHJcbiAgICAgICAgaWYgKHRoaXMucnVuQ2hhbmdlRGV0ZWN0aW9uKSB7XHJcbiAgICAgICAgICBpZiAoIXRoaXMucmVuZGVyZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5jZHJTdWJqZWN0Lm5leHQoKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKCkge1xyXG4gICAgdGhpcy5jaGVjaygpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5jZHJTdWJqZWN0LnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMucXVldWUuYWRkKCgpID0+IHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpKSk7XHJcbiAgICB0aGlzLnJlbmRlcmVkID0gdHJ1ZTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
import { 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, vcRef, replaceableComponents, subscription) {
|
|
11
|
-
this.injector = injector;
|
|
12
|
-
this.templateRef = templateRef;
|
|
13
|
-
this.vcRef = vcRef;
|
|
14
|
-
this.replaceableComponents = replaceableComponents;
|
|
15
|
-
this.subscription = subscription;
|
|
16
|
-
this.providedData = {
|
|
17
|
-
inputs: {},
|
|
18
|
-
outputs: {},
|
|
19
|
-
};
|
|
20
|
-
this.context = {};
|
|
21
|
-
this.defaultComponentSubscriptions = {};
|
|
22
|
-
this.initialized = false;
|
|
23
|
-
this.context = {
|
|
24
|
-
initTemplate: (ref) => {
|
|
25
|
-
this.resetDefaultComponent();
|
|
26
|
-
this.defaultComponentRef = ref;
|
|
27
|
-
this.setDefaultComponentInputs();
|
|
28
|
-
},
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
ngOnInit() {
|
|
32
|
-
const component$ = this.replaceableComponents
|
|
33
|
-
.get$(this.data.componentKey)
|
|
34
|
-
.pipe(filter((res = {}) => !this.initialized || !compare(res.component, this.externalComponent)));
|
|
35
|
-
this.subscription.addOne(component$, (res = {}) => {
|
|
36
|
-
this.vcRef.clear();
|
|
37
|
-
this.externalComponent = res.component;
|
|
38
|
-
if (this.defaultComponentRef) {
|
|
39
|
-
this.resetDefaultComponent();
|
|
40
|
-
}
|
|
41
|
-
if (res.component) {
|
|
42
|
-
this.setProvidedData();
|
|
43
|
-
const customInjector = Injector.create({
|
|
44
|
-
providers: [{ provide: 'REPLACEABLE_DATA', useValue: this.providedData }],
|
|
45
|
-
parent: this.injector,
|
|
46
|
-
});
|
|
47
|
-
const ref = this.vcRef.createComponent(res.component, {
|
|
48
|
-
index: 0,
|
|
49
|
-
injector: customInjector,
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
this.vcRef.createEmbeddedView(this.templateRef, this.context);
|
|
54
|
-
}
|
|
55
|
-
this.initialized = true;
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
ngOnChanges(changes) {
|
|
59
|
-
if (changes?.data?.currentValue?.inputs && this.defaultComponentRef) {
|
|
60
|
-
this.setDefaultComponentInputs();
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
setDefaultComponentInputs() {
|
|
64
|
-
if (!this.defaultComponentRef || (!this.data.inputs && !this.data.outputs))
|
|
65
|
-
return;
|
|
66
|
-
if (this.data.inputs) {
|
|
67
|
-
for (const key in this.data.inputs) {
|
|
68
|
-
if (Object.prototype.hasOwnProperty.call(this.data.inputs, key)) {
|
|
69
|
-
if (!compare(this.defaultComponentRef[key], this.data.inputs[key].value)) {
|
|
70
|
-
this.defaultComponentRef[key] = this.data.inputs[key].value;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
if (this.data.outputs) {
|
|
76
|
-
for (const key in this.data.outputs) {
|
|
77
|
-
if (Object.prototype.hasOwnProperty.call(this.data.outputs, key)) {
|
|
78
|
-
if (!this.defaultComponentSubscriptions[key]) {
|
|
79
|
-
this.defaultComponentSubscriptions[key] = this.defaultComponentRef[key].subscribe((value) => {
|
|
80
|
-
this.data.outputs?.[key](value);
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
setProvidedData() {
|
|
88
|
-
this.providedData = { outputs: {}, ...this.data, inputs: {} };
|
|
89
|
-
if (!this.data.inputs)
|
|
90
|
-
return;
|
|
91
|
-
Object.defineProperties(this.providedData.inputs, {
|
|
92
|
-
...Object.keys(this.data.inputs).reduce((acc, key) => ({
|
|
93
|
-
...acc,
|
|
94
|
-
[key]: {
|
|
95
|
-
enumerable: true,
|
|
96
|
-
configurable: true,
|
|
97
|
-
get: () => this.data.inputs?.[key]?.value,
|
|
98
|
-
...(this.data.inputs?.[key]?.twoWay && {
|
|
99
|
-
set: (newValue) => {
|
|
100
|
-
if (this.data.inputs?.[key]) {
|
|
101
|
-
this.data.inputs[key].value = newValue;
|
|
102
|
-
}
|
|
103
|
-
if (this.data.outputs?.[`${key}Change`]) {
|
|
104
|
-
this.data.outputs[`${key}Change`](newValue);
|
|
105
|
-
}
|
|
106
|
-
},
|
|
107
|
-
}),
|
|
108
|
-
},
|
|
109
|
-
}), {}),
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
resetDefaultComponent() {
|
|
113
|
-
Object.keys(this.defaultComponentSubscriptions).forEach(key => {
|
|
114
|
-
this.defaultComponentSubscriptions[key].unsubscribe();
|
|
115
|
-
});
|
|
116
|
-
this.defaultComponentSubscriptions = {};
|
|
117
|
-
this.defaultComponentRef = null;
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
ReplaceableTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ReplaceableTemplateDirective, deps: [{ token: i0.Injector }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: i1.ReplaceableComponentsService }, { token: i2.SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
121
|
-
ReplaceableTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: { data: ["abpReplaceableTemplate", "data"] }, providers: [SubscriptionService], usesOnChanges: true, ngImport: i0 });
|
|
122
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ReplaceableTemplateDirective, decorators: [{
|
|
123
|
-
type: Directive,
|
|
124
|
-
args: [{
|
|
125
|
-
selector: '[abpReplaceableTemplate]',
|
|
126
|
-
providers: [SubscriptionService],
|
|
127
|
-
}]
|
|
128
|
-
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.TemplateRef }, { type: i0.ViewContainerRef }, { type: i1.ReplaceableComponentsService }, { type: i2.SubscriptionService }]; }, propDecorators: { data: [{
|
|
129
|
-
type: Input,
|
|
130
|
-
args: ['abpReplaceableTemplate']
|
|
131
|
-
}] } });
|
|
132
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwbGFjZWFibGUtdGVtcGxhdGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvcmVwbGFjZWFibGUtdGVtcGxhdGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsUUFBUSxFQUNSLEtBQUssRUFJTCxXQUFXLEVBRVgsZ0JBQWdCLEdBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sT0FBTyxNQUFNLGNBQWMsQ0FBQztBQUVuQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHeEMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDMUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7QUFNdkUsTUFBTSxPQUFPLDRCQUE0QjtJQW1CdkMsWUFDVSxRQUFrQixFQUNsQixXQUE2QixFQUM3QixLQUF1QixFQUN2QixxQkFBbUQsRUFDbkQsWUFBaUM7UUFKakMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7UUFDN0IsVUFBSyxHQUFMLEtBQUssQ0FBa0I7UUFDdkIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUE4QjtRQUNuRCxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFwQjNDLGlCQUFZLEdBQUc7WUFDYixNQUFNLEVBQUUsRUFBRTtZQUNWLE9BQU8sRUFBRSxFQUFFO1NBQytDLENBQUM7UUFFN0QsWUFBTyxHQUFHLEVBQVMsQ0FBQztRQU1wQixrQ0FBNkIsR0FBRyxFQUFrQyxDQUFDO1FBRW5FLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBU2xCLElBQUksQ0FBQyxPQUFPLEdBQUc7WUFDYixZQUFZLEVBQUUsQ0FBQyxHQUFRLEVBQUUsRUFBRTtnQkFDekIsSUFBSSxD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OUlVLDRCQUE0Qjs2R0FBNUIsNEJBQTRCLHlHQUY1QixDQUFDLG1CQUFtQixDQUFDOzJGQUVyQiw0QkFBNEI7a0JBSnhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsU0FBUyxFQUFFLENBQUMsbUJBQW1CLENBQUM7aUJBQ2pDO3FPQUdDLElBQUk7c0JBREgsS0FBSzt1QkFBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIERpcmVjdGl2ZSxcclxuICBJbmplY3RvcixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25Jbml0LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbiAgVHlwZSxcclxuICBWaWV3Q29udGFpbmVyUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgY29tcGFyZSBmcm9tICdqdXN0LWNvbXBhcmUnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBQlAgfSBmcm9tICcuLi9tb2RlbHMvY29tbW9uJztcclxuaW1wb3J0IHsgUmVwbGFjZWFibGVDb21wb25lbnRzIH0gZnJvbSAnLi4vbW9kZWxzL3JlcGxhY2VhYmxlLWNvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBSZXBsYWNlYWJsZUNvbXBvbmVudHNTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvcmVwbGFjZWFibGUtY29tcG9uZW50cy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3N1YnNjcmlwdGlvbi5zZXJ2aWNlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2FicFJlcGxhY2VhYmxlVGVtcGxhdGVdJyxcclxuICBwcm92aWRlcnM6IFtTdWJzY3JpcHRpb25TZXJ2aWNlXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJlcGxhY2VhYmxlVGVtcGxhdGVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XHJcbiAgQElucHV0KCdhYnBSZXBsYWNlYWJsZVRlbXBsYXRlJylcclxuICBkYXRhITogUmVwbGFjZWFibGVDb21wb25lbnRzLlJlcGxhY2VhYmxlVGVtcGxhdGVEaXJlY3RpdmVJbnB1dDxhbnksIGFueT47XHJcblxyXG4gIHByb3ZpZGVkRGF0YSA9IHtcclxuICAgIGlucHV0czoge30sXHJcbiAgICBvdXRwdXRzOiB7fSxcclxuICB9IGFzIFJlcGxhY2VhYmxlQ29tcG9uZW50cy5SZXBsYWNlYWJsZVRlbXBsYXRlRGF0YTxhbnksIGFueT47XHJcblxyXG4gIGNvbnRleHQgPSB7fSBhcyBhbnk7XHJcblxyXG4gIGV4dGVybmFsQ29tcG9uZW50ITogVHlwZTxhbnk+O1xyXG5cclxuICBkZWZhdWx0Q29tcG9uZW50UmVmOiBhbnk7XHJcblxyXG4gIGRlZmF1bHRDb21wb25lbnRTdWJzY3JpcHRpb25zID0ge30gYXMgQUJQLkRpY3Rpb25hcnk8U3Vic2NyaXB0aW9uPjtcclxuXHJcbiAgaW5pdGlhbGl6ZWQgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByaXZhdGUgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4sXHJcbiAgICBwcml2YXRlIHZjUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgcHJpdmF0ZSByZXBsYWNlYWJsZUNvbXBvbmVudHM6IFJlcGxhY2VhYmxlQ29tcG9uZW50c1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uU2VydmljZSxcclxuICApIHtcclxuICAgIHRoaXMuY29udGV4dCA9IHtcclxuICAgICAgaW5pdFRlbXBsYXRlOiAocmVmOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLnJlc2V0RGVmYXVsdENvbXBvbmVudCgpO1xyXG4gICAgICAgIHRoaXMuZGVmYXVsdENvbXBvbmVudFJlZiA9IHJlZjtcclxuICAgICAgICB0aGlzLnNldERlZmF1bHRDb21wb25lbnRJbnB1dHMoKTtcclxuICAgICAgfSxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIGNvbnN0IGNvbXBvbmVudCQgPSB0aGlzLnJlcGxhY2VhYmxlQ29tcG9uZW50c1xyXG4gICAgICAuZ2V0JCh0aGlzLmRhdGEuY29tcG9uZW50S2V5KVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBmaWx0ZXIoXHJcbiAgICAgICAgICAocmVzID0ge30gYXMgUmVwbGFjZWFibGVDb21wb25lbnRzLlJlcGxhY2VhYmxlQ29tcG9uZW50KSA9PlxyXG4gICAgICAgICAgICAhdGhpcy5pbml0aWFsaXplZCB8fCAhY29tcGFyZShyZXMuY29tcG9uZW50LCB0aGlzLmV4dGVybmFsQ29tcG9uZW50KSxcclxuICAgICAgICApLFxyXG4gICAgICApO1xyXG5cclxuICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZE9uZShcclxuICAgICAgY29tcG9uZW50JCxcclxuICAgICAgKHJlcyA9IHt9IGFzIFJlcGxhY2VhYmxlQ29tcG9uZW50cy5SZXBsYWNlYWJsZUNvbXBvbmVudCkgPT4ge1xyXG4gICAgICAgIHRoaXMudmNSZWYuY2xlYXIoKTtcclxuICAgICAgICB0aGlzLmV4dGVybmFsQ29tcG9uZW50ID0gcmVzLmNvbXBvbmVudDtcclxuICAgICAgICBpZiAodGhpcy5kZWZhdWx0Q29tcG9uZW50UmVmKSB7XHJcbiAgICAgICAgICB0aGlzLnJlc2V0RGVmYXVsdENvbXBvbmVudCgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHJlcy5jb21wb25lbnQpIHtcclxuICAgICAgICAgIHRoaXMuc2V0UHJvdmlkZWREYXRhKCk7XHJcbiAgICAgICAgICBjb25zdCBjdXN0b21JbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XHJcbiAgICAgICAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogJ1JFUExBQ0VBQkxFX0RBVEEnLCB1c2VWYWx1ZTogdGhpcy5wcm92aWRlZERhdGEgfV0sXHJcbiAgICAgICAgICAgIHBhcmVudDogdGhpcy5pbmplY3RvcixcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgY29uc3QgcmVmID0gdGhpcy52Y1JlZi5jcmVhdGVDb21wb25lbnQocmVzLmNvbXBvbmVudCwge1xyXG4gICAgICAgICAgICBpbmRleDogMCxcclxuICAgICAgICAgICAgaW5qZWN0b3I6IGN1c3RvbUluamVjdG9yLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMudmNSZWYuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMudGVtcGxhdGVSZWYsIHRoaXMuY29udGV4dCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcclxuICAgICAgfSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBpZiAoY2hhbmdlcz8uZGF0YT8uY3VycmVudFZhbHVlPy5pbnB1dHMgJiYgdGhpcy5kZWZhdWx0Q29tcG9uZW50UmVmKSB7XHJcbiAgICAgIHRoaXMuc2V0RGVmYXVsdENvbXBvbmVudElucHV0cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0RGVmYXVsdENvbXBvbmVudElucHV0cygpIHtcclxuICAgIGlmICghdGhpcy5kZWZhdWx0Q29tcG9uZW50UmVmIHx8ICghdGhpcy5kYXRhLmlucHV0cyAmJiAhdGhpcy5kYXRhLm91dHB1dHMpKSByZXR1cm47XHJcblxyXG4gICAgaWYgKHRoaXMuZGF0YS5pbnB1dHMpIHtcclxuICAgICAgZm9yIChjb25zdCBrZXkgaW4gdGhpcy5kYXRhLmlucHV0cykge1xyXG4gICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcy5kYXRhLmlucHV0cywga2V5KSkge1xyXG4gICAgICAgICAgaWYgKCFjb21wYXJlKHRoaXMuZGVmYXVsdENvbXBvbmVudFJlZltrZXldLCB0aGlzLmRhdGEuaW5wdXRzW2tleV0udmFsdWUpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGVmYXVsdENvbXBvbmVudFJlZltrZXldID0gdGhpcy5kYXRhLmlucHV0c1trZXldLnZhbHVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmRhdGEub3V0cHV0cykge1xyXG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiB0aGlzLmRhdGEub3V0cHV0cykge1xyXG4gICAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodGhpcy5kYXRhLm91dHB1dHMsIGtleSkpIHtcclxuICAgICAgICAgIGlmICghdGhpcy5kZWZhdWx0Q29tcG9uZW50U3Vic2NyaXB0aW9uc1trZXldKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGVmYXVsdENvbXBvbmVudFN1YnNjcmlwdGlvbnNba2V5XSA9IHRoaXMuZGVmYXVsdENvbXBvbmVudFJlZltrZXldLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAodmFsdWU6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kYXRhLm91dHB1dHM/LltrZXldKHZhbHVlKTtcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0UHJvdmlkZWREYXRhKCkge1xyXG4gICAgdGhpcy5wcm92aWRlZERhdGEgPSB7IG91dHB1dHM6IHt9LCAuLi50aGlzLmRhdGEsIGlucHV0czoge30gfTtcclxuXHJcbiAgICBpZiAoIXRoaXMuZGF0YS5pbnB1dHMpIHJldHVybjtcclxuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHRoaXMucHJvdmlkZWREYXRhLmlucHV0cywge1xyXG4gICAgICAuLi5PYmplY3Qua2V5cyh0aGlzLmRhdGEuaW5wdXRzKS5yZWR1Y2UoXHJcbiAgICAgICAgKGFjYywga2V5KSA9PiAoe1xyXG4gICAgICAgICAgLi4uYWNjLFxyXG4gICAgICAgICAgW2tleV06IHtcclxuICAgICAgICAgICAgZW51bWVyYWJsZTogdHJ1ZSxcclxuICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxyXG4gICAgICAgICAgICBnZXQ6ICgpID0+IHRoaXMuZGF0YS5pbnB1dHM/LltrZXldPy52YWx1ZSxcclxuICAgICAgICAgICAgLi4uKHRoaXMuZGF0YS5pbnB1dHM/LltrZXldPy50d29XYXkgJiYge1xyXG4gICAgICAgICAgICAgIHNldDogKG5ld1ZhbHVlOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRhdGEuaW5wdXRzPy5ba2V5XSkge1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmRhdGEuaW5wdXRzW2tleV0udmFsdWUgPSBuZXdWYWx1ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRhdGEub3V0cHV0cz8uW2Ake2tleX1DaGFuZ2VgXSkge1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmRhdGEub3V0cHV0c1tgJHtrZXl9Q2hhbmdlYF0obmV3VmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9KSxcclxuICAgICAgICB7fSxcclxuICAgICAgKSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmVzZXREZWZhdWx0Q29tcG9uZW50KCkge1xyXG4gICAgT2JqZWN0LmtleXModGhpcy5kZWZhdWx0Q29tcG9uZW50U3Vic2NyaXB0aW9ucykuZm9yRWFjaChrZXkgPT4ge1xyXG4gICAgICB0aGlzLmRlZmF1bHRDb21wb25lbnRTdWJzY3JpcHRpb25zW2tleV0udW5zdWJzY3JpYmUoKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5kZWZhdWx0Q29tcG9uZW50U3Vic2NyaXB0aW9ucyA9IHt9IGFzIEFCUC5EaWN0aW9uYXJ5PFN1YnNjcmlwdGlvbj47XHJcbiAgICB0aGlzLmRlZmF1bHRDb21wb25lbnRSZWYgPSBudWxsO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,32 +0,0 @@
|
|
|
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: "15.0.4", ngImport: i0, type: StopPropagationDirective, deps: [{ token: i0.ElementRef }, { token: i1.SubscriptionService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
20
|
-
StopPropagationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: StopPropagationDirective, selector: "[click.stop]", outputs: { stopPropEvent: "click.stop" }, providers: [SubscriptionService], ngImport: i0 });
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", 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
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcC1wcm9wYWdhdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9zdG9wLXByb3BhZ2F0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7OztBQU92RSxNQUFNLE9BQU8sd0JBQXdCO0lBR25DLFlBQW9CLEVBQWMsRUFBVSxZQUFpQztRQUF6RCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBRjlDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztJQUVFLENBQUM7SUFFakYsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBYSxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRTtZQUN0RixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztxSEFWVSx3QkFBd0I7eUdBQXhCLHdCQUF3QixpRkFGeEIsQ0FBQyxtQkFBbUIsQ0FBQzsyRkFFckIsd0JBQXdCO2tCQUxwQyxTQUFTO21CQUFDO29CQUNULDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFNBQVMsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2lCQUNqQzttSUFFZ0MsYUFBYTtzQkFBM0MsTUFBTTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvc3Vic2NyaXB0aW9uLnNlcnZpY2UnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcclxuICBzZWxlY3RvcjogJ1tjbGljay5zdG9wXScsXHJcbiAgcHJvdmlkZXJzOiBbU3Vic2NyaXB0aW9uU2VydmljZV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdG9wUHJvcGFnYXRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBPdXRwdXQoJ2NsaWNrLnN0b3AnKSByZWFkb25seSBzdG9wUHJvcEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmLCBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uU2VydmljZSkge31cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGRPbmUoZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2NsaWNrJyksIGV2ZW50ID0+IHtcclxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgIHRoaXMuc3RvcFByb3BFdmVudC5lbWl0KGV2ZW50KTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { Router } from '@angular/router';
|
|
3
|
-
import { of } from 'rxjs';
|
|
4
|
-
import { tap } from 'rxjs/operators';
|
|
5
|
-
import { HttpErrorReporterService } from '../services/http-error-reporter.service';
|
|
6
|
-
import { PermissionService } from '../services/permission.service';
|
|
7
|
-
import { RoutesService } from '../services/routes.service';
|
|
8
|
-
import { findRoute, getRoutePath } from '../utils/route-utils';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@angular/router";
|
|
11
|
-
import * as i2 from "../services/routes.service";
|
|
12
|
-
import * as i3 from "../services/permission.service";
|
|
13
|
-
import * as i4 from "../services/http-error-reporter.service";
|
|
14
|
-
export class PermissionGuard {
|
|
15
|
-
constructor(router, routesService, permissionService, httpErrorReporter) {
|
|
16
|
-
this.router = router;
|
|
17
|
-
this.routesService = routesService;
|
|
18
|
-
this.permissionService = permissionService;
|
|
19
|
-
this.httpErrorReporter = httpErrorReporter;
|
|
20
|
-
}
|
|
21
|
-
canActivate(route, state) {
|
|
22
|
-
let { requiredPolicy } = route.data || {};
|
|
23
|
-
if (!requiredPolicy) {
|
|
24
|
-
const routeFound = findRoute(this.routesService, getRoutePath(this.router, state.url));
|
|
25
|
-
requiredPolicy = routeFound?.requiredPolicy;
|
|
26
|
-
}
|
|
27
|
-
if (!requiredPolicy)
|
|
28
|
-
return of(true);
|
|
29
|
-
return this.permissionService.getGrantedPolicy$(requiredPolicy).pipe(tap(access => {
|
|
30
|
-
if (!access) {
|
|
31
|
-
this.httpErrorReporter.reportError({ status: 403 });
|
|
32
|
-
}
|
|
33
|
-
}));
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
PermissionGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PermissionGuard, deps: [{ token: i1.Router }, { token: i2.RoutesService }, { token: i3.PermissionService }, { token: i4.HttpErrorReporterService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
37
|
-
PermissionGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PermissionGuard, providedIn: 'root' });
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PermissionGuard, decorators: [{
|
|
39
|
-
type: Injectable,
|
|
40
|
-
args: [{
|
|
41
|
-
providedIn: 'root',
|
|
42
|
-
}]
|
|
43
|
-
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.RoutesService }, { type: i3.PermissionService }, { type: i4.HttpErrorReporterService }]; } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9ndWFyZHMvcGVybWlzc2lvbi5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBdUMsTUFBTSxFQUF1QixNQUFNLGlCQUFpQixDQUFDO0FBQ25HLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7QUFLL0QsTUFBTSxPQUFPLGVBQWU7SUFDMUIsWUFDVSxNQUFjLEVBQ2QsYUFBNEIsRUFDNUIsaUJBQW9DLEVBQ3BDLGlCQUEyQztRQUgzQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2Qsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQTBCO0lBQ2xELENBQUM7SUFFSixXQUFXLENBQUMsS0FBNkIsRUFBRSxLQUEwQjtRQUNuRSxJQUFJLEVBQUUsY0FBYyxFQUFFLEdBQUcsS0FBSyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7UUFFMUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUNuQixNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN2RixjQUFjLEdBQUcsVUFBVSxFQUFFLGNBQWMsQ0FBQztTQUM3QztRQUVELElBQUksQ0FBQyxjQUFjO1lBQUUsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFckMsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLENBQUMsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUNsRSxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDWCxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNYLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUF1QixDQUFDLENBQUM7YUFDMUU7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs7NEdBekJVLGVBQWU7Z0hBQWYsZUFBZSxjQUZkLE1BQU07MkZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBDYW5BY3RpdmF0ZSwgUm91dGVyLCBSb3V0ZXJTdGF0ZVNuYXBzaG90IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBIdHRwRXJyb3JSZXBvcnRlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9odHRwLWVycm9yLXJlcG9ydGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQZXJtaXNzaW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3Blcm1pc3Npb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFJvdXRlc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9yb3V0ZXMuc2VydmljZSc7XHJcbmltcG9ydCB7IGZpbmRSb3V0ZSwgZ2V0Um91dGVQYXRoIH0gZnJvbSAnLi4vdXRpbHMvcm91dGUtdXRpbHMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBlcm1pc3Npb25HdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlIHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIHJvdXRlc1NlcnZpY2U6IFJvdXRlc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHBlcm1pc3Npb25TZXJ2aWNlOiBQZXJtaXNzaW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgaHR0cEVycm9yUmVwb3J0ZXI6IEh0dHBFcnJvclJlcG9ydGVyU2VydmljZSxcclxuICApIHt9XHJcblxyXG4gIGNhbkFjdGl2YXRlKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgbGV0IHsgcmVxdWlyZWRQb2xpY3kgfSA9IHJvdXRlLmRhdGEgfHwge307XHJcblxyXG4gICAgaWYgKCFyZXF1aXJlZFBvbGljeSkge1xyXG4gICAgICBjb25zdCByb3V0ZUZvdW5kID0gZmluZFJvdXRlKHRoaXMucm91dGVzU2VydmljZSwgZ2V0Um91dGVQYXRoKHRoaXMucm91dGVyLCBzdGF0ZS51cmwpKTtcclxuICAgICAgcmVxdWlyZWRQb2xpY3kgPSByb3V0ZUZvdW5kPy5yZXF1aXJlZFBvbGljeTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIXJlcXVpcmVkUG9saWN5KSByZXR1cm4gb2YodHJ1ZSk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMucGVybWlzc2lvblNlcnZpY2UuZ2V0R3JhbnRlZFBvbGljeSQocmVxdWlyZWRQb2xpY3kpLnBpcGUoXHJcbiAgICAgIHRhcChhY2Nlc3MgPT4ge1xyXG4gICAgICAgIGlmICghYWNjZXNzKSB7XHJcbiAgICAgICAgICB0aGlzLmh0dHBFcnJvclJlcG9ydGVyLnJlcG9ydEVycm9yKHsgc3RhdHVzOiA0MDMgfSBhcyBIdHRwRXJyb3JSZXNwb25zZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KSxcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { Injectable, Optional } from '@angular/core';
|
|
2
|
-
import { Router } from '@angular/router';
|
|
3
|
-
import { RoutesService } from '../services/routes.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "../services/routes.service";
|
|
6
|
-
import * as i2 from "@angular/router";
|
|
7
|
-
export class RoutesHandler {
|
|
8
|
-
constructor(routes, router) {
|
|
9
|
-
this.routes = routes;
|
|
10
|
-
this.router = router;
|
|
11
|
-
this.addRoutes();
|
|
12
|
-
}
|
|
13
|
-
addRoutes() {
|
|
14
|
-
this.router?.config?.forEach(({ path = '', data }) => {
|
|
15
|
-
const routes = data?.routes;
|
|
16
|
-
if (!routes)
|
|
17
|
-
return;
|
|
18
|
-
if (Array.isArray(routes)) {
|
|
19
|
-
this.routes.add(routes);
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
const routesFlatten = flatRoutes([{ path, ...routes }], { path: '' });
|
|
23
|
-
this.routes.add(routesFlatten);
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
RoutesHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: RoutesHandler, deps: [{ token: i1.RoutesService }, { token: i2.Router, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
29
|
-
RoutesHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: RoutesHandler, providedIn: 'root' });
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: RoutesHandler, decorators: [{
|
|
31
|
-
type: Injectable,
|
|
32
|
-
args: [{
|
|
33
|
-
providedIn: 'root',
|
|
34
|
-
}]
|
|
35
|
-
}], ctorParameters: function () { return [{ type: i1.RoutesService }, { type: i2.Router, decorators: [{
|
|
36
|
-
type: Optional
|
|
37
|
-
}] }]; } });
|
|
38
|
-
function flatRoutes(routes, parent) {
|
|
39
|
-
if (!routes)
|
|
40
|
-
return [];
|
|
41
|
-
return routes.reduce((acc, route) => {
|
|
42
|
-
const { children, ...current } = {
|
|
43
|
-
...route,
|
|
44
|
-
parentName: parent.name,
|
|
45
|
-
path: (parent.path + '/' + route.path).replace(/\/\//g, '/'),
|
|
46
|
-
};
|
|
47
|
-
acc.push(current, ...flatRoutes(children, current));
|
|
48
|
-
return acc;
|
|
49
|
-
}, []);
|
|
50
|
-
}
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVzLmhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvaGFuZGxlcnMvcm91dGVzLmhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFTLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQUszRCxNQUFNLE9BQU8sYUFBYTtJQUN4QixZQUFvQixNQUFxQixFQUFzQixNQUFjO1FBQXpELFdBQU0sR0FBTixNQUFNLENBQWU7UUFBc0IsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUMzRSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELFNBQVM7UUFDTixJQUFJLENBQUMsTUFBTSxFQUFFLE1BQXNCLEVBQUUsT0FBTyxDQUFDLENBQUMsRUFBRSxJQUFJLEdBQUcsRUFBRSxFQUFFLElBQUksRUFBYSxFQUFFLEVBQUU7WUFDL0UsTUFBTSxNQUFNLEdBQUcsSUFBSSxFQUFFLE1BQU0sQ0FBQztZQUM1QixJQUFJLENBQUMsTUFBTTtnQkFBRSxPQUFPO1lBRXBCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDekI7aUJBQU07Z0JBQ0wsTUFBTSxhQUFhLEdBQUcsVUFBVSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ3RFLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ2hDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzswR0FqQlUsYUFBYTs4R0FBYixhQUFhLGNBRlosTUFBTTsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBRTZDLFFBQVE7O0FBbUJ0RCxTQUFTLFVBQVUsQ0FBQyxNQUFrQixFQUFFLE1BQVc7SUFDakQsSUFBSSxDQUFDLE1BQU07UUFBRSxPQUFPLEVBQUUsQ0FBQztJQUV2QixPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUU7UUFDbEMsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLE9BQU8sRUFBRSxHQUFHO1lBQy9CLEdBQUcsS0FBSztZQUNSLFVBQVUsRUFBRSxNQUFNLENBQUMsSUFBSTtZQUN2QixJQUFJLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxHQUFHLEdBQUcsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUM7U0FDN0QsQ0FBQztRQUVGLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBRXBELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQyxFQUFFLEVBQWlCLENBQUMsQ0FBQztBQUN4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEFCUCB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7IFJvdXRlc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9yb3V0ZXMuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUm91dGVzSGFuZGxlciB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXM6IFJvdXRlc1NlcnZpY2UsIEBPcHRpb25hbCgpIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHtcclxuICAgIHRoaXMuYWRkUm91dGVzKCk7XHJcbiAgfVxyXG5cclxuICBhZGRSb3V0ZXMoKSB7XHJcbiAgICAodGhpcy5yb3V0ZXI/LmNvbmZpZyBhcyBSb3V0ZURhdGFbXSk/LmZvckVhY2goKHsgcGF0aCA9ICcnLCBkYXRhIH06IFJvdXRlRGF0YSkgPT4ge1xyXG4gICAgICBjb25zdCByb3V0ZXMgPSBkYXRhPy5yb3V0ZXM7XHJcbiAgICAgIGlmICghcm91dGVzKSByZXR1cm47XHJcblxyXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShyb3V0ZXMpKSB7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXMuYWRkKHJvdXRlcyk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc3Qgcm91dGVzRmxhdHRlbiA9IGZsYXRSb3V0ZXMoW3sgcGF0aCwgLi4ucm91dGVzIH1dLCB7IHBhdGg6ICcnIH0pO1xyXG4gICAgICAgIHRoaXMucm91dGVzLmFkZChyb3V0ZXNGbGF0dGVuKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiBmbGF0Um91dGVzKHJvdXRlczogUm91dGVEZWZbXSwgcGFyZW50OiBhbnkpIHtcclxuICBpZiAoIXJvdXRlcykgcmV0dXJuIFtdO1xyXG5cclxuICByZXR1cm4gcm91dGVzLnJlZHVjZSgoYWNjLCByb3V0ZSkgPT4ge1xyXG4gICAgY29uc3QgeyBjaGlsZHJlbiwgLi4uY3VycmVudCB9ID0ge1xyXG4gICAgICAuLi5yb3V0ZSxcclxuICAgICAgcGFyZW50TmFtZTogcGFyZW50Lm5hbWUsXHJcbiAgICAgIHBhdGg6IChwYXJlbnQucGF0aCArICcvJyArIHJvdXRlLnBhdGgpLnJlcGxhY2UoL1xcL1xcLy9nLCAnLycpLFxyXG4gICAgfTtcclxuXHJcbiAgICBhY2MucHVzaChjdXJyZW50LCAuLi5mbGF0Um91dGVzKGNoaWxkcmVuLCBjdXJyZW50KSk7XHJcblxyXG4gICAgcmV0dXJuIGFjYztcclxuICB9LCBbXSBhcyBBQlAuUm91dGVbXSk7XHJcbn1cclxuXHJcbnR5cGUgUm91dGVEZWYgPSBBQlAuUm91dGUgJiB7IGNoaWxkcmVuOiBSb3V0ZURlZltdIH07XHJcbnR5cGUgUm91dGVEYXRhID0gUm91dGUgJiB7IGRhdGE6IHsgcm91dGVzOiBSb3V0ZURlZiB8IEFycmF5PFJvdXRlRGVmPiB9IH07XHJcbiJdfQ==
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { HttpHeaders } from '@angular/common/http';
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import { finalize } from 'rxjs/operators';
|
|
4
|
-
import { HttpWaitService } from '../services';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../services";
|
|
7
|
-
export class ApiInterceptor {
|
|
8
|
-
constructor(httpWaitService) {
|
|
9
|
-
this.httpWaitService = httpWaitService;
|
|
10
|
-
}
|
|
11
|
-
getAdditionalHeaders(existingHeaders) {
|
|
12
|
-
return existingHeaders || new HttpHeaders();
|
|
13
|
-
}
|
|
14
|
-
intercept(request, next) {
|
|
15
|
-
this.httpWaitService.addRequest(request);
|
|
16
|
-
return next.handle(request).pipe(finalize(() => this.httpWaitService.deleteRequest(request)));
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
ApiInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ApiInterceptor, deps: [{ token: i1.HttpWaitService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
20
|
-
ApiInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ApiInterceptor, providedIn: 'root' });
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ApiInterceptor, decorators: [{
|
|
22
|
-
type: Injectable,
|
|
23
|
-
args: [{
|
|
24
|
-
providedIn: 'root',
|
|
25
|
-
}]
|
|
26
|
-
}], ctorParameters: function () { return [{ type: i1.HttpWaitService }]; } });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvbGliL2ludGVyY2VwdG9ycy9hcGkuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFlLFdBQVcsRUFBZ0MsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sYUFBYSxDQUFDOzs7QUFLOUMsTUFBTSxPQUFPLGNBQWM7SUFDekIsWUFBb0IsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO0lBQUcsQ0FBQztJQUV4RCxvQkFBb0IsQ0FBQyxlQUE2QjtRQUNoRCxPQUFPLGVBQWUsSUFBSSxJQUFJLFdBQVcsRUFBRSxDQUFDO0lBQzlDLENBQUM7SUFFRCxTQUFTLENBQUMsT0FBeUIsRUFBRSxJQUFpQjtRQUNwRCxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEcsQ0FBQzs7MkdBVlUsY0FBYzsrR0FBZCxjQUFjLGNBRmIsTUFBTTsyRkFFUCxjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBIYW5kbGVyLCBIdHRwSGVhZGVycywgSHR0cEludGVyY2VwdG9yLCBIdHRwUmVxdWVzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgSHR0cFdhaXRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwaUludGVyY2VwdG9yIGltcGxlbWVudHMgSUFwaUludGVyY2VwdG9yIHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHBXYWl0U2VydmljZTogSHR0cFdhaXRTZXJ2aWNlKSB7fVxyXG5cclxuICBnZXRBZGRpdGlvbmFsSGVhZGVycyhleGlzdGluZ0hlYWRlcnM/OiBIdHRwSGVhZGVycykge1xyXG4gICAgcmV0dXJuIGV4aXN0aW5nSGVhZGVycyB8fCBuZXcgSHR0cEhlYWRlcnMoKTtcclxuICB9XHJcblxyXG4gIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcikge1xyXG4gICAgdGhpcy5odHRwV2FpdFNlcnZpY2UuYWRkUmVxdWVzdChyZXF1ZXN0KTtcclxuICAgIHJldHVybiBuZXh0LmhhbmRsZShyZXF1ZXN0KS5waXBlKGZpbmFsaXplKCgpID0+IHRoaXMuaHR0cFdhaXRTZXJ2aWNlLmRlbGV0ZVJlcXVlc3QocmVxdWVzdCkpKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUFwaUludGVyY2VwdG9yIGV4dGVuZHMgSHR0cEludGVyY2VwdG9yIHtcclxuICBnZXRBZGRpdGlvbmFsSGVhZGVycyhleGlzdGluZ0hlYWRlcnM/OiBIdHRwSGVhZGVycyk6IEh0dHBIZWFkZXJzO1xyXG59XHJcbiJdfQ==
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { LocalizationPipe } from './pipes/localization.pipe';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class LocalizationModule {
|
|
5
|
-
}
|
|
6
|
-
LocalizationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalizationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
7
|
-
LocalizationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: LocalizationModule, declarations: [LocalizationPipe], exports: [LocalizationPipe] });
|
|
8
|
-
LocalizationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalizationModule });
|
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalizationModule, decorators: [{
|
|
10
|
-
type: NgModule,
|
|
11
|
-
args: [{
|
|
12
|
-
exports: [LocalizationPipe],
|
|
13
|
-
declarations: [LocalizationPipe],
|
|
14
|
-
}]
|
|
15
|
-
}] });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL2xpYi9sb2NhbGl6YXRpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBTTdELE1BQU0sT0FBTyxrQkFBa0I7OytHQUFsQixrQkFBa0I7Z0hBQWxCLGtCQUFrQixpQkFGZCxnQkFBZ0IsYUFEckIsZ0JBQWdCO2dIQUdmLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQUo5QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUMzQixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztpQkFDakMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25QaXBlIH0gZnJvbSAnLi9waXBlcy9sb2NhbGl6YXRpb24ucGlwZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGV4cG9ydHM6IFtMb2NhbGl6YXRpb25QaXBlXSxcclxuICBkZWNsYXJhdGlvbnM6IFtMb2NhbGl6YXRpb25QaXBlXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIExvY2FsaXphdGlvbk1vZHVsZSB7fVxyXG4iXX0=
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { Injectable, Pipe } from '@angular/core';
|
|
2
|
-
import { LocalizationService } from '../services/localization.service';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../services/localization.service";
|
|
5
|
-
export class LocalizationPipe {
|
|
6
|
-
constructor(localization) {
|
|
7
|
-
this.localization = localization;
|
|
8
|
-
}
|
|
9
|
-
transform(value = '', ...interpolateParams) {
|
|
10
|
-
const params = interpolateParams.reduce((acc, val) => {
|
|
11
|
-
if (!acc) {
|
|
12
|
-
return val;
|
|
13
|
-
}
|
|
14
|
-
if (!val) {
|
|
15
|
-
return acc;
|
|
16
|
-
}
|
|
17
|
-
return Array.isArray(val) ? [...acc, ...val] : [...acc, val];
|
|
18
|
-
}, []) || [];
|
|
19
|
-
return this.localization.instant(value, ...params);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
LocalizationPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalizationPipe, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
23
|
-
LocalizationPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: LocalizationPipe, name: "abpLocalization" });
|
|
24
|
-
LocalizationPipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalizationPipe });
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LocalizationPipe, decorators: [{
|
|
26
|
-
type: Injectable
|
|
27
|
-
}, {
|
|
28
|
-
type: Pipe,
|
|
29
|
-
args: [{
|
|
30
|
-
name: 'abpLocalization',
|
|
31
|
-
}]
|
|
32
|
-
}], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemF0aW9uLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvcGlwZXMvbG9jYWxpemF0aW9uLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRWhFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFNdkUsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixZQUFvQixZQUFpQztRQUFqQyxpQkFBWSxHQUFaLFlBQVksQ0FBcUI7SUFBRyxDQUFDO0lBRXpELFNBQVMsQ0FDUCxRQUEwQyxFQUFFLEVBQzVDLEdBQUcsaUJBQW9EO1FBRXZELE1BQU0sTUFBTSxHQUNWLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUNwQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNSLE9BQU8sR0FBRyxDQUFDO2FBQ1o7WUFDRCxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNSLE9BQU8sR0FBRyxDQUFDO2FBQ1o7WUFDRCxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEVBQUUsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMvRCxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2YsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxNQUFNLENBQUMsQ0FBQztJQUNyRCxDQUFDOzs2R0FsQlUsZ0JBQWdCOzJHQUFoQixnQkFBZ0I7aUhBQWhCLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUo1QixVQUFVOztrQkFDVixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxpQkFBaUI7aUJBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25XaXRoRGVmYXVsdCB9IGZyb20gJy4uL21vZGVscy9sb2NhbGl6YXRpb24nO1xyXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbG9jYWxpemF0aW9uLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ2FicExvY2FsaXphdGlvbicsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2NhbGl6YXRpb25QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBsb2NhbGl6YXRpb246IExvY2FsaXphdGlvblNlcnZpY2UpIHt9XHJcblxyXG4gIHRyYW5zZm9ybShcclxuICAgIHZhbHVlOiBzdHJpbmcgfCBMb2NhbGl6YXRpb25XaXRoRGVmYXVsdCA9ICcnLFxyXG4gICAgLi4uaW50ZXJwb2xhdGVQYXJhbXM6IChzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZClbXVxyXG4gICk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBwYXJhbXMgPVxyXG4gICAgICBpbnRlcnBvbGF0ZVBhcmFtcy5yZWR1Y2UoKGFjYywgdmFsKSA9PiB7XHJcbiAgICAgICAgaWYgKCFhY2MpIHtcclxuICAgICAgICAgIHJldHVybiB2YWw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghdmFsKSB7XHJcbiAgICAgICAgICByZXR1cm4gYWNjO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWwpID8gWy4uLmFjYywgLi4udmFsXSA6IFsuLi5hY2MsIHZhbF07XHJcbiAgICAgIH0sIFtdKSB8fCBbXTtcclxuICAgIHJldHVybiB0aGlzLmxvY2FsaXphdGlvbi5pbnN0YW50KHZhbHVlLCAuLi5wYXJhbXMpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { inject, Injectable, Pipe, SecurityContext } from '@angular/core';
|
|
2
|
-
import { DomSanitizer } from '@angular/platform-browser';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class SafeHtmlPipe {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.sanitizer = inject(DomSanitizer);
|
|
7
|
-
}
|
|
8
|
-
transform(value) {
|
|
9
|
-
if (typeof value !== 'string')
|
|
10
|
-
return '';
|
|
11
|
-
return this.sanitizer.sanitize(SecurityContext.HTML, value);
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
SafeHtmlPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SafeHtmlPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
15
|
-
SafeHtmlPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: SafeHtmlPipe, name: "abpSafeHtml" });
|
|
16
|
-
SafeHtmlPipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SafeHtmlPipe });
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SafeHtmlPipe, decorators: [{
|
|
18
|
-
type: Injectable
|
|
19
|
-
}, {
|
|
20
|
-
type: Pipe,
|
|
21
|
-
args: [{ name: 'abpSafeHtml' }]
|
|
22
|
-
}] });
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZS1odG1sLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9saWIvcGlwZXMvc2FmZS1odG1sLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFpQixlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUl6RCxNQUFNLE9BQU8sWUFBWTtJQUZ6QjtRQUdtQixjQUFTLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0tBTW5EO0lBSkMsU0FBUyxDQUFDLEtBQWE7UUFDckIsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFDekMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzlELENBQUM7O3lHQU5VLFlBQVk7dUdBQVosWUFBWTs2R0FBWixZQUFZOzJGQUFaLFlBQVk7a0JBRnhCLFVBQVU7O2tCQUNWLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlLCBQaXBlLCBQaXBlVHJhbnNmb3JtLCBTZWN1cml0eUNvbnRleHQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbkBQaXBlKHsgbmFtZTogJ2FicFNhZmVIdG1sJyB9KVxyXG5leHBvcnQgY2xhc3MgU2FmZUh0bWxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBzYW5pdGl6ZXIgPSBpbmplY3QoRG9tU2FuaXRpemVyKTtcclxuXHJcbiAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ3N0cmluZycpIHJldHVybiAnJztcclxuICAgIHJldHVybiB0aGlzLnNhbml0aXplci5zYW5pdGl6ZShTZWN1cml0eUNvbnRleHQuSFRNTCwgdmFsdWUpO1xyXG4gIH1cclxufVxyXG4iXX0=
|