@daffodil/external-router 0.79.0 → 0.81.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/README.md +7 -110
- package/driver/magento/2.4.1/magento.module.d.ts +1 -0
- package/driver/magento/2.4.2/magento.module.d.ts +1 -0
- package/driver/magento/2.4.3/magento.module.d.ts +1 -0
- package/driver/magento/2.4.3/magento.service.d.ts +2 -1
- package/driver/magento/2.4.3/transforms/schema/category/category.d.ts +2 -0
- package/driver/magento/2.4.3/transforms/schema/clientify-url-path.d.ts +1 -0
- package/driver/magento/2.4.3/transforms/schema/product/base.d.ts +2 -0
- package/driver/magento/2.4.3/transforms/schema/product/bundle.d.ts +2 -0
- package/driver/magento/2.4.3/transforms/schema/product/configurable.d.ts +2 -0
- package/driver/magento/2.4.3/transforms/schema/product/product.d.ts +5 -0
- package/driver/magento/2.4.3/transforms/schema/product/simple.d.ts +2 -0
- package/driver/magento/2.4.3/transforms/schema/rescale-rating.d.ts +5 -0
- package/driver/magento/2.4.3/transforms/schema/transform-schema.d.ts +2 -0
- package/driver/magento/2.4.3/transforms/transform-client-urls.d.ts +2 -0
- package/driver/magento/model/category-route-product.d.ts +77 -0
- package/driver/magento/model/category-route.d.ts +41 -0
- package/driver/magento/model/product-route.d.ts +85 -0
- package/driver/magento/model/public_api.d.ts +2 -0
- package/driver/magento/model/routable.d.ts +14 -0
- package/driver/magento/model/route.d.ts +4 -34
- package/fesm2022/daffodil-external-router-driver-in-memory.mjs +7 -7
- package/fesm2022/daffodil-external-router-driver-in-memory.mjs.map +1 -1
- package/fesm2022/daffodil-external-router-driver-magento-2.4.1.mjs +8 -7
- package/fesm2022/daffodil-external-router-driver-magento-2.4.1.mjs.map +1 -1
- package/fesm2022/daffodil-external-router-driver-magento-2.4.2.mjs +8 -7
- package/fesm2022/daffodil-external-router-driver-magento-2.4.2.mjs.map +1 -1
- package/fesm2022/daffodil-external-router-driver-magento-2.4.3.mjs +222 -15
- package/fesm2022/daffodil-external-router-driver-magento-2.4.3.mjs.map +1 -1
- package/fesm2022/daffodil-external-router-driver-magento.mjs.map +1 -1
- package/fesm2022/daffodil-external-router-driver-testing.mjs +7 -7
- package/fesm2022/daffodil-external-router-driver-testing.mjs.map +1 -1
- package/fesm2022/daffodil-external-router-routing.mjs.map +1 -1
- package/fesm2022/daffodil-external-router.mjs.map +1 -1
- package/model/resolvable-route.d.ts +1 -0
- package/model/route-data.d.ts +13 -0
- package/package.json +1 -1
- package/esm2022/config.mjs +0 -15
- package/esm2022/daffodil-external-router.mjs +0 -5
- package/esm2022/driver/daffodil-external-router-driver.mjs +0 -5
- package/esm2022/driver/in-memory/config.mjs +0 -17
- package/esm2022/driver/in-memory/daffodil-external-router-driver-in-memory.mjs +0 -5
- package/esm2022/driver/in-memory/in-memory.module.mjs +0 -34
- package/esm2022/driver/in-memory/in-memory.service.mjs +0 -39
- package/esm2022/driver/in-memory/index.mjs +0 -2
- package/esm2022/driver/in-memory/provider.mjs +0 -12
- package/esm2022/driver/in-memory/public_api.mjs +0 -7
- package/esm2022/driver/index.mjs +0 -2
- package/esm2022/driver/interfaces/external-router-driver.interface.mjs +0 -11
- package/esm2022/driver/magento/2.4.1/daffodil-external-router-driver-magento-2.4.1.mjs +0 -5
- package/esm2022/driver/magento/2.4.1/graphql/queries/resolve-url-v2.4.1.mjs +0 -17
- package/esm2022/driver/magento/2.4.1/index.mjs +0 -2
- package/esm2022/driver/magento/2.4.1/magento.module.mjs +0 -48
- package/esm2022/driver/magento/2.4.1/magento.service.mjs +0 -38
- package/esm2022/driver/magento/2.4.1/public_api.mjs +0 -6
- package/esm2022/driver/magento/2.4.1/transforms/resolution-to-resolvable-url.mjs +0 -10
- package/esm2022/driver/magento/2.4.2/daffodil-external-router-driver-magento-2.4.2.mjs +0 -5
- package/esm2022/driver/magento/2.4.2/graphql/queries/resolve-url-v2.4.2.mjs +0 -17
- package/esm2022/driver/magento/2.4.2/index.mjs +0 -2
- package/esm2022/driver/magento/2.4.2/magento.module.mjs +0 -48
- package/esm2022/driver/magento/2.4.2/magento.service.mjs +0 -37
- package/esm2022/driver/magento/2.4.2/public_api.mjs +0 -6
- package/esm2022/driver/magento/2.4.2/transforms/resolution-to-resolvable-url.mjs +0 -10
- package/esm2022/driver/magento/2.4.3/daffodil-external-router-driver-magento-2.4.3.mjs +0 -5
- package/esm2022/driver/magento/2.4.3/graphql/queries/resolve.mjs +0 -30
- package/esm2022/driver/magento/2.4.3/index.mjs +0 -2
- package/esm2022/driver/magento/2.4.3/magento.module.mjs +0 -48
- package/esm2022/driver/magento/2.4.3/magento.service.mjs +0 -37
- package/esm2022/driver/magento/2.4.3/provider.mjs +0 -13
- package/esm2022/driver/magento/2.4.3/public_api.mjs +0 -7
- package/esm2022/driver/magento/2.4.3/transforms/resolution-to-resolvable-url.mjs +0 -15
- package/esm2022/driver/magento/daffodil-external-router-driver-magento.mjs +0 -5
- package/esm2022/driver/magento/index.mjs +0 -2
- package/esm2022/driver/magento/model/public_api.mjs +0 -2
- package/esm2022/driver/magento/model/resolution-types.mjs +0 -7
- package/esm2022/driver/magento/model/route-response.mjs +0 -2
- package/esm2022/driver/magento/model/route.mjs +0 -2
- package/esm2022/driver/magento/model/url-resolver-response.mjs +0 -2
- package/esm2022/driver/magento/model/url-resolver.mjs +0 -2
- package/esm2022/driver/magento/public_api.mjs +0 -6
- package/esm2022/driver/magento/transforms/public_api.mjs +0 -2
- package/esm2022/driver/magento/transforms/redirect-to-http.mjs +0 -5
- package/esm2022/driver/not-found-resolution.mjs +0 -13
- package/esm2022/driver/public_api.mjs +0 -6
- package/esm2022/driver/testing/config.mjs +0 -13
- package/esm2022/driver/testing/daffodil-external-router-driver-testing.mjs +0 -5
- package/esm2022/driver/testing/index.mjs +0 -2
- package/esm2022/driver/testing/provider.mjs +0 -12
- package/esm2022/driver/testing/public_api.mjs +0 -7
- package/esm2022/driver/testing/testing.module.mjs +0 -32
- package/esm2022/driver/testing/testing.service.mjs +0 -47
- package/esm2022/index.mjs +0 -2
- package/esm2022/model/public_api.mjs +0 -2
- package/esm2022/model/resolvable-route.mjs +0 -2
- package/esm2022/model/route-data.mjs +0 -2
- package/esm2022/model/route-type.mjs +0 -2
- package/esm2022/model/route-with-seo-data.mjs +0 -2
- package/esm2022/provide-external-router.mjs +0 -6
- package/esm2022/public_api.mjs +0 -7
- package/esm2022/routing/daffodil-external-router-routing.mjs +0 -5
- package/esm2022/routing/errors/client-error.mjs +0 -11
- package/esm2022/routing/errors/not-found-error.mjs +0 -11
- package/esm2022/routing/errors/permanent-redirect.mjs +0 -13
- package/esm2022/routing/errors/server-error.mjs +0 -11
- package/esm2022/routing/errors/temporary-redirect.mjs +0 -13
- package/esm2022/routing/guard/external-matcher-type.guard.mjs +0 -43
- package/esm2022/routing/helper/convert-to-path.mjs +0 -7
- package/esm2022/routing/index.mjs +0 -2
- package/esm2022/routing/processors/process-errors.mjs +0 -22
- package/esm2022/routing/processors/process-redirect.mjs +0 -18
- package/esm2022/routing/public_api.mjs +0 -5
package/README.md
CHANGED
@@ -1,16 +1,9 @@
|
|
1
1
|
# @daffodil/external-router
|
2
2
|
|
3
|
-
`@daffodil/external-router` extends `@angular/router` and allows you to render routes defined in external systems like Wordpress, Magento, Contentful, etc, as if you had defined the routes statically in your Angular `Routes`.
|
3
|
+
`@daffodil/external-router` extends `@angular/router` and allows you to render routes defined in external systems like Wordpress, Magento, Contentful, etc, as if you had defined the routes statically in your Angular `Routes`.
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
## Table of Contents
|
8
|
-
|
9
|
-
- [Installation](#installation)
|
10
|
-
- [Usage](#usage)
|
11
|
-
- [Drivers](#drivers)
|
12
|
-
- [Configuration](/libs/external-router/guides/configuration.md)
|
13
|
-
- [Testing](/libs/external-router/guides/testing.md)
|
5
|
+
## Overview
|
6
|
+
It's useful when generating user-friendly routes in external applications and resolving them by their user-friendly URI, such as `/sweatshirts` instead of `/category/6` or `category/sweatshirts.`
|
14
7
|
|
15
8
|
## Installation
|
16
9
|
|
@@ -28,107 +21,11 @@ Install with yarn:
|
|
28
21
|
yarn add @daffodil/external-router
|
29
22
|
```
|
30
23
|
|
31
|
-
## Usage
|
32
|
-
|
33
|
-
To get started with `@daffodil/external-router`, follow these steps:
|
34
|
-
|
35
|
-
1. Add `provideExternalRouter` to the `providers` of your `appConfig` or `AppModule` :
|
36
|
-
|
37
|
-
```ts
|
38
|
-
import { ApplicationConfig } from '@angular/core';
|
39
|
-
...
|
40
|
-
import { provideExternalRouter } from '@daffodil/external-router';
|
41
|
-
|
42
|
-
export const appConfig: ApplicationConfig = {
|
43
|
-
providers: [
|
44
|
-
provideRouter(routes),
|
45
|
-
provideClientHydration(),
|
46
|
-
provideExternalRouter(),
|
47
|
-
],
|
48
|
-
};
|
49
|
-
```
|
50
|
-
|
51
|
-
2. Configure your [driver of choice](#drivers) (this example uses the [testing driver](/libs/external-router/guides/driver/testing)):
|
52
|
-
|
53
|
-
```ts
|
54
|
-
import { ApplicationConfig, importProvidersFrom } from '@angular/core';
|
55
|
-
import { DaffExternalRouterDriverTestingModule } from '@daffodil/external-router/driver/testing';
|
56
|
-
|
57
|
-
export const appConfig: ApplicationConfig = {
|
58
|
-
providers: [
|
59
|
-
provideRouter(routes),
|
60
|
-
provideClientHydration(),
|
61
|
-
provideExternalRouter(),
|
62
|
-
provideDaffExternalRouterTestingDriver({
|
63
|
-
'test-page': 'TEST_TYPE',
|
64
|
-
'other-page': 'OTHER_TYPE',
|
65
|
-
'another-page': 'OTHER_TYPE',
|
66
|
-
}),
|
67
|
-
],
|
68
|
-
};
|
69
|
-
```
|
70
|
-
|
71
|
-
3. Configure your routes to use the `daffExternalMatcherTypeGuard`
|
72
|
-
|
73
|
-
```ts
|
74
|
-
import { Routes } from '@angular/router';
|
75
|
-
|
76
|
-
import { daffExternalMatcherTypeGuard } from '@daffodil/external-router/routing';
|
77
|
-
|
78
|
-
export const routes: Routes = [
|
79
|
-
{
|
80
|
-
path: '',
|
81
|
-
pathMatch: 'full',
|
82
|
-
component: HomeComponent,
|
83
|
-
},
|
84
|
-
{
|
85
|
-
path: '**',
|
86
|
-
component: TestComponent,
|
87
|
-
canMatch: [daffExternalMatcherTypeGuard('TEST_TYPE')],
|
88
|
-
},
|
89
|
-
{
|
90
|
-
path: '**',
|
91
|
-
component: OtherTypeComponent,
|
92
|
-
canMatch: [daffExternalMatcherTypeGuard('OTHER_TYPE')],
|
93
|
-
},
|
94
|
-
];
|
95
|
-
```
|
96
|
-
|
97
|
-
> You can use whatever type values you would like, just ensure they match the types set in `provideDaffExternalRouterTestingDriver`.
|
98
|
-
> These components are also just examples, you can replace them with whatever components you want.
|
99
|
-
|
100
|
-
4. Add links to your AppComponent:
|
101
|
-
|
102
|
-
```ts
|
103
|
-
@Component({
|
104
|
-
selector: 'app-root',
|
105
|
-
standalone: true,
|
106
|
-
imports: [RouterOutlet, RouterLink],
|
107
|
-
templateUrl: './app.component.html',
|
108
|
-
styleUrl: './app.component.scss',
|
109
|
-
})
|
110
|
-
export class AppComponent {}
|
111
|
-
```
|
112
|
-
|
113
|
-
```html
|
114
|
-
<ul>
|
115
|
-
<li><a routerLink="/">Home</a></li>
|
116
|
-
<li><a routerLink="/test-page">Test</a></li>
|
117
|
-
<li><a routerLink="/other-page">Other Type</a></li>
|
118
|
-
<li><a routerLink="/another-page">Other Type (another)</a></li>
|
119
|
-
</ul>
|
120
|
-
<router-outlet></router-outlet>
|
121
|
-
```
|
122
|
-
|
123
|
-
5. Serve your app.
|
124
|
-
|
125
|
-
You can now navigate to "/test-page", "/other-page", and "/another-page" as if it was defined in your Angular routes.
|
126
|
-
|
127
24
|
## Drivers
|
128
25
|
|
129
26
|
We provide a driver interface along with a few pre-fabricated drivers for you to simply drop into your app and get started with external route resolution.
|
130
27
|
|
131
|
-
- [
|
132
|
-
- [In-Memory](/libs/external-router/guides/
|
133
|
-
- [Magento](/libs/external-router/guides/
|
134
|
-
- [
|
28
|
+
- [Customize your own driver](/libs/external-router/guides/drivers/custom.md)
|
29
|
+
- [In-Memory](/libs/external-router/guides/drivers/in-memory.md)
|
30
|
+
- [Magento](/libs/external-router/guides/drivers/magento.md)
|
31
|
+
- [Testing](/libs/external-router/guides/drivers/testing.md)
|
@@ -11,7 +11,8 @@ import * as i0 from "@angular/core";
|
|
11
11
|
*/
|
12
12
|
export declare class DaffExternalRouterMagentoDriver implements DaffExternalRouterDriverInterface {
|
13
13
|
private apollo;
|
14
|
-
|
14
|
+
private document;
|
15
|
+
constructor(apollo: Apollo, document: Document);
|
15
16
|
resolve(url: string): Observable<DaffExternallyResolvableUrl>;
|
16
17
|
static ɵfac: i0.ɵɵFactoryDeclaration<DaffExternalRouterMagentoDriver, never>;
|
17
18
|
static ɵprov: i0.ɵɵInjectableDeclaration<DaffExternalRouterMagentoDriver>;
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare const clientifyUrlPath: <T extends string | null>(path: T, domain: string) => string;
|
@@ -0,0 +1,5 @@
|
|
1
|
+
import { MagentoProductRoute } from '@daffodil/external-router/driver/magento';
|
2
|
+
/**
|
3
|
+
* Computes supplementary SEO schema for Magento product routes.
|
4
|
+
*/
|
5
|
+
export declare const transformMagentoProductSchema: (resolution: MagentoProductRoute) => Record<string, unknown>;
|
@@ -0,0 +1,77 @@
|
|
1
|
+
export interface MagentoCategoryRouteProduct {
|
2
|
+
/**
|
3
|
+
* The relative path for the route.
|
4
|
+
*/
|
5
|
+
relative_url: string;
|
6
|
+
/**
|
7
|
+
* The type of route, typically PRODUCT, CATEGORY or CMS_PAGE
|
8
|
+
*/
|
9
|
+
type: 'PRODUCT';
|
10
|
+
/**
|
11
|
+
* The HTTP code for the page.
|
12
|
+
*/
|
13
|
+
redirect_code: number;
|
14
|
+
/**
|
15
|
+
* In v2.4.3 this became the standard field across types
|
16
|
+
*/
|
17
|
+
uid: string;
|
18
|
+
/**
|
19
|
+
* The canonical url of the route.
|
20
|
+
*/
|
21
|
+
canonical_url: string | null;
|
22
|
+
/**
|
23
|
+
* The name of the route
|
24
|
+
*/
|
25
|
+
name: string | null;
|
26
|
+
/**
|
27
|
+
* The title of the route
|
28
|
+
*/
|
29
|
+
meta_title: string | null;
|
30
|
+
/**
|
31
|
+
* The sku of a product.
|
32
|
+
*/
|
33
|
+
sku: string;
|
34
|
+
/**
|
35
|
+
* The number of reviews of a product.
|
36
|
+
*/
|
37
|
+
review_count: number;
|
38
|
+
/**
|
39
|
+
* The rating of a product.
|
40
|
+
*/
|
41
|
+
rating_summary: number;
|
42
|
+
/**
|
43
|
+
* The images of a product.
|
44
|
+
*/
|
45
|
+
image: {
|
46
|
+
url: string;
|
47
|
+
};
|
48
|
+
/**
|
49
|
+
* The price of the item.
|
50
|
+
*/
|
51
|
+
price_range: {
|
52
|
+
maximum_price: {
|
53
|
+
final_price: {
|
54
|
+
currency: string;
|
55
|
+
value: number;
|
56
|
+
};
|
57
|
+
regular_price: {
|
58
|
+
currency: string;
|
59
|
+
value: number;
|
60
|
+
};
|
61
|
+
};
|
62
|
+
minimum_price: {
|
63
|
+
final_price: {
|
64
|
+
currency: string;
|
65
|
+
value: number;
|
66
|
+
};
|
67
|
+
regular_price: {
|
68
|
+
currency: string;
|
69
|
+
value: number;
|
70
|
+
};
|
71
|
+
};
|
72
|
+
};
|
73
|
+
/**
|
74
|
+
* The type of route.
|
75
|
+
*/
|
76
|
+
__typename: string;
|
77
|
+
}
|
@@ -0,0 +1,41 @@
|
|
1
|
+
import { MagentoCategoryRouteProduct } from './category-route-product';
|
2
|
+
export interface MagentoCategoryRoute {
|
3
|
+
/**
|
4
|
+
* The relative path for the route.
|
5
|
+
*/
|
6
|
+
relative_url: string;
|
7
|
+
/**
|
8
|
+
* The type of route, typically PRODUCT, CATEGORY or CMS_PAGE
|
9
|
+
*/
|
10
|
+
type: 'CATEGORY';
|
11
|
+
/**
|
12
|
+
* The HTTP code for the page.
|
13
|
+
*/
|
14
|
+
redirect_code: number;
|
15
|
+
/**
|
16
|
+
* In v2.4.3 this became the standard field across types
|
17
|
+
*/
|
18
|
+
uid?: string;
|
19
|
+
/**
|
20
|
+
* The canonical url of the route.
|
21
|
+
*/
|
22
|
+
canonical_url?: string;
|
23
|
+
/**
|
24
|
+
* The meta description of the route
|
25
|
+
*/
|
26
|
+
meta_description?: string;
|
27
|
+
/**
|
28
|
+
* The name of the route
|
29
|
+
*/
|
30
|
+
name?: string;
|
31
|
+
/**
|
32
|
+
* The title of the route
|
33
|
+
*/
|
34
|
+
meta_title?: string;
|
35
|
+
/**
|
36
|
+
* The list of items in the category.
|
37
|
+
*/
|
38
|
+
products: {
|
39
|
+
items: MagentoCategoryRouteProduct[];
|
40
|
+
};
|
41
|
+
}
|
@@ -0,0 +1,85 @@
|
|
1
|
+
export interface MagentoProductRoute {
|
2
|
+
/**
|
3
|
+
* The relative path for the route.
|
4
|
+
*/
|
5
|
+
relative_url: string;
|
6
|
+
/**
|
7
|
+
* The type of route, typically PRODUCT, CATEGORY or CMS_PAGE
|
8
|
+
*/
|
9
|
+
type: 'PRODUCT';
|
10
|
+
/**
|
11
|
+
* The HTTP code for the page.
|
12
|
+
*/
|
13
|
+
redirect_code: number;
|
14
|
+
/**
|
15
|
+
* In v2.4.3 this became the standard field across types
|
16
|
+
*/
|
17
|
+
uid: string;
|
18
|
+
/**
|
19
|
+
* The canonical url of the route.
|
20
|
+
*/
|
21
|
+
canonical_url: string | null;
|
22
|
+
/**
|
23
|
+
* The meta description of the route
|
24
|
+
*/
|
25
|
+
meta_description: string | null;
|
26
|
+
/**
|
27
|
+
* The name of the route
|
28
|
+
*/
|
29
|
+
name: string;
|
30
|
+
/**
|
31
|
+
* The title of the route
|
32
|
+
*/
|
33
|
+
meta_title: string | null;
|
34
|
+
/**
|
35
|
+
* The sku of a product.
|
36
|
+
*/
|
37
|
+
sku: string;
|
38
|
+
/**
|
39
|
+
* The number of reviews of a product.
|
40
|
+
*/
|
41
|
+
review_count: number | null;
|
42
|
+
/**
|
43
|
+
* The rating of a product.
|
44
|
+
*/
|
45
|
+
rating_summary: number | null;
|
46
|
+
/**
|
47
|
+
* The images of a product.
|
48
|
+
*/
|
49
|
+
image?: {
|
50
|
+
url: string;
|
51
|
+
};
|
52
|
+
/**
|
53
|
+
* The type of route.
|
54
|
+
*/
|
55
|
+
__typename: string;
|
56
|
+
/**
|
57
|
+
* The price of the item.
|
58
|
+
*/
|
59
|
+
price_range: {
|
60
|
+
maximum_price: {
|
61
|
+
final_price: {
|
62
|
+
currency: string;
|
63
|
+
value: number;
|
64
|
+
};
|
65
|
+
regular_price: {
|
66
|
+
currency: string;
|
67
|
+
value: number;
|
68
|
+
};
|
69
|
+
};
|
70
|
+
minimum_price: {
|
71
|
+
final_price: {
|
72
|
+
currency: string;
|
73
|
+
value: number;
|
74
|
+
};
|
75
|
+
regular_price: {
|
76
|
+
currency: string;
|
77
|
+
value: number;
|
78
|
+
};
|
79
|
+
};
|
80
|
+
};
|
81
|
+
/**
|
82
|
+
* The stock status of a product.
|
83
|
+
*/
|
84
|
+
stock_status: 'IN_STOCK' | 'OUT_OF_STOCK';
|
85
|
+
}
|
@@ -3,3 +3,5 @@ export { MagentoUrlRewriteEntityTypeEnum } from './resolution-types';
|
|
3
3
|
export { MagentoUrlResolverResponse } from './url-resolver-response';
|
4
4
|
export { MagentoRoute } from './route';
|
5
5
|
export { MagentoRouteResponse } from './route-response';
|
6
|
+
export { MagentoProductRoute } from './product-route';
|
7
|
+
export { MagentoCategoryRoute } from './category-route';
|
@@ -0,0 +1,14 @@
|
|
1
|
+
export interface MagentoRoutable {
|
2
|
+
/**
|
3
|
+
* The relative path for the route.
|
4
|
+
*/
|
5
|
+
relative_url: string;
|
6
|
+
/**
|
7
|
+
* The type of route, typically PRODUCT, CATEGORY or CMS_PAGE
|
8
|
+
*/
|
9
|
+
type: 'UNKNOWN' | null;
|
10
|
+
/**
|
11
|
+
* The HTTP code for the page.
|
12
|
+
*/
|
13
|
+
redirect_code: number;
|
14
|
+
}
|
@@ -1,34 +1,4 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
relative_url: string;
|
6
|
-
/**
|
7
|
-
* The type of route, typically PRODUCT, CATEGORY or CMS_PAGE
|
8
|
-
*/
|
9
|
-
type: string;
|
10
|
-
/**
|
11
|
-
* The HTTP code for the page.
|
12
|
-
*/
|
13
|
-
redirect_code: number;
|
14
|
-
/**
|
15
|
-
* In v2.4.3 this became the standard field across types
|
16
|
-
*/
|
17
|
-
uid?: string;
|
18
|
-
/**
|
19
|
-
* The canonical url of the route.
|
20
|
-
*/
|
21
|
-
canonical_url?: string;
|
22
|
-
/**
|
23
|
-
* The meta description of the route
|
24
|
-
*/
|
25
|
-
meta_description?: string;
|
26
|
-
/**
|
27
|
-
* The name of the route
|
28
|
-
*/
|
29
|
-
name?: string;
|
30
|
-
/**
|
31
|
-
* The title of the route
|
32
|
-
*/
|
33
|
-
meta_title?: string;
|
34
|
-
}
|
1
|
+
import { MagentoCategoryRoute } from './category-route';
|
2
|
+
import { MagentoProductRoute } from './product-route';
|
3
|
+
import { MagentoRoutable } from './routable';
|
4
|
+
export type MagentoRoute = MagentoRoutable | MagentoProductRoute | MagentoCategoryRoute;
|
@@ -41,10 +41,10 @@ class DaffExternalRouterInMemoryDriver {
|
|
41
41
|
url: daffUriTruncateLeadingSlash(resolvedUrl.url),
|
42
42
|
} : DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION);
|
43
43
|
}
|
44
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
45
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
44
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffExternalRouterInMemoryDriver, deps: [{ token: DAFF_EXTERNAL_ROUTER_DRIVER_IN_MEMORY_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
45
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffExternalRouterInMemoryDriver, providedIn: 'root' }); }
|
46
46
|
}
|
47
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffExternalRouterInMemoryDriver, decorators: [{
|
48
48
|
type: Injectable,
|
49
49
|
args: [{
|
50
50
|
providedIn: 'root',
|
@@ -70,11 +70,11 @@ class DaffExternalRouterDriverInMemoryModule {
|
|
70
70
|
],
|
71
71
|
};
|
72
72
|
}
|
73
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
74
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
75
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
73
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffExternalRouterDriverInMemoryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
74
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.7", ngImport: i0, type: DaffExternalRouterDriverInMemoryModule, imports: [CommonModule] }); }
|
75
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffExternalRouterDriverInMemoryModule, imports: [CommonModule] }); }
|
76
76
|
}
|
77
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
77
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffExternalRouterDriverInMemoryModule, decorators: [{
|
78
78
|
type: NgModule,
|
79
79
|
args: [{
|
80
80
|
declarations: [],
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"daffodil-external-router-driver-in-memory.mjs","sources":["../../../libs/external-router/driver/in-memory/src/config.ts","../../../libs/external-router/driver/in-memory/src/in-memory.service.ts","../../../libs/external-router/driver/in-memory/src/in-memory.module.ts","../../../libs/external-router/driver/in-memory/src/provider.ts","../../../libs/external-router/driver/in-memory/src/public_api.ts","../../../libs/external-router/driver/in-memory/src/daffodil-external-router-driver-in-memory.ts"],"sourcesContent":["import { createConfigInjectionToken } from '@daffodil/core';\nimport { DaffExternallyResolvableUrl } from '@daffodil/external-router';\nimport { DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION } from '@daffodil/external-router/driver';\n\n/**\n * A lookup for a URL.\n * Returns an {@link DaffExternallyResolvableUrl} or\n * {@link DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION} if the URL cannot be resolved\n */\nexport type DaffExternalRouterDriverInMemoryResolver = (url: string) => DaffExternallyResolvableUrl;\n\n/**\n * The configuration for the in-memory driver.\n */\nexport interface DaffExternalRouterDriverInMemoryConfig {\n resolver: DaffExternalRouterDriverInMemoryResolver;\n}\n\nconst defaultConfig: DaffExternalRouterDriverInMemoryConfig = {\n resolver: () => DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION,\n};\n\nexport const {\n /**\n * The token used by Daffodil to hold the driver's configuration.\n *\n * @docs-private\n */\n token: DAFF_EXTERNAL_ROUTER_DRIVER_IN_MEMORY_CONFIG,\n /**\n * Provider function for {@link DAFF_EXTERNAL_ROUTER_DRIVER_IN_MEMORY_CONFIG}.\n */\n provider: provideDaffExternalRouterDriverInMemoryConfig,\n} = createConfigInjectionToken<DaffExternalRouterDriverInMemoryConfig>(defaultConfig, 'DAFF_EXTERNAL_ROUTER_DRIVER_IN_MEMORY_CONFIG');\n","import {\n Injectable,\n Inject,\n} from '@angular/core';\nimport {\n Observable,\n of,\n} from 'rxjs';\n\nimport {\n daffUriTruncateLeadingSlash,\n daffUriTruncateQueryFragment,\n} from '@daffodil/core/routing';\nimport { DaffExternallyResolvableUrl } from '@daffodil/external-router';\nimport {\n DaffExternalRouterDriverInterface,\n DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION,\n} from '@daffodil/external-router/driver';\n\nimport {\n DaffExternalRouterDriverInMemoryConfig,\n DAFF_EXTERNAL_ROUTER_DRIVER_IN_MEMORY_CONFIG,\n} from './config';\n\n/**\n * The DaffExternalRouterInMemoryDriver is responsible for resolving\n * a URL using the resolver in the provided configuration.\n *\n * @inheritdoc\n *\n * @see {@link DaffExternalRouterInMemoryDriver}\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffExternalRouterInMemoryDriver\nimplements DaffExternalRouterDriverInterface {\n constructor(\n @Inject(DAFF_EXTERNAL_ROUTER_DRIVER_IN_MEMORY_CONFIG)\n private configuration: DaffExternalRouterDriverInMemoryConfig,\n ) {}\n\n resolve(url: string): Observable<DaffExternallyResolvableUrl> {\n const truncatedUrl = daffUriTruncateQueryFragment(url);\n const resolvedUrl = this.configuration.resolver(truncatedUrl);\n\n return of(resolvedUrl?.url ? {\n ...resolvedUrl,\n url: daffUriTruncateLeadingSlash(resolvedUrl.url),\n } : DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n InjectionToken,\n} from '@angular/core';\n\nimport { provideDaffExternalRouterDriver } from '@daffodil/external-router/driver';\n\nimport {\n DaffExternalRouterDriverInMemoryConfig,\n provideDaffExternalRouterDriverInMemoryConfig,\n} from './config';\nimport { DaffExternalRouterInMemoryDriver } from './in-memory.service';\n\n/**\n * The `DaffExternalRouterDriverInMemoryModule` is an importable NgModule that can\n * be used to configure the {@link DaffExternalRouterInMemoryDriver}.\n *\n * @deprecated See {@link provideDaffExternalRouterInMemoryDriver } Deprecated in version 0.79.0. Will be removed in version 0.82.0.\n */\n@NgModule({\n declarations: [],\n imports: [CommonModule],\n})\nexport class DaffExternalRouterDriverInMemoryModule {\n static forRoot(\n config: DaffExternalRouterDriverInMemoryConfig | InjectionToken<DaffExternalRouterDriverInMemoryConfig>,\n ): ModuleWithProviders<DaffExternalRouterDriverInMemoryModule> {\n return {\n ngModule: DaffExternalRouterDriverInMemoryModule,\n providers: [\n provideDaffExternalRouterDriver(DaffExternalRouterInMemoryDriver),\n provideDaffExternalRouterDriverInMemoryConfig(config),\n ],\n };\n }\n}\n","import {\n EnvironmentProviders,\n InjectionToken,\n makeEnvironmentProviders,\n} from '@angular/core';\n\nimport { provideDaffExternalRouterDriver } from '@daffodil/external-router/driver';\n\nimport {\n DaffExternalRouterDriverInMemoryConfig,\n provideDaffExternalRouterDriverInMemoryConfig,\n} from './config';\nimport { DaffExternalRouterInMemoryDriver } from './in-memory.service';\n\n/**\n * Provides an in-memory implementation of {@link DaffExternalRouterDriver}\n */\nexport const provideDaffExternalRouterInMemoryDriver = (config:\n DaffExternalRouterDriverInMemoryConfig | InjectionToken<DaffExternalRouterDriverInMemoryConfig> = undefined,\n): EnvironmentProviders => makeEnvironmentProviders([\n provideDaffExternalRouterDriver(DaffExternalRouterInMemoryDriver),\n config ? provideDaffExternalRouterDriverInMemoryConfig(config) : [],\n]);\n","/*\n * Public API Surface of @daffodil/external-router/driver/in-memory\n */\n\nexport { DaffExternalRouterInMemoryDriver } from './in-memory.service';\nexport { DaffExternalRouterDriverInMemoryModule } from './in-memory.module';\n\nexport {\n DaffExternalRouterDriverInMemoryConfig,\n DaffExternalRouterDriverInMemoryResolver,\n} from './config';\n\nexport { provideDaffExternalRouterInMemoryDriver } from './provider';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AAkBA,MAAM,aAAa,GAA2C;AAC5D,IAAA,QAAQ,EAAE,MAAM,yCAAyC;CAC1D
|
1
|
+
{"version":3,"file":"daffodil-external-router-driver-in-memory.mjs","sources":["../../../libs/external-router/driver/in-memory/src/config.ts","../../../libs/external-router/driver/in-memory/src/in-memory.service.ts","../../../libs/external-router/driver/in-memory/src/in-memory.module.ts","../../../libs/external-router/driver/in-memory/src/provider.ts","../../../libs/external-router/driver/in-memory/src/public_api.ts","../../../libs/external-router/driver/in-memory/src/daffodil-external-router-driver-in-memory.ts"],"sourcesContent":["import { createConfigInjectionToken } from '@daffodil/core';\nimport { DaffExternallyResolvableUrl } from '@daffodil/external-router';\nimport { DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION } from '@daffodil/external-router/driver';\n\n/**\n * A lookup for a URL.\n * Returns an {@link DaffExternallyResolvableUrl} or\n * {@link DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION} if the URL cannot be resolved\n */\nexport type DaffExternalRouterDriverInMemoryResolver = (url: string) => DaffExternallyResolvableUrl;\n\n/**\n * The configuration for the in-memory driver.\n */\nexport interface DaffExternalRouterDriverInMemoryConfig {\n resolver: DaffExternalRouterDriverInMemoryResolver;\n}\n\nconst defaultConfig: DaffExternalRouterDriverInMemoryConfig = {\n resolver: () => DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION,\n};\n\nexport const {\n /**\n * The token used by Daffodil to hold the driver's configuration.\n *\n * @docs-private\n */\n token: DAFF_EXTERNAL_ROUTER_DRIVER_IN_MEMORY_CONFIG,\n /**\n * Provider function for {@link DAFF_EXTERNAL_ROUTER_DRIVER_IN_MEMORY_CONFIG}.\n */\n provider: provideDaffExternalRouterDriverInMemoryConfig,\n} = createConfigInjectionToken<DaffExternalRouterDriverInMemoryConfig>(defaultConfig, 'DAFF_EXTERNAL_ROUTER_DRIVER_IN_MEMORY_CONFIG');\n","import {\n Injectable,\n Inject,\n} from '@angular/core';\nimport {\n Observable,\n of,\n} from 'rxjs';\n\nimport {\n daffUriTruncateLeadingSlash,\n daffUriTruncateQueryFragment,\n} from '@daffodil/core/routing';\nimport { DaffExternallyResolvableUrl } from '@daffodil/external-router';\nimport {\n DaffExternalRouterDriverInterface,\n DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION,\n} from '@daffodil/external-router/driver';\n\nimport {\n DaffExternalRouterDriverInMemoryConfig,\n DAFF_EXTERNAL_ROUTER_DRIVER_IN_MEMORY_CONFIG,\n} from './config';\n\n/**\n * The DaffExternalRouterInMemoryDriver is responsible for resolving\n * a URL using the resolver in the provided configuration.\n *\n * @inheritdoc\n *\n * @see {@link DaffExternalRouterInMemoryDriver}\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffExternalRouterInMemoryDriver\nimplements DaffExternalRouterDriverInterface {\n constructor(\n @Inject(DAFF_EXTERNAL_ROUTER_DRIVER_IN_MEMORY_CONFIG)\n private configuration: DaffExternalRouterDriverInMemoryConfig,\n ) {}\n\n resolve(url: string): Observable<DaffExternallyResolvableUrl> {\n const truncatedUrl = daffUriTruncateQueryFragment(url);\n const resolvedUrl = this.configuration.resolver(truncatedUrl);\n\n return of(resolvedUrl?.url ? {\n ...resolvedUrl,\n url: daffUriTruncateLeadingSlash(resolvedUrl.url),\n } : DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n InjectionToken,\n} from '@angular/core';\n\nimport { provideDaffExternalRouterDriver } from '@daffodil/external-router/driver';\n\nimport {\n DaffExternalRouterDriverInMemoryConfig,\n provideDaffExternalRouterDriverInMemoryConfig,\n} from './config';\nimport { DaffExternalRouterInMemoryDriver } from './in-memory.service';\n\n/**\n * The `DaffExternalRouterDriverInMemoryModule` is an importable NgModule that can\n * be used to configure the {@link DaffExternalRouterInMemoryDriver}.\n *\n * @deprecated See {@link provideDaffExternalRouterInMemoryDriver } Deprecated in version 0.79.0. Will be removed in version 0.82.0.\n */\n@NgModule({\n declarations: [],\n imports: [CommonModule],\n})\nexport class DaffExternalRouterDriverInMemoryModule {\n static forRoot(\n config: DaffExternalRouterDriverInMemoryConfig | InjectionToken<DaffExternalRouterDriverInMemoryConfig>,\n ): ModuleWithProviders<DaffExternalRouterDriverInMemoryModule> {\n return {\n ngModule: DaffExternalRouterDriverInMemoryModule,\n providers: [\n provideDaffExternalRouterDriver(DaffExternalRouterInMemoryDriver),\n provideDaffExternalRouterDriverInMemoryConfig(config),\n ],\n };\n }\n}\n","import {\n EnvironmentProviders,\n InjectionToken,\n makeEnvironmentProviders,\n} from '@angular/core';\n\nimport { provideDaffExternalRouterDriver } from '@daffodil/external-router/driver';\n\nimport {\n DaffExternalRouterDriverInMemoryConfig,\n provideDaffExternalRouterDriverInMemoryConfig,\n} from './config';\nimport { DaffExternalRouterInMemoryDriver } from './in-memory.service';\n\n/**\n * Provides an in-memory implementation of {@link DaffExternalRouterDriver}\n */\nexport const provideDaffExternalRouterInMemoryDriver = (config:\n DaffExternalRouterDriverInMemoryConfig | InjectionToken<DaffExternalRouterDriverInMemoryConfig> = undefined,\n): EnvironmentProviders => makeEnvironmentProviders([\n provideDaffExternalRouterDriver(DaffExternalRouterInMemoryDriver),\n config ? provideDaffExternalRouterDriverInMemoryConfig(config) : [],\n]);\n","/*\n * Public API Surface of @daffodil/external-router/driver/in-memory\n */\n\nexport { DaffExternalRouterInMemoryDriver } from './in-memory.service';\nexport { DaffExternalRouterDriverInMemoryModule } from './in-memory.module';\n\nexport {\n DaffExternalRouterDriverInMemoryConfig,\n DaffExternalRouterDriverInMemoryResolver,\n} from './config';\n\nexport { provideDaffExternalRouterInMemoryDriver } from './provider';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AAkBA,MAAM,aAAa,GAA2C;AAC5D,IAAA,QAAQ,EAAE,MAAM,yCAAyC;CAC1D;AAEM,MAAM;AACX;;;;AAIG;AACH,KAAK,EAAE,4CAA4C;AACnD;;AAEG;AACH,QAAQ,EAAE,6CAA6C,GACxD,GAAG,0BAA0B,CAAyC,aAAa,EAAE,8CAA8C,CAAC;;ACTrI;;;;;;;AAOG;MAIU,gCAAgC,CAAA;AAE3C,IAAA,WAAA,CAEU,aAAqD,EAAA;QAArD,IAAa,CAAA,aAAA,GAAb,aAAa;;AAGvB,IAAA,OAAO,CAAC,GAAW,EAAA;AACjB,QAAA,MAAM,YAAY,GAAG,4BAA4B,CAAC,GAAG,CAAC;QACtD,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,YAAY,CAAC;AAE7D,QAAA,OAAO,EAAE,CAAC,WAAW,EAAE,GAAG,GAAG;AAC3B,YAAA,GAAG,WAAW;AACd,YAAA,GAAG,EAAE,2BAA2B,CAAC,WAAW,CAAC,GAAG,CAAC;AAClD,SAAA,GAAG,yCAAyC,CAAC;;AAdrC,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gCAAgC,kBAGjC,4CAA4C,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAH3C,uBAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gCAAgC,cAF/B,MAAM,EAAA,CAAA,CAAA;;2FAEP,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBAH5C,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;0BAII,MAAM;2BAAC,4CAA4C;;;ACvBxD;;;;;AAKG;MAKU,sCAAsC,CAAA;IACjD,OAAO,OAAO,CACZ,MAAuG,EAAA;QAEvG,OAAO;AACL,YAAA,QAAQ,EAAE,sCAAsC;AAChD,YAAA,SAAS,EAAE;gBACT,+BAA+B,CAAC,gCAAgC,CAAC;gBACjE,6CAA6C,CAAC,MAAM,CAAC;AACtD,aAAA;SACF;;iIAVQ,sCAAsC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAtC,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sCAAsC,YAFvC,YAAY,CAAA,EAAA,CAAA,CAAA;AAEX,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sCAAsC,YAFvC,YAAY,CAAA,EAAA,CAAA,CAAA;;2FAEX,sCAAsC,EAAA,UAAA,EAAA,CAAA;kBAJlD,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,EAAE;oBAChB,OAAO,EAAE,CAAC,YAAY,CAAC;AACxB,iBAAA;;;ACVD;;AAEG;AACU,MAAA,uCAAuC,GAAG,CAAC,MAC+C,GAAA,SAAS,KACrF,wBAAwB,CAAC;IAClD,+BAA+B,CAAC,gCAAgC,CAAC;IACjE,MAAM,GAAG,6CAA6C,CAAC,MAAM,CAAC,GAAG,EAAE;AACpE,CAAA;;ACtBD;;AAEG;;ACFH;;AAEG;;;;"}
|
@@ -52,10 +52,10 @@ class DaffExternalRouterMagentoDriver {
|
|
52
52
|
})
|
53
53
|
.pipe(map(response => transformResolutionToResolvableUrlv241(response.data.urlResolver)));
|
54
54
|
}
|
55
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
56
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
55
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffExternalRouterMagentoDriver, deps: [{ token: i1.Apollo }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
56
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffExternalRouterMagentoDriver, providedIn: 'root' }); }
|
57
57
|
}
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
58
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffExternalRouterMagentoDriver, decorators: [{
|
59
59
|
type: Injectable,
|
60
60
|
args: [{
|
61
61
|
providedIn: 'root',
|
@@ -65,6 +65,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
|
|
65
65
|
/**
|
66
66
|
* The module used to configure the {@link DaffExternalRouterDriver} for usage with Magento.
|
67
67
|
*
|
68
|
+
* @example
|
68
69
|
* ```ts
|
69
70
|
* @NgModule({
|
70
71
|
* declarations: [],
|
@@ -91,11 +92,11 @@ class DaffExternalRouterDriverMagentoModule {
|
|
91
92
|
],
|
92
93
|
};
|
93
94
|
}
|
94
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
95
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
96
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
95
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffExternalRouterDriverMagentoModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
96
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.7", ngImport: i0, type: DaffExternalRouterDriverMagentoModule, imports: [CommonModule] }); }
|
97
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffExternalRouterDriverMagentoModule, imports: [CommonModule] }); }
|
97
98
|
}
|
98
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
99
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.7", ngImport: i0, type: DaffExternalRouterDriverMagentoModule, decorators: [{
|
99
100
|
type: NgModule,
|
100
101
|
args: [{
|
101
102
|
declarations: [],
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"daffodil-external-router-driver-magento-2.4.1.mjs","sources":["../../../libs/external-router/driver/magento/2.4.1/src/graphql/queries/resolve-url-v2.4.1.ts","../../../libs/external-router/driver/magento/2.4.1/src/transforms/resolution-to-resolvable-url.ts","../../../libs/external-router/driver/magento/2.4.1/src/magento.service.ts","../../../libs/external-router/driver/magento/2.4.1/src/magento.module.ts","../../../libs/external-router/driver/magento/2.4.1/src/public_api.ts","../../../libs/external-router/driver/magento/2.4.1/src/daffodil-external-router-driver-magento-2.4.1.ts"],"sourcesContent":["import { gql } from 'apollo-angular';\n\nexport const DAFF_MAGENTO_RESOLVE_URL_QUERY_NAME = 'MagentoResolveUrlv241';\n\n/**\n * This query retrieves a URL resolution from Magento and informs you about\n * what type of route the URL is.\n */\nexport const MagentoResolveUrlv241 = gql`\n\tquery ${DAFF_MAGENTO_RESOLVE_URL_QUERY_NAME}($url: String!) {\n\t\turlResolver(url: $url) {\n\t\t\tid\n\t\t\trelative_url\n\t\t\tredirectCode\n\t\t\ttype\n\t\t}\n\t}\n`;\n","import {\n daffUriTruncateLeadingSlash,\n daffUriTruncateQueryFragment,\n} from '@daffodil/core/routing';\nimport { DaffExternallyResolvableUrl } from '@daffodil/external-router';\nimport { DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION } from '@daffodil/external-router/driver';\nimport {\n MagentoUrlResolver,\n magentoTransformRedirectToHttpCode,\n} from '@daffodil/external-router/driver/magento';\n\nexport const transformResolutionToResolvableUrlv241 = (\n resolution: MagentoUrlResolver,\n): DaffExternallyResolvableUrl => (resolution ? {\n id: resolution.id?.toString(),\n url: daffUriTruncateLeadingSlash(daffUriTruncateQueryFragment(resolution.relative_url)),\n type: resolution.type,\n code: magentoTransformRedirectToHttpCode(resolution.redirectCode),\n} : DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION);\n\n","import {\n Injectable,\n Inject,\n} from '@angular/core';\nimport { Apollo } from 'apollo-angular';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport { daffUriTruncateQueryFragment } from '@daffodil/core/routing';\nimport { DaffExternallyResolvableUrl } from '@daffodil/external-router';\nimport { DaffExternalRouterDriverInterface } from '@daffodil/external-router/driver';\nimport { MagentoUrlResolverResponse } from '@daffodil/external-router/driver/magento';\n\nimport { MagentoResolveUrlv241 } from './graphql/queries/resolve-url-v2.4.1';\nimport { transformResolutionToResolvableUrlv241 } from './transforms/resolution-to-resolvable-url';\n\n/**\n * The DaffExternalRouterMagentoDriver is responsible for translating an\n * arbitrary URI into a DaffExternallyResolvableUrl with Magento environments.\n *\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffExternalRouterMagentoDriver\nimplements DaffExternalRouterDriverInterface {\n constructor(private apollo: Apollo) {}\n\n resolve(url: string): Observable<DaffExternallyResolvableUrl> {\n return this.apollo\n .query<MagentoUrlResolverResponse>({\n query: MagentoResolveUrlv241,\n variables: {\n url: daffUriTruncateQueryFragment(url),\n },\n })\n .pipe(map(response => transformResolutionToResolvableUrlv241(response.data.urlResolver)));\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n} from '@angular/core';\n\nimport { provideDaffMagentoCacheableOperation } from '@daffodil/driver/magento';\nimport { provideDaffExternalRouterDriver } from '@daffodil/external-router/driver';\n\nimport { DAFF_MAGENTO_RESOLVE_URL_QUERY_NAME } from './graphql/queries/resolve-url-v2.4.1';\nimport { DaffExternalRouterMagentoDriver } from './magento.service';\n/**\n * The module used to configure the {@link DaffExternalRouterDriver} for usage with Magento.\n *\n * ```ts\n * @NgModule({\n * declarations: [],\n * imports: [\n * ...\n * DaffExternalRouterDriverMagentoModule.forRoot()\n * ],\n * })\n * export class AppModule{}\n * ```\n *\n * Note that this package depends upon ApolloClient, as the Magento driver uses GraphQl to make it's API calls.\n */\n@NgModule({\n declarations: [],\n imports: [CommonModule],\n})\nexport class DaffExternalRouterDriverMagentoModule {\n\n /**\n * Configures the package for the root injector.\n */\n static forRoot(): ModuleWithProviders<DaffExternalRouterDriverMagentoModule> {\n return {\n ngModule: DaffExternalRouterDriverMagentoModule,\n providers: [\n provideDaffExternalRouterDriver(DaffExternalRouterMagentoDriver),\n provideDaffMagentoCacheableOperation(DAFF_MAGENTO_RESOLVE_URL_QUERY_NAME),\n ],\n };\n }\n}\n","/*\n * Public API Surface of @daffodil/external-router/driver/magento/2-4-1\n */\n\nexport { DaffExternalRouterMagentoDriver } from './magento.service';\nexport { DaffExternalRouterDriverMagentoModule } from './magento.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;AAEO,MAAM,mCAAmC,GAAG,uBAAuB
|
1
|
+
{"version":3,"file":"daffodil-external-router-driver-magento-2.4.1.mjs","sources":["../../../libs/external-router/driver/magento/2.4.1/src/graphql/queries/resolve-url-v2.4.1.ts","../../../libs/external-router/driver/magento/2.4.1/src/transforms/resolution-to-resolvable-url.ts","../../../libs/external-router/driver/magento/2.4.1/src/magento.service.ts","../../../libs/external-router/driver/magento/2.4.1/src/magento.module.ts","../../../libs/external-router/driver/magento/2.4.1/src/public_api.ts","../../../libs/external-router/driver/magento/2.4.1/src/daffodil-external-router-driver-magento-2.4.1.ts"],"sourcesContent":["import { gql } from 'apollo-angular';\n\nexport const DAFF_MAGENTO_RESOLVE_URL_QUERY_NAME = 'MagentoResolveUrlv241';\n\n/**\n * This query retrieves a URL resolution from Magento and informs you about\n * what type of route the URL is.\n */\nexport const MagentoResolveUrlv241 = gql`\n\tquery ${DAFF_MAGENTO_RESOLVE_URL_QUERY_NAME}($url: String!) {\n\t\turlResolver(url: $url) {\n\t\t\tid\n\t\t\trelative_url\n\t\t\tredirectCode\n\t\t\ttype\n\t\t}\n\t}\n`;\n","import {\n daffUriTruncateLeadingSlash,\n daffUriTruncateQueryFragment,\n} from '@daffodil/core/routing';\nimport { DaffExternallyResolvableUrl } from '@daffodil/external-router';\nimport { DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION } from '@daffodil/external-router/driver';\nimport {\n MagentoUrlResolver,\n magentoTransformRedirectToHttpCode,\n} from '@daffodil/external-router/driver/magento';\n\nexport const transformResolutionToResolvableUrlv241 = (\n resolution: MagentoUrlResolver,\n): DaffExternallyResolvableUrl => (resolution ? {\n id: resolution.id?.toString(),\n url: daffUriTruncateLeadingSlash(daffUriTruncateQueryFragment(resolution.relative_url)),\n type: resolution.type,\n code: magentoTransformRedirectToHttpCode(resolution.redirectCode),\n} : DAFF_EXTERNAL_ROUTER_NOT_FOUND_RESOLUTION);\n\n","import {\n Injectable,\n Inject,\n} from '@angular/core';\nimport { Apollo } from 'apollo-angular';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport { daffUriTruncateQueryFragment } from '@daffodil/core/routing';\nimport { DaffExternallyResolvableUrl } from '@daffodil/external-router';\nimport { DaffExternalRouterDriverInterface } from '@daffodil/external-router/driver';\nimport { MagentoUrlResolverResponse } from '@daffodil/external-router/driver/magento';\n\nimport { MagentoResolveUrlv241 } from './graphql/queries/resolve-url-v2.4.1';\nimport { transformResolutionToResolvableUrlv241 } from './transforms/resolution-to-resolvable-url';\n\n/**\n * The DaffExternalRouterMagentoDriver is responsible for translating an\n * arbitrary URI into a DaffExternallyResolvableUrl with Magento environments.\n *\n * @inheritdoc\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class DaffExternalRouterMagentoDriver\nimplements DaffExternalRouterDriverInterface {\n constructor(private apollo: Apollo) {}\n\n resolve(url: string): Observable<DaffExternallyResolvableUrl> {\n return this.apollo\n .query<MagentoUrlResolverResponse>({\n query: MagentoResolveUrlv241,\n variables: {\n url: daffUriTruncateQueryFragment(url),\n },\n })\n .pipe(map(response => transformResolutionToResolvableUrlv241(response.data.urlResolver)));\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n NgModule,\n ModuleWithProviders,\n} from '@angular/core';\n\nimport { provideDaffMagentoCacheableOperation } from '@daffodil/driver/magento';\nimport { provideDaffExternalRouterDriver } from '@daffodil/external-router/driver';\n\nimport { DAFF_MAGENTO_RESOLVE_URL_QUERY_NAME } from './graphql/queries/resolve-url-v2.4.1';\nimport { DaffExternalRouterMagentoDriver } from './magento.service';\n/**\n * The module used to configure the {@link DaffExternalRouterDriver} for usage with Magento.\n *\n * @example\n * ```ts\n * @NgModule({\n * declarations: [],\n * imports: [\n * ...\n * DaffExternalRouterDriverMagentoModule.forRoot()\n * ],\n * })\n * export class AppModule{}\n * ```\n *\n * Note that this package depends upon ApolloClient, as the Magento driver uses GraphQl to make it's API calls.\n */\n@NgModule({\n declarations: [],\n imports: [CommonModule],\n})\nexport class DaffExternalRouterDriverMagentoModule {\n\n /**\n * Configures the package for the root injector.\n */\n static forRoot(): ModuleWithProviders<DaffExternalRouterDriverMagentoModule> {\n return {\n ngModule: DaffExternalRouterDriverMagentoModule,\n providers: [\n provideDaffExternalRouterDriver(DaffExternalRouterMagentoDriver),\n provideDaffMagentoCacheableOperation(DAFF_MAGENTO_RESOLVE_URL_QUERY_NAME),\n ],\n };\n }\n}\n","/*\n * Public API Surface of @daffodil/external-router/driver/magento/2-4-1\n */\n\nexport { DaffExternalRouterMagentoDriver } from './magento.service';\nexport { DaffExternalRouterDriverMagentoModule } from './magento.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;AAEO,MAAM,mCAAmC,GAAG,uBAAuB;AAE1E;;;AAGG;AACI,MAAM,qBAAqB,GAAG,GAAG,CAAA;SAC/B,mCAAmC,CAAA;;;;;;;;CAQ3C;;ACNM,MAAM,sCAAsC,GAAG,CACpD,UAA8B,MACG,UAAU,GAAG;AAC9C,IAAA,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,QAAQ,EAAE;IAC7B,GAAG,EAAE,2BAA2B,CAAC,4BAA4B,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACvF,IAAI,EAAE,UAAU,CAAC,IAAI;AACrB,IAAA,IAAI,EAAE,kCAAkC,CAAC,UAAU,CAAC,YAAY,CAAC;AAClE,CAAA,GAAG,yCAAyC,CAAC;;ACF9C;;;;;AAKG;MAIU,+BAA+B,CAAA;AAE1C,IAAA,WAAA,CAAoB,MAAc,EAAA;QAAd,IAAM,CAAA,MAAA,GAAN,MAAM;;AAE1B,IAAA,OAAO,CAAC,GAAW,EAAA;QACjB,OAAO,IAAI,CAAC;AACT,aAAA,KAAK,CAA6B;AACjC,YAAA,KAAK,EAAE,qBAAqB;AAC5B,YAAA,SAAS,EAAE;AACT,gBAAA,GAAG,EAAE,4BAA4B,CAAC,GAAG,CAAC;AACvC,aAAA;SACF;AACA,aAAA,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,sCAAsC,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;;iIAZlF,+BAA+B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAA/B,uBAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,cAF9B,MAAM,EAAA,CAAA,CAAA;;2FAEP,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAH3C,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;ACbD;;;;;;;;;;;;;;;;AAgBG;MAKU,qCAAqC,CAAA;AAEhD;;AAEG;AACH,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,qCAAqC;AAC/C,YAAA,SAAS,EAAE;gBACT,+BAA+B,CAAC,+BAA+B,CAAC;gBAChE,oCAAoC,CAAC,mCAAmC,CAAC;AAC1E,aAAA;SACF;;iIAZQ,qCAAqC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAArC,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qCAAqC,YAFtC,YAAY,CAAA,EAAA,CAAA,CAAA;AAEX,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qCAAqC,YAFtC,YAAY,CAAA,EAAA,CAAA,CAAA;;2FAEX,qCAAqC,EAAA,UAAA,EAAA,CAAA;kBAJjD,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,EAAE;oBAChB,OAAO,EAAE,CAAC,YAAY,CAAC;AACxB,iBAAA;;;AC/BD;;AAEG;;ACFH;;AAEG;;;;"}
|