@daffodil/external-router 0.39.13 → 0.42.0
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/daffodil-external-router.d.ts +1 -1
- package/driver/daffodil-external-router-driver.d.ts +1 -0
- package/driver/in-memory/daffodil-external-router-driver-in-memory.d.ts +1 -1
- package/driver/in-memory/in-memory.module.d.ts +5 -0
- package/driver/in-memory/in-memory.service.d.ts +3 -0
- package/driver/in-memory/package.json +5 -6
- package/driver/magento/2.4.1/daffodil-external-router-driver-magento-2.4.1.d.ts +1 -1
- package/driver/magento/2.4.1/graphql/queries/resolve-url-v2.4.1.d.ts +1 -1
- package/driver/magento/2.4.1/magento.module.d.ts +5 -0
- package/driver/magento/2.4.1/magento.service.d.ts +3 -0
- package/driver/magento/2.4.1/package.json +5 -6
- package/driver/magento/2.4.2/daffodil-external-router-driver-magento-2.4.2.d.ts +1 -1
- package/driver/magento/2.4.2/graphql/queries/resolve-url-v2.4.2.d.ts +1 -1
- package/driver/magento/2.4.2/magento.module.d.ts +5 -0
- package/driver/magento/2.4.2/magento.service.d.ts +3 -0
- package/driver/magento/2.4.2/package.json +5 -6
- package/driver/magento/2.4.3/daffodil-external-router-driver-magento-2.4.3.d.ts +5 -0
- package/driver/magento/2.4.3/graphql/queries/resolve.d.ts +6 -0
- package/driver/magento/2.4.3/index.d.ts +1 -0
- package/driver/magento/2.4.3/magento.module.d.ts +28 -0
- package/driver/magento/2.4.3/magento.service.d.ts +18 -0
- package/driver/magento/2.4.3/package.json +10 -0
- package/driver/magento/2.4.3/public_api.d.ts +2 -0
- package/driver/magento/2.4.3/transforms/resolution-to-resolvable-url.d.ts +3 -0
- package/driver/magento/daffodil-external-router-driver-magento.d.ts +1 -0
- package/driver/magento/model/public_api.d.ts +2 -0
- package/driver/magento/model/route-response.d.ts +4 -0
- package/driver/magento/model/route.d.ts +34 -0
- package/driver/magento/package.json +5 -6
- package/driver/package.json +5 -6
- package/driver/testing/daffodil-external-router-driver-testing.d.ts +1 -1
- package/driver/testing/package.json +5 -6
- package/driver/testing/testing.module.d.ts +5 -0
- package/driver/testing/testing.service.d.ts +3 -0
- package/{esm2015/config.js → esm2020/config.mjs} +1 -1
- package/esm2020/daffodil-external-router.mjs +5 -0
- package/{esm2015/driver/daffodil-external-router-driver.js → esm2020/driver/daffodil-external-router-driver.mjs} +0 -0
- package/esm2020/driver/in-memory/config.mjs +15 -0
- package/{esm2015/driver/in-memory/daffodil-external-router-driver-in-memory.js → esm2020/driver/in-memory/daffodil-external-router-driver-in-memory.mjs} +1 -2
- package/esm2020/driver/in-memory/in-memory.module.mjs +41 -0
- package/esm2020/driver/in-memory/in-memory.service.mjs +39 -0
- package/{esm2015/driver/in-memory/index.js → esm2020/driver/in-memory/index.mjs} +0 -0
- package/{esm2015/driver/in-memory/public_api.js → esm2020/driver/in-memory/public_api.mjs} +0 -0
- package/{esm2015/driver/index.js → esm2020/driver/index.mjs} +0 -0
- package/{esm2015/driver/interfaces/external-router-driver.interface.js → esm2020/driver/interfaces/external-router-driver.interface.mjs} +1 -1
- package/esm2020/driver/magento/2.4.1/daffodil-external-router-driver-magento-2.4.1.mjs +5 -0
- package/{esm2015/driver/magento/2.4.1/graphql/queries/resolve-url-v2.4.1.js → esm2020/driver/magento/2.4.1/graphql/queries/resolve-url-v2.4.1.mjs} +0 -0
- package/{esm2015/driver/magento/2.4.1/index.js → esm2020/driver/magento/2.4.1/index.mjs} +0 -0
- package/esm2020/driver/magento/2.4.1/magento.module.mjs +55 -0
- package/esm2020/driver/magento/2.4.1/magento.service.mjs +38 -0
- package/{esm2015/driver/magento/2.4.1/public_api.js → esm2020/driver/magento/2.4.1/public_api.mjs} +0 -0
- package/esm2020/driver/magento/2.4.1/transforms/resolution-to-resolvable-url.mjs +10 -0
- package/esm2020/driver/magento/2.4.2/daffodil-external-router-driver-magento-2.4.2.mjs +5 -0
- package/{esm2015/driver/magento/2.4.2/graphql/queries/resolve-url-v2.4.2.js → esm2020/driver/magento/2.4.2/graphql/queries/resolve-url-v2.4.2.mjs} +0 -0
- package/{esm2015/driver/magento/2.4.2/index.js → esm2020/driver/magento/2.4.2/index.mjs} +0 -0
- package/esm2020/driver/magento/2.4.2/magento.module.mjs +55 -0
- package/esm2020/driver/magento/2.4.2/magento.service.mjs +37 -0
- package/{esm2015/driver/magento/2.4.2/public_api.js → esm2020/driver/magento/2.4.2/public_api.mjs} +0 -0
- package/{esm2015/driver/magento/2.4.2/transforms/resolution-to-resolvable-url.js → esm2020/driver/magento/2.4.2/transforms/resolution-to-resolvable-url.mjs} +0 -0
- package/esm2020/driver/magento/2.4.3/daffodil-external-router-driver-magento-2.4.3.mjs +5 -0
- package/esm2020/driver/magento/2.4.3/graphql/queries/resolve.mjs +30 -0
- package/esm2020/driver/magento/2.4.3/index.mjs +2 -0
- package/esm2020/driver/magento/2.4.3/magento.module.mjs +55 -0
- package/esm2020/driver/magento/2.4.3/magento.service.mjs +37 -0
- package/esm2020/driver/magento/2.4.3/public_api.mjs +6 -0
- package/esm2020/driver/magento/2.4.3/transforms/resolution-to-resolvable-url.mjs +15 -0
- package/{esm2015/driver/magento/daffodil-external-router-driver-magento.js → esm2020/driver/magento/daffodil-external-router-driver-magento.mjs} +0 -0
- package/{esm2015/driver/magento/index.js → esm2020/driver/magento/index.mjs} +0 -0
- package/{esm2015/driver/magento/model/public_api.js → esm2020/driver/magento/model/public_api.mjs} +1 -1
- package/{esm2015/driver/magento/model/resolution-types.js → esm2020/driver/magento/model/resolution-types.mjs} +1 -1
- package/esm2020/driver/magento/model/route-response.mjs +2 -0
- package/esm2020/driver/magento/model/route.mjs +2 -0
- package/{esm2015/driver/magento/model/url-resolver-response.js → esm2020/driver/magento/model/url-resolver-response.mjs} +0 -0
- package/esm2020/driver/magento/model/url-resolver.mjs +2 -0
- package/{esm2015/driver/magento/public_api.js → esm2020/driver/magento/public_api.mjs} +0 -0
- package/{esm2015/driver/magento/transforms/public_api.js → esm2020/driver/magento/transforms/public_api.mjs} +0 -0
- package/{esm2015/driver/magento/transforms/redirect-to-http.js → esm2020/driver/magento/transforms/redirect-to-http.mjs} +0 -0
- package/{esm2015/driver/not-found-resolution.js → esm2020/driver/not-found-resolution.mjs} +0 -0
- package/{esm2015/driver/public_api.js → esm2020/driver/public_api.mjs} +0 -0
- package/{esm2015/driver/testing/config.js → esm2020/driver/testing/config.mjs} +1 -1
- package/esm2020/driver/testing/daffodil-external-router-driver-testing.mjs +5 -0
- package/{esm2015/driver/testing/index.js → esm2020/driver/testing/index.mjs} +0 -0
- package/{esm2015/driver/testing/public_api.js → esm2020/driver/testing/public_api.mjs} +0 -0
- package/esm2020/driver/testing/testing.module.mjs +38 -0
- package/esm2020/driver/testing/testing.service.mjs +45 -0
- package/{esm2015/errors/no-wildcard.js → esm2020/errors/no-wildcard.mjs} +1 -1
- package/{esm2015/errors/unknown-type.js → esm2020/errors/unknown-type.mjs} +1 -1
- package/esm2020/external-router.module.mjs +31 -0
- package/{esm2015/model/insertion-strategy.type.js → esm2020/model/insertion-strategy.type.mjs} +0 -0
- package/{esm2015/model/public_api.js → esm2020/model/public_api.mjs} +0 -0
- package/esm2020/model/resolvable-route.mjs +2 -0
- package/esm2020/model/route-data.mjs +2 -0
- package/esm2020/model/route-info.mjs +2 -0
- package/{esm2015/model/route-type.js → esm2020/model/route-type.mjs} +0 -0
- package/esm2020/model/route-with-data-path.mjs +2 -0
- package/esm2020/model/route-with-seo-data.mjs +2 -0
- package/esm2020/model/route-with-type.mjs +2 -0
- package/{esm2015/model/route-without-path.js → esm2020/model/route-without-path.mjs} +0 -0
- package/{esm2015/model/type-route-pair.js → esm2020/model/type-route-pair.mjs} +1 -1
- package/{esm2015/public_api.js → esm2020/public_api.mjs} +2 -1
- package/esm2020/router/router.service.mjs +43 -0
- package/esm2020/router/strategies/insert-data-path.mjs +84 -0
- package/{esm2015/router/strategies/insert-route-before-wildcard.js → esm2020/router/strategies/insert-route-before-wildcard.mjs} +0 -0
- package/esm2020/router/url-matcher/data-path-matcher.mjs +31 -0
- package/{esm2015/routing/daffodil-external-router-routing.js → esm2020/routing/daffodil-external-router-routing.mjs} +0 -0
- package/{esm2015/routing/errors/client-error.js → esm2020/routing/errors/client-error.mjs} +1 -1
- package/{esm2015/routing/errors/not-found-error.js → esm2020/routing/errors/not-found-error.mjs} +1 -1
- package/{esm2015/routing/errors/permanent-redirect.js → esm2020/routing/errors/permanent-redirect.mjs} +1 -1
- package/{esm2015/routing/errors/server-error.js → esm2020/routing/errors/server-error.mjs} +1 -1
- package/{esm2015/routing/errors/temporary-redirect.js → esm2020/routing/errors/temporary-redirect.mjs} +1 -1
- package/esm2020/routing/guard/existence.guard.mjs +77 -0
- package/{esm2015/routing/index.js → esm2020/routing/index.mjs} +0 -0
- package/{esm2015/routing/processors/process-errors.js → esm2020/routing/processors/process-errors.mjs} +0 -0
- package/{esm2015/routing/processors/process-redirect.js → esm2020/routing/processors/process-redirect.mjs} +0 -0
- package/{esm2015/routing/public_api.js → esm2020/routing/public_api.mjs} +0 -0
- package/{esm2015/token/type-resolvable-routes.token.js → esm2020/token/type-resolvable-routes.token.mjs} +1 -1
- package/esm2020/transform/resolved-route-to-route.mjs +24 -0
- package/esm2020/util/extract-daff-path-data.mjs +9 -0
- package/external-router.module.d.ts +5 -0
- package/fesm2015/{daffodil-external-router-driver-in-memory.js → daffodil-external-router-driver-in-memory.mjs} +28 -21
- package/fesm2015/daffodil-external-router-driver-in-memory.mjs.map +1 -0
- package/fesm2015/{daffodil-external-router-driver-magento-2.4.1.js → daffodil-external-router-driver-magento-2.4.1.mjs} +24 -20
- package/fesm2015/daffodil-external-router-driver-magento-2.4.1.mjs.map +1 -0
- package/fesm2015/{daffodil-external-router-driver-magento-2.4.2.js → daffodil-external-router-driver-magento-2.4.2.mjs} +24 -20
- package/fesm2015/daffodil-external-router-driver-magento-2.4.2.mjs.map +1 -0
- package/fesm2015/daffodil-external-router-driver-magento-2.4.3.mjs +143 -0
- package/fesm2015/daffodil-external-router-driver-magento-2.4.3.mjs.map +1 -0
- package/fesm2015/{daffodil-external-router-driver-magento.js → daffodil-external-router-driver-magento.mjs} +1 -1
- package/fesm2015/daffodil-external-router-driver-magento.mjs.map +1 -0
- package/fesm2015/daffodil-external-router-driver-testing.mjs +101 -0
- package/fesm2015/daffodil-external-router-driver-testing.mjs.map +1 -0
- package/fesm2015/{daffodil-external-router-driver.js → daffodil-external-router-driver.mjs} +1 -1
- package/fesm2015/daffodil-external-router-driver.mjs.map +1 -0
- package/fesm2015/daffodil-external-router-routing.mjs +173 -0
- package/fesm2015/daffodil-external-router-routing.mjs.map +1 -0
- package/fesm2015/{daffodil-external-router.js → daffodil-external-router.mjs} +45 -29
- package/fesm2015/daffodil-external-router.mjs.map +1 -0
- package/fesm2020/daffodil-external-router-driver-in-memory.mjs +98 -0
- package/fesm2020/daffodil-external-router-driver-in-memory.mjs.map +1 -0
- package/fesm2020/daffodil-external-router-driver-magento-2.4.1.mjs +122 -0
- package/fesm2020/daffodil-external-router-driver-magento-2.4.1.mjs.map +1 -0
- package/fesm2020/daffodil-external-router-driver-magento-2.4.2.mjs +122 -0
- package/fesm2020/daffodil-external-router-driver-magento-2.4.2.mjs.map +1 -0
- package/fesm2020/daffodil-external-router-driver-magento-2.4.3.mjs +140 -0
- package/fesm2020/daffodil-external-router-driver-magento-2.4.3.mjs.map +1 -0
- package/fesm2020/daffodil-external-router-driver-magento.mjs +22 -0
- package/fesm2020/daffodil-external-router-driver-magento.mjs.map +1 -0
- package/fesm2020/daffodil-external-router-driver-testing.mjs +99 -0
- package/fesm2020/daffodil-external-router-driver-testing.mjs.map +1 -0
- package/fesm2020/daffodil-external-router-driver.mjs +30 -0
- package/fesm2020/daffodil-external-router-driver.mjs.map +1 -0
- package/{fesm2015/daffodil-external-router-routing.js → fesm2020/daffodil-external-router-routing.mjs} +21 -19
- package/fesm2020/daffodil-external-router-routing.mjs.map +1 -0
- package/fesm2020/daffodil-external-router.mjs +303 -0
- package/fesm2020/daffodil-external-router.mjs.map +1 -0
- package/model/resolvable-route.d.ts +11 -0
- package/model/route-data.d.ts +8 -0
- package/model/route-info.d.ts +2 -2
- package/model/route-with-data-path.d.ts +3 -4
- package/model/route-with-seo-data.d.ts +12 -0
- package/model/route-with-type.d.ts +12 -0
- package/package.json +91 -15
- package/public_api.d.ts +1 -0
- package/router/router.service.d.ts +3 -0
- package/routing/daffodil-external-router-routing.d.ts +1 -0
- package/routing/guard/existence.guard.d.ts +3 -0
- package/routing/package.json +5 -6
- package/util/extract-daff-path-data.d.ts +6 -0
- package/bundles/daffodil-external-router-driver-in-memory.umd.js +0 -100
- package/bundles/daffodil-external-router-driver-in-memory.umd.js.map +0 -1
- package/bundles/daffodil-external-router-driver-in-memory.umd.min.js +0 -2
- package/bundles/daffodil-external-router-driver-in-memory.umd.min.js.map +0 -1
- package/bundles/daffodil-external-router-driver-magento-2.4.1.umd.js +0 -438
- package/bundles/daffodil-external-router-driver-magento-2.4.1.umd.js.map +0 -1
- package/bundles/daffodil-external-router-driver-magento-2.4.1.umd.min.js +0 -16
- package/bundles/daffodil-external-router-driver-magento-2.4.1.umd.min.js.map +0 -1
- package/bundles/daffodil-external-router-driver-magento-2.4.2.umd.js +0 -435
- package/bundles/daffodil-external-router-driver-magento-2.4.2.umd.js.map +0 -1
- package/bundles/daffodil-external-router-driver-magento-2.4.2.umd.min.js +0 -16
- package/bundles/daffodil-external-router-driver-magento-2.4.2.umd.min.js.map +0 -1
- package/bundles/daffodil-external-router-driver-magento.umd.js +0 -31
- package/bundles/daffodil-external-router-driver-magento.umd.js.map +0 -1
- package/bundles/daffodil-external-router-driver-magento.umd.min.js +0 -2
- package/bundles/daffodil-external-router-driver-magento.umd.min.js.map +0 -1
- package/bundles/daffodil-external-router-driver-testing.umd.js +0 -101
- package/bundles/daffodil-external-router-driver-testing.umd.js.map +0 -1
- package/bundles/daffodil-external-router-driver-testing.umd.min.js +0 -2
- package/bundles/daffodil-external-router-driver-testing.umd.min.js.map +0 -1
- package/bundles/daffodil-external-router-driver.umd.js +0 -39
- package/bundles/daffodil-external-router-driver.umd.js.map +0 -1
- package/bundles/daffodil-external-router-driver.umd.min.js +0 -2
- package/bundles/daffodil-external-router-driver.umd.min.js.map +0 -1
- package/bundles/daffodil-external-router-routing.umd.js +0 -505
- package/bundles/daffodil-external-router-routing.umd.js.map +0 -1
- package/bundles/daffodil-external-router-routing.umd.min.js +0 -16
- package/bundles/daffodil-external-router-routing.umd.min.js.map +0 -1
- package/bundles/daffodil-external-router.umd.js +0 -625
- package/bundles/daffodil-external-router.umd.js.map +0 -1
- package/bundles/daffodil-external-router.umd.min.js +0 -16
- package/bundles/daffodil-external-router.umd.min.js.map +0 -1
- package/daffodil-external-router.metadata.json +0 -1
- package/driver/daffodil-external-router-driver.metadata.json +0 -1
- package/driver/in-memory/daffodil-external-router-driver-in-memory.metadata.json +0 -1
- package/driver/magento/2.4.1/daffodil-external-router-driver-magento-2.4.1.metadata.json +0 -1
- package/driver/magento/2.4.2/daffodil-external-router-driver-magento-2.4.2.metadata.json +0 -1
- package/driver/magento/daffodil-external-router-driver-magento.metadata.json +0 -1
- package/driver/testing/daffodil-external-router-driver-testing.metadata.json +0 -1
- package/esm2015/daffodil-external-router.js +0 -6
- package/esm2015/driver/in-memory/config.js +0 -17
- package/esm2015/driver/in-memory/in-memory.module.js +0 -36
- package/esm2015/driver/in-memory/in-memory.service.js +0 -36
- package/esm2015/driver/magento/2.4.1/daffodil-external-router-driver-magento-2.4.1.js +0 -6
- package/esm2015/driver/magento/2.4.1/magento.module.js +0 -50
- package/esm2015/driver/magento/2.4.1/magento.service.js +0 -40
- package/esm2015/driver/magento/2.4.1/transforms/resolution-to-resolvable-url.js +0 -13
- package/esm2015/driver/magento/2.4.2/daffodil-external-router-driver-magento-2.4.2.js +0 -6
- package/esm2015/driver/magento/2.4.2/magento.module.js +0 -50
- package/esm2015/driver/magento/2.4.2/magento.service.js +0 -39
- package/esm2015/driver/magento/model/url-resolver.js +0 -2
- package/esm2015/driver/testing/daffodil-external-router-driver-testing.js +0 -6
- package/esm2015/driver/testing/testing.module.js +0 -33
- package/esm2015/driver/testing/testing.service.js +0 -45
- package/esm2015/external-router.module.js +0 -26
- package/esm2015/model/resolvable-route.js +0 -2
- package/esm2015/model/route-info.js +0 -2
- package/esm2015/model/route-with-data-path.js +0 -2
- package/esm2015/router/router.service.js +0 -44
- package/esm2015/router/strategies/insert-data-path.js +0 -83
- package/esm2015/router/url-matcher/data-path-matcher.js +0 -32
- package/esm2015/routing/guard/existence.guard.js +0 -78
- package/esm2015/transform/resolved-route-to-route.js +0 -17
- package/fesm2015/daffodil-external-router-driver-in-memory.js.map +0 -1
- package/fesm2015/daffodil-external-router-driver-magento-2.4.1.js.map +0 -1
- package/fesm2015/daffodil-external-router-driver-magento-2.4.2.js.map +0 -1
- package/fesm2015/daffodil-external-router-driver-magento.js.map +0 -1
- package/fesm2015/daffodil-external-router-driver-testing.js +0 -93
- package/fesm2015/daffodil-external-router-driver-testing.js.map +0 -1
- package/fesm2015/daffodil-external-router-driver.js.map +0 -1
- package/fesm2015/daffodil-external-router-routing.js.map +0 -1
- package/fesm2015/daffodil-external-router.js.map +0 -1
- package/routing/daffodil-external-router-routing.metadata.json +0 -1
@@ -0,0 +1,45 @@
|
|
1
|
+
import { Injectable, Inject, } from '@angular/core';
|
2
|
+
import * as faker from '@faker-js/faker/locale/en_US';
|
3
|
+
import { of, throwError, } from 'rxjs';
|
4
|
+
import { daffUriTruncateLeadingSlash, daffUriTruncateQueryFragment, } from '@daffodil/core/routing';
|
5
|
+
import { DAFF_EXTERNAL_ROUTER_DRIVER_TESTING_CONFIG, } from './config';
|
6
|
+
import * as i0 from "@angular/core";
|
7
|
+
/**
|
8
|
+
* The DaffExternalRouterTestingDriver is responsible for translating an
|
9
|
+
* arbitrary URI into a DaffExternallyResolvableUrl in testing environments.
|
10
|
+
*
|
11
|
+
* @inheritdoc
|
12
|
+
*
|
13
|
+
* @see {@link DaffExternalRouterTestingDriver}
|
14
|
+
*/
|
15
|
+
export class DaffExternalRouterTestingDriver {
|
16
|
+
constructor(testingConfiguration = {}) {
|
17
|
+
this.testingConfiguration = testingConfiguration;
|
18
|
+
}
|
19
|
+
resolve(url) {
|
20
|
+
const truncatedUrl = daffUriTruncateLeadingSlash(daffUriTruncateQueryFragment(url));
|
21
|
+
if (!this.testingConfiguration[truncatedUrl]) {
|
22
|
+
return throwError(`\
|
23
|
+
The route '${truncatedUrl}' wasn't provided with a matching type by the testing driver. \
|
24
|
+
Did you configure the available route types with DaffExternalRouterDriverTestingModule.forRoot(config)`);
|
25
|
+
}
|
26
|
+
return of({
|
27
|
+
id: faker.datatype.uuid(),
|
28
|
+
url: truncatedUrl,
|
29
|
+
type: this.testingConfiguration[truncatedUrl],
|
30
|
+
code: 200,
|
31
|
+
});
|
32
|
+
}
|
33
|
+
}
|
34
|
+
/** @nocollapse */ /** @nocollapse */ DaffExternalRouterTestingDriver.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffExternalRouterTestingDriver, deps: [{ token: DAFF_EXTERNAL_ROUTER_DRIVER_TESTING_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable });
|
35
|
+
/** @nocollapse */ /** @nocollapse */ DaffExternalRouterTestingDriver.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffExternalRouterTestingDriver, providedIn: 'root' });
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffExternalRouterTestingDriver, decorators: [{
|
37
|
+
type: Injectable,
|
38
|
+
args: [{
|
39
|
+
providedIn: 'root',
|
40
|
+
}]
|
41
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
42
|
+
type: Inject,
|
43
|
+
args: [DAFF_EXTERNAL_ROUTER_DRIVER_TESTING_CONFIG]
|
44
|
+
}] }]; } });
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdGluZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9leHRlcm5hbC1yb3V0ZXIvZHJpdmVyL3Rlc3Rpbmcvc3JjL3Rlc3Rpbmcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsVUFBVSxFQUNWLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEtBQUssS0FBSyxNQUFNLDhCQUE4QixDQUFDO0FBQ3RELE9BQU8sRUFFTCxFQUFFLEVBQ0YsVUFBVSxHQUNYLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUNMLDJCQUEyQixFQUMzQiw0QkFBNEIsR0FDN0IsTUFBTSx3QkFBd0IsQ0FBQztBQUloQyxPQUFPLEVBRUwsMENBQTBDLEdBQzNDLE1BQU0sVUFBVSxDQUFDOztBQUVsQjs7Ozs7OztHQU9HO0FBSUgsTUFBTSxPQUFPLCtCQUErQjtJQUUxQyxZQUVVLHVCQUE4RCxFQUFFO1FBQWhFLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBNEM7SUFDdkUsQ0FBQztJQUVKLE9BQU8sQ0FBQyxHQUFXO1FBQ2pCLE1BQU0sWUFBWSxHQUFHLDJCQUEyQixDQUFDLDRCQUE0QixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFcEYsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUM1QyxPQUFPLFVBQVUsQ0FBQzthQUNYLFlBQVk7dUdBQzhFLENBQUMsQ0FBQztTQUNwRztRQUVELE9BQU8sRUFBRSxDQUFDO1lBQ1IsRUFBRSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFO1lBQ3pCLEdBQUcsRUFBRSxZQUFZO1lBQ2pCLElBQUksRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsWUFBWSxDQUFDO1lBQzdDLElBQUksRUFBRSxHQUFHO1NBQ1YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7a0tBdEJVLCtCQUErQixrQkFHaEMsMENBQTBDO3NLQUh6QywrQkFBK0IsY0FGOUIsTUFBTTsyRkFFUCwrQkFBK0I7a0JBSDNDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFJSSxNQUFNOzJCQUFDLDBDQUEwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEluamVjdGFibGUsXG4gIEluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgKiBhcyBmYWtlciBmcm9tICdAZmFrZXItanMvZmFrZXIvbG9jYWxlL2VuX1VTJztcbmltcG9ydCB7XG4gIE9ic2VydmFibGUsXG4gIG9mLFxuICB0aHJvd0Vycm9yLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgZGFmZlVyaVRydW5jYXRlTGVhZGluZ1NsYXNoLFxuICBkYWZmVXJpVHJ1bmNhdGVRdWVyeUZyYWdtZW50LFxufSBmcm9tICdAZGFmZm9kaWwvY29yZS9yb3V0aW5nJztcbmltcG9ydCB7IERhZmZFeHRlcm5hbGx5UmVzb2x2YWJsZVVybCB9IGZyb20gJ0BkYWZmb2RpbC9leHRlcm5hbC1yb3V0ZXInO1xuaW1wb3J0IHsgRGFmZkV4dGVybmFsUm91dGVyRHJpdmVySW50ZXJmYWNlIH0gZnJvbSAnQGRhZmZvZGlsL2V4dGVybmFsLXJvdXRlci9kcml2ZXInO1xuXG5pbXBvcnQge1xuICBEYWZmRXh0ZXJuYWxSb3V0ZXJEcml2ZXJUZXN0aW5nQ29uZmlnLFxuICBEQUZGX0VYVEVSTkFMX1JPVVRFUl9EUklWRVJfVEVTVElOR19DT05GSUcsXG59IGZyb20gJy4vY29uZmlnJztcblxuLyoqXG4gKiBUaGUgRGFmZkV4dGVybmFsUm91dGVyVGVzdGluZ0RyaXZlciBpcyByZXNwb25zaWJsZSBmb3IgdHJhbnNsYXRpbmcgYW5cbiAqIGFyYml0cmFyeSBVUkkgaW50byBhIERhZmZFeHRlcm5hbGx5UmVzb2x2YWJsZVVybCBpbiB0ZXN0aW5nIGVudmlyb25tZW50cy5cbiAqXG4gKiBAaW5oZXJpdGRvY1xuICpcbiAqIEBzZWUge0BsaW5rIERhZmZFeHRlcm5hbFJvdXRlclRlc3RpbmdEcml2ZXJ9XG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBEYWZmRXh0ZXJuYWxSb3V0ZXJUZXN0aW5nRHJpdmVyXG5pbXBsZW1lbnRzIERhZmZFeHRlcm5hbFJvdXRlckRyaXZlckludGVyZmFjZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoREFGRl9FWFRFUk5BTF9ST1VURVJfRFJJVkVSX1RFU1RJTkdfQ09ORklHKVxuICAgIHByaXZhdGUgdGVzdGluZ0NvbmZpZ3VyYXRpb246IERhZmZFeHRlcm5hbFJvdXRlckRyaXZlclRlc3RpbmdDb25maWcgPSB7fSxcbiAgKSB7fVxuXG4gIHJlc29sdmUodXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPERhZmZFeHRlcm5hbGx5UmVzb2x2YWJsZVVybD4ge1xuICAgIGNvbnN0IHRydW5jYXRlZFVybCA9IGRhZmZVcmlUcnVuY2F0ZUxlYWRpbmdTbGFzaChkYWZmVXJpVHJ1bmNhdGVRdWVyeUZyYWdtZW50KHVybCkpO1xuXG4gICAgaWYgKCF0aGlzLnRlc3RpbmdDb25maWd1cmF0aW9uW3RydW5jYXRlZFVybF0pIHtcbiAgICAgIHJldHVybiB0aHJvd0Vycm9yKGBcXFxuVGhlIHJvdXRlICcke3RydW5jYXRlZFVybH0nIHdhc24ndCBwcm92aWRlZCB3aXRoIGEgbWF0Y2hpbmcgdHlwZSBieSB0aGUgdGVzdGluZyBkcml2ZXIuIFxcXG5EaWQgeW91IGNvbmZpZ3VyZSB0aGUgYXZhaWxhYmxlIHJvdXRlIHR5cGVzIHdpdGggRGFmZkV4dGVybmFsUm91dGVyRHJpdmVyVGVzdGluZ01vZHVsZS5mb3JSb290KGNvbmZpZylgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gb2Yoe1xuICAgICAgaWQ6IGZha2VyLmRhdGF0eXBlLnV1aWQoKSxcbiAgICAgIHVybDogdHJ1bmNhdGVkVXJsLFxuICAgICAgdHlwZTogdGhpcy50ZXN0aW5nQ29uZmlndXJhdGlvblt0cnVuY2F0ZWRVcmxdLFxuICAgICAgY29kZTogMjAwLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
@@ -9,4 +9,4 @@ export class DaffExternalRouterNoWildcardError extends DaffInheritableError {
|
|
9
9
|
this.code = 'NO_WILDCARD_ROUTE';
|
10
10
|
}
|
11
11
|
}
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm8td2lsZGNhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2V4dGVybmFsLXJvdXRlci9zcmMvZXJyb3JzL25vLXdpbGRjYXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxvQkFBb0IsR0FDckIsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4Qjs7O0dBR0c7QUFDSCxNQUFNLE9BQU8saUNBQWtDLFNBQVEsb0JBQW9CO0lBSXpFLFlBQVksT0FBZ0I7UUFDM0IsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBSEEsU0FBSSxHQUFXLG1CQUFtQixDQUFDO0lBSW5ELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERhZmZFcnJvcixcbiAgRGFmZkluaGVyaXRhYmxlRXJyb3IsXG59IGZyb20gJ0BkYWZmb2RpbC9jb3JlJztcblxuLyoqXG4gKiBBbiBlcnJvciB0aHJvd24gd2hlbiB0aGVyZSB3YXMgbm8gd2lsZGNhcmQgcm91dGUgZm91bmQgaW4gY29uZmlndXJhdGlvblxuICogb2YgdGhlIEFuZ3VsYXIgUm91dGVyLlxuICovXG5leHBvcnQgY2xhc3MgRGFmZkV4dGVybmFsUm91dGVyTm9XaWxkY2FyZEVycm9yIGV4dGVuZHMgRGFmZkluaGVyaXRhYmxlRXJyb3JcbiAgaW1wbGVtZW50cyBEYWZmRXJyb3Ige1xuICBwdWJsaWMgcmVhZG9ubHkgY29kZTogc3RyaW5nID0gJ05PX1dJTERDQVJEX1JPVVRFJztcblxuICBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG5cdCAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cbiJdfQ==
|
@@ -9,4 +9,4 @@ export class DaffExternalRouterUnknownRouteTypeError extends DaffInheritableErro
|
|
9
9
|
this.code = 'UNKNOWN_ROUTE_TYPE';
|
10
10
|
}
|
11
11
|
}
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5rbm93bi10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy9leHRlcm5hbC1yb3V0ZXIvc3JjL2Vycm9ycy91bmtub3duLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLG9CQUFvQixHQUNyQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCOzs7R0FHRztBQUNILE1BQU0sT0FBTyx1Q0FBd0MsU0FBUSxvQkFBb0I7SUFJL0UsWUFBWSxPQUFnQjtRQUMzQixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFIQSxTQUFJLEdBQVcsb0JBQW9CLENBQUM7SUFJcEQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGFmZkVycm9yLFxuICBEYWZmSW5oZXJpdGFibGVFcnJvcixcbn0gZnJvbSAnQGRhZmZvZGlsL2NvcmUnO1xuXG4vKipcbiAqIEFuIGVycm9yIHRocm93biB3aGVuIHRoZXJlIGlzIGEgZmFpbHVyZSBtYXRjaGluZyBhIGNvbmZpZ3VyZWQgcm91dGUgdG8gYVxuICogcm91dGUgdHlwZS5cbiAqL1xuZXhwb3J0IGNsYXNzIERhZmZFeHRlcm5hbFJvdXRlclVua25vd25Sb3V0ZVR5cGVFcnJvciBleHRlbmRzIERhZmZJbmhlcml0YWJsZUVycm9yXG4gIGltcGxlbWVudHMgRGFmZkVycm9yIHtcbiAgcHVibGljIHJlYWRvbmx5IGNvZGU6IHN0cmluZyA9ICdVTktOT1dOX1JPVVRFX1RZUEUnO1xuXG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcblx0ICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuIl19
|
@@ -0,0 +1,31 @@
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
2
|
+
import { NgModule, } from '@angular/core';
|
3
|
+
import { DAFF_EXTERNAL_ROUTER_CONFIG, daffExternalRouterConfigurationDefault, } from './config';
|
4
|
+
import { daffProvideRoutesResolvableByType } from './token/type-resolvable-routes.token';
|
5
|
+
import * as i0 from "@angular/core";
|
6
|
+
/**
|
7
|
+
* The external `DaffExternalRouterModule` allows you to configure the
|
8
|
+
* `@daffodil/external-router` package's behavior.
|
9
|
+
*/
|
10
|
+
export class DaffExternalRouterModule {
|
11
|
+
static forRoot(config, routes = []) {
|
12
|
+
return {
|
13
|
+
ngModule: DaffExternalRouterModule,
|
14
|
+
providers: [
|
15
|
+
{ provide: DAFF_EXTERNAL_ROUTER_CONFIG, useValue: { ...daffExternalRouterConfigurationDefault, ...config } },
|
16
|
+
...daffProvideRoutesResolvableByType(routes),
|
17
|
+
],
|
18
|
+
};
|
19
|
+
}
|
20
|
+
}
|
21
|
+
/** @nocollapse */ /** @nocollapse */ DaffExternalRouterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffExternalRouterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
22
|
+
/** @nocollapse */ /** @nocollapse */ DaffExternalRouterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffExternalRouterModule, imports: [CommonModule] });
|
23
|
+
/** @nocollapse */ /** @nocollapse */ DaffExternalRouterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffExternalRouterModule, imports: [[CommonModule]] });
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffExternalRouterModule, decorators: [{
|
25
|
+
type: NgModule,
|
26
|
+
args: [{
|
27
|
+
declarations: [],
|
28
|
+
imports: [CommonModule],
|
29
|
+
}]
|
30
|
+
}] });
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtcm91dGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYnMvZXh0ZXJuYWwtcm91dGVyL3NyYy9leHRlcm5hbC1yb3V0ZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBRUwsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFFTCwyQkFBMkIsRUFDM0Isc0NBQXNDLEdBQ3ZDLE1BQU0sVUFBVSxDQUFDO0FBRWxCLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOztBQUV6Rjs7O0dBR0c7QUFLSCxNQUFNLE9BQU8sd0JBQXdCO0lBQ25DLE1BQU0sQ0FBQyxPQUFPLENBQ1osTUFBZ0QsRUFDaEQsU0FBOEIsRUFBRTtRQUVoQyxPQUFPO1lBQ0wsUUFBUSxFQUFFLHdCQUF3QjtZQUNsQyxTQUFTLEVBQUU7Z0JBQ1QsRUFBRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsUUFBUSxFQUFFLEVBQUUsR0FBRyxzQ0FBc0MsRUFBRSxHQUFHLE1BQU0sRUFBRSxFQUFDO2dCQUMzRyxHQUFHLGlDQUFpQyxDQUFDLE1BQU0sQ0FBQzthQUM3QztTQUNGLENBQUM7SUFDSixDQUFDOzsySkFaVSx3QkFBd0I7NEpBQXhCLHdCQUF3QixZQUZ6QixZQUFZOzRKQUVYLHdCQUF3QixZQUYxQixDQUFDLFlBQVksQ0FBQzsyRkFFWix3QkFBd0I7a0JBSnBDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztpQkFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgTW9kdWxlV2l0aFByb3ZpZGVycyxcbiAgTmdNb2R1bGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBEYWZmRXh0ZXJuYWxSb3V0ZXJDb25maWd1cmF0aW9uLFxuICBEQUZGX0VYVEVSTkFMX1JPVVRFUl9DT05GSUcsXG4gIGRhZmZFeHRlcm5hbFJvdXRlckNvbmZpZ3VyYXRpb25EZWZhdWx0LFxufSBmcm9tICcuL2NvbmZpZyc7XG5pbXBvcnQgeyBEYWZmVHlwZVJvdXRlUGFpciB9IGZyb20gJy4vbW9kZWwvdHlwZS1yb3V0ZS1wYWlyJztcbmltcG9ydCB7IGRhZmZQcm92aWRlUm91dGVzUmVzb2x2YWJsZUJ5VHlwZSB9IGZyb20gJy4vdG9rZW4vdHlwZS1yZXNvbHZhYmxlLXJvdXRlcy50b2tlbic7XG5cbi8qKlxuICogVGhlIGV4dGVybmFsIGBEYWZmRXh0ZXJuYWxSb3V0ZXJNb2R1bGVgIGFsbG93cyB5b3UgdG8gY29uZmlndXJlIHRoZVxuICogYEBkYWZmb2RpbC9leHRlcm5hbC1yb3V0ZXJgIHBhY2thZ2UncyBiZWhhdmlvci5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIERhZmZFeHRlcm5hbFJvdXRlck1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KFxuICAgIGNvbmZpZzogUGFydGlhbDxEYWZmRXh0ZXJuYWxSb3V0ZXJDb25maWd1cmF0aW9uPixcbiAgICByb3V0ZXM6IERhZmZUeXBlUm91dGVQYWlyW10gPSBbXSxcbiAgKTogTW9kdWxlV2l0aFByb3ZpZGVyczxEYWZmRXh0ZXJuYWxSb3V0ZXJNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IERhZmZFeHRlcm5hbFJvdXRlck1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7IHByb3ZpZGU6IERBRkZfRVhURVJOQUxfUk9VVEVSX0NPTkZJRywgdXNlVmFsdWU6IHsgLi4uZGFmZkV4dGVybmFsUm91dGVyQ29uZmlndXJhdGlvbkRlZmF1bHQsIC4uLmNvbmZpZyB9fSxcbiAgICAgICAgLi4uZGFmZlByb3ZpZGVSb3V0ZXNSZXNvbHZhYmxlQnlUeXBlKHJvdXRlcyksXG4gICAgICBdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
package/{esm2015/model/insertion-strategy.type.js → esm2020/model/insertion-strategy.type.mjs}
RENAMED
File without changes
|
File without changes
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export {};
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2YWJsZS1yb3V0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvZXh0ZXJuYWwtcm91dGVyL3NyYy9tb2RlbC9yZXNvbHZhYmxlLXJvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYWZmSWRlbnRpZmlhYmxlIH0gZnJvbSAnQGRhZmZvZGlsL2NvcmUnO1xuXG5pbXBvcnQgeyBEYWZmUm91dGVEYXRhIH0gZnJvbSAnLi9yb3V0ZS1kYXRhJztcbmltcG9ydCB7IERhZmZFeHRlcm5hbFJvdXRlVHlwZSB9IGZyb20gJy4vcm91dGUtdHlwZSc7XG5cbi8qKlxuICogQSBgRGFmZkV4dGVybmFsbHlSZXNvbHZhYmxlVXJsYCBkZXNjcmliZXMgdGhlIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIGEgXCJ0eXBlXCIgb2Ygcm91dGVcbiAqIGFzIGRldGVybWluZWQgYnkgYW4gZXh0ZXJuYWwgcGxhdGZvcm0gYW5kIGEgVVJJLlxuICpcbiAqIGBgYHRzXG4gKiBleHBvcnQgY29uc3QgcmVzb2x2YWJsZVJvdXRlOiBEYWZmRXh0ZXJuYWxseVJlc29sdmFibGVVcmwgPSB7XG4gKiAgaWQ6IFwiaWQtb2YtcmVzb3VyY2VcIixcbiAqIFx0dXJsOiBcInNvbWUvcGF0aC90by1hLXJlc291cmNlXCIsXG4gKiBcdHR5cGU6IFwiUkVTT1VSQ0VfVFlQRVwiXG4gKiB9XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYWZmRXh0ZXJuYWxseVJlc29sdmFibGVVcmwgZXh0ZW5kcyBEYWZmSWRlbnRpZmlhYmxlIHtcbiAgLyoqXG4gICAqIFRoZSBVUkwgdGhhdCB3aWxsIGJlIHVzZWQgZm9yIHRoZSBwYXRoIG9mIHRoZSByb3V0ZSBpbnNlcnRlZFxuICAgKiBpbnRvIHRoZSBBbmd1bGFyIHJvdXRpbmcgY29uZmlnLlxuICAgKiBTaG91bGQgbm90IGNvbnRhaW4gVVJMIGZyYWdtZW50cywgcXVlcnkgcGFyYW1ldGVycywgb3IgbGVhZGluZyBzbGFzaGVzLlxuICAgKi9cbiAgdXJsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIHRoZSByb3V0ZVxuICAgKlxuICAgKiBAc2VlIHtAbGluayBEYWZmRXh0ZXJuYWxSb3V0ZVR5cGV9XG4gICAqL1xuICB0eXBlOiBEYWZmRXh0ZXJuYWxSb3V0ZVR5cGU7XG5cbiAgLyoqXG4gICAqIFRoZSBIVFRQIHN0YXR1cyBjb2RlIGZvciB0aGUgcmVzb2x2YWJsZSByb3V0ZS5cbiAgICovXG4gIGNvZGU6IG51bWJlcjtcblxuICAvKipcbiAgICogQWRkaXRpb25hbCByb3V0ZSBkYXRhLiBOb3RlIHRoYXQgdGhpcyBpcyBub3QgZ3VhcmFudGVlZCB0byBjb21lIGZyb21cbiAgICogdGhlIGRyaXZlciwgaXRzIG9ubHkgYXZhaWxhYmxlIHdoZW4gdGhlIGRyaXZlciBtYWtlcyBpdCBhdmFpbGFibGUuXG4gICAqL1xuICBkYXRhPzogRGFmZlJvdXRlRGF0YTtcbn1cbiJdfQ==
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export {};
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvZXh0ZXJuYWwtcm91dGVyL3NyYy9tb2RlbC9yb3V0ZS1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIERhdGEgYXNzb2NpYXRlZCB3aXRoIGEgcm91dGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGFmZlJvdXRlRGF0YSB7XG4gIGNhbm9uaWNhbF91cmw/OiBzdHJpbmc7XG4gIG1ldGFfZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIHRpdGxlPzogc3RyaW5nO1xufVxuIl19
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export {};
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtaW5mby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvZXh0ZXJuYWwtcm91dGVyL3NyYy9tb2RlbC9yb3V0ZS1pbmZvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYWZmRXh0ZXJuYWxSb3V0ZXJJbnNlcnRpb25TdHJhdGVneSB9IGZyb20gJy4vaW5zZXJ0aW9uLXN0cmF0ZWd5LnR5cGUnO1xuaW1wb3J0IHsgRGFmZlJvdXRlV2l0aFR5cGUgfSBmcm9tICcuL3JvdXRlLXdpdGgtdHlwZSc7XG5cbi8qKlxuICogQW4gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGluZm8gbmVlZGVkIHRvIGluc2VydCBhIHJvdXRlIGludG8gYSBjb25maWd1cmF0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhZmZSb3V0ZUluZm8ge1xuICByb3V0ZTogRGFmZlJvdXRlV2l0aFR5cGU7XG4gIGluc2VydGlvblN0cmF0ZWd5PzogRGFmZkV4dGVybmFsUm91dGVySW5zZXJ0aW9uU3RyYXRlZ3k7XG59XG4iXX0=
|
File without changes
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export {};
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtd2l0aC1kYXRhLXBhdGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2V4dGVybmFsLXJvdXRlci9zcmMvbW9kZWwvcm91dGUtd2l0aC1kYXRhLXBhdGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERhdGEsXG4gIFJvdXRlLFxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBEYWZmUm91dGVEYXRhIH0gZnJvbSAnLi9yb3V0ZS1kYXRhJztcblxuLyoqXG4gKiBBIHR5cGUgdGhhdCBkZXNjcmliZXMgdGhlIHNwZWNpYWwgZGF0YSB0aGF0IERhZmZvZGlsIHdpbGwgbG9vayBmb3Igd2hlbiBhdHRlbXB0aW5nXG4gKiB0byBtYXRjaCBhIHJvdXRlIGJhc2VkIHVwb24gcGF0aCBkYXRhIHN0b3JlZCBpbiB0aGUgYGRhdGFgIGtleSBvZiBhIHJvdXRlLlxuICpcbiAqIHtAbGluayBkYWZmRGF0YVBhdGhVcmxNYXRjaGVyfVxuICoge0BsaW5rIGRhZmZJbnNlcnREYXRhUGF0aFN0cmF0ZWd5fVxuICovXG5leHBvcnQgdHlwZSBEYWZmUm91dGVXaXRoRGF0YVBhdGggPSBSb3V0ZSAmIHtcbiAgZGF0YT86IHtcbiAgICBkYWZmUGF0aHM/OiBSZWNvcmQ8c3RyaW5nLCBEYWZmUm91dGVEYXRhIHwgRGF0YT47XG4gIH07XG59O1xuIl19
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export {};
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtd2l0aC1zZW8tZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvZXh0ZXJuYWwtcm91dGVyL3NyYy9tb2RlbC9yb3V0ZS13aXRoLXNlby1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7IERhZmZSb3V0ZURhdGEgfSBmcm9tICcuL3JvdXRlLWRhdGEnO1xuXG4vKipcbiAqIEEgdHlwZSB0aGF0IGRlc2NyaWJlcyB0aGUgc3BlY2lhbCBkYXRhIHRoYXQgRGFmZm9kaWwgd2lsbCBzdG9yZSBmb3IgU0VPIHB1cnBvc2VzIG9uXG4gKiBhbiBleHRlcm5hbCByZXNvbHZlZCByb3V0ZS5cbiAqXG4gKiB7QGxpbmsgZGFmZkRhdGFQYXRoVXJsTWF0Y2hlcn1cbiAqIHtAbGluayBkYWZmSW5zZXJ0RGF0YVBhdGhTdHJhdGVneX1cbiAqL1xuZXhwb3J0IHR5cGUgRGFmZlJvdXRlV2l0aFNlb0RhdGEgPSBSb3V0ZSAmIHtcbiAgZGF0YTogRGFmZlJvdXRlRGF0YTtcbn07XG4iXX0=
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export {};
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtd2l0aC10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy9leHRlcm5hbC1yb3V0ZXIvc3JjL21vZGVsL3JvdXRlLXdpdGgtdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBEYWZmRXh0ZXJuYWxSb3V0ZVR5cGUgfSBmcm9tICcuL3JvdXRlLXR5cGUnO1xuXG4vKipcbiAqIEEgdHlwZSB0aGF0IGRlc2NyaWJlcyB0aGUgc3BlY2lhbCBkYXRhIHRoYXQgRGFmZm9kaWwgd2lsbCBsb29rIGZvciB3aGVuIGF0dGVtcHRpbmdcbiAqIHRvIG1hdGNoIGEgcm91dGUgYmFzZWQgdXBvbiBwYXRoIGRhdGEgc3RvcmVkIGluIHRoZSBgZGF0YWAga2V5IG9mIGEgcm91dGUuXG4gKlxuICoge0BsaW5rIGRhZmZEYXRhUGF0aFVybE1hdGNoZXJ9XG4gKiB7QGxpbmsgZGFmZkluc2VydERhdGFQYXRoU3RyYXRlZ3l9XG4gKi9cbmV4cG9ydCB0eXBlIERhZmZSb3V0ZVdpdGhUeXBlID0gUm91dGUgJiB7XG4gIGRhZmZFeHRlcm5hbFJvdXRlVHlwZTogRGFmZkV4dGVybmFsUm91dGVUeXBlO1xufTtcbiJdfQ==
|
File without changes
|
@@ -1,2 +1,2 @@
|
|
1
1
|
export {};
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1yb3V0ZS1wYWlyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicy9leHRlcm5hbC1yb3V0ZXIvc3JjL21vZGVsL3R5cGUtcm91dGUtcGFpci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGFmZkV4dGVybmFsUm91dGVySW5zZXJ0aW9uU3RyYXRlZ3kgfSBmcm9tICcuL2luc2VydGlvbi1zdHJhdGVneS50eXBlJztcbmltcG9ydCB7IERhZmZFeHRlcm5hbFJvdXRlVHlwZSB9IGZyb20gJy4vcm91dGUtdHlwZSc7XG5pbXBvcnQgeyBEYWZmUm91dGVXaXRob3V0UGF0aCB9IGZyb20gJy4vcm91dGUtd2l0aG91dC1wYXRoJztcblxuLyoqXG4gKiBBIG1vZGVsIHVzZWQgdG8gZGVzY3JpYmUgdGhlIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIGEge0BsaW5rIERhZmZFeHRlcm5hbFJvdXRlclR5cGV9XG4gKiBhbmQgaXRzIGNvcnJlc3BvbmRpbmcgcm91dGUuXG4gKlxuICogVGhlIERhZmZUeXBlUm91dGVQYWlyIGlzIHRoZSBwcmUtcHJvdmlkZWQgXCJnbHVlXCIgdGhhdCBhIGRldmVsb3BlciB3aWxsIHByb3ZpZGVcbiAqIGFoZWFkLW9mLXRpbWUgc28gdGhhdCB0aGF0IHRoZSBFeHRlcm5hbCBSb3V0ZXIga25vd3Mgd2hhdCB0aGUgbGlzdCBvZiBhdmFpbGFibGVcbiAqIFwidHlwZXNcIiBhcmUgKGFsb25nIHdpdGggdGhhdCB0eXBlJ3MgY29ycmVzcG9uZGluZyByb3V0ZSkuXG4gKlxuICogQW4gaW5zZXJ0aW9uIHN0cmF0ZWd5IGNhbiBiZSBzcGVjaWZpZWQgaWYgdGhlIHJvdXRlIG5lZWRzIHRvIGJlIGluc2VydGVkIHNvbWV3aGVyZVxuICogb3RoZXIgdGhhbiB0aGUgcm9vdCBvZiB0aGUgcm91dGUgY29uZmlnLlxuICogT21pdHRpbmcgdGhlIGluc2VydGlvbiBzdHJhdGVneSB3aWxsIGRlZmF1bHQgdG8gaW5zZXJ0aW5nIHRoZSByb3V0ZSB0byB0aGUgcm9vdCBsZXZlbCxcbiAqIGltbWVkaWF0ZWx5IGJlZm9yZSB0aGUgd2lsZGNhcmQgcm91dGUuXG4gKlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhZmZUeXBlUm91dGVQYWlyIHtcbiAgdHlwZTogRGFmZkV4dGVybmFsUm91dGVUeXBlO1xuICByb3V0ZTogRGFmZlJvdXRlV2l0aG91dFBhdGg7XG4gIC8qKlxuICAgKiBBbiBvcHRpb25hbCBmdW5jdGlvbiB0byBwcm92aWRlIHJvdXRlIGluc2VydGlvbiBiZWhhdmlvci5cbiAgICovXG4gIGluc2VydGlvblN0cmF0ZWd5PzogRGFmZkV4dGVybmFsUm91dGVySW5zZXJ0aW9uU3RyYXRlZ3k7XG59XG4iXX0=
|
@@ -11,4 +11,5 @@ export { daffInsertDataPathStrategy } from './router/strategies/insert-data-path
|
|
11
11
|
export { daffDataPathUrlMatcher } from './router/url-matcher/data-path-matcher';
|
12
12
|
export { DaffExternalRouterNoWildcardError } from './errors/no-wildcard';
|
13
13
|
export { DaffExternalRouterUnknownRouteTypeError } from './errors/unknown-type';
|
14
|
-
|
14
|
+
export { daffExtractDaffPathData } from './util/extract-daff-path-data';
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYnMvZXh0ZXJuYWwtcm91dGVyL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFcEUsT0FBTyxFQUNMLDJCQUEyQixHQUU1QixNQUFNLFVBQVUsQ0FBQztBQUVsQixPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUV4RixjQUFjLG9CQUFvQixDQUFDO0FBRW5DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBRXpHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRWhGLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSx1Q0FBdUMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRWhGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBAZGFmZm9kaWwvZXh0ZXJuYWwtcm91dGVyXG4gKi9cblxuZXhwb3J0IHsgRGFmZkV4dGVybmFsUm91dGVyTW9kdWxlIH0gZnJvbSAnLi9leHRlcm5hbC1yb3V0ZXIubW9kdWxlJztcblxuZXhwb3J0IHtcbiAgREFGRl9FWFRFUk5BTF9ST1VURVJfQ09ORklHLFxuICBEYWZmRXh0ZXJuYWxSb3V0ZXJDb25maWd1cmF0aW9uLFxufSBmcm9tICcuL2NvbmZpZyc7XG5cbmV4cG9ydCB7IGRhZmZQcm92aWRlUm91dGVSZXNvbHZhYmxlQnlUeXBlIH0gZnJvbSAnLi90b2tlbi90eXBlLXJlc29sdmFibGUtcm91dGVzLnRva2VuJztcblxuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC9wdWJsaWNfYXBpJztcblxuZXhwb3J0IHsgRGFmZkV4dGVybmFsUm91dGVyIH0gZnJvbSAnLi9yb3V0ZXIvcm91dGVyLnNlcnZpY2UnO1xuZXhwb3J0IHsgZGFmZkluc2VydFJvdXRlQmVmb3JlV2lsZENhcmRTdHJhdGVneSB9IGZyb20gJy4vcm91dGVyL3N0cmF0ZWdpZXMvaW5zZXJ0LXJvdXRlLWJlZm9yZS13aWxkY2FyZCc7XG5cbmV4cG9ydCB7IGRhZmZJbnNlcnREYXRhUGF0aFN0cmF0ZWd5IH0gZnJvbSAnLi9yb3V0ZXIvc3RyYXRlZ2llcy9pbnNlcnQtZGF0YS1wYXRoJztcbmV4cG9ydCB7IGRhZmZEYXRhUGF0aFVybE1hdGNoZXIgfSBmcm9tICcuL3JvdXRlci91cmwtbWF0Y2hlci9kYXRhLXBhdGgtbWF0Y2hlcic7XG5cbmV4cG9ydCB7IERhZmZFeHRlcm5hbFJvdXRlck5vV2lsZGNhcmRFcnJvciB9IGZyb20gJy4vZXJyb3JzL25vLXdpbGRjYXJkJztcbmV4cG9ydCB7IERhZmZFeHRlcm5hbFJvdXRlclVua25vd25Sb3V0ZVR5cGVFcnJvciB9IGZyb20gJy4vZXJyb3JzL3Vua25vd24tdHlwZSc7XG5cbmV4cG9ydCB7IGRhZmZFeHRyYWN0RGFmZlBhdGhEYXRhIH0gZnJvbSAnLi91dGlsL2V4dHJhY3QtZGFmZi1wYXRoLWRhdGEnO1xuIl19
|
@@ -0,0 +1,43 @@
|
|
1
|
+
import { Inject, Injectable, } from '@angular/core';
|
2
|
+
import { Router, } from '@angular/router';
|
3
|
+
import { DaffExternalRouterNoWildcardError } from '../errors/no-wildcard';
|
4
|
+
import { DAFF_EXTERNAL_ROUTER_ROUTES_RESOLVABLE_BY_TYPE } from '../token/type-resolvable-routes.token';
|
5
|
+
import { daffTransformResolvedRouteToRoute } from '../transform/resolved-route-to-route';
|
6
|
+
import { daffInsertRouteBeforeWildCardStrategy } from './strategies/insert-route-before-wildcard';
|
7
|
+
import * as i0 from "@angular/core";
|
8
|
+
import * as i1 from "@angular/router";
|
9
|
+
export class DaffExternalRouter {
|
10
|
+
constructor(router, runtimeRoutes) {
|
11
|
+
this.router = router;
|
12
|
+
this.runtimeRoutes = runtimeRoutes;
|
13
|
+
}
|
14
|
+
/**
|
15
|
+
* Adds a route to the existing router configuration.
|
16
|
+
*/
|
17
|
+
add(resolvedRoute) {
|
18
|
+
//Get the route.
|
19
|
+
const { route, insertionStrategy, } = daffTransformResolvedRouteToRoute(resolvedRoute, this.runtimeRoutes);
|
20
|
+
try {
|
21
|
+
//Add it to configuration.
|
22
|
+
this.router.config = (insertionStrategy || daffInsertRouteBeforeWildCardStrategy)(route, this.router.config);
|
23
|
+
}
|
24
|
+
catch (e) {
|
25
|
+
if (e instanceof DaffExternalRouterNoWildcardError) {
|
26
|
+
throw new DaffExternalRouterNoWildcardError(`${e.message} This usually means you have misconfigured your routes.`);
|
27
|
+
}
|
28
|
+
throw e;
|
29
|
+
}
|
30
|
+
}
|
31
|
+
}
|
32
|
+
/** @nocollapse */ /** @nocollapse */ DaffExternalRouter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffExternalRouter, deps: [{ token: i1.Router }, { token: DAFF_EXTERNAL_ROUTER_ROUTES_RESOLVABLE_BY_TYPE }], target: i0.ɵɵFactoryTarget.Injectable });
|
33
|
+
/** @nocollapse */ /** @nocollapse */ DaffExternalRouter.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffExternalRouter, providedIn: 'root' });
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffExternalRouter, decorators: [{
|
35
|
+
type: Injectable,
|
36
|
+
args: [{
|
37
|
+
providedIn: 'root',
|
38
|
+
}]
|
39
|
+
}], ctorParameters: function () { return [{ type: i1.Router }, { type: undefined, decorators: [{
|
40
|
+
type: Inject,
|
41
|
+
args: [DAFF_EXTERNAL_ROUTER_ROUTES_RESOLVABLE_BY_TYPE]
|
42
|
+
}] }]; } });
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2V4dGVybmFsLXJvdXRlci9zcmMvcm91dGVyL3JvdXRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxNQUFNLEVBQ04sVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxNQUFNLEdBRVAsTUFBTSxpQkFBaUIsQ0FBQztBQUd6QixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUcxRSxPQUFPLEVBQUUsOENBQThDLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN2RyxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN6RixPQUFPLEVBQUUscUNBQXFDLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7O0FBS2xHLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsWUFDVSxNQUFjLEVBRWQsYUFBa0M7UUFGbEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUVkLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtJQUN4QyxDQUFDO0lBRUw7O09BRUc7SUFDSCxHQUFHLENBQUMsYUFBMEM7UUFDNUMsZ0JBQWdCO1FBQ2hCLE1BQU0sRUFDSixLQUFLLEVBQ0wsaUJBQWlCLEdBQ2xCLEdBQUcsaUNBQWlDLENBQ25DLGFBQWEsRUFDYixJQUFJLENBQUMsYUFBYSxDQUNuQixDQUFDO1FBRUYsSUFBSTtZQUNGLDBCQUEwQjtZQUMxQixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLGlCQUFpQixJQUFJLHFDQUFxQyxDQUFDLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDOUc7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLElBQUksQ0FBQyxZQUFZLGlDQUFpQyxFQUFFO2dCQUNsRCxNQUFNLElBQUksaUNBQWlDLENBQ3pDLEdBQUcsQ0FBQyxDQUFDLE9BQU8seURBQXlELENBQ3RFLENBQUM7YUFDSDtZQUVELE1BQU0sQ0FBQyxDQUFDO1NBQ1Q7SUFDSCxDQUFDOztxSkFoQ1Usa0JBQWtCLHdDQUduQiw4Q0FBOEM7eUpBSDdDLGtCQUFrQixjQUZqQixNQUFNOzJGQUVQLGtCQUFrQjtrQkFIOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQUlJLE1BQU07MkJBQUMsOENBQThDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0LFxuICBJbmplY3RhYmxlLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFJvdXRlcixcbiAgUm91dGUsXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cblxuaW1wb3J0IHsgRGFmZkV4dGVybmFsUm91dGVyTm9XaWxkY2FyZEVycm9yIH0gZnJvbSAnLi4vZXJyb3JzL25vLXdpbGRjYXJkJztcbmltcG9ydCB7IERhZmZFeHRlcm5hbGx5UmVzb2x2YWJsZVVybCB9IGZyb20gJy4uL21vZGVsL3Jlc29sdmFibGUtcm91dGUnO1xuaW1wb3J0IHsgRGFmZlR5cGVSb3V0ZVBhaXIgfSBmcm9tICcuLi9tb2RlbC90eXBlLXJvdXRlLXBhaXInO1xuaW1wb3J0IHsgREFGRl9FWFRFUk5BTF9ST1VURVJfUk9VVEVTX1JFU09MVkFCTEVfQllfVFlQRSB9IGZyb20gJy4uL3Rva2VuL3R5cGUtcmVzb2x2YWJsZS1yb3V0ZXMudG9rZW4nO1xuaW1wb3J0IHsgZGFmZlRyYW5zZm9ybVJlc29sdmVkUm91dGVUb1JvdXRlIH0gZnJvbSAnLi4vdHJhbnNmb3JtL3Jlc29sdmVkLXJvdXRlLXRvLXJvdXRlJztcbmltcG9ydCB7IGRhZmZJbnNlcnRSb3V0ZUJlZm9yZVdpbGRDYXJkU3RyYXRlZ3kgfSBmcm9tICcuL3N0cmF0ZWdpZXMvaW5zZXJ0LXJvdXRlLWJlZm9yZS13aWxkY2FyZCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBEYWZmRXh0ZXJuYWxSb3V0ZXIge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIEBJbmplY3QoREFGRl9FWFRFUk5BTF9ST1VURVJfUk9VVEVTX1JFU09MVkFCTEVfQllfVFlQRSlcbiAgICBwcml2YXRlIHJ1bnRpbWVSb3V0ZXM6IERhZmZUeXBlUm91dGVQYWlyW10sXG4gICkgeyB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSByb3V0ZSB0byB0aGUgZXhpc3Rpbmcgcm91dGVyIGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICBhZGQocmVzb2x2ZWRSb3V0ZTogRGFmZkV4dGVybmFsbHlSZXNvbHZhYmxlVXJsKSB7XG4gICAgLy9HZXQgdGhlIHJvdXRlLlxuICAgIGNvbnN0IHtcbiAgICAgIHJvdXRlLFxuICAgICAgaW5zZXJ0aW9uU3RyYXRlZ3ksXG4gICAgfSA9IGRhZmZUcmFuc2Zvcm1SZXNvbHZlZFJvdXRlVG9Sb3V0ZShcbiAgICAgIHJlc29sdmVkUm91dGUsXG4gICAgICB0aGlzLnJ1bnRpbWVSb3V0ZXMsXG4gICAgKTtcblxuICAgIHRyeSB7XG4gICAgICAvL0FkZCBpdCB0byBjb25maWd1cmF0aW9uLlxuICAgICAgdGhpcy5yb3V0ZXIuY29uZmlnID0gKGluc2VydGlvblN0cmF0ZWd5IHx8IGRhZmZJbnNlcnRSb3V0ZUJlZm9yZVdpbGRDYXJkU3RyYXRlZ3kpKHJvdXRlLCB0aGlzLnJvdXRlci5jb25maWcpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGlmIChlIGluc3RhbmNlb2YgRGFmZkV4dGVybmFsUm91dGVyTm9XaWxkY2FyZEVycm9yKSB7XG4gICAgICAgIHRocm93IG5ldyBEYWZmRXh0ZXJuYWxSb3V0ZXJOb1dpbGRjYXJkRXJyb3IoXG4gICAgICAgICAgYCR7ZS5tZXNzYWdlfSBUaGlzIHVzdWFsbHkgbWVhbnMgeW91IGhhdmUgbWlzY29uZmlndXJlZCB5b3VyIHJvdXRlcy5gLFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgfVxufVxuIl19
|
@@ -0,0 +1,84 @@
|
|
1
|
+
/**
|
2
|
+
* Tests whether or not a route matches a specific Daffodil Route type.
|
3
|
+
*
|
4
|
+
* See {@link DaffRouteWithDataPath}
|
5
|
+
*/
|
6
|
+
const routeMatchesRouteType = (route, type) => route?.data?.daffExternalRouteType === type;
|
7
|
+
/**
|
8
|
+
* Adds a path to the `daffPaths` of the given route.
|
9
|
+
*
|
10
|
+
* See {@link DaffRouteWithDataPath}
|
11
|
+
*/
|
12
|
+
const addRouteToDaffPaths = (route, externalRoute) => {
|
13
|
+
route.data.daffPaths = {
|
14
|
+
...route.data.daffPaths,
|
15
|
+
[externalRoute.path]: externalRoute.data,
|
16
|
+
};
|
17
|
+
return route;
|
18
|
+
};
|
19
|
+
const operateOnRoute = (externalRoute) => (route) => addRouteToDaffPaths(route, externalRoute);
|
20
|
+
/**
|
21
|
+
* Traverse the router config tree, halting after the first match.
|
22
|
+
* This traversal is implemented in a pre-order manner. As such, for large
|
23
|
+
* configuration trees, it will be most efficient to place externally routed
|
24
|
+
* components at the top of router configuration.
|
25
|
+
*/
|
26
|
+
const traverseRouteTree = (routes = [], matcher, operate) => {
|
27
|
+
if (routes.length === 0) {
|
28
|
+
return routes;
|
29
|
+
}
|
30
|
+
const stack = [];
|
31
|
+
const treeRoot = { children: routes };
|
32
|
+
stack.push(treeRoot);
|
33
|
+
while (stack.length) {
|
34
|
+
const route = stack.pop();
|
35
|
+
if (matcher(route)) {
|
36
|
+
operate(route);
|
37
|
+
break;
|
38
|
+
}
|
39
|
+
if (route.children) {
|
40
|
+
stack.push(...route.children.reverse());
|
41
|
+
}
|
42
|
+
}
|
43
|
+
return routes;
|
44
|
+
};
|
45
|
+
/**
|
46
|
+
* A route insertion strategy that can be used to append external routes onto
|
47
|
+
* existing Angular routes. This can be useful when you need to route to
|
48
|
+
* an existing lazy-loaded module from multiple externally defined urls.
|
49
|
+
*
|
50
|
+
* This should be used in combination with the {@link daffDataPathUrlMatcher} to match lazy-loaded modules with
|
51
|
+
* associated external urls.
|
52
|
+
*
|
53
|
+
* For example, you can provide the insertion strategy in the {@link DaffExternalRouterModule} as below.
|
54
|
+
*
|
55
|
+
* ```ts
|
56
|
+
* DaffExternalRouterModule.forRoot({}, [
|
57
|
+
* {
|
58
|
+
* type: 'CATEGORY',
|
59
|
+
* insertionStrategy: daffInsertDataPathStrategy,
|
60
|
+
* route: {}
|
61
|
+
* }
|
62
|
+
* ],
|
63
|
+
* ```
|
64
|
+
*
|
65
|
+
* Then, you can match it with an associated route defined in your Routing
|
66
|
+
* configuration with the {@link daffDataPathUrlMatcher}.
|
67
|
+
*
|
68
|
+
* ```ts
|
69
|
+
* export const routes: Routes = [
|
70
|
+
* {
|
71
|
+
* matcher: daffDataPathUrlMatcher,
|
72
|
+
* data: {
|
73
|
+
* daffExternalRouteType: "CATEGORY",
|
74
|
+
* },
|
75
|
+
* loadChildren: () => import('./category/category.module').then((m) => m.MyCategoryModule),
|
76
|
+
* }
|
77
|
+
* ]
|
78
|
+
* ```
|
79
|
+
*
|
80
|
+
* See {@link DaffRouteWithDataPath}
|
81
|
+
*
|
82
|
+
*/
|
83
|
+
export const daffInsertDataPathStrategy = (externalRoute, routes) => traverseRouteTree(routes, (route) => routeMatchesRouteType(route, externalRoute.daffExternalRouteType), operateOnRoute(externalRoute));
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LWRhdGEtcGF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvZXh0ZXJuYWwtcm91dGVyL3NyYy9yb3V0ZXIvc3RyYXRlZ2llcy9pbnNlcnQtZGF0YS1wYXRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWVBOzs7O0dBSUc7QUFDSCxNQUFNLHFCQUFxQixHQUFHLENBQUMsS0FBWSxFQUFFLElBQTJCLEVBQVcsRUFBRSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUscUJBQXFCLEtBQUssSUFBSSxDQUFDO0FBRWxJOzs7O0dBSUc7QUFDSCxNQUFNLG1CQUFtQixHQUN2QixDQUFDLEtBQTRCLEVBQUUsYUFBb0IsRUFBRSxFQUFFO0lBQ3JELEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHO1FBQ3JCLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTO1FBQ3ZCLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLGFBQWEsQ0FBQyxJQUFJO0tBQ3pDLENBQUM7SUFDRixPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVKLE1BQU0sY0FBYyxHQUNsQixDQUFDLGFBQW9CLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBNEIsRUFBRSxFQUFFLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0FBRXhHOzs7OztHQUtHO0FBQ0gsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLFNBQWlCLEVBQUUsRUFBRSxPQUFrQyxFQUFFLE9BQXNCLEVBQVUsRUFBRTtJQUNwSCxJQUFHLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQ3RCLE9BQU8sTUFBTSxDQUFDO0tBQ2Y7SUFFRCxNQUFNLEtBQUssR0FBVyxFQUFFLENBQUM7SUFDekIsTUFBTSxRQUFRLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFDdEMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUVyQixPQUFNLEtBQUssQ0FBQyxNQUFNLEVBQUU7UUFDbEIsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQzFCLElBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNmLE1BQU07U0FDUDtRQUNELElBQUcsS0FBSyxDQUFDLFFBQVEsRUFBQztZQUNoQixLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1NBQ3pDO0tBQ0Y7SUFDRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFDRztBQUNILE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUF3QyxDQUFDLGFBQXVELEVBQUUsTUFBYyxFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsQ0FDM0ssTUFBTSxFQUNOLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsYUFBYSxDQUFDLHFCQUFxQixDQUFDLEVBQzVFLGNBQWMsQ0FBQyxhQUFhLENBQUMsQ0FDOUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFJvdXRlLFxuICBSb3V0ZXMsXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7IERhZmZFeHRlcm5hbFJvdXRlckluc2VydGlvblN0cmF0ZWd5IH0gZnJvbSAnLi4vLi4vbW9kZWwvaW5zZXJ0aW9uLXN0cmF0ZWd5LnR5cGUnO1xuaW1wb3J0IHsgRGFmZkV4dGVybmFsUm91dGVUeXBlIH0gZnJvbSAnLi4vLi4vbW9kZWwvcm91dGUtdHlwZSc7XG5pbXBvcnQgeyBEYWZmUm91dGVXaXRoRGF0YVBhdGggfSBmcm9tICcuLi8uLi9tb2RlbC9yb3V0ZS13aXRoLWRhdGEtcGF0aCc7XG5pbXBvcnQgeyBEYWZmUm91dGVXaXRoU2VvRGF0YSB9IGZyb20gJy4uLy4uL21vZGVsL3JvdXRlLXdpdGgtc2VvLWRhdGEnO1xuaW1wb3J0IHsgRGFmZlJvdXRlV2l0aFR5cGUgfSBmcm9tICcuLi8uLi9tb2RlbC9yb3V0ZS13aXRoLXR5cGUnO1xuXG50eXBlIFJvdXRlT3BlcmF0b3IgPSAocm91dGU6IFJvdXRlKSA9PiBSb3V0ZTtcbnR5cGUgRXh0ZXJuYWxSb3V0ZU9wZXJhdG9yID0gKHJvdXRlOiBEYWZmUm91dGVXaXRoRGF0YVBhdGgsIGV4dGVybmFsUm91dGU6IFJvdXRlKSA9PiBSb3V0ZTtcbnR5cGUgSW5zZXJ0aW9uT3BlcmF0b3JGYWN0b3J5ID0gKGV4dGVybmFsUm91dGU6IFJvdXRlKSA9PiBSb3V0ZU9wZXJhdG9yO1xuXG4vKipcbiAqIFRlc3RzIHdoZXRoZXIgb3Igbm90IGEgcm91dGUgbWF0Y2hlcyBhIHNwZWNpZmljIERhZmZvZGlsIFJvdXRlIHR5cGUuXG4gKlxuICogU2VlIHtAbGluayBEYWZmUm91dGVXaXRoRGF0YVBhdGh9XG4gKi9cbmNvbnN0IHJvdXRlTWF0Y2hlc1JvdXRlVHlwZSA9IChyb3V0ZTogUm91dGUsIHR5cGU6IERhZmZFeHRlcm5hbFJvdXRlVHlwZSk6IGJvb2xlYW4gPT4gcm91dGU/LmRhdGE/LmRhZmZFeHRlcm5hbFJvdXRlVHlwZSA9PT0gdHlwZTtcblxuLyoqXG4gKiBBZGRzIGEgcGF0aCB0byB0aGUgYGRhZmZQYXRoc2Agb2YgdGhlIGdpdmVuIHJvdXRlLlxuICpcbiAqIFNlZSB7QGxpbmsgRGFmZlJvdXRlV2l0aERhdGFQYXRofVxuICovXG5jb25zdCBhZGRSb3V0ZVRvRGFmZlBhdGhzOiBFeHRlcm5hbFJvdXRlT3BlcmF0b3IgPVxuICAocm91dGU6IERhZmZSb3V0ZVdpdGhEYXRhUGF0aCwgZXh0ZXJuYWxSb3V0ZTogUm91dGUpID0+IHtcbiAgICByb3V0ZS5kYXRhLmRhZmZQYXRocyA9IHtcbiAgICAgIC4uLnJvdXRlLmRhdGEuZGFmZlBhdGhzLFxuICAgICAgW2V4dGVybmFsUm91dGUucGF0aF06IGV4dGVybmFsUm91dGUuZGF0YSxcbiAgICB9O1xuICAgIHJldHVybiByb3V0ZTtcbiAgfTtcblxuY29uc3Qgb3BlcmF0ZU9uUm91dGU6IEluc2VydGlvbk9wZXJhdG9yRmFjdG9yeSA9XG4gIChleHRlcm5hbFJvdXRlOiBSb3V0ZSkgPT4gKHJvdXRlOiBEYWZmUm91dGVXaXRoRGF0YVBhdGgpID0+IGFkZFJvdXRlVG9EYWZmUGF0aHMocm91dGUsIGV4dGVybmFsUm91dGUpO1xuXG4vKipcbiAqIFRyYXZlcnNlIHRoZSByb3V0ZXIgY29uZmlnIHRyZWUsIGhhbHRpbmcgYWZ0ZXIgdGhlIGZpcnN0IG1hdGNoLlxuICogVGhpcyB0cmF2ZXJzYWwgaXMgaW1wbGVtZW50ZWQgaW4gYSBwcmUtb3JkZXIgbWFubmVyLiBBcyBzdWNoLCBmb3IgbGFyZ2VcbiAqIGNvbmZpZ3VyYXRpb24gdHJlZXMsIGl0IHdpbGwgYmUgbW9zdCBlZmZpY2llbnQgdG8gcGxhY2UgZXh0ZXJuYWxseSByb3V0ZWRcbiAqIGNvbXBvbmVudHMgYXQgdGhlIHRvcCBvZiByb3V0ZXIgY29uZmlndXJhdGlvbi5cbiAqL1xuY29uc3QgdHJhdmVyc2VSb3V0ZVRyZWUgPSAocm91dGVzOiBSb3V0ZXMgPSBbXSwgbWF0Y2hlcjogKHJvdXRlOiBSb3V0ZSkgPT4gYm9vbGVhbiwgb3BlcmF0ZTogUm91dGVPcGVyYXRvcik6IFJvdXRlcyA9PiB7XG4gIGlmKHJvdXRlcy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gcm91dGVzO1xuICB9XG5cbiAgY29uc3Qgc3RhY2s6IFJvdXRlcyA9IFtdO1xuICBjb25zdCB0cmVlUm9vdCA9IHsgY2hpbGRyZW46IHJvdXRlcyB9O1xuICBzdGFjay5wdXNoKHRyZWVSb290KTtcblxuICB3aGlsZShzdGFjay5sZW5ndGgpIHtcbiAgICBjb25zdCByb3V0ZSA9IHN0YWNrLnBvcCgpO1xuICAgIGlmKG1hdGNoZXIocm91dGUpKSB7XG4gICAgICBvcGVyYXRlKHJvdXRlKTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgICBpZihyb3V0ZS5jaGlsZHJlbil7XG4gICAgICBzdGFjay5wdXNoKC4uLnJvdXRlLmNoaWxkcmVuLnJldmVyc2UoKSk7XG4gICAgfVxuICB9XG4gIHJldHVybiByb3V0ZXM7XG59O1xuXG4vKipcbiAqIEEgcm91dGUgaW5zZXJ0aW9uIHN0cmF0ZWd5IHRoYXQgY2FuIGJlIHVzZWQgdG8gYXBwZW5kIGV4dGVybmFsIHJvdXRlcyBvbnRvXG4gKiBleGlzdGluZyBBbmd1bGFyIHJvdXRlcy4gVGhpcyBjYW4gYmUgdXNlZnVsIHdoZW4geW91IG5lZWQgdG8gcm91dGUgdG9cbiAqIGFuIGV4aXN0aW5nIGxhenktbG9hZGVkIG1vZHVsZSBmcm9tIG11bHRpcGxlIGV4dGVybmFsbHkgZGVmaW5lZCB1cmxzLlxuICpcbiAqIFRoaXMgc2hvdWxkIGJlIHVzZWQgaW4gY29tYmluYXRpb24gd2l0aCB0aGUge0BsaW5rIGRhZmZEYXRhUGF0aFVybE1hdGNoZXJ9IHRvIG1hdGNoIGxhenktbG9hZGVkIG1vZHVsZXMgd2l0aFxuICogYXNzb2NpYXRlZCBleHRlcm5hbCB1cmxzLlxuICpcbiAqIEZvciBleGFtcGxlLCB5b3UgY2FuIHByb3ZpZGUgdGhlIGluc2VydGlvbiBzdHJhdGVneSBpbiB0aGUge0BsaW5rIERhZmZFeHRlcm5hbFJvdXRlck1vZHVsZX0gYXMgYmVsb3cuXG4gKlxuICogYGBgdHNcbiAqIERhZmZFeHRlcm5hbFJvdXRlck1vZHVsZS5mb3JSb290KHt9LCBbXG4gKiAge1xuICogICAgdHlwZTogJ0NBVEVHT1JZJyxcbiAqICAgIGluc2VydGlvblN0cmF0ZWd5OiBkYWZmSW5zZXJ0RGF0YVBhdGhTdHJhdGVneSxcbiAqICAgIHJvdXRlOiB7fVxuICogIH1cbiAqIF0sXG4gKiBgYGBcbiAqXG4gKiBUaGVuLCB5b3UgY2FuIG1hdGNoIGl0IHdpdGggYW4gYXNzb2NpYXRlZCByb3V0ZSBkZWZpbmVkIGluIHlvdXIgUm91dGluZ1xuICogY29uZmlndXJhdGlvbiB3aXRoIHRoZSB7QGxpbmsgZGFmZkRhdGFQYXRoVXJsTWF0Y2hlcn0uXG4gKlxuICogYGBgdHNcbiAqICBleHBvcnQgY29uc3Qgcm91dGVzOiBSb3V0ZXMgPSBbXG4gKiAgICB7XG4gKiAgICAgIG1hdGNoZXI6IGRhZmZEYXRhUGF0aFVybE1hdGNoZXIsXG4gKiAgICAgIGRhdGE6IHtcbiAqICAgICAgICBkYWZmRXh0ZXJuYWxSb3V0ZVR5cGU6IFwiQ0FURUdPUllcIixcbiAqICAgICAgfSxcbiAqICAgICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJy4vY2F0ZWdvcnkvY2F0ZWdvcnkubW9kdWxlJykudGhlbigobSkgPT4gbS5NeUNhdGVnb3J5TW9kdWxlKSxcbiAqICAgIH1cbiAqIF1cbiAqIGBgYFxuICpcbiAqIFNlZSB7QGxpbmsgRGFmZlJvdXRlV2l0aERhdGFQYXRofVxuICpcbiAqL1xuZXhwb3J0IGNvbnN0IGRhZmZJbnNlcnREYXRhUGF0aFN0cmF0ZWd5OiBEYWZmRXh0ZXJuYWxSb3V0ZXJJbnNlcnRpb25TdHJhdGVneSA9IChleHRlcm5hbFJvdXRlOiBEYWZmUm91dGVXaXRoVHlwZSAmIERhZmZSb3V0ZVdpdGhTZW9EYXRhLCByb3V0ZXM6IFJvdXRlcykgPT4gdHJhdmVyc2VSb3V0ZVRyZWUoXG4gIHJvdXRlcyxcbiAgKHJvdXRlKSA9PiByb3V0ZU1hdGNoZXNSb3V0ZVR5cGUocm91dGUsIGV4dGVybmFsUm91dGUuZGFmZkV4dGVybmFsUm91dGVUeXBlKSxcbiAgb3BlcmF0ZU9uUm91dGUoZXh0ZXJuYWxSb3V0ZSksXG4pO1xuIl19
|
File without changes
|
@@ -0,0 +1,31 @@
|
|
1
|
+
import { daffUriTruncateLeadingSlash } from '@daffodil/core/routing';
|
2
|
+
/**
|
3
|
+
* A UrlMatcher that does an exact match against a path stored in the special
|
4
|
+
* configuration fields that External Router stores on a Route's data.
|
5
|
+
*
|
6
|
+
* ```ts
|
7
|
+
* export const routes: Routes = [
|
8
|
+
* {
|
9
|
+
* matcher: daffDataPathUrlMatcher,
|
10
|
+
* data: {
|
11
|
+
* daffExternalRouteType: "CATEGORY",
|
12
|
+
* },
|
13
|
+
* loadChildren: () => import('./category/category.module').then((m) => m.ShopCategoryModule),
|
14
|
+
* }
|
15
|
+
* ]
|
16
|
+
* ```
|
17
|
+
* {@link daffInsertDataPathStrategy }
|
18
|
+
* {@link DaffRouteWithDataPath }
|
19
|
+
*/
|
20
|
+
export const daffDataPathUrlMatcher = (segments, group, route) => {
|
21
|
+
const path = daffUriTruncateLeadingSlash(segments.reduce((acc, segment) => acc + '/' + segment.path, ''));
|
22
|
+
const paths = route?.data?.daffPaths;
|
23
|
+
// If we don't have any paths, we can safely fail a match.
|
24
|
+
if (!paths) {
|
25
|
+
return null;
|
26
|
+
}
|
27
|
+
// Otherwise, look up the path in the dictionary, failing if a match isn't found,
|
28
|
+
// but matching the entire segment if a match is found.
|
29
|
+
return path in paths ? { consumed: segments } : null;
|
30
|
+
};
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1wYXRoLW1hdGNoZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2V4dGVybmFsLXJvdXRlci9zcmMvcm91dGVyL3VybC1tYXRjaGVyL2RhdGEtcGF0aC1tYXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBSXJFOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCRztBQUNILE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFlLENBQUMsUUFBc0IsRUFBRSxLQUFzQixFQUFFLEtBQTRCLEVBQUUsRUFBRTtJQUNqSSxNQUFNLElBQUksR0FBRywyQkFBMkIsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBVyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsR0FBRyxHQUFHLEdBQUcsR0FBRyxPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDbEgsTUFBTSxLQUFLLEdBQUcsS0FBSyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUM7SUFFckMsMERBQTBEO0lBQzFELElBQUcsQ0FBQyxLQUFLLEVBQUU7UUFDVCxPQUFPLElBQUksQ0FBQztLQUNiO0lBRUQsaUZBQWlGO0lBQ2pGLHVEQUF1RDtJQUN2RCxPQUFPLElBQUksSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFFLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDeEQsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgVXJsTWF0Y2hlcixcbiAgVXJsU2VnbWVudCxcbiAgVXJsU2VnbWVudEdyb3VwLFxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBkYWZmVXJpVHJ1bmNhdGVMZWFkaW5nU2xhc2ggfSBmcm9tICdAZGFmZm9kaWwvY29yZS9yb3V0aW5nJztcblxuaW1wb3J0IHsgRGFmZlJvdXRlV2l0aERhdGFQYXRoIH0gZnJvbSAnLi4vLi4vbW9kZWwvcHVibGljX2FwaSc7XG5cbi8qKlxuICogQSBVcmxNYXRjaGVyIHRoYXQgZG9lcyBhbiBleGFjdCBtYXRjaCBhZ2FpbnN0IGEgcGF0aCBzdG9yZWQgaW4gdGhlIHNwZWNpYWxcbiAqIGNvbmZpZ3VyYXRpb24gZmllbGRzIHRoYXQgRXh0ZXJuYWwgUm91dGVyIHN0b3JlcyBvbiBhIFJvdXRlJ3MgZGF0YS5cbiAqXG4gKiBgYGB0c1xuICogIGV4cG9ydCBjb25zdCByb3V0ZXM6IFJvdXRlcyA9IFtcbiAqICAgIHtcbiAqICAgICAgbWF0Y2hlcjogZGFmZkRhdGFQYXRoVXJsTWF0Y2hlcixcbiAqICAgICAgZGF0YToge1xuICogICAgICAgIGRhZmZFeHRlcm5hbFJvdXRlVHlwZTogXCJDQVRFR09SWVwiLFxuICogICAgICB9LFxuICogICAgICBsb2FkQ2hpbGRyZW46ICgpID0+IGltcG9ydCgnLi9jYXRlZ29yeS9jYXRlZ29yeS5tb2R1bGUnKS50aGVuKChtKSA9PiBtLlNob3BDYXRlZ29yeU1vZHVsZSksXG4gKiAgICB9XG4gKiBdXG4gKiBgYGBcbiAqIHtAbGluayBkYWZmSW5zZXJ0RGF0YVBhdGhTdHJhdGVneSB9XG4gKiB7QGxpbmsgRGFmZlJvdXRlV2l0aERhdGFQYXRoIH1cbiAqL1xuZXhwb3J0IGNvbnN0IGRhZmZEYXRhUGF0aFVybE1hdGNoZXI6IFVybE1hdGNoZXIgPSAoc2VnbWVudHM6IFVybFNlZ21lbnRbXSwgZ3JvdXA6IFVybFNlZ21lbnRHcm91cCwgcm91dGU6IERhZmZSb3V0ZVdpdGhEYXRhUGF0aCkgPT4ge1xuICBjb25zdCBwYXRoID0gZGFmZlVyaVRydW5jYXRlTGVhZGluZ1NsYXNoKHNlZ21lbnRzLnJlZHVjZSgoYWNjOiBzdHJpbmcsIHNlZ21lbnQpID0+IGFjYyArICcvJyArIHNlZ21lbnQucGF0aCwgJycpKTtcbiAgY29uc3QgcGF0aHMgPSByb3V0ZT8uZGF0YT8uZGFmZlBhdGhzO1xuXG4gIC8vIElmIHdlIGRvbid0IGhhdmUgYW55IHBhdGhzLCB3ZSBjYW4gc2FmZWx5IGZhaWwgYSBtYXRjaC5cbiAgaWYoIXBhdGhzKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIGxvb2sgdXAgdGhlIHBhdGggaW4gdGhlIGRpY3Rpb25hcnksIGZhaWxpbmcgaWYgYSBtYXRjaCBpc24ndCBmb3VuZCxcbiAgLy8gYnV0IG1hdGNoaW5nIHRoZSBlbnRpcmUgc2VnbWVudCBpZiBhIG1hdGNoIGlzIGZvdW5kLlxuICByZXR1cm4gcGF0aCBpbiBwYXRocyA/ICB7IGNvbnN1bWVkOiBzZWdtZW50cyB9IDogbnVsbDtcbn07XG5cbiJdfQ==
|
File without changes
|
@@ -8,4 +8,4 @@ export class DaffExternalRouterClientError extends DaffInheritableError {
|
|
8
8
|
this.code = '4xx_CLIENT_ERROR';
|
9
9
|
}
|
10
10
|
}
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LWVycm9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9leHRlcm5hbC1yb3V0ZXIvcm91dGluZy9zcmMvZXJyb3JzL2NsaWVudC1lcnJvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsb0JBQW9CLEdBQ3JCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEI7O0dBRUc7QUFDSCxNQUFNLE9BQU8sNkJBQThCLFNBQVEsb0JBQW9CO0lBSXJFLFlBQVksT0FBZ0I7UUFDM0IsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBSEEsU0FBSSxHQUFXLGtCQUFrQixDQUFDO0lBSWxELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERhZmZFcnJvcixcbiAgRGFmZkluaGVyaXRhYmxlRXJyb3IsXG59IGZyb20gJ0BkYWZmb2RpbC9jb3JlJztcblxuLyoqXG4gKiBBbiBlcnJvciB0aHJvd24gd2hlbiB0aGUgZHJpdmVyIGVuY291bnRlcnMgYSA0eHggZXJyb3IuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYWZmRXh0ZXJuYWxSb3V0ZXJDbGllbnRFcnJvciBleHRlbmRzIERhZmZJbmhlcml0YWJsZUVycm9yXG4gIGltcGxlbWVudHMgRGFmZkVycm9yIHtcbiAgcHVibGljIHJlYWRvbmx5IGNvZGU6IHN0cmluZyA9ICc0eHhfQ0xJRU5UX0VSUk9SJztcblxuICBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG5cdCAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cbiJdfQ==
|
package/{esm2015/routing/errors/not-found-error.js → esm2020/routing/errors/not-found-error.mjs}
RENAMED
@@ -8,4 +8,4 @@ export class DaffExternalRouterNotFoundError extends DaffExternalRouterClientErr
|
|
8
8
|
this.code = '404_NOT_FOUND';
|
9
9
|
}
|
10
10
|
}
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90LWZvdW5kLWVycm9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9leHRlcm5hbC1yb3V0ZXIvcm91dGluZy9zcmMvZXJyb3JzL25vdC1mb3VuZC1lcnJvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvRDs7R0FFRztBQUNILE1BQU0sT0FBTywrQkFBZ0MsU0FBUSw2QkFBNkI7SUFJaEYsWUFBWSxPQUFnQjtRQUMzQixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFIQSxTQUFJLEdBQVcsZUFBZSxDQUFDO0lBSS9DLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhZmZFcnJvciB9IGZyb20gJ0BkYWZmb2RpbC9jb3JlJztcblxuaW1wb3J0IHsgRGFmZkV4dGVybmFsUm91dGVyQ2xpZW50RXJyb3IgfSBmcm9tICcuL2NsaWVudC1lcnJvcic7XG5cbi8qKlxuICogQW4gZXJyb3IgdGhyb3duIHdoZW4gdGhlIGRyaXZlciBkZXRlcm1pbmVzIHRoYXQgYSBnaXZlbiB1cmwgaXMgbm90IHJlc29sdmFibGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYWZmRXh0ZXJuYWxSb3V0ZXJOb3RGb3VuZEVycm9yIGV4dGVuZHMgRGFmZkV4dGVybmFsUm91dGVyQ2xpZW50RXJyb3JcbiAgaW1wbGVtZW50cyBEYWZmRXJyb3Ige1xuICBwdWJsaWMgcmVhZG9ubHkgY29kZTogc3RyaW5nID0gJzQwNF9OT1RfRk9VTkQnO1xuXG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcblx0ICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuIl19
|
@@ -10,4 +10,4 @@ export class DaffExternalRouterPermanentRedirectError extends DaffInheritableErr
|
|
10
10
|
this.code = '302_PERMANENT_REDIRECT';
|
11
11
|
}
|
12
12
|
}
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWFuZW50LXJlZGlyZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9leHRlcm5hbC1yb3V0ZXIvcm91dGluZy9zcmMvZXJyb3JzL3Blcm1hbmVudC1yZWRpcmVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsb0JBQW9CLEdBQ3JCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEI7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLHdDQUF5QyxTQUFRLG9CQUFvQjtJQUloRixZQUFtQixXQUFtQixFQUFFLE9BQWdCO1FBQ3ZELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQURHLGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBRnRCLFNBQUksR0FBVyx3QkFBd0IsQ0FBQztJQUl4RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEYWZmRXJyb3IsXG4gIERhZmZJbmhlcml0YWJsZUVycm9yLFxufSBmcm9tICdAZGFmZm9kaWwvY29yZSc7XG5cbi8qKlxuICogQW4gZXJyb3IgdGhyb3duIHdoZW4gdGhlIGRyaXZlciBkZXRlcm1pbmVzIHRoYXQgdGhlIHVybCBuZWVkcyB0byBiZSByb3V0ZWQgc29tZXdoZXJlXG4gKiBlbHNlIHBlcm1hbmVudGx5LlxuICovXG5leHBvcnQgY2xhc3MgRGFmZkV4dGVybmFsUm91dGVyUGVybWFuZW50UmVkaXJlY3RFcnJvciBleHRlbmRzIERhZmZJbmhlcml0YWJsZUVycm9yXG4gIGltcGxlbWVudHMgRGFmZkVycm9yIHtcbiAgcHVibGljIHJlYWRvbmx5IGNvZGU6IHN0cmluZyA9ICczMDJfUEVSTUFORU5UX1JFRElSRUNUJztcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVkaXJlY3RVcmw6IHN0cmluZywgbWVzc2FnZT86IHN0cmluZykge1xuXHQgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG4iXX0=
|
@@ -8,4 +8,4 @@ export class DaffExternalRouterServerError extends DaffInheritableError {
|
|
8
8
|
this.code = '5xx_SERVER_ERROR';
|
9
9
|
}
|
10
10
|
}
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLWVycm9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9leHRlcm5hbC1yb3V0ZXIvcm91dGluZy9zcmMvZXJyb3JzL3NlcnZlci1lcnJvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsb0JBQW9CLEdBQ3JCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEI7O0dBRUc7QUFDSCxNQUFNLE9BQU8sNkJBQThCLFNBQVEsb0JBQW9CO0lBSXJFLFlBQVksT0FBZ0I7UUFDM0IsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBSEEsU0FBSSxHQUFXLGtCQUFrQixDQUFDO0lBSWxELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERhZmZFcnJvcixcbiAgRGFmZkluaGVyaXRhYmxlRXJyb3IsXG59IGZyb20gJ0BkYWZmb2RpbC9jb3JlJztcblxuLyoqXG4gKiBBbiBlcnJvciB0aHJvd24gd2hlbiB0aGUgcGxhdGZvcm0gcGVyZm9ybWluZyB1cmwgcmVzb2x1dGlvbiBmYWlscy5cbiAqL1xuZXhwb3J0IGNsYXNzIERhZmZFeHRlcm5hbFJvdXRlclNlcnZlckVycm9yIGV4dGVuZHMgRGFmZkluaGVyaXRhYmxlRXJyb3JcbiAgaW1wbGVtZW50cyBEYWZmRXJyb3Ige1xuICBwdWJsaWMgcmVhZG9ubHkgY29kZTogc3RyaW5nID0gJzV4eF9TRVJWRVJfRVJST1InO1xuXG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcblx0ICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuIl19
|
@@ -10,4 +10,4 @@ export class DaffExternalRouterTemporaryRedirectError extends DaffInheritableErr
|
|
10
10
|
this.code = 'TEMPORARY_REDIRECT';
|
11
11
|
}
|
12
12
|
}
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcG9yYXJ5LXJlZGlyZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9leHRlcm5hbC1yb3V0ZXIvcm91dGluZy9zcmMvZXJyb3JzL3RlbXBvcmFyeS1yZWRpcmVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsb0JBQW9CLEdBQ3JCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEI7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLHdDQUF5QyxTQUFRLG9CQUFvQjtJQUloRixZQUFtQixXQUFtQixFQUFFLE9BQWdCO1FBQ3ZELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQURHLGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBRnRCLFNBQUksR0FBVyxvQkFBb0IsQ0FBQztJQUlwRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEYWZmRXJyb3IsXG4gIERhZmZJbmhlcml0YWJsZUVycm9yLFxufSBmcm9tICdAZGFmZm9kaWwvY29yZSc7XG5cbi8qKlxuICogQW4gZXJyb3IgdGhyb3duIHdoZW4gdGhlIGRyaXZlciBuZWVkcyBhIFVSSSB0byBiZSB0ZW1wb3JhcmlseSByZWRpcmVjdGVkXG4gKiB0byBhbm90aGVyIGxvY2F0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgRGFmZkV4dGVybmFsUm91dGVyVGVtcG9yYXJ5UmVkaXJlY3RFcnJvciBleHRlbmRzIERhZmZJbmhlcml0YWJsZUVycm9yXG4gIGltcGxlbWVudHMgRGFmZkVycm9yIHtcbiAgcHVibGljIHJlYWRvbmx5IGNvZGU6IHN0cmluZyA9ICdURU1QT1JBUllfUkVESVJFQ1QnO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWRpcmVjdFVybDogc3RyaW5nLCBtZXNzYWdlPzogc3RyaW5nKSB7XG5cdCAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,77 @@
|
|
1
|
+
import { Injectable, Inject, } from '@angular/core';
|
2
|
+
import { Router, } from '@angular/router';
|
3
|
+
import { of, } from 'rxjs';
|
4
|
+
import { catchError, map, switchMap, } from 'rxjs/operators';
|
5
|
+
import { DaffRoutingUriNormalizer } from '@daffodil/core/routing';
|
6
|
+
import { DaffExternalRouter, DAFF_EXTERNAL_ROUTER_CONFIG, } from '@daffodil/external-router';
|
7
|
+
import { DaffExternalRouterDriver, } from '@daffodil/external-router/driver';
|
8
|
+
import { DaffExternalRouterNotFoundError } from '../errors/not-found-error';
|
9
|
+
import { DaffExternalRouterPermanentRedirectError } from '../errors/permanent-redirect';
|
10
|
+
import { DaffExternalRouterTemporaryRedirectError } from '../errors/temporary-redirect';
|
11
|
+
import { processErrors } from '../processors/process-errors';
|
12
|
+
import { processRedirects } from '../processors/process-redirect';
|
13
|
+
import * as i0 from "@angular/core";
|
14
|
+
import * as i1 from "@daffodil/external-router";
|
15
|
+
import * as i2 from "@angular/router";
|
16
|
+
import * as i3 from "@daffodil/core/routing";
|
17
|
+
/**
|
18
|
+
* The DaffExternalRouterExistenceGuard is responsible for guarding the wildcard route
|
19
|
+
* of an Angular App and either navigating to a resolved route upon successful resolution
|
20
|
+
* or navigating to the configured route upon a failed resolution.
|
21
|
+
*/
|
22
|
+
export class DaffExternalRouterExistenceGuard {
|
23
|
+
constructor(driver, externalRouter, router, config, urlNormalizer) {
|
24
|
+
this.driver = driver;
|
25
|
+
this.externalRouter = externalRouter;
|
26
|
+
this.router = router;
|
27
|
+
this.config = config;
|
28
|
+
this.urlNormalizer = urlNormalizer;
|
29
|
+
}
|
30
|
+
canActivate(next, state) {
|
31
|
+
return this.driver.resolve(this.urlNormalizer.normalize(state.url)).pipe(map((resolvedRoute) => processErrors(resolvedRoute)), switchMap(resolvedRoute => {
|
32
|
+
this.externalRouter.add(resolvedRoute);
|
33
|
+
return of(resolvedRoute);
|
34
|
+
}), map((resolvedRoute) => processRedirects(resolvedRoute)),
|
35
|
+
// Note that we have to use state.url as we want to ensure that we keep any fragments or query strings.
|
36
|
+
// When we succeed, redirect to the new route, as config has changed since we init'd.
|
37
|
+
map(() => this.router.parseUrl(state.url)),
|
38
|
+
// When we fail, we need to process errors as dictated by the error type.
|
39
|
+
// Handle redirects
|
40
|
+
catchError(error => {
|
41
|
+
if (!(error instanceof DaffExternalRouterPermanentRedirectError) &&
|
42
|
+
!(error instanceof DaffExternalRouterTemporaryRedirectError)) {
|
43
|
+
throw error;
|
44
|
+
}
|
45
|
+
return of(this.router.parseUrl(error.redirectUrl));
|
46
|
+
}),
|
47
|
+
// Handle "404"
|
48
|
+
catchError((error) => {
|
49
|
+
if (!(error instanceof DaffExternalRouterNotFoundError)) {
|
50
|
+
throw error;
|
51
|
+
}
|
52
|
+
return of(this.router.parseUrl(this.config.notFoundResolutionPath));
|
53
|
+
}),
|
54
|
+
//Otherwise something went horribly wrong and we need to bail out.
|
55
|
+
catchError((error) => {
|
56
|
+
//TODO(damienwebdev): Add a logging system.
|
57
|
+
//This log is intentional until we have a better logging system in place.
|
58
|
+
console.log(error);
|
59
|
+
return of(this.router.parseUrl(this.config.failedResolutionPath));
|
60
|
+
}));
|
61
|
+
}
|
62
|
+
}
|
63
|
+
/** @nocollapse */ /** @nocollapse */ DaffExternalRouterExistenceGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffExternalRouterExistenceGuard, deps: [{ token: DaffExternalRouterDriver }, { token: i1.DaffExternalRouter }, { token: i2.Router }, { token: DAFF_EXTERNAL_ROUTER_CONFIG }, { token: i3.DaffRoutingUriNormalizer }], target: i0.ɵɵFactoryTarget.Injectable });
|
64
|
+
/** @nocollapse */ /** @nocollapse */ DaffExternalRouterExistenceGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffExternalRouterExistenceGuard, providedIn: 'root' });
|
65
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.0", ngImport: i0, type: DaffExternalRouterExistenceGuard, decorators: [{
|
66
|
+
type: Injectable,
|
67
|
+
args: [{
|
68
|
+
providedIn: 'root',
|
69
|
+
}]
|
70
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
71
|
+
type: Inject,
|
72
|
+
args: [DaffExternalRouterDriver]
|
73
|
+
}] }, { type: i1.DaffExternalRouter }, { type: i2.Router }, { type: undefined, decorators: [{
|
74
|
+
type: Inject,
|
75
|
+
args: [DAFF_EXTERNAL_ROUTER_CONFIG]
|
76
|
+
}] }, { type: i3.DaffRoutingUriNormalizer }]; } });
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhpc3RlbmNlLmd1YXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9leHRlcm5hbC1yb3V0ZXIvcm91dGluZy9zcmMvZ3VhcmQvZXhpc3RlbmNlLmd1YXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTCxVQUFVLEVBQ1YsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFHTCxNQUFNLEdBR1AsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBRUwsRUFBRSxHQUNILE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxFQUNMLFVBQVUsRUFDVixHQUFHLEVBQ0gsU0FBUyxHQUNWLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEUsT0FBTyxFQUNMLGtCQUFrQixFQUVsQiwyQkFBMkIsR0FFNUIsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEVBRUwsd0JBQXdCLEdBQ3pCLE1BQU0sa0NBQWtDLENBQUM7QUFFMUMsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUUsT0FBTyxFQUFFLHdDQUF3QyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDeEYsT0FBTyxFQUFFLHdDQUF3QyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDeEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7OztBQUVsRTs7OztHQUlHO0FBSUgsTUFBTSxPQUFPLGdDQUFnQztJQUMzQyxZQUVVLE1BQXlDLEVBQ3pDLGNBQWtDLEVBQ2xDLE1BQWMsRUFFZCxNQUF1QyxFQUN2QyxhQUF1QztRQUx2QyxXQUFNLEdBQU4sTUFBTSxDQUFtQztRQUN6QyxtQkFBYyxHQUFkLGNBQWMsQ0FBb0I7UUFDbEMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUVkLFdBQU0sR0FBTixNQUFNLENBQWlDO1FBQ3ZDLGtCQUFhLEdBQWIsYUFBYSxDQUEwQjtJQUM3QyxDQUFDO0lBRUwsV0FBVyxDQUNULElBQTRCLEVBQzVCLEtBQTBCO1FBRTFCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUN0RSxHQUFHLENBQUMsQ0FBQyxhQUEwQyxFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLENBQUMsRUFDakYsU0FBUyxDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3ZDLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzNCLENBQUMsQ0FBQyxFQUNGLEdBQUcsQ0FBQyxDQUFDLGFBQTBDLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3BGLHVHQUF1RztRQUN2RyxxRkFBcUY7UUFDckYsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMxQyx5RUFBeUU7UUFDekUsbUJBQW1CO1FBQ25CLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNqQixJQUNFLENBQUMsQ0FBQyxLQUFLLFlBQVksd0NBQXdDLENBQUM7Z0JBQzVELENBQUMsQ0FBQyxLQUFLLFlBQVksd0NBQXdDLENBQUMsRUFBRTtnQkFDOUQsTUFBTSxLQUFLLENBQUM7YUFDYjtZQUVELE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ3JELENBQUMsQ0FBQztRQUNGLGVBQWU7UUFDZixVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNuQixJQUFJLENBQUMsQ0FBQyxLQUFLLFlBQVksK0JBQStCLENBQUMsRUFBRTtnQkFDdkQsTUFBTSxLQUFLLENBQUM7YUFDYjtZQUVELE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDO1FBQ3RFLENBQUMsQ0FBQztRQUVGLGtFQUFrRTtRQUNsRSxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNuQiwyQ0FBMkM7WUFDM0MseUVBQXlFO1lBQ3pFLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDbkIsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUM7UUFDcEUsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7O21LQXJEVSxnQ0FBZ0Msa0JBRWpDLHdCQUF3QixxRUFJeEIsMkJBQTJCO3VLQU4xQixnQ0FBZ0MsY0FGL0IsTUFBTTsyRkFFUCxnQ0FBZ0M7a0JBSDVDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFHSSxNQUFNOzJCQUFDLHdCQUF3Qjs7MEJBSS9CLE1BQU07MkJBQUMsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBJbmplY3RhYmxlLFxuICBJbmplY3QsXG4gIFBMQVRGT1JNX0lELFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIENhbkFjdGl2YXRlLFxuICBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxuICBSb3V0ZXIsXG4gIFJvdXRlclN0YXRlU25hcHNob3QsXG4gIFVybFRyZWUsXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1xuICBPYnNlcnZhYmxlLFxuICBvZixcbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBjYXRjaEVycm9yLFxuICBtYXAsXG4gIHN3aXRjaE1hcCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBEYWZmUm91dGluZ1VyaU5vcm1hbGl6ZXIgfSBmcm9tICdAZGFmZm9kaWwvY29yZS9yb3V0aW5nJztcbmltcG9ydCB7XG4gIERhZmZFeHRlcm5hbFJvdXRlcixcbiAgRGFmZkV4dGVybmFsUm91dGVyQ29uZmlndXJhdGlvbixcbiAgREFGRl9FWFRFUk5BTF9ST1VURVJfQ09ORklHLFxuICBEYWZmRXh0ZXJuYWxseVJlc29sdmFibGVVcmwsXG59IGZyb20gJ0BkYWZmb2RpbC9leHRlcm5hbC1yb3V0ZXInO1xuaW1wb3J0IHtcbiAgRGFmZkV4dGVybmFsUm91dGVyRHJpdmVySW50ZXJmYWNlLFxuICBEYWZmRXh0ZXJuYWxSb3V0ZXJEcml2ZXIsXG59IGZyb20gJ0BkYWZmb2RpbC9leHRlcm5hbC1yb3V0ZXIvZHJpdmVyJztcblxuaW1wb3J0IHsgRGFmZkV4dGVybmFsUm91dGVyTm90Rm91bmRFcnJvciB9IGZyb20gJy4uL2Vycm9ycy9ub3QtZm91bmQtZXJyb3InO1xuaW1wb3J0IHsgRGFmZkV4dGVybmFsUm91dGVyUGVybWFuZW50UmVkaXJlY3RFcnJvciB9IGZyb20gJy4uL2Vycm9ycy9wZXJtYW5lbnQtcmVkaXJlY3QnO1xuaW1wb3J0IHsgRGFmZkV4dGVybmFsUm91dGVyVGVtcG9yYXJ5UmVkaXJlY3RFcnJvciB9IGZyb20gJy4uL2Vycm9ycy90ZW1wb3JhcnktcmVkaXJlY3QnO1xuaW1wb3J0IHsgcHJvY2Vzc0Vycm9ycyB9IGZyb20gJy4uL3Byb2Nlc3NvcnMvcHJvY2Vzcy1lcnJvcnMnO1xuaW1wb3J0IHsgcHJvY2Vzc1JlZGlyZWN0cyB9IGZyb20gJy4uL3Byb2Nlc3NvcnMvcHJvY2Vzcy1yZWRpcmVjdCc7XG5cbi8qKlxuICogVGhlIERhZmZFeHRlcm5hbFJvdXRlckV4aXN0ZW5jZUd1YXJkIGlzIHJlc3BvbnNpYmxlIGZvciBndWFyZGluZyB0aGUgd2lsZGNhcmQgcm91dGVcbiAqIG9mIGFuIEFuZ3VsYXIgQXBwIGFuZCBlaXRoZXIgbmF2aWdhdGluZyB0byBhIHJlc29sdmVkIHJvdXRlIHVwb24gc3VjY2Vzc2Z1bCByZXNvbHV0aW9uXG4gKiBvciBuYXZpZ2F0aW5nIHRvIHRoZSBjb25maWd1cmVkIHJvdXRlIHVwb24gYSBmYWlsZWQgcmVzb2x1dGlvbi5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIERhZmZFeHRlcm5hbFJvdXRlckV4aXN0ZW5jZUd1YXJkIGltcGxlbWVudHMgQ2FuQWN0aXZhdGUge1xuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KERhZmZFeHRlcm5hbFJvdXRlckRyaXZlcilcbiAgICBwcml2YXRlIGRyaXZlcjogRGFmZkV4dGVybmFsUm91dGVyRHJpdmVySW50ZXJmYWNlLFxuICAgIHByaXZhdGUgZXh0ZXJuYWxSb3V0ZXI6IERhZmZFeHRlcm5hbFJvdXRlcixcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIEBJbmplY3QoREFGRl9FWFRFUk5BTF9ST1VURVJfQ09ORklHKVxuICAgIHByaXZhdGUgY29uZmlnOiBEYWZmRXh0ZXJuYWxSb3V0ZXJDb25maWd1cmF0aW9uLFxuICAgIHByaXZhdGUgdXJsTm9ybWFsaXplcjogRGFmZlJvdXRpbmdVcmlOb3JtYWxpemVyLFxuICApIHsgfVxuXG4gIGNhbkFjdGl2YXRlKFxuICAgIG5leHQ6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXG4gICAgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QsXG4gICk6IE9ic2VydmFibGU8VXJsVHJlZSB8IGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5kcml2ZXIucmVzb2x2ZSh0aGlzLnVybE5vcm1hbGl6ZXIubm9ybWFsaXplKHN0YXRlLnVybCkpLnBpcGUoXG4gICAgICBtYXAoKHJlc29sdmVkUm91dGU6IERhZmZFeHRlcm5hbGx5UmVzb2x2YWJsZVVybCkgPT4gcHJvY2Vzc0Vycm9ycyhyZXNvbHZlZFJvdXRlKSksXG4gICAgICBzd2l0Y2hNYXAocmVzb2x2ZWRSb3V0ZSA9PiB7XG4gICAgICAgIHRoaXMuZXh0ZXJuYWxSb3V0ZXIuYWRkKHJlc29sdmVkUm91dGUpO1xuICAgICAgICByZXR1cm4gb2YocmVzb2x2ZWRSb3V0ZSk7XG4gICAgICB9KSxcbiAgICAgIG1hcCgocmVzb2x2ZWRSb3V0ZTogRGFmZkV4dGVybmFsbHlSZXNvbHZhYmxlVXJsKSA9PiBwcm9jZXNzUmVkaXJlY3RzKHJlc29sdmVkUm91dGUpKSxcbiAgICAgIC8vIE5vdGUgdGhhdCB3ZSBoYXZlIHRvIHVzZSBzdGF0ZS51cmwgYXMgd2Ugd2FudCB0byBlbnN1cmUgdGhhdCB3ZSBrZWVwIGFueSBmcmFnbWVudHMgb3IgcXVlcnkgc3RyaW5ncy5cbiAgICAgIC8vIFdoZW4gd2Ugc3VjY2VlZCwgcmVkaXJlY3QgdG8gdGhlIG5ldyByb3V0ZSwgYXMgY29uZmlnIGhhcyBjaGFuZ2VkIHNpbmNlIHdlIGluaXQnZC5cbiAgICAgIG1hcCgoKSA9PiB0aGlzLnJvdXRlci5wYXJzZVVybChzdGF0ZS51cmwpKSxcbiAgICAgIC8vIFdoZW4gd2UgZmFpbCwgd2UgbmVlZCB0byBwcm9jZXNzIGVycm9ycyBhcyBkaWN0YXRlZCBieSB0aGUgZXJyb3IgdHlwZS5cbiAgICAgIC8vIEhhbmRsZSByZWRpcmVjdHNcbiAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgIShlcnJvciBpbnN0YW5jZW9mIERhZmZFeHRlcm5hbFJvdXRlclBlcm1hbmVudFJlZGlyZWN0RXJyb3IpICYmXG4gICAgICAgICAgIShlcnJvciBpbnN0YW5jZW9mIERhZmZFeHRlcm5hbFJvdXRlclRlbXBvcmFyeVJlZGlyZWN0RXJyb3IpKSB7XG4gICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gb2YodGhpcy5yb3V0ZXIucGFyc2VVcmwoZXJyb3IucmVkaXJlY3RVcmwpKTtcbiAgICAgIH0pLFxuICAgICAgLy8gSGFuZGxlIFwiNDA0XCJcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgIGlmICghKGVycm9yIGluc3RhbmNlb2YgRGFmZkV4dGVybmFsUm91dGVyTm90Rm91bmRFcnJvcikpIHtcbiAgICAgICAgICB0aHJvdyBlcnJvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBvZih0aGlzLnJvdXRlci5wYXJzZVVybCh0aGlzLmNvbmZpZy5ub3RGb3VuZFJlc29sdXRpb25QYXRoKSk7XG4gICAgICB9KSxcblxuICAgICAgLy9PdGhlcndpc2Ugc29tZXRoaW5nIHdlbnQgaG9ycmlibHkgd3JvbmcgYW5kIHdlIG5lZWQgdG8gYmFpbCBvdXQuXG4gICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4ge1xuICAgICAgICAvL1RPRE8oZGFtaWVud2ViZGV2KTogQWRkIGEgbG9nZ2luZyBzeXN0ZW0uXG4gICAgICAgIC8vVGhpcyBsb2cgaXMgaW50ZW50aW9uYWwgdW50aWwgd2UgaGF2ZSBhIGJldHRlciBsb2dnaW5nIHN5c3RlbSBpbiBwbGFjZS5cbiAgICAgICAgY29uc29sZS5sb2coZXJyb3IpO1xuICAgICAgICByZXR1cm4gb2YodGhpcy5yb3V0ZXIucGFyc2VVcmwodGhpcy5jb25maWcuZmFpbGVkUmVzb2x1dGlvblBhdGgpKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -26,4 +26,4 @@ export function daffProvideRoutesResolvableByType(routes) {
|
|
26
26
|
useValue: route,
|
27
27
|
}));
|
28
28
|
}
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1yZXNvbHZhYmxlLXJvdXRlcy50b2tlbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvZXh0ZXJuYWwtcm91dGVyL3NyYy90b2tlbi90eXBlLXJlc29sdmFibGUtcm91dGVzLnRva2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxjQUFjLEdBRWYsTUFBTSxlQUFlLENBQUM7QUFPdkI7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSw4Q0FBOEMsR0FBRyxJQUFJLGNBQWMsQ0FFOUUsNkNBQTZDLEVBQUU7SUFDL0MsVUFBVSxFQUFFLE1BQU07SUFDbEIsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUU7Q0FDbEIsQ0FBQyxDQUFDO0FBRUg7O0dBRUc7QUFDSCxNQUFNLFVBQVUsZ0NBQWdDLENBQUMsYUFBZ0M7SUFDL0UsT0FBTztRQUNMLE9BQU8sRUFBRSw4Q0FBOEM7UUFDdkQsS0FBSyxFQUFFLElBQUk7UUFDWCxRQUFRLEVBQUUsYUFBYTtLQUN4QixDQUFDO0FBQ0osQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGlDQUFpQyxDQUFDLE1BQTJCO0lBQzNFLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQXdCLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDL0MsT0FBTyxFQUFFLDhDQUE4QztRQUN2RCxLQUFLLEVBQUUsSUFBSTtRQUNYLFFBQVEsRUFBRSxLQUFLO0tBQ2hCLENBQUMsQ0FBQyxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEluamVjdGlvblRva2VuLFxuICBQcm92aWRlcixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IERhZmZFeHRlcm5hbFJvdXRlckluc2VydGlvblN0cmF0ZWd5IH0gZnJvbSAnLi4vbW9kZWwvaW5zZXJ0aW9uLXN0cmF0ZWd5LnR5cGUnO1xuaW1wb3J0IHsgRGFmZkV4dGVybmFsUm91dGVUeXBlIH0gZnJvbSAnLi4vbW9kZWwvcm91dGUtdHlwZSc7XG5pbXBvcnQgeyBEYWZmUm91dGVXaXRob3V0UGF0aCB9IGZyb20gJy4uL21vZGVsL3JvdXRlLXdpdGhvdXQtcGF0aCc7XG5pbXBvcnQgeyBEYWZmVHlwZVJvdXRlUGFpciB9IGZyb20gJy4uL21vZGVsL3R5cGUtcm91dGUtcGFpcic7XG5cbi8qKlxuICogQSBtdWx0aS10b2tlbiB0aGF0IGFsbG93cyB5b3UgdG8gcmVnaXN0ZXIgcm91dGUgXCJ0eXBlc1wiIHRoYXQgY29ycmVzcG9uZCB0byByb3V0ZXMuXG4gKi9cbmV4cG9ydCBjb25zdCBEQUZGX0VYVEVSTkFMX1JPVVRFUl9ST1VURVNfUkVTT0xWQUJMRV9CWV9UWVBFID0gbmV3IEluamVjdGlvblRva2VuPFxuRGFmZlR5cGVSb3V0ZVBhaXJbXVxuPignREFGRl9FWFRFUk5BTF9ST1VURVJfUkVTT0xWQUJMRV9UWVBFX1JPVVRFUycsIHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxuICBmYWN0b3J5OiAoKSA9PiBbXSxcbn0pO1xuXG4vKipcbiAqIEEgcHJvdmlkZXIgdXNlZCB0byBjb25uZWN0IGEgdHlwZSB0byBhIHJvdXRlIHRvIGVuYWJsZSBkeW5hbWljIHJvdXRlIHJlc29sdXRpb24gYXQgcnVudGltZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRhZmZQcm92aWRlUm91dGVSZXNvbHZhYmxlQnlUeXBlKHR5cGVSb3V0ZVBhaXI6IERhZmZUeXBlUm91dGVQYWlyKTogUHJvdmlkZXIge1xuICByZXR1cm4ge1xuICAgIHByb3ZpZGU6IERBRkZfRVhURVJOQUxfUk9VVEVSX1JPVVRFU19SRVNPTFZBQkxFX0JZX1RZUEUsXG4gICAgbXVsdGk6IHRydWUsXG4gICAgdXNlVmFsdWU6IHR5cGVSb3V0ZVBhaXIsXG4gIH07XG59XG5cbi8qKlxuICogQSBtdWx0aS1wcm92aWRlciB1c2VkIHRvIGNvbm5lY3QgYW4gYXJyYXkgb2YgdHlwZXMgdG8gdGhlaXIgcmVzcGVjdGl2ZSByb3V0ZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkYWZmUHJvdmlkZVJvdXRlc1Jlc29sdmFibGVCeVR5cGUocm91dGVzOiBEYWZmVHlwZVJvdXRlUGFpcltdKTogUHJvdmlkZXJbXSB7XG4gIHJldHVybiByb3V0ZXMubWFwKChyb3V0ZTogRGFmZlR5cGVSb3V0ZVBhaXIpID0+ICh7XG4gICAgcHJvdmlkZTogREFGRl9FWFRFUk5BTF9ST1VURVJfUk9VVEVTX1JFU09MVkFCTEVfQllfVFlQRSxcbiAgICBtdWx0aTogdHJ1ZSxcbiAgICB1c2VWYWx1ZTogcm91dGUsXG4gIH0pKTtcbn1cbiJdfQ==
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import { DaffExternalRouterUnknownRouteTypeError } from '../errors/unknown-type';
|
2
|
+
/**
|
3
|
+
* Transforms a DaffExternallyResolvableUrl into an Angular Route.
|
4
|
+
*/
|
5
|
+
export const daffTransformResolvedRouteToRoute = (resolvedRoute, availableTypes) => {
|
6
|
+
const routeType = availableTypes
|
7
|
+
.filter(t => t.type === resolvedRoute.type)
|
8
|
+
.shift();
|
9
|
+
if (!routeType) {
|
10
|
+
throw new DaffExternalRouterUnknownRouteTypeError(`Unable to resolve the route '${resolvedRoute.url}'. Its type is '${resolvedRoute.type}' but a matching route wasn't found.`);
|
11
|
+
}
|
12
|
+
return {
|
13
|
+
route: {
|
14
|
+
path: resolvedRoute.url,
|
15
|
+
daffExternalRouteType: resolvedRoute.type,
|
16
|
+
...routeType.route,
|
17
|
+
data: {
|
18
|
+
...resolvedRoute.data,
|
19
|
+
},
|
20
|
+
},
|
21
|
+
insertionStrategy: routeType.insertionStrategy,
|
22
|
+
};
|
23
|
+
};
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2ZWQtcm91dGUtdG8tcm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2V4dGVybmFsLXJvdXRlci9zcmMvdHJhbnNmb3JtL3Jlc29sdmVkLXJvdXRlLXRvLXJvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1Q0FBdUMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBS2pGOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQUcsQ0FDL0MsYUFBMEMsRUFDMUMsY0FBbUMsRUFDcEIsRUFBRTtJQUNqQixNQUFNLFNBQVMsR0FBRyxjQUFjO1NBQzdCLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssYUFBYSxDQUFDLElBQUksQ0FBQztTQUMxQyxLQUFLLEVBQUUsQ0FBQztJQUNYLElBQUksQ0FBQyxTQUFTLEVBQUU7UUFDZCxNQUFNLElBQUksdUNBQXVDLENBQy9DLGdDQUFnQyxhQUFhLENBQUMsR0FBRyxtQkFBbUIsYUFBYSxDQUFDLElBQUksc0NBQXNDLENBQzdILENBQUM7S0FDSDtJQUVELE9BQU87UUFDTCxLQUFLLEVBQUU7WUFDTCxJQUFJLEVBQUUsYUFBYSxDQUFDLEdBQUc7WUFDdkIscUJBQXFCLEVBQUUsYUFBYSxDQUFDLElBQUk7WUFDekMsR0FBRyxTQUFTLENBQUMsS0FBSztZQUNsQixJQUFJLEVBQUU7Z0JBQ0osR0FBRyxhQUFhLENBQUMsSUFBSTthQUN0QjtTQUNGO1FBQ0QsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLGlCQUFpQjtLQUMvQyxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGFmZkV4dGVybmFsUm91dGVyVW5rbm93blJvdXRlVHlwZUVycm9yIH0gZnJvbSAnLi4vZXJyb3JzL3Vua25vd24tdHlwZSc7XG5pbXBvcnQgeyBEYWZmRXh0ZXJuYWxseVJlc29sdmFibGVVcmwgfSBmcm9tICcuLi9tb2RlbC9yZXNvbHZhYmxlLXJvdXRlJztcbmltcG9ydCB7IERhZmZSb3V0ZUluZm8gfSBmcm9tICcuLi9tb2RlbC9yb3V0ZS1pbmZvJztcbmltcG9ydCB7IERhZmZUeXBlUm91dGVQYWlyIH0gZnJvbSAnLi4vbW9kZWwvdHlwZS1yb3V0ZS1wYWlyJztcblxuLyoqXG4gKiBUcmFuc2Zvcm1zIGEgRGFmZkV4dGVybmFsbHlSZXNvbHZhYmxlVXJsIGludG8gYW4gQW5ndWxhciBSb3V0ZS5cbiAqL1xuZXhwb3J0IGNvbnN0IGRhZmZUcmFuc2Zvcm1SZXNvbHZlZFJvdXRlVG9Sb3V0ZSA9IChcbiAgcmVzb2x2ZWRSb3V0ZTogRGFmZkV4dGVybmFsbHlSZXNvbHZhYmxlVXJsLFxuICBhdmFpbGFibGVUeXBlczogRGFmZlR5cGVSb3V0ZVBhaXJbXSxcbik6IERhZmZSb3V0ZUluZm8gPT4ge1xuICBjb25zdCByb3V0ZVR5cGUgPSBhdmFpbGFibGVUeXBlc1xuICAgIC5maWx0ZXIodCA9PiB0LnR5cGUgPT09IHJlc29sdmVkUm91dGUudHlwZSlcbiAgICAuc2hpZnQoKTtcbiAgaWYgKCFyb3V0ZVR5cGUpIHtcbiAgICB0aHJvdyBuZXcgRGFmZkV4dGVybmFsUm91dGVyVW5rbm93blJvdXRlVHlwZUVycm9yKFxuICAgICAgYFVuYWJsZSB0byByZXNvbHZlIHRoZSByb3V0ZSAnJHtyZXNvbHZlZFJvdXRlLnVybH0nLiBJdHMgdHlwZSBpcyAnJHtyZXNvbHZlZFJvdXRlLnR5cGV9JyBidXQgYSBtYXRjaGluZyByb3V0ZSB3YXNuJ3QgZm91bmQuYCxcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICByb3V0ZToge1xuICAgICAgcGF0aDogcmVzb2x2ZWRSb3V0ZS51cmwsXG4gICAgICBkYWZmRXh0ZXJuYWxSb3V0ZVR5cGU6IHJlc29sdmVkUm91dGUudHlwZSxcbiAgICAgIC4uLnJvdXRlVHlwZS5yb3V0ZSxcbiAgICAgIGRhdGE6IHtcbiAgICAgICAgLi4ucmVzb2x2ZWRSb3V0ZS5kYXRhLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGluc2VydGlvblN0cmF0ZWd5OiByb3V0ZVR5cGUuaW5zZXJ0aW9uU3RyYXRlZ3ksXG4gIH07XG59O1xuIl19
|
@@ -0,0 +1,9 @@
|
|
1
|
+
/**
|
2
|
+
* Extracts a key from DaffPath data based upon the currently activated
|
3
|
+
* RouteSnapshot.
|
4
|
+
*/
|
5
|
+
export const daffExtractDaffPathData = (snapshot, key) => {
|
6
|
+
const pathFromRoot = snapshot.pathFromRoot[snapshot.pathFromRoot.length - 1].url.map((seg) => seg.path).join('/');
|
7
|
+
return snapshot.data?.daffPaths?.[pathFromRoot]?.[key] ?? null;
|
8
|
+
};
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmFjdC1kYWZmLXBhdGgtZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvZXh0ZXJuYWwtcm91dGVyL3NyYy91dGlsL2V4dHJhY3QtZGFmZi1wYXRoLWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0E7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsQ0FBd0IsUUFBZ0MsRUFBRSxHQUFZLEVBQVcsRUFBRTtJQUN4SCxNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEgsT0FBTyxRQUFRLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDO0FBQ2pFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXG4gIERhdGEsXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbi8qKlxuICogRXh0cmFjdHMgYSBrZXkgZnJvbSBEYWZmUGF0aCBkYXRhIGJhc2VkIHVwb24gdGhlIGN1cnJlbnRseSBhY3RpdmF0ZWRcbiAqIFJvdXRlU25hcHNob3QuXG4gKi9cbmV4cG9ydCBjb25zdCBkYWZmRXh0cmFjdERhZmZQYXRoRGF0YSA9IDxUIGV4dGVuZHMgRGF0YSA9IERhdGE+KHNuYXBzaG90OiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBrZXk6IGtleW9mIFQpOiB1bmtub3duID0+IHtcbiAgY29uc3QgcGF0aEZyb21Sb290ID0gc25hcHNob3QucGF0aEZyb21Sb290W3NuYXBzaG90LnBhdGhGcm9tUm9vdC5sZW5ndGggLSAxXS51cmwubWFwKChzZWcpID0+IHNlZy5wYXRoKS5qb2luKCcvJyk7XG4gIHJldHVybiBzbmFwc2hvdC5kYXRhPy5kYWZmUGF0aHM/LltwYXRoRnJvbVJvb3RdPy5ba2V5XSA/PyBudWxsO1xufTtcbiJdfQ==
|