@hmcts/opal-frontend-common 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/esm2022/hmcts-opal-frontend-common.mjs +5 -0
- package/esm2022/lib/components/govuk/govuk-button/govuk-button.component.mjs +34 -0
- package/esm2022/lib/components/govuk/govuk-text-input/govuk-text-input.component.mjs +57 -0
- package/esm2022/lib/components/govuk/index.mjs +3 -0
- package/esm2022/lib/guards/auth/auth.guard.mjs +20 -0
- package/esm2022/lib/guards/auth/index.mjs +2 -0
- package/esm2022/lib/guards/can-deactivate/can-deactivate.guard.mjs +6 -0
- package/esm2022/lib/guards/can-deactivate/index.mjs +5 -0
- package/esm2022/lib/guards/can-deactivate/interfaces/can-deactivate-can-component-deactivate.interface.mjs +2 -0
- package/esm2022/lib/guards/can-deactivate/interfaces/index.mjs +2 -0
- package/esm2022/lib/guards/has-flow-state/has-flow-state.guard.mjs +16 -0
- package/esm2022/lib/guards/has-flow-state/index.mjs +2 -0
- package/esm2022/lib/guards/helpers/get-guard-with-dummy-url.mjs +19 -0
- package/esm2022/lib/guards/helpers/handle-observable-result.mjs +13 -0
- package/esm2022/lib/guards/helpers/index.mjs +5 -0
- package/esm2022/lib/guards/helpers/run-auth-guard-with-context.mjs +15 -0
- package/esm2022/lib/guards/helpers/run-has-flow-state-guard-with-context.mjs +9 -0
- package/esm2022/lib/guards/index.mjs +10 -0
- package/esm2022/lib/guards/route-permissions/index.mjs +2 -0
- package/esm2022/lib/guards/route-permissions/route-permissions.guard.mjs +25 -0
- package/esm2022/lib/guards/signed-in/index.mjs +3 -0
- package/esm2022/lib/guards/signed-in/signed-in.guard.mjs +20 -0
- package/esm2022/lib/guards/types/can-deactivate.type.mjs +2 -0
- package/esm2022/lib/guards/types/guard-return.type.mjs +2 -0
- package/esm2022/lib/guards/types/index.mjs +3 -0
- package/esm2022/lib/interceptors/http-error/http-error.interceptor.mjs +24 -0
- package/esm2022/lib/interceptors/index.mjs +3 -0
- package/esm2022/lib/opal-frontend-common.module.mjs +22 -0
- package/esm2022/lib/pages/access-denied/access-denied.component.mjs +18 -0
- package/esm2022/lib/pages/index.mjs +4 -0
- package/esm2022/lib/pages/routing/constants/routing-paths.constant.mjs +9 -0
- package/esm2022/lib/pages/routing/constants/routing-titles.constant.mjs +9 -0
- package/esm2022/lib/pages/routing/interfaces/routing-paths.interface.mjs +2 -0
- package/esm2022/lib/pages/routing/pages.routes.mjs +24 -0
- package/esm2022/lib/pages/sign-in/interfaces/index.mjs +2 -0
- package/esm2022/lib/pages/sign-in/interfaces/sign-in-stub-form.interface.mjs +2 -0
- package/esm2022/lib/pages/sign-in/sign-in-sso/sign-in-sso.component.mjs +23 -0
- package/esm2022/lib/pages/sign-in/sign-in-stub/sign-in-stub.component.mjs +39 -0
- package/esm2022/lib/pages/sign-in/sign-in.component.mjs +38 -0
- package/esm2022/lib/resolvers/index.mjs +3 -0
- package/esm2022/lib/resolvers/title/index.mjs +2 -0
- package/esm2022/lib/resolvers/title/title.resolver.mjs +22 -0
- package/esm2022/lib/resolvers/user-state/index.mjs +2 -0
- package/esm2022/lib/resolvers/user-state/user-state.resolver.mjs +12 -0
- package/esm2022/lib/routing/constants/index.mjs +2 -0
- package/esm2022/lib/routing/constants/sso-endpoints.constant.mjs +7 -0
- package/esm2022/lib/routing/index.mjs +3 -0
- package/esm2022/lib/routing/interfaces/child-routing-paths.interface.mjs +2 -0
- package/esm2022/lib/routing/interfaces/index.mjs +4 -0
- package/esm2022/lib/routing/interfaces/nested-routes.interface.mjs +2 -0
- package/esm2022/lib/routing/interfaces/sso-endpoints.interface.mjs +2 -0
- package/esm2022/lib/services/app-initializer-service/app-initializer.service.mjs +36 -0
- package/esm2022/lib/services/app-initializer-service/index.mjs +2 -0
- package/esm2022/lib/services/app-insights/app-insights.service.mjs +73 -0
- package/esm2022/lib/services/app-insights/index.mjs +4 -0
- package/esm2022/lib/services/auth-service/auth.service.mjs +36 -0
- package/esm2022/lib/services/auth-service/index.mjs +2 -0
- package/esm2022/lib/services/date-service/date.service.mjs +182 -0
- package/esm2022/lib/services/date-service/index.mjs +4 -0
- package/esm2022/lib/services/index.mjs +12 -0
- package/esm2022/lib/services/launch-darkly/index.mjs +5 -0
- package/esm2022/lib/services/launch-darkly/launch-darkly.service.mjs +94 -0
- package/esm2022/lib/services/launch-darkly/mocks/index.mjs +3 -0
- package/esm2022/lib/services/launch-darkly/mocks/launch-darkly-change-flags.mock.mjs +5 -0
- package/esm2022/lib/services/launch-darkly/mocks/launch-darkly-flags.mock.mjs +5 -0
- package/esm2022/lib/services/permissions-service/index.mjs +4 -0
- package/esm2022/lib/services/permissions-service/permissions.service.mjs +40 -0
- package/esm2022/lib/services/session-service/constants/index.mjs +2 -0
- package/esm2022/lib/services/session-service/constants/session-endpoints.constant.mjs +5 -0
- package/esm2022/lib/services/session-service/index.mjs +7 -0
- package/esm2022/lib/services/session-service/interfaces/index.mjs +4 -0
- package/esm2022/lib/services/session-service/interfaces/session-endpoints.interface.mjs +2 -0
- package/esm2022/lib/services/session-service/interfaces/session-token-expiry.interface.mjs +2 -0
- package/esm2022/lib/services/session-service/interfaces/session-user-state.interface.mjs +2 -0
- package/esm2022/lib/services/session-service/mocks/index.mjs +3 -0
- package/esm2022/lib/services/session-service/mocks/session-token-expiry.mock.mjs +5 -0
- package/esm2022/lib/services/session-service/mocks/session-user-state.mock.mjs +386 -0
- package/esm2022/lib/services/session-service/session.service.mjs +64 -0
- package/esm2022/lib/services/sort-service/index.mjs +6 -0
- package/esm2022/lib/services/sort-service/interfaces/index.mjs +3 -0
- package/esm2022/lib/services/sort-service/interfaces/sort-service-values.interface.mjs +2 -0
- package/esm2022/lib/services/sort-service/interfaces/sort-service.interface.mjs +2 -0
- package/esm2022/lib/services/sort-service/sort-service.mjs +90 -0
- package/esm2022/lib/services/sort-service/types/index.mjs +2 -0
- package/esm2022/lib/services/sort-service/types/sort-service.type.mjs +2 -0
- package/esm2022/lib/services/transfer-state-service/index.mjs +6 -0
- package/esm2022/lib/services/transfer-state-service/interfaces/index.mjs +4 -0
- package/esm2022/lib/services/transfer-state-service/interfaces/transfer-state-app-insights-config.interface.mjs +2 -0
- package/esm2022/lib/services/transfer-state-service/interfaces/transfer-state-launch-darkly-config.interface.mjs +2 -0
- package/esm2022/lib/services/transfer-state-service/interfaces/transfer-state-server-state.interface.mjs +2 -0
- package/esm2022/lib/services/transfer-state-service/mocks/index.mjs +4 -0
- package/esm2022/lib/services/transfer-state-service/mocks/transfer-state-app-insights-config.mock.mjs +6 -0
- package/esm2022/lib/services/transfer-state-service/mocks/transfer-state-launch-darkly-config.mock.mjs +6 -0
- package/esm2022/lib/services/transfer-state-service/mocks/transfer-state.mock.mjs +8 -0
- package/esm2022/lib/services/transfer-state-service/transfer-state.service.mjs +59 -0
- package/esm2022/lib/services/transformation-service/index.mjs +5 -0
- package/esm2022/lib/services/transformation-service/interfaces/index.mjs +2 -0
- package/esm2022/lib/services/transformation-service/interfaces/transform-item.interface.mjs +2 -0
- package/esm2022/lib/services/transformation-service/transformation.service.mjs +69 -0
- package/esm2022/lib/services/utils/index.mjs +4 -0
- package/esm2022/lib/services/utils/utils.service.mjs +86 -0
- package/esm2022/lib/stores/global/global.store.mjs +33 -0
- package/esm2022/lib/stores/global/index.mjs +6 -0
- package/esm2022/lib/stores/global/interfaces/error-state.interface.mjs +2 -0
- package/esm2022/lib/stores/global/interfaces/index.mjs +2 -0
- package/esm2022/lib/stores/global/types/global-store.type.mjs +2 -0
- package/esm2022/lib/stores/global/types/index.mjs +2 -0
- package/esm2022/lib/stores/index.mjs +2 -0
- package/esm2022/lib/validators/alphabetical-text/alphabetical-text.validator.mjs +10 -0
- package/esm2022/lib/validators/amount/amount.validator.mjs +15 -0
- package/esm2022/lib/validators/date-after-year/date-after-year.validator.mjs +12 -0
- package/esm2022/lib/validators/date-before/date-before.validator.mjs +15 -0
- package/esm2022/lib/validators/date-of-birth/date-of-birth.validator.mjs +18 -0
- package/esm2022/lib/validators/future-date/future-date.validator.mjs +15 -0
- package/esm2022/lib/validators/index.mjs +20 -0
- package/esm2022/lib/validators/invalid-value/invalid-value.validator.mjs +9 -0
- package/esm2022/lib/validators/national-insurance-number/national-insurance-number.validator.mjs +16 -0
- package/esm2022/lib/validators/numerical-only/numerical-only.validator.mjs +10 -0
- package/esm2022/lib/validators/optional-max-length/optional-max-length.validator.mjs +10 -0
- package/esm2022/lib/validators/optional-valid-date/optional-valid-date.validator.mjs +23 -0
- package/esm2022/lib/validators/optional-valid-email-address/optional-valid-email-address.validator.mjs +11 -0
- package/esm2022/lib/validators/optional-valid-telephone/optional-valid-telephone.validator.mjs +14 -0
- package/esm2022/lib/validators/over-eighteen/over-eighteen.validator.mjs +45 -0
- package/esm2022/lib/validators/past-date/past-date.validator.mjs +16 -0
- package/esm2022/lib/validators/special-characters/special-characters.validator.mjs +11 -0
- package/esm2022/lib/validators/two-decimal-places/two-decimal-places.validator.mjs +12 -0
- package/esm2022/lib/validators/valid-value/valid-value.validator.mjs +9 -0
- package/esm2022/public-api.mjs +11 -0
- package/fesm2022/hmcts-opal-frontend-common-sign-in-stub.component-CysPzJGJ.mjs +41 -0
- package/fesm2022/hmcts-opal-frontend-common-sign-in-stub.component-CysPzJGJ.mjs.map +1 -0
- package/fesm2022/hmcts-opal-frontend-common.mjs +1947 -0
- package/fesm2022/hmcts-opal-frontend-common.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/components/govuk/govuk-button/govuk-button.component.d.ts +14 -0
- package/lib/components/govuk/govuk-text-input/govuk-text-input.component.d.ts +17 -0
- package/lib/components/govuk/index.d.ts +2 -0
- package/lib/guards/auth/auth.guard.d.ts +6 -0
- package/lib/guards/auth/index.d.ts +1 -0
- package/lib/guards/can-deactivate/can-deactivate.guard.d.ts +3 -0
- package/lib/guards/can-deactivate/index.d.ts +2 -0
- package/lib/guards/can-deactivate/interfaces/can-deactivate-can-component-deactivate.interface.d.ts +4 -0
- package/lib/guards/can-deactivate/interfaces/index.d.ts +2 -0
- package/lib/guards/has-flow-state/has-flow-state.guard.d.ts +2 -0
- package/lib/guards/has-flow-state/index.d.ts +1 -0
- package/lib/guards/helpers/get-guard-with-dummy-url.d.ts +12 -0
- package/lib/guards/helpers/handle-observable-result.d.ts +8 -0
- package/lib/guards/helpers/index.d.ts +4 -0
- package/lib/guards/helpers/run-auth-guard-with-context.d.ts +9 -0
- package/lib/guards/helpers/run-has-flow-state-guard-with-context.d.ts +3 -0
- package/lib/guards/index.d.ts +7 -0
- package/lib/guards/route-permissions/index.d.ts +1 -0
- package/lib/guards/route-permissions/route-permissions.guard.d.ts +2 -0
- package/lib/guards/signed-in/index.d.ts +1 -0
- package/lib/guards/signed-in/signed-in.guard.d.ts +8 -0
- package/lib/guards/types/can-deactivate.type.d.ts +3 -0
- package/lib/guards/types/guard-return.type.d.ts +2 -0
- package/lib/guards/types/index.d.ts +2 -0
- package/lib/interceptors/http-error/http-error.interceptor.d.ts +2 -0
- package/lib/interceptors/index.d.ts +2 -0
- package/lib/opal-frontend-common.module.d.ts +14 -0
- package/lib/pages/access-denied/access-denied.component.d.ts +7 -0
- package/lib/pages/index.d.ts +3 -0
- package/lib/pages/routing/constants/routing-paths.constant.d.ts +2 -0
- package/lib/pages/routing/constants/routing-titles.constant.d.ts +2 -0
- package/lib/pages/routing/interfaces/routing-paths.interface.d.ts +8 -0
- package/lib/pages/routing/pages.routes.d.ts +2 -0
- package/lib/pages/sign-in/interfaces/index.d.ts +2 -0
- package/lib/pages/sign-in/interfaces/sign-in-stub-form.interface.d.ts +3 -0
- package/lib/pages/sign-in/sign-in-sso/sign-in-sso.component.d.ts +11 -0
- package/lib/pages/sign-in/sign-in-stub/sign-in-stub.component.d.ts +19 -0
- package/lib/pages/sign-in/sign-in.component.d.ts +51 -0
- package/lib/resolvers/index.d.ts +2 -0
- package/lib/resolvers/title/index.d.ts +1 -0
- package/lib/resolvers/title/title.resolver.d.ts +10 -0
- package/lib/resolvers/user-state/index.d.ts +1 -0
- package/lib/resolvers/user-state/user-state.resolver.d.ts +7 -0
- package/lib/routing/constants/index.d.ts +1 -0
- package/lib/routing/constants/sso-endpoints.constant.d.ts +2 -0
- package/lib/routing/index.d.ts +2 -0
- package/lib/routing/interfaces/child-routing-paths.interface.d.ts +6 -0
- package/lib/routing/interfaces/index.d.ts +3 -0
- package/lib/routing/interfaces/nested-routes.interface.d.ts +4 -0
- package/lib/routing/interfaces/sso-endpoints.interface.d.ts +6 -0
- package/lib/services/app-initializer-service/app-initializer.service.d.ts +20 -0
- package/lib/services/app-initializer-service/index.d.ts +1 -0
- package/lib/services/app-insights/app-insights.service.d.ts +33 -0
- package/lib/services/app-insights/index.d.ts +1 -0
- package/lib/services/auth-service/auth.service.d.ts +8 -0
- package/lib/services/auth-service/index.d.ts +1 -0
- package/lib/services/date-service/date.service.d.ts +123 -0
- package/lib/services/date-service/index.d.ts +1 -0
- package/lib/services/index.d.ts +11 -0
- package/lib/services/launch-darkly/index.d.ts +2 -0
- package/lib/services/launch-darkly/launch-darkly.service.d.ts +41 -0
- package/lib/services/launch-darkly/mocks/index.d.ts +2 -0
- package/lib/services/launch-darkly/mocks/launch-darkly-change-flags.mock.d.ts +10 -0
- package/lib/services/launch-darkly/mocks/launch-darkly-flags.mock.d.ts +4 -0
- package/lib/services/permissions-service/index.d.ts +1 -0
- package/lib/services/permissions-service/permissions.service.d.ts +14 -0
- package/lib/services/session-service/constants/index.d.ts +1 -0
- package/lib/services/session-service/constants/session-endpoints.constant.d.ts +2 -0
- package/lib/services/session-service/index.d.ts +4 -0
- package/lib/services/session-service/interfaces/index.d.ts +3 -0
- package/lib/services/session-service/interfaces/session-endpoints.interface.d.ts +4 -0
- package/lib/services/session-service/interfaces/session-token-expiry.interface.d.ts +4 -0
- package/lib/services/session-service/interfaces/session-user-state.interface.d.ts +15 -0
- package/lib/services/session-service/mocks/index.d.ts +2 -0
- package/lib/services/session-service/mocks/session-token-expiry.mock.d.ts +2 -0
- package/lib/services/session-service/mocks/session-user-state.mock.d.ts +2 -0
- package/lib/services/session-service/session.service.d.ts +30 -0
- package/lib/services/sort-service/index.d.ts +3 -0
- package/lib/services/sort-service/interfaces/index.d.ts +2 -0
- package/lib/services/sort-service/interfaces/sort-service-values.interface.d.ts +6 -0
- package/lib/services/sort-service/interfaces/sort-service.interface.d.ts +4 -0
- package/lib/services/sort-service/sort-service.d.ts +64 -0
- package/lib/services/sort-service/types/index.d.ts +1 -0
- package/lib/services/sort-service/types/sort-service.type.d.ts +1 -0
- package/lib/services/transfer-state-service/index.d.ts +3 -0
- package/lib/services/transfer-state-service/interfaces/index.d.ts +3 -0
- package/lib/services/transfer-state-service/interfaces/transfer-state-app-insights-config.interface.d.ts +5 -0
- package/lib/services/transfer-state-service/interfaces/transfer-state-launch-darkly-config.interface.d.ts +5 -0
- package/lib/services/transfer-state-service/interfaces/transfer-state-server-state.interface.d.ts +7 -0
- package/lib/services/transfer-state-service/mocks/index.d.ts +3 -0
- package/lib/services/transfer-state-service/mocks/transfer-state-app-insights-config.mock.d.ts +5 -0
- package/lib/services/transfer-state-service/mocks/transfer-state-launch-darkly-config.mock.d.ts +5 -0
- package/lib/services/transfer-state-service/mocks/transfer-state.mock.d.ts +2 -0
- package/lib/services/transfer-state-service/transfer-state.service.d.ts +23 -0
- package/lib/services/transformation-service/index.d.ts +2 -0
- package/lib/services/transformation-service/interfaces/index.d.ts +1 -0
- package/lib/services/transformation-service/interfaces/transform-item.interface.d.ts +6 -0
- package/lib/services/transformation-service/transformation.service.d.ts +30 -0
- package/lib/services/utils/index.d.ts +1 -0
- package/lib/services/utils/utils.service.d.ts +54 -0
- package/lib/stores/global/global.store.d.ts +35 -0
- package/lib/stores/global/index.d.ts +3 -0
- package/lib/stores/global/interfaces/error-state.interface.d.ts +4 -0
- package/lib/stores/global/interfaces/index.d.ts +1 -0
- package/lib/stores/global/types/global-store.type.d.ts +2 -0
- package/lib/stores/global/types/index.d.ts +1 -0
- package/lib/stores/index.d.ts +1 -0
- package/lib/validators/alphabetical-text/alphabetical-text.validator.d.ts +2 -0
- package/lib/validators/amount/amount.validator.d.ts +2 -0
- package/lib/validators/date-after-year/date-after-year.validator.d.ts +2 -0
- package/lib/validators/date-before/date-before.validator.d.ts +2 -0
- package/lib/validators/date-of-birth/date-of-birth.validator.d.ts +2 -0
- package/lib/validators/future-date/future-date.validator.d.ts +2 -0
- package/lib/validators/index.d.ts +19 -0
- package/lib/validators/invalid-value/invalid-value.validator.d.ts +2 -0
- package/lib/validators/national-insurance-number/national-insurance-number.validator.d.ts +2 -0
- package/lib/validators/numerical-only/numerical-only.validator.d.ts +2 -0
- package/lib/validators/optional-max-length/optional-max-length.validator.d.ts +2 -0
- package/lib/validators/optional-valid-date/optional-valid-date.validator.d.ts +2 -0
- package/lib/validators/optional-valid-email-address/optional-valid-email-address.validator.d.ts +2 -0
- package/lib/validators/optional-valid-telephone/optional-valid-telephone.validator.d.ts +2 -0
- package/lib/validators/over-eighteen/over-eighteen.validator.d.ts +14 -0
- package/lib/validators/past-date/past-date.validator.d.ts +2 -0
- package/lib/validators/special-characters/special-characters.validator.d.ts +2 -0
- package/lib/validators/two-decimal-places/two-decimal-places.validator.d.ts +2 -0
- package/lib/validators/valid-value/valid-value.validator.d.ts +2 -0
- package/package.json +28 -0
- package/public-api.d.ts +10 -0
package/README.md
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# OpalFrontendCommon
|
|
2
|
+
|
|
3
|
+
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 18.2.0.
|
|
4
|
+
|
|
5
|
+
## Code scaffolding
|
|
6
|
+
|
|
7
|
+
Run `ng generate component component-name --project opal-frontend-common` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project opal-frontend-common`.
|
|
8
|
+
> Note: Don't forget to add `--project opal-frontend-common` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
+
|
|
10
|
+
## Build
|
|
11
|
+
|
|
12
|
+
Run `ng build opal-frontend-common` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
+
|
|
14
|
+
## Publishing
|
|
15
|
+
|
|
16
|
+
After building your library with `ng build opal-frontend-common`, go to the dist folder `cd dist/opal-frontend-common` and run `npm publish`.
|
|
17
|
+
|
|
18
|
+
## Running unit tests
|
|
19
|
+
|
|
20
|
+
Run `ng test opal-frontend-common` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
+
|
|
22
|
+
## Further help
|
|
23
|
+
|
|
24
|
+
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.dev/tools/cli) page.
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG1jdHMtb3BhbC1mcm9udGVuZC1jb21tb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvaG1jdHMtb3BhbC1mcm9udGVuZC1jb21tb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class GovukButtonComponent {
|
|
6
|
+
buttonId;
|
|
7
|
+
type = 'button';
|
|
8
|
+
buttonClasses;
|
|
9
|
+
buttonClickEvent = new EventEmitter();
|
|
10
|
+
/**
|
|
11
|
+
* Handles the button click event.
|
|
12
|
+
*/
|
|
13
|
+
handleButtonClick() {
|
|
14
|
+
this.buttonClickEvent.emit(true);
|
|
15
|
+
}
|
|
16
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GovukButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
17
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GovukButtonComponent, isStandalone: true, selector: "opal-lib-govuk-button", inputs: { buttonId: "buttonId", type: "type", buttonClasses: "buttonClasses" }, outputs: { buttonClickEvent: "buttonClickEvent" }, ngImport: i0, template: "<button\n [id]=\"buttonId\"\n [type]=\"type\"\n class=\"govuk-button {{ buttonClasses }}\"\n data-module=\"govuk-button\"\n (click)=\"handleButtonClick()\"\n>\n <ng-content></ng-content>\n</button>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
18
|
+
}
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GovukButtonComponent, decorators: [{
|
|
20
|
+
type: Component,
|
|
21
|
+
args: [{ standalone: true, selector: 'opal-lib-govuk-button', imports: [CommonModule, ReactiveFormsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n [id]=\"buttonId\"\n [type]=\"type\"\n class=\"govuk-button {{ buttonClasses }}\"\n data-module=\"govuk-button\"\n (click)=\"handleButtonClick()\"\n>\n <ng-content></ng-content>\n</button>\n" }]
|
|
22
|
+
}], propDecorators: { buttonId: [{
|
|
23
|
+
type: Input,
|
|
24
|
+
args: [{ required: true }]
|
|
25
|
+
}], type: [{
|
|
26
|
+
type: Input,
|
|
27
|
+
args: [{ required: false }]
|
|
28
|
+
}], buttonClasses: [{
|
|
29
|
+
type: Input,
|
|
30
|
+
args: [{ required: false }]
|
|
31
|
+
}], buttonClickEvent: [{
|
|
32
|
+
type: Output
|
|
33
|
+
}] } });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ292dWstYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29wYWwtZnJvbnRlbmQtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9nb3Z1ay9nb3Z1ay1idXR0b24vZ292dWstYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29wYWwtZnJvbnRlbmQtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9nb3Z1ay9nb3Z1ay1idXR0b24vZ292dWstYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQVNyRCxNQUFNLE9BQU8sb0JBQW9CO0lBQ0osUUFBUSxDQUFVO0lBQ2pCLElBQUksR0FBRyxRQUFRLENBQUM7SUFDaEIsYUFBYSxDQUFVO0lBRXpDLGdCQUFnQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7SUFFekQ7O09BRUc7SUFDSSxpQkFBaUI7UUFDdEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNuQyxDQUFDO3dHQVpVLG9CQUFvQjs0RkFBcEIsb0JBQW9CLG9OQ1hqQywrTUFTQSwyQ0RGWSxZQUFZLDhCQUFFLG1CQUFtQjs7NEZBSWhDLG9CQUFvQjtrQkFQaEMsU0FBUztpQ0FDSSxJQUFJLFlBQ04sdUJBQXVCLFdBQ3hCLENBQUMsWUFBWSxFQUFFLG1CQUFtQixDQUFDLG1CQUUzQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUdwQixRQUFRO3NCQUFsQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDRyxJQUFJO3NCQUEvQixLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtnQkFDRSxhQUFhO3NCQUF4QyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtnQkFFaEIsZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnb3BhbC1saWItZ292dWstYnV0dG9uJyxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9nb3Z1ay1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgR292dWtCdXR0b25Db21wb25lbnQge1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBidXR0b25JZCE6IHN0cmluZztcbiAgQElucHV0KHsgcmVxdWlyZWQ6IGZhbHNlIH0pIHR5cGUgPSAnYnV0dG9uJztcbiAgQElucHV0KHsgcmVxdWlyZWQ6IGZhbHNlIH0pIGJ1dHRvbkNsYXNzZXMhOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpIGJ1dHRvbkNsaWNrRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgdGhlIGJ1dHRvbiBjbGljayBldmVudC5cbiAgICovXG4gIHB1YmxpYyBoYW5kbGVCdXR0b25DbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLmJ1dHRvbkNsaWNrRXZlbnQuZW1pdCh0cnVlKTtcbiAgfVxufVxuIiwiPGJ1dHRvblxuICBbaWRdPVwiYnV0dG9uSWRcIlxuICBbdHlwZV09XCJ0eXBlXCJcbiAgY2xhc3M9XCJnb3Z1ay1idXR0b24ge3sgYnV0dG9uQ2xhc3NlcyB9fVwiXG4gIGRhdGEtbW9kdWxlPVwiZ292dWstYnV0dG9uXCJcbiAgKGNsaWNrKT1cImhhbmRsZUJ1dHRvbkNsaWNrKClcIlxuPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2J1dHRvbj5cbiJdfQ==
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/forms";
|
|
6
|
+
export class GovukTextInputComponent {
|
|
7
|
+
_control;
|
|
8
|
+
labelText;
|
|
9
|
+
labelClasses;
|
|
10
|
+
inputId;
|
|
11
|
+
inputName;
|
|
12
|
+
inputClasses;
|
|
13
|
+
hintText;
|
|
14
|
+
hintHtml;
|
|
15
|
+
errors = null;
|
|
16
|
+
set control(abstractControl) {
|
|
17
|
+
// Form controls are passed in as abstract controls, we need to re-cast it.
|
|
18
|
+
this._control = abstractControl;
|
|
19
|
+
}
|
|
20
|
+
get getControl() {
|
|
21
|
+
return this._control;
|
|
22
|
+
}
|
|
23
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GovukTextInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
24
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: GovukTextInputComponent, isStandalone: true, selector: "opal-lib-govuk-text-input", inputs: { labelText: "labelText", labelClasses: "labelClasses", inputId: "inputId", inputName: "inputName", inputClasses: "inputClasses", hintText: "hintText", hintHtml: "hintHtml", errors: "errors", control: "control" }, ngImport: i0, template: "<div class=\"govuk-form-group\" [class.govuk-form-group--error]=\"!!errors\">\n <h1 class=\"govuk-label-wrapper\">\n <label class=\"govuk-label {{ labelClasses }}\" [for]=\"inputId\">\n {{ labelText }}\n </label>\n </h1>\n @if (hintText) {\n <div id=\"{{ inputId }}-hint\" class=\"govuk-hint\">\n {{ hintText }}\n </div>\n }\n\n @if (hintHtml) {\n <div id=\"{{ inputId }}-hint\" class=\"govuk-hint\"><ng-content></ng-content></div>\n }\n\n @if (errors) {\n <p id=\"{{ this.inputId }}-error-message\" class=\"govuk-error-message\">\n <span class=\"govuk-visually-hidden\">Error: </span> {{ errors }}\n </p>\n }\n\n <input\n class=\"govuk-input {{ inputClasses }}\"\n [id]=\"inputId\"\n [name]=\"inputName\"\n type=\"text\"\n [formControl]=\"getControl\"\n />\n</div>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
25
|
+
}
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GovukTextInputComponent, decorators: [{
|
|
27
|
+
type: Component,
|
|
28
|
+
args: [{ standalone: true, selector: 'opal-lib-govuk-text-input', imports: [CommonModule, ReactiveFormsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"govuk-form-group\" [class.govuk-form-group--error]=\"!!errors\">\n <h1 class=\"govuk-label-wrapper\">\n <label class=\"govuk-label {{ labelClasses }}\" [for]=\"inputId\">\n {{ labelText }}\n </label>\n </h1>\n @if (hintText) {\n <div id=\"{{ inputId }}-hint\" class=\"govuk-hint\">\n {{ hintText }}\n </div>\n }\n\n @if (hintHtml) {\n <div id=\"{{ inputId }}-hint\" class=\"govuk-hint\"><ng-content></ng-content></div>\n }\n\n @if (errors) {\n <p id=\"{{ this.inputId }}-error-message\" class=\"govuk-error-message\">\n <span class=\"govuk-visually-hidden\">Error: </span> {{ errors }}\n </p>\n }\n\n <input\n class=\"govuk-input {{ inputClasses }}\"\n [id]=\"inputId\"\n [name]=\"inputName\"\n type=\"text\"\n [formControl]=\"getControl\"\n />\n</div>\n" }]
|
|
29
|
+
}], propDecorators: { labelText: [{
|
|
30
|
+
type: Input,
|
|
31
|
+
args: [{ required: true }]
|
|
32
|
+
}], labelClasses: [{
|
|
33
|
+
type: Input,
|
|
34
|
+
args: [{ required: false }]
|
|
35
|
+
}], inputId: [{
|
|
36
|
+
type: Input,
|
|
37
|
+
args: [{ required: true }]
|
|
38
|
+
}], inputName: [{
|
|
39
|
+
type: Input,
|
|
40
|
+
args: [{ required: true }]
|
|
41
|
+
}], inputClasses: [{
|
|
42
|
+
type: Input,
|
|
43
|
+
args: [{ required: false }]
|
|
44
|
+
}], hintText: [{
|
|
45
|
+
type: Input,
|
|
46
|
+
args: [{ required: false }]
|
|
47
|
+
}], hintHtml: [{
|
|
48
|
+
type: Input,
|
|
49
|
+
args: [{ required: false }]
|
|
50
|
+
}], errors: [{
|
|
51
|
+
type: Input,
|
|
52
|
+
args: [{ required: false }]
|
|
53
|
+
}], control: [{
|
|
54
|
+
type: Input,
|
|
55
|
+
args: [{ required: true }]
|
|
56
|
+
}] } });
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ292dWstdGV4dC1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvZ292dWsvZ292dWstdGV4dC1pbnB1dC9nb3Z1ay10ZXh0LWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29wYWwtZnJvbnRlbmQtY29tbW9uL3NyYy9saWIvY29tcG9uZW50cy9nb3Z1ay9nb3Z1ay10ZXh0LWlucHV0L2dvdnVrLXRleHQtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBZ0MsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBU25GLE1BQU0sT0FBTyx1QkFBdUI7SUFDMUIsUUFBUSxDQUFlO0lBRUosU0FBUyxDQUFVO0lBQ2xCLFlBQVksQ0FBVTtJQUN2QixPQUFPLENBQVU7SUFDakIsU0FBUyxDQUFVO0lBQ2xCLFlBQVksQ0FBVTtJQUN0QixRQUFRLENBQVU7SUFDbEIsUUFBUSxDQUFXO0lBQ25CLE1BQU0sR0FBa0IsSUFBSSxDQUFDO0lBQ3pELElBQStCLE9BQU8sQ0FBQyxlQUF1QztRQUM1RSwyRUFBMkU7UUFDM0UsSUFBSSxDQUFDLFFBQVEsR0FBRyxlQUE4QixDQUFDO0lBQ2pELENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQzt3R0FsQlUsdUJBQXVCOzRGQUF2Qix1QkFBdUIsbVRDWHBDLDh6QkE4QkEsMkNEdkJZLFlBQVksOEJBQUUsbUJBQW1COzs0RkFJaEMsdUJBQXVCO2tCQVBuQyxTQUFTO2lDQUNJLElBQUksWUFDTiwyQkFBMkIsV0FDNUIsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLENBQUMsbUJBRTNCLHVCQUF1QixDQUFDLE1BQU07OEJBS3BCLFNBQVM7c0JBQW5DLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNHLFlBQVk7c0JBQXZDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFO2dCQUNDLE9BQU87c0JBQWpDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNFLFNBQVM7c0JBQW5DLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNHLFlBQVk7c0JBQXZDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFO2dCQUNFLFFBQVE7c0JBQW5DLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFO2dCQUNFLFFBQVE7c0JBQW5DLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFO2dCQUNFLE1BQU07c0JBQWpDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFO2dCQUNLLE9BQU87c0JBQXJDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1Db250cm9sLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdvcGFsLWxpYi1nb3Z1ay10ZXh0LWlucHV0JyxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9nb3Z1ay10ZXh0LWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEdvdnVrVGV4dElucHV0Q29tcG9uZW50IHtcbiAgcHJpdmF0ZSBfY29udHJvbCE6IEZvcm1Db250cm9sO1xuXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGxhYmVsVGV4dCE6IHN0cmluZztcbiAgQElucHV0KHsgcmVxdWlyZWQ6IGZhbHNlIH0pIGxhYmVsQ2xhc3NlcyE6IHN0cmluZztcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgaW5wdXRJZCE6IHN0cmluZztcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgaW5wdXROYW1lITogc3RyaW5nO1xuICBASW5wdXQoeyByZXF1aXJlZDogZmFsc2UgfSkgaW5wdXRDbGFzc2VzITogc3RyaW5nO1xuICBASW5wdXQoeyByZXF1aXJlZDogZmFsc2UgfSkgaGludFRleHQhOiBzdHJpbmc7XG4gIEBJbnB1dCh7IHJlcXVpcmVkOiBmYWxzZSB9KSBoaW50SHRtbCE6IGJvb2xlYW47XG4gIEBJbnB1dCh7IHJlcXVpcmVkOiBmYWxzZSB9KSBlcnJvcnM6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBzZXQgY29udHJvbChhYnN0cmFjdENvbnRyb2w6IEFic3RyYWN0Q29udHJvbCB8IG51bGwpIHtcbiAgICAvLyBGb3JtIGNvbnRyb2xzIGFyZSBwYXNzZWQgaW4gYXMgYWJzdHJhY3QgY29udHJvbHMsIHdlIG5lZWQgdG8gcmUtY2FzdCBpdC5cbiAgICB0aGlzLl9jb250cm9sID0gYWJzdHJhY3RDb250cm9sIGFzIEZvcm1Db250cm9sO1xuICB9XG5cbiAgZ2V0IGdldENvbnRyb2woKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbnRyb2w7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJnb3Z1ay1mb3JtLWdyb3VwXCIgW2NsYXNzLmdvdnVrLWZvcm0tZ3JvdXAtLWVycm9yXT1cIiEhZXJyb3JzXCI+XG4gIDxoMSBjbGFzcz1cImdvdnVrLWxhYmVsLXdyYXBwZXJcIj5cbiAgICA8bGFiZWwgY2xhc3M9XCJnb3Z1ay1sYWJlbCB7eyBsYWJlbENsYXNzZXMgfX1cIiBbZm9yXT1cImlucHV0SWRcIj5cbiAgICAgIHt7IGxhYmVsVGV4dCB9fVxuICAgIDwvbGFiZWw+XG4gIDwvaDE+XG4gIEBpZiAoaGludFRleHQpIHtcbiAgICA8ZGl2IGlkPVwie3sgaW5wdXRJZCB9fS1oaW50XCIgY2xhc3M9XCJnb3Z1ay1oaW50XCI+XG4gICAgICB7eyBoaW50VGV4dCB9fVxuICAgIDwvZGl2PlxuICB9XG5cbiAgQGlmIChoaW50SHRtbCkge1xuICAgIDxkaXYgaWQ9XCJ7eyBpbnB1dElkIH19LWhpbnRcIiBjbGFzcz1cImdvdnVrLWhpbnRcIj48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9kaXY+XG4gIH1cblxuICBAaWYgKGVycm9ycykge1xuICAgIDxwIGlkPVwie3sgdGhpcy5pbnB1dElkIH19LWVycm9yLW1lc3NhZ2VcIiBjbGFzcz1cImdvdnVrLWVycm9yLW1lc3NhZ2VcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiZ292dWstdmlzdWFsbHktaGlkZGVuXCI+RXJyb3I6IDwvc3Bhbj4ge3sgZXJyb3JzIH19XG4gICAgPC9wPlxuICB9XG5cbiAgPGlucHV0XG4gICAgY2xhc3M9XCJnb3Z1ay1pbnB1dCB7eyBpbnB1dENsYXNzZXMgfX1cIlxuICAgIFtpZF09XCJpbnB1dElkXCJcbiAgICBbbmFtZV09XCJpbnB1dE5hbWVcIlxuICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICBbZm9ybUNvbnRyb2xdPVwiZ2V0Q29udHJvbFwiXG4gIC8+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './govuk-text-input/govuk-text-input.component';
|
|
2
|
+
export * from './govuk-button/govuk-button.component';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2NvbXBvbmVudHMvZ292dWsvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLHVDQUF1QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9nb3Z1ay10ZXh0LWlucHV0L2dvdnVrLXRleHQtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZ292dWstYnV0dG9uL2dvdnVrLWJ1dHRvbi5jb21wb25lbnQnO1xuIl19
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Router } from '@angular/router';
|
|
2
|
+
import { inject } from '@angular/core';
|
|
3
|
+
import { map, catchError, of } from 'rxjs';
|
|
4
|
+
import { PAGES_ROUTING_PATHS } from '../../pages/routing/constants/routing-paths.constant';
|
|
5
|
+
import { AuthService } from '../../services/auth-service';
|
|
6
|
+
/**
|
|
7
|
+
* A guard that checks if the user is authenticated before allowing access to a route.
|
|
8
|
+
* @returns An Observable that emits a boolean value indicating whether the user is authenticated.
|
|
9
|
+
*/
|
|
10
|
+
export const authGuard = () => {
|
|
11
|
+
const authService = inject(AuthService);
|
|
12
|
+
const router = inject(Router);
|
|
13
|
+
return authService.checkAuthenticated().pipe(map((resp) => {
|
|
14
|
+
return resp;
|
|
15
|
+
}), catchError(() => {
|
|
16
|
+
router.navigate([PAGES_ROUTING_PATHS.children.signIn]);
|
|
17
|
+
return of(false);
|
|
18
|
+
}));
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29wYWwtZnJvbnRlbmQtY29tbW9uL3NyYy9saWIvZ3VhcmRzL2F1dGgvYXV0aC5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUUxRDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQWtCLEdBQUcsRUFBRTtJQUMzQyxNQUFNLFdBQVcsR0FBZ0IsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUU5QixPQUFPLFdBQVcsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLElBQUksQ0FDMUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7UUFDWCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUMsQ0FBQyxFQUNGLFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDZCxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDdkQsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztBQUNKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENhbkFjdGl2YXRlRm4sIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG1hcCwgY2F0Y2hFcnJvciwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFBBR0VTX1JPVVRJTkdfUEFUSFMgfSBmcm9tICcuLi8uLi9wYWdlcy9yb3V0aW5nL2NvbnN0YW50cy9yb3V0aW5nLXBhdGhzLmNvbnN0YW50JztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvYXV0aC1zZXJ2aWNlJztcblxuLyoqXG4gKiBBIGd1YXJkIHRoYXQgY2hlY2tzIGlmIHRoZSB1c2VyIGlzIGF1dGhlbnRpY2F0ZWQgYmVmb3JlIGFsbG93aW5nIGFjY2VzcyB0byBhIHJvdXRlLlxuICogQHJldHVybnMgQW4gT2JzZXJ2YWJsZSB0aGF0IGVtaXRzIGEgYm9vbGVhbiB2YWx1ZSBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIHVzZXIgaXMgYXV0aGVudGljYXRlZC5cbiAqL1xuZXhwb3J0IGNvbnN0IGF1dGhHdWFyZDogQ2FuQWN0aXZhdGVGbiA9ICgpID0+IHtcbiAgY29uc3QgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlID0gaW5qZWN0KEF1dGhTZXJ2aWNlKTtcbiAgY29uc3Qgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG5cbiAgcmV0dXJuIGF1dGhTZXJ2aWNlLmNoZWNrQXV0aGVudGljYXRlZCgpLnBpcGUoXG4gICAgbWFwKChyZXNwKSA9PiB7XG4gICAgICByZXR1cm4gcmVzcDtcbiAgICB9KSxcbiAgICBjYXRjaEVycm9yKCgpID0+IHtcbiAgICAgIHJvdXRlci5uYXZpZ2F0ZShbUEFHRVNfUk9VVElOR19QQVRIUy5jaGlsZHJlbi5zaWduSW5dKTtcbiAgICAgIHJldHVybiBvZihmYWxzZSk7XG4gICAgfSksXG4gICk7XG59O1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './auth.guard';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2d1YXJkcy9hdXRoL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hdXRoLmd1YXJkJztcbiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export const canDeactivateGuard = (component) => {
|
|
2
|
+
return component.canDeactivate()
|
|
3
|
+
? true
|
|
4
|
+
: confirm('WARNING: You have unsaved changes. Press Cancel to go back and save these changes, or OK to lose these changes.');
|
|
5
|
+
};
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FuLWRlYWN0aXZhdGUuZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2d1YXJkcy9jYW4tZGVhY3RpdmF0ZS9jYW4tZGVhY3RpdmF0ZS5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBMEQsQ0FDdkYsU0FBK0MsRUFDL0MsRUFBRTtJQUNGLE9BQU8sU0FBUyxDQUFDLGFBQWEsRUFBRTtRQUM5QixDQUFDLENBQUMsSUFBSTtRQUNOLENBQUMsQ0FBQyxPQUFPLENBQ0wsaUhBQWlILENBQ2xILENBQUM7QUFDUixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDYW5EZWFjdGl2YXRlRm4gfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgSUNhbkRlYWN0aXZhdGVDYW5Db21wb25lbnREZWFjdGl2YXRlIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGNvbnN0IGNhbkRlYWN0aXZhdGVHdWFyZDogQ2FuRGVhY3RpdmF0ZUZuPElDYW5EZWFjdGl2YXRlQ2FuQ29tcG9uZW50RGVhY3RpdmF0ZT4gPSAoXG4gIGNvbXBvbmVudDogSUNhbkRlYWN0aXZhdGVDYW5Db21wb25lbnREZWFjdGl2YXRlLFxuKSA9PiB7XG4gIHJldHVybiBjb21wb25lbnQuY2FuRGVhY3RpdmF0ZSgpXG4gICAgPyB0cnVlXG4gICAgOiBjb25maXJtKFxuICAgICAgICAnV0FSTklORzogWW91IGhhdmUgdW5zYXZlZCBjaGFuZ2VzLiBQcmVzcyBDYW5jZWwgdG8gZ28gYmFjayBhbmQgc2F2ZSB0aGVzZSBjaGFuZ2VzLCBvciBPSyB0byBsb3NlIHRoZXNlIGNoYW5nZXMuJyxcbiAgICAgICk7XG59O1xuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
// GUARD
|
|
2
|
+
export * from './can-deactivate.guard';
|
|
3
|
+
// INTERFACES
|
|
4
|
+
export * from './interfaces';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2d1YXJkcy9jYW4tZGVhY3RpdmF0ZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxRQUFRO0FBQ1IsY0FBYyx3QkFBd0IsQ0FBQztBQUV2QyxhQUFhO0FBQ2IsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHVUFSRFxuZXhwb3J0ICogZnJvbSAnLi9jYW4tZGVhY3RpdmF0ZS5ndWFyZCc7XG5cbi8vIElOVEVSRkFDRVNcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJmYWNlcyc7XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FuLWRlYWN0aXZhdGUtY2FuLWNvbXBvbmVudC1kZWFjdGl2YXRlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29wYWwtZnJvbnRlbmQtY29tbW9uL3NyYy9saWIvZ3VhcmRzL2Nhbi1kZWFjdGl2YXRlL2ludGVyZmFjZXMvY2FuLWRlYWN0aXZhdGUtY2FuLWNvbXBvbmVudC1kZWFjdGl2YXRlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2FuRGVhY3RpdmF0ZVR5cGVzIH0gZnJvbSAnLi4vLi4vdHlwZXMvY2FuLWRlYWN0aXZhdGUudHlwZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNhbkRlYWN0aXZhdGVDYW5Db21wb25lbnREZWFjdGl2YXRlIHtcbiAgY2FuRGVhY3RpdmF0ZTogKCkgPT4gQ2FuRGVhY3RpdmF0ZVR5cGVzO1xufVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2d1YXJkcy9jYW4tZGVhY3RpdmF0ZS9pbnRlcmZhY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQ2FuRGVhY3RpdmF0ZUNhbkNvbXBvbmVudERlYWN0aXZhdGUgfSBmcm9tICcuL2Nhbi1kZWFjdGl2YXRlLWNhbi1jb21wb25lbnQtZGVhY3RpdmF0ZS5pbnRlcmZhY2UnO1xuXG5leHBvcnQgdHlwZSB7IElDYW5EZWFjdGl2YXRlQ2FuQ29tcG9uZW50RGVhY3RpdmF0ZSB9O1xuIl19
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { inject } from '@angular/core';
|
|
2
|
+
import { Router } from '@angular/router';
|
|
3
|
+
export function hasFlowStateGuard(getState, checkCondition, getNavigationPath) {
|
|
4
|
+
return (route) => {
|
|
5
|
+
const router = inject(Router);
|
|
6
|
+
const state = getState();
|
|
7
|
+
const { queryParams, fragment } = route;
|
|
8
|
+
return checkCondition(state)
|
|
9
|
+
? true
|
|
10
|
+
: router.createUrlTree([getNavigationPath()], {
|
|
11
|
+
queryParams: queryParams ?? undefined,
|
|
12
|
+
fragment: fragment ?? undefined,
|
|
13
|
+
});
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzLWZsb3ctc3RhdGUuZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2d1YXJkcy9oYXMtZmxvdy1zdGF0ZS9oYXMtZmxvdy1zdGF0ZS5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBeUMsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFaEYsTUFBTSxVQUFVLGlCQUFpQixDQUMvQixRQUFpQixFQUNqQixjQUFxQyxFQUNyQyxpQkFBK0I7SUFFL0IsT0FBTyxDQUFDLEtBQTZCLEVBQUUsRUFBRTtRQUN2QyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDOUIsTUFBTSxLQUFLLEdBQUcsUUFBUSxFQUFFLENBQUM7UUFDekIsTUFBTSxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFFeEMsT0FBTyxjQUFjLENBQUMsS0FBSyxDQUFDO1lBQzFCLENBQUMsQ0FBQyxJQUFJO1lBQ04sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLEVBQUU7Z0JBQzFDLFdBQVcsRUFBRSxXQUFXLElBQUksU0FBUztnQkFDckMsUUFBUSxFQUFFLFFBQVEsSUFBSSxTQUFTO2FBQ2hDLENBQUMsQ0FBQztJQUNULENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIENhbkFjdGl2YXRlRm4sIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmV4cG9ydCBmdW5jdGlvbiBoYXNGbG93U3RhdGVHdWFyZDxUPihcbiAgZ2V0U3RhdGU6ICgpID0+IFQsXG4gIGNoZWNrQ29uZGl0aW9uOiAoc3RhdGU6IFQpID0+IGJvb2xlYW4sXG4gIGdldE5hdmlnYXRpb25QYXRoOiAoKSA9PiBzdHJpbmcsXG4pOiBDYW5BY3RpdmF0ZUZuIHtcbiAgcmV0dXJuIChyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCkgPT4ge1xuICAgIGNvbnN0IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICAgIGNvbnN0IHN0YXRlID0gZ2V0U3RhdGUoKTtcbiAgICBjb25zdCB7IHF1ZXJ5UGFyYW1zLCBmcmFnbWVudCB9ID0gcm91dGU7XG5cbiAgICByZXR1cm4gY2hlY2tDb25kaXRpb24oc3RhdGUpXG4gICAgICA/IHRydWVcbiAgICAgIDogcm91dGVyLmNyZWF0ZVVybFRyZWUoW2dldE5hdmlnYXRpb25QYXRoKCldLCB7XG4gICAgICAgICAgcXVlcnlQYXJhbXM6IHF1ZXJ5UGFyYW1zID8/IHVuZGVmaW5lZCxcbiAgICAgICAgICBmcmFnbWVudDogZnJhZ21lbnQgPz8gdW5kZWZpbmVkLFxuICAgICAgICB9KTtcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './has-flow-state.guard';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2d1YXJkcy9oYXMtZmxvdy1zdGF0ZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9oYXMtZmxvdy1zdGF0ZS5ndWFyZCc7XG4iXX0=
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ActivatedRouteSnapshot, UrlSegment } from '@angular/router';
|
|
2
|
+
/**
|
|
3
|
+
* Returns a function that invokes the specified guard with a dummy route and state.
|
|
4
|
+
* The dummy route and state are created using the provided `urlPath`.
|
|
5
|
+
*
|
|
6
|
+
* @param guard - The guard function to be invoked.
|
|
7
|
+
* @param urlPath - The URL path to be used in the dummy route and state.
|
|
8
|
+
* @returns A function that invokes the guard with the dummy route and state.
|
|
9
|
+
*/
|
|
10
|
+
export function getGuardWithDummyUrl(guard, urlPath) {
|
|
11
|
+
const dummyRoute = new ActivatedRouteSnapshot();
|
|
12
|
+
dummyRoute.url = [new UrlSegment(urlPath, {})];
|
|
13
|
+
const dummyState = {
|
|
14
|
+
url: urlPath,
|
|
15
|
+
root: new ActivatedRouteSnapshot(),
|
|
16
|
+
};
|
|
17
|
+
return () => guard(dummyRoute, dummyState);
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWd1YXJkLXdpdGgtZHVtbXktdXJsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3BhbC1mcm9udGVuZC1jb21tb24vc3JjL2xpYi9ndWFyZHMvaGVscGVycy9nZXQtZ3VhcmQtd2l0aC1kdW1teS11cmwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFVBQVUsRUFBc0MsTUFBTSxpQkFBaUIsQ0FBQztBQUl6Rzs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxVQUFVLG9CQUFvQixDQUNsQyxLQUFvQixFQUNwQixPQUFlO0lBRWYsTUFBTSxVQUFVLEdBQUcsSUFBSSxzQkFBc0IsRUFBRSxDQUFDO0lBQ2hELFVBQVUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxJQUFJLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMvQyxNQUFNLFVBQVUsR0FBd0I7UUFDdEMsR0FBRyxFQUFFLE9BQU87UUFDWixJQUFJLEVBQUUsSUFBSSxzQkFBc0IsRUFBRTtLQUNuQyxDQUFDO0lBQ0YsT0FBTyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQzdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBVcmxTZWdtZW50LCBSb3V0ZXJTdGF0ZVNuYXBzaG90LCBDYW5BY3RpdmF0ZUZuIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEd1YXJkUmV0dXJuVHlwZSB9IGZyb20gJy4uL3R5cGVzJztcblxuLyoqXG4gKiBSZXR1cm5zIGEgZnVuY3Rpb24gdGhhdCBpbnZva2VzIHRoZSBzcGVjaWZpZWQgZ3VhcmQgd2l0aCBhIGR1bW15IHJvdXRlIGFuZCBzdGF0ZS5cbiAqIFRoZSBkdW1teSByb3V0ZSBhbmQgc3RhdGUgYXJlIGNyZWF0ZWQgdXNpbmcgdGhlIHByb3ZpZGVkIGB1cmxQYXRoYC5cbiAqXG4gKiBAcGFyYW0gZ3VhcmQgLSBUaGUgZ3VhcmQgZnVuY3Rpb24gdG8gYmUgaW52b2tlZC5cbiAqIEBwYXJhbSB1cmxQYXRoIC0gVGhlIFVSTCBwYXRoIHRvIGJlIHVzZWQgaW4gdGhlIGR1bW15IHJvdXRlIGFuZCBzdGF0ZS5cbiAqIEByZXR1cm5zIEEgZnVuY3Rpb24gdGhhdCBpbnZva2VzIHRoZSBndWFyZCB3aXRoIHRoZSBkdW1teSByb3V0ZSBhbmQgc3RhdGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRHdWFyZFdpdGhEdW1teVVybChcbiAgZ3VhcmQ6IENhbkFjdGl2YXRlRm4sXG4gIHVybFBhdGg6IHN0cmluZyxcbik6ICgpID0+IEd1YXJkUmV0dXJuVHlwZSB8IFByb21pc2U8R3VhcmRSZXR1cm5UeXBlPiB8IE9ic2VydmFibGU8R3VhcmRSZXR1cm5UeXBlPiB7XG4gIGNvbnN0IGR1bW15Um91dGUgPSBuZXcgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCgpO1xuICBkdW1teVJvdXRlLnVybCA9IFtuZXcgVXJsU2VnbWVudCh1cmxQYXRoLCB7fSldO1xuICBjb25zdCBkdW1teVN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90ID0ge1xuICAgIHVybDogdXJsUGF0aCxcbiAgICByb290OiBuZXcgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCgpLFxuICB9O1xuICByZXR1cm4gKCkgPT4gZ3VhcmQoZHVtbXlSb3V0ZSwgZHVtbXlTdGF0ZSk7XG59XG4iXX0=
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts an Observable result to a Promise.
|
|
3
|
+
* @param result The Observable result to handle.
|
|
4
|
+
* @returns A Promise that resolves with the value of the Observable.
|
|
5
|
+
*/
|
|
6
|
+
export function handleObservableResult(result) {
|
|
7
|
+
return new Promise((resolve) => {
|
|
8
|
+
result.subscribe((value) => {
|
|
9
|
+
resolve(value);
|
|
10
|
+
});
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZGxlLW9ic2VydmFibGUtcmVzdWx0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3BhbC1mcm9udGVuZC1jb21tb24vc3JjL2xpYi9ndWFyZHMvaGVscGVycy9oYW5kbGUtb2JzZXJ2YWJsZS1yZXN1bHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0E7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxNQUFtQztJQUN4RSxPQUFPLElBQUksT0FBTyxDQUFrQixDQUFDLE9BQU8sRUFBRSxFQUFFO1FBQzlDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUN6QixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBHdWFyZFJldHVyblR5cGUgfSBmcm9tICcuLi90eXBlcyc7XG5cbi8qKlxuICogQ29udmVydHMgYW4gT2JzZXJ2YWJsZSByZXN1bHQgdG8gYSBQcm9taXNlLlxuICogQHBhcmFtIHJlc3VsdCBUaGUgT2JzZXJ2YWJsZSByZXN1bHQgdG8gaGFuZGxlLlxuICogQHJldHVybnMgQSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgdmFsdWUgb2YgdGhlIE9ic2VydmFibGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVPYnNlcnZhYmxlUmVzdWx0KHJlc3VsdDogT2JzZXJ2YWJsZTxHdWFyZFJldHVyblR5cGU+KTogUHJvbWlzZTxHdWFyZFJldHVyblR5cGU+IHtcbiAgcmV0dXJuIG5ldyBQcm9taXNlPEd1YXJkUmV0dXJuVHlwZT4oKHJlc29sdmUpID0+IHtcbiAgICByZXN1bHQuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgcmVzb2x2ZSh2YWx1ZSk7XG4gICAgfSk7XG4gIH0pO1xufVxuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export * from './get-guard-with-dummy-url';
|
|
2
|
+
export * from './handle-observable-result';
|
|
3
|
+
export * from './run-auth-guard-with-context';
|
|
4
|
+
export * from './run-has-flow-state-guard-with-context';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2d1YXJkcy9oZWxwZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMseUNBQXlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2dldC1ndWFyZC13aXRoLWR1bW15LXVybCc7XG5leHBvcnQgKiBmcm9tICcuL2hhbmRsZS1vYnNlcnZhYmxlLXJlc3VsdCc7XG5leHBvcnQgKiBmcm9tICcuL3J1bi1hdXRoLWd1YXJkLXdpdGgtY29udGV4dCc7XG5leHBvcnQgKiBmcm9tICcuL3J1bi1oYXMtZmxvdy1zdGF0ZS1ndWFyZC13aXRoLWNvbnRleHQnO1xuIl19
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { TestBed } from '@angular/core/testing';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { handleObservableResult } from './handle-observable-result';
|
|
4
|
+
/**
|
|
5
|
+
* Runs an authentication guard function within the injection context of TestBed.
|
|
6
|
+
*
|
|
7
|
+
* @param authGuard - The authentication guard function to run.
|
|
8
|
+
* @returns A promise that resolves to a boolean or UrlTree indicating whether the user is authenticated.
|
|
9
|
+
*/
|
|
10
|
+
export async function runAuthGuardWithContext(authGuard) {
|
|
11
|
+
const result = TestBed.runInInjectionContext(authGuard);
|
|
12
|
+
const authenticated = result instanceof Observable ? await handleObservableResult(result) : result;
|
|
13
|
+
return authenticated;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLWF1dGgtZ3VhcmQtd2l0aC1jb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3BhbC1mcm9udGVuZC1jb21tb24vc3JjL2xpYi9ndWFyZHMvaGVscGVycy9ydW4tYXV0aC1ndWFyZC13aXRoLWNvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2hELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHcEU7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLHVCQUF1QixDQUMzQyxTQUF5RjtJQUV6RixNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDeEQsTUFBTSxhQUFhLEdBQUcsTUFBTSxZQUFZLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxzQkFBc0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ25HLE9BQU8sYUFBYSxDQUFDO0FBQ3ZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZXN0QmVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS90ZXN0aW5nJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGhhbmRsZU9ic2VydmFibGVSZXN1bHQgfSBmcm9tICcuL2hhbmRsZS1vYnNlcnZhYmxlLXJlc3VsdCc7XG5pbXBvcnQgeyBHdWFyZFJldHVyblR5cGUgfSBmcm9tICcuLi90eXBlcy9ndWFyZC1yZXR1cm4udHlwZSc7XG5cbi8qKlxuICogUnVucyBhbiBhdXRoZW50aWNhdGlvbiBndWFyZCBmdW5jdGlvbiB3aXRoaW4gdGhlIGluamVjdGlvbiBjb250ZXh0IG9mIFRlc3RCZWQuXG4gKlxuICogQHBhcmFtIGF1dGhHdWFyZCAtIFRoZSBhdXRoZW50aWNhdGlvbiBndWFyZCBmdW5jdGlvbiB0byBydW4uXG4gKiBAcmV0dXJucyBBIHByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhIGJvb2xlYW4gb3IgVXJsVHJlZSBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIHVzZXIgaXMgYXV0aGVudGljYXRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJ1bkF1dGhHdWFyZFdpdGhDb250ZXh0KFxuICBhdXRoR3VhcmQ6ICgpID0+IEd1YXJkUmV0dXJuVHlwZSB8IFByb21pc2U8R3VhcmRSZXR1cm5UeXBlPiB8IE9ic2VydmFibGU8R3VhcmRSZXR1cm5UeXBlPixcbik6IFByb21pc2U8R3VhcmRSZXR1cm5UeXBlPiB7XG4gIGNvbnN0IHJlc3VsdCA9IFRlc3RCZWQucnVuSW5JbmplY3Rpb25Db250ZXh0KGF1dGhHdWFyZCk7XG4gIGNvbnN0IGF1dGhlbnRpY2F0ZWQgPSByZXN1bHQgaW5zdGFuY2VvZiBPYnNlcnZhYmxlID8gYXdhaXQgaGFuZGxlT2JzZXJ2YWJsZVJlc3VsdChyZXN1bHQpIDogcmVzdWx0O1xuICByZXR1cm4gYXV0aGVudGljYXRlZDtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { TestBed } from '@angular/core/testing';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { handleObservableResult } from './handle-observable-result';
|
|
4
|
+
export async function runHasFlowStateGuardWithContext(hasFlowStateGuard) {
|
|
5
|
+
const result = TestBed.runInInjectionContext(hasFlowStateGuard);
|
|
6
|
+
const emptyFlow = result instanceof Observable ? await handleObservableResult(result) : result;
|
|
7
|
+
return emptyFlow;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuLWhhcy1mbG93LXN0YXRlLWd1YXJkLXdpdGgtY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29wYWwtZnJvbnRlbmQtY29tbW9uL3NyYy9saWIvZ3VhcmRzL2hlbHBlcnMvcnVuLWhhcy1mbG93LXN0YXRlLWd1YXJkLXdpdGgtY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUdwRSxNQUFNLENBQUMsS0FBSyxVQUFVLCtCQUErQixDQUNuRCxpQkFBaUc7SUFFakcsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDaEUsTUFBTSxTQUFTLEdBQUcsTUFBTSxZQUFZLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxzQkFBc0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQy9GLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZXN0QmVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS90ZXN0aW5nJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGhhbmRsZU9ic2VydmFibGVSZXN1bHQgfSBmcm9tICcuL2hhbmRsZS1vYnNlcnZhYmxlLXJlc3VsdCc7XG5pbXBvcnQgeyBHdWFyZFJldHVyblR5cGUgfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBydW5IYXNGbG93U3RhdGVHdWFyZFdpdGhDb250ZXh0KFxuICBoYXNGbG93U3RhdGVHdWFyZDogKCkgPT4gR3VhcmRSZXR1cm5UeXBlIHwgUHJvbWlzZTxHdWFyZFJldHVyblR5cGU+IHwgT2JzZXJ2YWJsZTxHdWFyZFJldHVyblR5cGU+LFxuKTogUHJvbWlzZTxHdWFyZFJldHVyblR5cGU+IHtcbiAgY29uc3QgcmVzdWx0ID0gVGVzdEJlZC5ydW5JbkluamVjdGlvbkNvbnRleHQoaGFzRmxvd1N0YXRlR3VhcmQpO1xuICBjb25zdCBlbXB0eUZsb3cgPSByZXN1bHQgaW5zdGFuY2VvZiBPYnNlcnZhYmxlID8gYXdhaXQgaGFuZGxlT2JzZXJ2YWJsZVJlc3VsdChyZXN1bHQpIDogcmVzdWx0O1xuICByZXR1cm4gZW1wdHlGbG93O1xufVxuIl19
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
// GUARDS
|
|
2
|
+
export * from './auth';
|
|
3
|
+
export * from './can-deactivate';
|
|
4
|
+
export * from './has-flow-state';
|
|
5
|
+
export * from './route-permissions';
|
|
6
|
+
export * from './signed-in';
|
|
7
|
+
// HELPERS AND TYPES
|
|
8
|
+
export * from './helpers';
|
|
9
|
+
export * from './types';
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2d1YXJkcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxTQUFTO0FBQ1QsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxhQUFhLENBQUM7QUFFNUIsb0JBQW9CO0FBQ3BCLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR1VBUkRTXG5leHBvcnQgKiBmcm9tICcuL2F1dGgnO1xuZXhwb3J0ICogZnJvbSAnLi9jYW4tZGVhY3RpdmF0ZSc7XG5leHBvcnQgKiBmcm9tICcuL2hhcy1mbG93LXN0YXRlJztcbmV4cG9ydCAqIGZyb20gJy4vcm91dGUtcGVybWlzc2lvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9zaWduZWQtaW4nO1xuXG4vLyBIRUxQRVJTIEFORCBUWVBFU1xuZXhwb3J0ICogZnJvbSAnLi9oZWxwZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './route-permissions.guard';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2d1YXJkcy9yb3V0ZS1wZXJtaXNzaW9ucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9yb3V0ZS1wZXJtaXNzaW9ucy5ndWFyZCc7XG4iXX0=
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { inject } from '@angular/core';
|
|
2
|
+
import { Router } from '@angular/router';
|
|
3
|
+
import { catchError, map, of } from 'rxjs';
|
|
4
|
+
import { PermissionsService } from '../../services/permissions-service';
|
|
5
|
+
import { SessionService } from '../../services/session-service';
|
|
6
|
+
import { PAGES_ROUTING_PATHS } from '../../pages/routing/constants/routing-paths.constant';
|
|
7
|
+
export const routePermissionsGuard = (route) => {
|
|
8
|
+
const permissionService = inject(PermissionsService);
|
|
9
|
+
const sessionService = inject(SessionService);
|
|
10
|
+
const router = inject(Router);
|
|
11
|
+
return sessionService.getUserState().pipe(map((resp) => {
|
|
12
|
+
const routePermissionId = route.data['routePermissionId'];
|
|
13
|
+
// Get the unique permission ids for the user
|
|
14
|
+
const uniquePermissionIds = permissionService.getUniquePermissions(resp);
|
|
15
|
+
// If we don't have a permission id for the route, or we don't have any unique permission ids, or the user doesn't have the required permission
|
|
16
|
+
// then redirect the user to the access denied page
|
|
17
|
+
if (!routePermissionId || uniquePermissionIds.length === 0 || !uniquePermissionIds.includes(routePermissionId)) {
|
|
18
|
+
return router.createUrlTree([`/${PAGES_ROUTING_PATHS.children.accessDenied}`]);
|
|
19
|
+
}
|
|
20
|
+
return true;
|
|
21
|
+
}), catchError(() => {
|
|
22
|
+
return of(false);
|
|
23
|
+
}));
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtcGVybWlzc2lvbnMuZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2d1YXJkcy9yb3V0ZS1wZXJtaXNzaW9ucy9yb3V0ZS1wZXJtaXNzaW9ucy5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBeUMsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUUzRixNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBa0IsQ0FBQyxLQUE2QixFQUFFLEVBQUU7SUFDcEYsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUNyRCxNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDOUMsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRTlCLE9BQU8sY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FDdkMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7UUFDWCxNQUFNLGlCQUFpQixHQUFXLEtBQUssQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUVsRSw2Q0FBNkM7UUFDN0MsTUFBTSxtQkFBbUIsR0FBRyxpQkFBaUIsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV6RSwrSUFBK0k7UUFDL0ksbURBQW1EO1FBQ25ELElBQUksQ0FBQyxpQkFBaUIsSUFBSSxtQkFBbUIsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztZQUMvRyxPQUFPLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxJQUFJLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDakYsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQyxDQUFDLEVBQ0YsVUFBVSxDQUFDLEdBQUcsRUFBRTtRQUNkLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25CLENBQUMsQ0FBQyxDQUNILENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIENhbkFjdGl2YXRlRm4sIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQZXJtaXNzaW9uc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9wZXJtaXNzaW9ucy1zZXJ2aWNlJztcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2Vzc2lvbi1zZXJ2aWNlJztcbmltcG9ydCB7IFBBR0VTX1JPVVRJTkdfUEFUSFMgfSBmcm9tICcuLi8uLi9wYWdlcy9yb3V0aW5nL2NvbnN0YW50cy9yb3V0aW5nLXBhdGhzLmNvbnN0YW50JztcblxuZXhwb3J0IGNvbnN0IHJvdXRlUGVybWlzc2lvbnNHdWFyZDogQ2FuQWN0aXZhdGVGbiA9IChyb3V0ZTogQWN0aXZhdGVkUm91dGVTbmFwc2hvdCkgPT4ge1xuICBjb25zdCBwZXJtaXNzaW9uU2VydmljZSA9IGluamVjdChQZXJtaXNzaW9uc1NlcnZpY2UpO1xuICBjb25zdCBzZXNzaW9uU2VydmljZSA9IGluamVjdChTZXNzaW9uU2VydmljZSk7XG4gIGNvbnN0IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuXG4gIHJldHVybiBzZXNzaW9uU2VydmljZS5nZXRVc2VyU3RhdGUoKS5waXBlKFxuICAgIG1hcCgocmVzcCkgPT4ge1xuICAgICAgY29uc3Qgcm91dGVQZXJtaXNzaW9uSWQ6IG51bWJlciA9IHJvdXRlLmRhdGFbJ3JvdXRlUGVybWlzc2lvbklkJ107XG5cbiAgICAgIC8vIEdldCB0aGUgdW5pcXVlIHBlcm1pc3Npb24gaWRzIGZvciB0aGUgdXNlclxuICAgICAgY29uc3QgdW5pcXVlUGVybWlzc2lvbklkcyA9IHBlcm1pc3Npb25TZXJ2aWNlLmdldFVuaXF1ZVBlcm1pc3Npb25zKHJlc3ApO1xuXG4gICAgICAvLyBJZiB3ZSBkb24ndCBoYXZlIGEgcGVybWlzc2lvbiBpZCBmb3IgdGhlIHJvdXRlLCBvciB3ZSBkb24ndCBoYXZlIGFueSB1bmlxdWUgcGVybWlzc2lvbiBpZHMsIG9yIHRoZSB1c2VyIGRvZXNuJ3QgaGF2ZSB0aGUgcmVxdWlyZWQgcGVybWlzc2lvblxuICAgICAgLy8gdGhlbiByZWRpcmVjdCB0aGUgdXNlciB0byB0aGUgYWNjZXNzIGRlbmllZCBwYWdlXG4gICAgICBpZiAoIXJvdXRlUGVybWlzc2lvbklkIHx8IHVuaXF1ZVBlcm1pc3Npb25JZHMubGVuZ3RoID09PSAwIHx8ICF1bmlxdWVQZXJtaXNzaW9uSWRzLmluY2x1ZGVzKHJvdXRlUGVybWlzc2lvbklkKSkge1xuICAgICAgICByZXR1cm4gcm91dGVyLmNyZWF0ZVVybFRyZWUoW2AvJHtQQUdFU19ST1VUSU5HX1BBVEhTLmNoaWxkcmVuLmFjY2Vzc0RlbmllZH1gXSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0pLFxuICAgIGNhdGNoRXJyb3IoKCkgPT4ge1xuICAgICAgcmV0dXJuIG9mKGZhbHNlKTtcbiAgICB9KSxcbiAgKTtcbn07XG4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
// GUARD
|
|
2
|
+
export * from './signed-in.guard';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2d1YXJkcy9zaWduZWQtaW4vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsUUFBUTtBQUNSLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHVUFSRFxuZXhwb3J0ICogZnJvbSAnLi9zaWduZWQtaW4uZ3VhcmQnO1xuIl19
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { inject } from '@angular/core';
|
|
2
|
+
import { Router } from '@angular/router';
|
|
3
|
+
import { map, catchError, of } from 'rxjs';
|
|
4
|
+
import { AuthService } from '../../services';
|
|
5
|
+
/**
|
|
6
|
+
* A guard that checks if the user is signed in.
|
|
7
|
+
* If the user is signed in, it redirects to the default route.
|
|
8
|
+
* If the user is not signed in, it allows access to the route.
|
|
9
|
+
* @returns An Observable<boolean> indicating whether the user is signed in or not.
|
|
10
|
+
*/
|
|
11
|
+
export const signedInGuard = () => {
|
|
12
|
+
const authService = inject(AuthService);
|
|
13
|
+
const router = inject(Router);
|
|
14
|
+
return authService.checkAuthenticated().pipe(map(() => {
|
|
15
|
+
return router.createUrlTree(['/']);
|
|
16
|
+
}), catchError(() => {
|
|
17
|
+
return of(true);
|
|
18
|
+
}));
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmVkLWluLmd1YXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3BhbC1mcm9udGVuZC1jb21tb24vc3JjL2xpYi9ndWFyZHMvc2lnbmVkLWluL3NpZ25lZC1pbi5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBaUIsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3Qzs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBa0IsR0FBRyxFQUFFO0lBQy9DLE1BQU0sV0FBVyxHQUFnQixNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckQsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRTlCLE9BQU8sV0FBVyxDQUFDLGtCQUFrQixFQUFFLENBQUMsSUFBSSxDQUMxQyxHQUFHLENBQUMsR0FBRyxFQUFFO1FBQ1AsT0FBTyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNyQyxDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsR0FBRyxFQUFFO1FBQ2QsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztBQUNKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FuQWN0aXZhdGVGbiwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IG1hcCwgY2F0Y2hFcnJvciwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG4vKipcbiAqIEEgZ3VhcmQgdGhhdCBjaGVja3MgaWYgdGhlIHVzZXIgaXMgc2lnbmVkIGluLlxuICogSWYgdGhlIHVzZXIgaXMgc2lnbmVkIGluLCBpdCByZWRpcmVjdHMgdG8gdGhlIGRlZmF1bHQgcm91dGUuXG4gKiBJZiB0aGUgdXNlciBpcyBub3Qgc2lnbmVkIGluLCBpdCBhbGxvd3MgYWNjZXNzIHRvIHRoZSByb3V0ZS5cbiAqIEByZXR1cm5zIEFuIE9ic2VydmFibGU8Ym9vbGVhbj4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSB1c2VyIGlzIHNpZ25lZCBpbiBvciBub3QuXG4gKi9cbmV4cG9ydCBjb25zdCBzaWduZWRJbkd1YXJkOiBDYW5BY3RpdmF0ZUZuID0gKCkgPT4ge1xuICBjb25zdCBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UgPSBpbmplY3QoQXV0aFNlcnZpY2UpO1xuICBjb25zdCByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcblxuICByZXR1cm4gYXV0aFNlcnZpY2UuY2hlY2tBdXRoZW50aWNhdGVkKCkucGlwZShcbiAgICBtYXAoKCkgPT4ge1xuICAgICAgcmV0dXJuIHJvdXRlci5jcmVhdGVVcmxUcmVlKFsnLyddKTtcbiAgICB9KSxcbiAgICBjYXRjaEVycm9yKCgpID0+IHtcbiAgICAgIHJldHVybiBvZih0cnVlKTtcbiAgICB9KSxcbiAgKTtcbn07XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FuLWRlYWN0aXZhdGUudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29wYWwtZnJvbnRlbmQtY29tbW9uL3NyYy9saWIvZ3VhcmRzL3R5cGVzL2Nhbi1kZWFjdGl2YXRlLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFVybFRyZWUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgdHlwZSBDYW5EZWFjdGl2YXRlVHlwZXMgPSBPYnNlcnZhYmxlPGJvb2xlYW4gfCBVcmxUcmVlPiB8IFByb21pc2U8Ym9vbGVhbiB8IFVybFRyZWU+IHwgYm9vbGVhbiB8IFVybFRyZWU7XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VhcmQtcmV0dXJuLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2d1YXJkcy90eXBlcy9ndWFyZC1yZXR1cm4udHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXJsVHJlZSwgUmVkaXJlY3RDb21tYW5kIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuZXhwb3J0IHR5cGUgR3VhcmRSZXR1cm5UeXBlID0gYm9vbGVhbiB8IFVybFRyZWUgfCBSZWRpcmVjdENvbW1hbmQ7XG4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './can-deactivate.type';
|
|
2
|
+
export * from './guard-return.type';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2d1YXJkcy90eXBlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Nhbi1kZWFjdGl2YXRlLnR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9ndWFyZC1yZXR1cm4udHlwZSc7XG4iXX0=
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { inject } from '@angular/core';
|
|
2
|
+
import { catchError, tap, throwError } from 'rxjs';
|
|
3
|
+
import { AppInsightsService } from '../../services/app-insights/app-insights.service';
|
|
4
|
+
import { GlobalStore } from '../../stores';
|
|
5
|
+
export const httpErrorInterceptor = (req, next) => {
|
|
6
|
+
const globalStore = inject(GlobalStore);
|
|
7
|
+
const appInsightsService = inject(AppInsightsService);
|
|
8
|
+
return next(req).pipe(tap(() => {
|
|
9
|
+
// Clear the state service on new requests
|
|
10
|
+
globalStore.setError({ error: false, message: '' });
|
|
11
|
+
}), catchError((error) => {
|
|
12
|
+
// Ensure ErrorEvent is handled only in browser environments
|
|
13
|
+
const isBrowser = typeof window !== 'undefined';
|
|
14
|
+
const isErrorEvent = isBrowser && typeof ErrorEvent !== 'undefined' && error.error instanceof ErrorEvent;
|
|
15
|
+
const errorMessage = isErrorEvent ? `Error: ${error.error.message}` : `Error: ${error.message}`;
|
|
16
|
+
globalStore.setError({
|
|
17
|
+
error: true,
|
|
18
|
+
message: errorMessage,
|
|
19
|
+
});
|
|
20
|
+
appInsightsService.logException(error);
|
|
21
|
+
return throwError(() => error);
|
|
22
|
+
}));
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1lcnJvci5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29wYWwtZnJvbnRlbmQtY29tbW9uL3NyYy9saWIvaW50ZXJjZXB0b3JzL2h0dHAtZXJyb3IvaHR0cC1lcnJvci5pbnRlcmNlcHRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTNDLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFzQixDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRTtJQUNuRSxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDeEMsTUFBTSxrQkFBa0IsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUV0RCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQ25CLEdBQUcsQ0FBQyxHQUFHLEVBQUU7UUFDUCwwQ0FBMEM7UUFDMUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDdEQsQ0FBQyxDQUFDLEVBQ0YsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDbkIsNERBQTREO1FBQzVELE1BQU0sU0FBUyxHQUFHLE9BQU8sTUFBTSxLQUFLLFdBQVcsQ0FBQztRQUNoRCxNQUFNLFlBQVksR0FBRyxTQUFTLElBQUksT0FBTyxVQUFVLEtBQUssV0FBVyxJQUFJLEtBQUssQ0FBQyxLQUFLLFlBQVksVUFBVSxDQUFDO1FBRXpHLE1BQU0sWUFBWSxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsVUFBVSxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUVoRyxXQUFXLENBQUMsUUFBUSxDQUFDO1lBQ25CLEtBQUssRUFBRSxJQUFJO1lBQ1gsT0FBTyxFQUFFLFlBQVk7U0FDdEIsQ0FBQyxDQUFDO1FBRUgsa0JBQWtCLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXZDLE9BQU8sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUMsQ0FBQyxDQUNILENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwSW50ZXJjZXB0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgdGFwLCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBcHBJbnNpZ2h0c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9hcHAtaW5zaWdodHMvYXBwLWluc2lnaHRzLnNlcnZpY2UnO1xuaW1wb3J0IHsgR2xvYmFsU3RvcmUgfSBmcm9tICcuLi8uLi9zdG9yZXMnO1xuXG5leHBvcnQgY29uc3QgaHR0cEVycm9ySW50ZXJjZXB0b3I6IEh0dHBJbnRlcmNlcHRvckZuID0gKHJlcSwgbmV4dCkgPT4ge1xuICBjb25zdCBnbG9iYWxTdG9yZSA9IGluamVjdChHbG9iYWxTdG9yZSk7XG4gIGNvbnN0IGFwcEluc2lnaHRzU2VydmljZSA9IGluamVjdChBcHBJbnNpZ2h0c1NlcnZpY2UpO1xuXG4gIHJldHVybiBuZXh0KHJlcSkucGlwZShcbiAgICB0YXAoKCkgPT4ge1xuICAgICAgLy8gQ2xlYXIgdGhlIHN0YXRlIHNlcnZpY2Ugb24gbmV3IHJlcXVlc3RzXG4gICAgICBnbG9iYWxTdG9yZS5zZXRFcnJvcih7IGVycm9yOiBmYWxzZSwgbWVzc2FnZTogJycgfSk7XG4gICAgfSksXG4gICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgIC8vIEVuc3VyZSBFcnJvckV2ZW50IGlzIGhhbmRsZWQgb25seSBpbiBicm93c2VyIGVudmlyb25tZW50c1xuICAgICAgY29uc3QgaXNCcm93c2VyID0gdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCc7XG4gICAgICBjb25zdCBpc0Vycm9yRXZlbnQgPSBpc0Jyb3dzZXIgJiYgdHlwZW9mIEVycm9yRXZlbnQgIT09ICd1bmRlZmluZWQnICYmIGVycm9yLmVycm9yIGluc3RhbmNlb2YgRXJyb3JFdmVudDtcblxuICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gaXNFcnJvckV2ZW50ID8gYEVycm9yOiAke2Vycm9yLmVycm9yLm1lc3NhZ2V9YCA6IGBFcnJvcjogJHtlcnJvci5tZXNzYWdlfWA7XG5cbiAgICAgIGdsb2JhbFN0b3JlLnNldEVycm9yKHtcbiAgICAgICAgZXJyb3I6IHRydWUsXG4gICAgICAgIG1lc3NhZ2U6IGVycm9yTWVzc2FnZSxcbiAgICAgIH0pO1xuXG4gICAgICBhcHBJbnNpZ2h0c1NlcnZpY2UubG9nRXhjZXB0aW9uKGVycm9yKTtcblxuICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xuICAgIH0pLFxuICApO1xufTtcbiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { httpErrorInterceptor } from './http-error/http-error.interceptor';
|
|
2
|
+
export { httpErrorInterceptor };
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL2ludGVyY2VwdG9ycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGh0dHBFcnJvckludGVyY2VwdG9yIH0gZnJvbSAnLi9odHRwLWVycm9yL2h0dHAtZXJyb3IuaW50ZXJjZXB0b3InO1xuXG5leHBvcnQgeyBodHRwRXJyb3JJbnRlcmNlcHRvciB9O1xuIl19
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { GovukButtonComponent } from './components/govuk/govuk-button/govuk-button.component';
|
|
3
|
+
import { GovukTextInputComponent } from './components/govuk/govuk-text-input/govuk-text-input.component';
|
|
4
|
+
import { CommonModule } from '@angular/common';
|
|
5
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
6
|
+
import { RouterModule } from '@angular/router';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@angular/router";
|
|
9
|
+
export const GOV_UI_COMPONENTS = [GovukButtonComponent, GovukTextInputComponent];
|
|
10
|
+
export class OpalFrontendCommonModule {
|
|
11
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OpalFrontendCommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
12
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: OpalFrontendCommonModule, imports: [GovukButtonComponent, GovukTextInputComponent, CommonModule, FormsModule, ReactiveFormsModule, i1.RouterModule], exports: [GovukButtonComponent, GovukTextInputComponent] });
|
|
13
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OpalFrontendCommonModule, imports: [GOV_UI_COMPONENTS, CommonModule, FormsModule, ReactiveFormsModule, RouterModule.forChild([])] });
|
|
14
|
+
}
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OpalFrontendCommonModule, decorators: [{
|
|
16
|
+
type: NgModule,
|
|
17
|
+
args: [{
|
|
18
|
+
imports: [...GOV_UI_COMPONENTS, CommonModule, FormsModule, ReactiveFormsModule, RouterModule.forChild([])],
|
|
19
|
+
exports: [...GOV_UI_COMPONENTS],
|
|
20
|
+
}]
|
|
21
|
+
}] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BhbC1mcm9udGVuZC1jb21tb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvb3BhbC1mcm9udGVuZC1jb21tb24vc3JjL2xpYi9vcGFsLWZyb250ZW5kLWNvbW1vbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUM5RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUN6RyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBRS9DLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsb0JBQW9CLEVBQUUsdUJBQXVCLENBQUMsQ0FBQztBQU1qRixNQUFNLE9BQU8sd0JBQXdCO3dHQUF4Qix3QkFBd0I7eUdBQXhCLHdCQUF3QixZQU5ILG9CQUFvQixFQUFFLHVCQUF1QixFQUc3QyxZQUFZLEVBQUUsV0FBVyxFQUFFLG1CQUFtQiw4QkFIOUMsb0JBQW9CLEVBQUUsdUJBQXVCO3lHQU1sRSx3QkFBd0IsWUFIdEIsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxZQUFZLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQzs7NEZBRzlGLHdCQUF3QjtrQkFKcEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxHQUFHLGlCQUFpQixFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDMUcsT0FBTyxFQUFFLENBQUMsR0FBRyxpQkFBaUIsQ0FBQztpQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR292dWtCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZ292dWsvZ292dWstYnV0dG9uL2dvdnVrLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgR292dWtUZXh0SW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZ292dWsvZ292dWstdGV4dC1pbnB1dC9nb3Z1ay10ZXh0LWlucHV0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5leHBvcnQgY29uc3QgR09WX1VJX0NPTVBPTkVOVFMgPSBbR292dWtCdXR0b25Db21wb25lbnQsIEdvdnVrVGV4dElucHV0Q29tcG9uZW50XTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogWy4uLkdPVl9VSV9DT01QT05FTlRTLCBDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBSb3V0ZXJNb2R1bGUuZm9yQ2hpbGQoW10pXSxcbiAgZXhwb3J0czogWy4uLkdPVl9VSV9DT01QT05FTlRTXSxcbn0pXG5leHBvcnQgY2xhc3MgT3BhbEZyb250ZW5kQ29tbW9uTW9kdWxlIHt9XG4iXX0=
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, inject } from '@angular/core';
|
|
2
|
+
import { Router } from '@angular/router';
|
|
3
|
+
import { GovukButtonComponent } from '../../components/govuk';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class AccessDeniedComponent {
|
|
6
|
+
router = inject(Router);
|
|
7
|
+
handleGoBackButtonClick() {
|
|
8
|
+
// For now, test page will act as our 'Dashboard' page
|
|
9
|
+
this.router.navigate(['/']);
|
|
10
|
+
}
|
|
11
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AccessDeniedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AccessDeniedComponent, isStandalone: true, selector: "opal-lib-access-denied", ngImport: i0, template: "<div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Access Denied</h1>\n <p class=\"govuk-body\">You do not have the appropriate permissions to access this page.</p>\n <p class=\"govuk-body\">\n <opal-lib-govuk-button\n buttonClasses=\"govuk-button--secondary\"\n buttonId=\"go-back\"\n (buttonClickEvent)=\"handleGoBackButtonClick()\"\n >\n Back to dashboard</opal-lib-govuk-button\n >\n </p>\n </div>\n</div>\n", dependencies: [{ kind: "component", type: GovukButtonComponent, selector: "opal-lib-govuk-button", inputs: ["buttonId", "type", "buttonClasses"], outputs: ["buttonClickEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AccessDeniedComponent, decorators: [{
|
|
15
|
+
type: Component,
|
|
16
|
+
args: [{ standalone: true, selector: 'opal-lib-access-denied', imports: [GovukButtonComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Access Denied</h1>\n <p class=\"govuk-body\">You do not have the appropriate permissions to access this page.</p>\n <p class=\"govuk-body\">\n <opal-lib-govuk-button\n buttonClasses=\"govuk-button--secondary\"\n buttonId=\"go-back\"\n (buttonClickEvent)=\"handleGoBackButtonClick()\"\n >\n Back to dashboard</opal-lib-govuk-button\n >\n </p>\n </div>\n</div>\n" }]
|
|
17
|
+
}] });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjZXNzLWRlbmllZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL3BhZ2VzL2FjY2Vzcy1kZW5pZWQvYWNjZXNzLWRlbmllZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL3BhZ2VzL2FjY2Vzcy1kZW5pZWQvYWNjZXNzLWRlbmllZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBUzlELE1BQU0sT0FBTyxxQkFBcUI7SUFDZixNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRWxDLHVCQUF1QjtRQUM1QixzREFBc0Q7UUFDdEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzlCLENBQUM7d0dBTlUscUJBQXFCOzRGQUFyQixxQkFBcUIsa0ZDWGxDLGloQkFlQSw0Q0RSWSxvQkFBb0I7OzRGQUluQixxQkFBcUI7a0JBUGpDLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLHdCQUF3QixXQUN6QixDQUFDLG9CQUFvQixDQUFDLG1CQUVkLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBHb3Z1a0J1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvZ292dWsnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdvcGFsLWxpYi1hY2Nlc3MtZGVuaWVkJyxcbiAgaW1wb3J0czogW0dvdnVrQnV0dG9uQ29tcG9uZW50XSxcbiAgdGVtcGxhdGVVcmw6ICcuL2FjY2Vzcy1kZW5pZWQuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQWNjZXNzRGVuaWVkQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcblxuICBwdWJsaWMgaGFuZGxlR29CYWNrQnV0dG9uQ2xpY2soKTogdm9pZCB7XG4gICAgLy8gRm9yIG5vdywgdGVzdCBwYWdlIHdpbGwgYWN0IGFzIG91ciAnRGFzaGJvYXJkJyBwYWdlXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvJ10pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZ292dWstZ3JpZC1yb3dcIj5cbiAgPGRpdiBjbGFzcz1cImdvdnVrLWdyaWQtY29sdW1uLXR3by10aGlyZHNcIj5cbiAgICA8aDEgY2xhc3M9XCJnb3Z1ay1oZWFkaW5nLWxcIj5BY2Nlc3MgRGVuaWVkPC9oMT5cbiAgICA8cCBjbGFzcz1cImdvdnVrLWJvZHlcIj5Zb3UgZG8gbm90IGhhdmUgdGhlIGFwcHJvcHJpYXRlIHBlcm1pc3Npb25zIHRvIGFjY2VzcyB0aGlzIHBhZ2UuPC9wPlxuICAgIDxwIGNsYXNzPVwiZ292dWstYm9keVwiPlxuICAgICAgPG9wYWwtbGliLWdvdnVrLWJ1dHRvblxuICAgICAgICBidXR0b25DbGFzc2VzPVwiZ292dWstYnV0dG9uLS1zZWNvbmRhcnlcIlxuICAgICAgICBidXR0b25JZD1cImdvLWJhY2tcIlxuICAgICAgICAoYnV0dG9uQ2xpY2tFdmVudCk9XCJoYW5kbGVHb0JhY2tCdXR0b25DbGljaygpXCJcbiAgICAgID5cbiAgICAgICAgQmFjayB0byBkYXNoYm9hcmQ8L29wYWwtbGliLWdvdnVrLWJ1dHRvblxuICAgICAgPlxuICAgIDwvcD5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export * from './access-denied/access-denied.component';
|
|
2
|
+
export * from './sign-in/sign-in.component';
|
|
3
|
+
export * from './routing/pages.routes';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL3BhZ2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY2Nlc3MtZGVuaWVkL2FjY2Vzcy1kZW5pZWQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2lnbi1pbi9zaWduLWluLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3JvdXRpbmcvcGFnZXMucm91dGVzJztcbiJdfQ==
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export const PAGES_ROUTING_PATHS = {
|
|
2
|
+
root: '',
|
|
3
|
+
children: {
|
|
4
|
+
accessDenied: 'access-denied',
|
|
5
|
+
signIn: 'sign-in',
|
|
6
|
+
signInStub: 'sign-in-stub',
|
|
7
|
+
},
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGluZy1wYXRocy5jb25zdGFudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29wYWwtZnJvbnRlbmQtY29tbW9uL3NyYy9saWIvcGFnZXMvcm91dGluZy9jb25zdGFudHMvcm91dGluZy1wYXRocy5jb25zdGFudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBdUI7SUFDckQsSUFBSSxFQUFFLEVBQUU7SUFDUixRQUFRLEVBQUU7UUFDUixZQUFZLEVBQUUsZUFBZTtRQUM3QixNQUFNLEVBQUUsU0FBUztRQUNqQixVQUFVLEVBQUUsY0FBYztLQUMzQjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUGFnZXNSb3V0aW5nUGF0aHMgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3JvdXRpbmctcGF0aHMuaW50ZXJmYWNlJztcblxuZXhwb3J0IGNvbnN0IFBBR0VTX1JPVVRJTkdfUEFUSFM6IElQYWdlc1JvdXRpbmdQYXRocyA9IHtcbiAgcm9vdDogJycsXG4gIGNoaWxkcmVuOiB7XG4gICAgYWNjZXNzRGVuaWVkOiAnYWNjZXNzLWRlbmllZCcsXG4gICAgc2lnbkluOiAnc2lnbi1pbicsXG4gICAgc2lnbkluU3R1YjogJ3NpZ24taW4tc3R1YicsXG4gIH0sXG59O1xuIl19
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export const PAGES_ROUTING_TITLES = {
|
|
2
|
+
root: '',
|
|
3
|
+
children: {
|
|
4
|
+
accessDenied: 'Access denied',
|
|
5
|
+
signIn: 'Sign in',
|
|
6
|
+
signInStub: 'Sign in',
|
|
7
|
+
},
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGluZy10aXRsZXMuY29uc3RhbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL3BhZ2VzL3JvdXRpbmcvY29uc3RhbnRzL3JvdXRpbmctdGl0bGVzLmNvbnN0YW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUF1QjtJQUN0RCxJQUFJLEVBQUUsRUFBRTtJQUNSLFFBQVEsRUFBRTtRQUNSLFlBQVksRUFBRSxlQUFlO1FBQzdCLE1BQU0sRUFBRSxTQUFTO1FBQ2pCLFVBQVUsRUFBRSxTQUFTO0tBQ3RCO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQYWdlc1JvdXRpbmdQYXRocyB9IGZyb20gJy4uL2ludGVyZmFjZXMvcm91dGluZy1wYXRocy5pbnRlcmZhY2UnO1xuXG5leHBvcnQgY29uc3QgUEFHRVNfUk9VVElOR19USVRMRVM6IElQYWdlc1JvdXRpbmdQYXRocyA9IHtcbiAgcm9vdDogJycsXG4gIGNoaWxkcmVuOiB7XG4gICAgYWNjZXNzRGVuaWVkOiAnQWNjZXNzIGRlbmllZCcsXG4gICAgc2lnbkluOiAnU2lnbiBpbicsXG4gICAgc2lnbkluU3R1YjogJ1NpZ24gaW4nLFxuICB9LFxufTtcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGluZy1wYXRocy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL3BhZ2VzL3JvdXRpbmcvaW50ZXJmYWNlcy9yb3V0aW5nLXBhdGhzLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUNoaWxkUm91dGluZ1BhdGhzIH0gZnJvbSAnLi4vLi4vLi4vcm91dGluZyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVBhZ2VzUm91dGluZ1BhdGhzIGV4dGVuZHMgSUNoaWxkUm91dGluZ1BhdGhzIHtcbiAgY2hpbGRyZW46IHtcbiAgICBhY2Nlc3NEZW5pZWQ6IHN0cmluZztcbiAgICBzaWduSW46IHN0cmluZztcbiAgICBzaWduSW5TdHViOiBzdHJpbmc7XG4gIH07XG59XG4iXX0=
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { PAGES_ROUTING_TITLES } from './constants/routing-titles.constant';
|
|
2
|
+
import { PAGES_ROUTING_PATHS } from './constants/routing-paths.constant';
|
|
3
|
+
import { authGuard } from '../../guards';
|
|
4
|
+
import { userStateResolver } from '../../resolvers/user-state/user-state.resolver';
|
|
5
|
+
import { TitleResolver } from '../../resolvers/title/title.resolver';
|
|
6
|
+
import { signedInGuard } from '../../guards/signed-in/signed-in.guard';
|
|
7
|
+
export const routing = [
|
|
8
|
+
{ path: '', redirectTo: 'dashboard', pathMatch: 'full' },
|
|
9
|
+
{
|
|
10
|
+
path: PAGES_ROUTING_PATHS.children.accessDenied,
|
|
11
|
+
loadComponent: () => import('../access-denied/access-denied.component').then((c) => c.AccessDeniedComponent),
|
|
12
|
+
canActivate: [authGuard],
|
|
13
|
+
data: { title: PAGES_ROUTING_TITLES.children.accessDenied },
|
|
14
|
+
resolve: { userState: userStateResolver, title: TitleResolver },
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
path: PAGES_ROUTING_PATHS.children.signIn,
|
|
18
|
+
loadComponent: () => import('../sign-in/sign-in.component').then((c) => c.SignInComponent),
|
|
19
|
+
canActivate: [signedInGuard],
|
|
20
|
+
data: { title: PAGES_ROUTING_TITLES.children.signIn },
|
|
21
|
+
resolve: { title: TitleResolver },
|
|
22
|
+
},
|
|
23
|
+
];
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZXMucm91dGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3BhbC1mcm9udGVuZC1jb21tb24vc3JjL2xpYi9wYWdlcy9yb3V0aW5nL3BhZ2VzLnJvdXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ25GLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFdkUsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFXO0lBQzdCLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUU7SUFDeEQ7UUFDRSxJQUFJLEVBQUUsbUJBQW1CLENBQUMsUUFBUSxDQUFDLFlBQVk7UUFDL0MsYUFBYSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDO1FBQzVHLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQztRQUN4QixJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsb0JBQW9CLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRTtRQUMzRCxPQUFPLEVBQUUsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRTtLQUNoRTtJQUNEO1FBQ0UsSUFBSSxFQUFFLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxNQUFNO1FBQ3pDLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsOEJBQThCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUM7UUFDMUYsV0FBVyxFQUFFLENBQUMsYUFBYSxDQUFDO1FBQzVCLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFO1FBQ3JELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUU7S0FDbEM7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm91dGVzIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFBBR0VTX1JPVVRJTkdfVElUTEVTIH0gZnJvbSAnLi9jb25zdGFudHMvcm91dGluZy10aXRsZXMuY29uc3RhbnQnO1xuaW1wb3J0IHsgUEFHRVNfUk9VVElOR19QQVRIUyB9IGZyb20gJy4vY29uc3RhbnRzL3JvdXRpbmctcGF0aHMuY29uc3RhbnQnO1xuaW1wb3J0IHsgYXV0aEd1YXJkIH0gZnJvbSAnLi4vLi4vZ3VhcmRzJztcbmltcG9ydCB7IHVzZXJTdGF0ZVJlc29sdmVyIH0gZnJvbSAnLi4vLi4vcmVzb2x2ZXJzL3VzZXItc3RhdGUvdXNlci1zdGF0ZS5yZXNvbHZlcic7XG5pbXBvcnQgeyBUaXRsZVJlc29sdmVyIH0gZnJvbSAnLi4vLi4vcmVzb2x2ZXJzL3RpdGxlL3RpdGxlLnJlc29sdmVyJztcbmltcG9ydCB7IHNpZ25lZEluR3VhcmQgfSBmcm9tICcuLi8uLi9ndWFyZHMvc2lnbmVkLWluL3NpZ25lZC1pbi5ndWFyZCc7XG5cbmV4cG9ydCBjb25zdCByb3V0aW5nOiBSb3V0ZXMgPSBbXG4gIHsgcGF0aDogJycsIHJlZGlyZWN0VG86ICdkYXNoYm9hcmQnLCBwYXRoTWF0Y2g6ICdmdWxsJyB9LFxuICB7XG4gICAgcGF0aDogUEFHRVNfUk9VVElOR19QQVRIUy5jaGlsZHJlbi5hY2Nlc3NEZW5pZWQsXG4gICAgbG9hZENvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuLi9hY2Nlc3MtZGVuaWVkL2FjY2Vzcy1kZW5pZWQuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5BY2Nlc3NEZW5pZWRDb21wb25lbnQpLFxuICAgIGNhbkFjdGl2YXRlOiBbYXV0aEd1YXJkXSxcbiAgICBkYXRhOiB7IHRpdGxlOiBQQUdFU19ST1VUSU5HX1RJVExFUy5jaGlsZHJlbi5hY2Nlc3NEZW5pZWQgfSxcbiAgICByZXNvbHZlOiB7IHVzZXJTdGF0ZTogdXNlclN0YXRlUmVzb2x2ZXIsIHRpdGxlOiBUaXRsZVJlc29sdmVyIH0sXG4gIH0sXG4gIHtcbiAgICBwYXRoOiBQQUdFU19ST1VUSU5HX1BBVEhTLmNoaWxkcmVuLnNpZ25JbixcbiAgICBsb2FkQ29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4uL3NpZ24taW4vc2lnbi1pbi5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLlNpZ25JbkNvbXBvbmVudCksXG4gICAgY2FuQWN0aXZhdGU6IFtzaWduZWRJbkd1YXJkXSxcbiAgICBkYXRhOiB7IHRpdGxlOiBQQUdFU19ST1VUSU5HX1RJVExFUy5jaGlsZHJlbi5zaWduSW4gfSxcbiAgICByZXNvbHZlOiB7IHRpdGxlOiBUaXRsZVJlc29sdmVyIH0sXG4gIH0sXG5dO1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcGFsLWZyb250ZW5kLWNvbW1vbi9zcmMvbGliL3BhZ2VzL3NpZ24taW4vaW50ZXJmYWNlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVNpZ25JblN0dWJGb3JtIH0gZnJvbSAnLi9zaWduLWluLXN0dWItZm9ybS5pbnRlcmZhY2UnO1xuXG5leHBvcnQgdHlwZSB7IElTaWduSW5TdHViRm9ybSB9O1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbi1pbi1zdHViLWZvcm0uaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3BhbC1mcm9udGVuZC1jb21tb24vc3JjL2xpYi9wYWdlcy9zaWduLWluL2ludGVyZmFjZXMvc2lnbi1pbi1zdHViLWZvcm0uaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElTaWduSW5TdHViRm9ybSB7XG4gIGVtYWlsOiBzdHJpbmc7XG59XG4iXX0=
|