@o3r/dynamic-content 12.2.0-prerelease.48 → 12.2.0-prerelease.49

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.
Files changed (46) hide show
  1. package/README.md +45 -41
  2. package/esm2022/fixtures/jasmine/index.mjs +2 -0
  3. package/esm2022/fixtures/jasmine/o3r-dynamic-content-fixtures-jasmine.mjs +5 -0
  4. package/esm2022/fixtures/jasmine/request-parameters.fixture.jasmine.mjs +27 -0
  5. package/esm2022/fixtures/jest/index.mjs +2 -0
  6. package/esm2022/fixtures/jest/o3r-dynamic-content-fixtures-jest.mjs +5 -0
  7. package/esm2022/fixtures/jest/request-parameters.fixture.jest.mjs +27 -0
  8. package/esm2022/o3r-dynamic-content.mjs +5 -0
  9. package/esm2022/public_api.mjs +3 -0
  10. package/esm2022/rules-engine/asset.handler-action.mjs +30 -0
  11. package/esm2022/rules-engine/asset.interfaces.mjs +3 -0
  12. package/esm2022/rules-engine/asset.rules-engine.module.mjs +23 -0
  13. package/esm2022/rules-engine/o3r-dynamic-content-rules-engine.mjs +5 -0
  14. package/esm2022/rules-engine/public_api.mjs +4 -0
  15. package/esm2022/services/dynamic-content/dynamic-content.module.mjs +81 -0
  16. package/esm2022/services/dynamic-content/dynamic-content.pipe.mjs +48 -0
  17. package/esm2022/services/dynamic-content/dynamic-content.service.mjs +75 -0
  18. package/esm2022/services/dynamic-content/dynamic-content.token.mjs +11 -0
  19. package/esm2022/services/dynamic-content/index.mjs +5 -0
  20. package/esm2022/services/index.mjs +4 -0
  21. package/esm2022/services/request-parameters/index.mjs +4 -0
  22. package/esm2022/services/request-parameters/request-parameters.config.mjs +25 -0
  23. package/esm2022/services/request-parameters/request-parameters.module.mjs +50 -0
  24. package/esm2022/services/request-parameters/request-parameters.service.mjs +184 -0
  25. package/esm2022/services/request-parameters/request-parameters.token.mjs +6 -0
  26. package/esm2022/services/styling/index.mjs +3 -0
  27. package/esm2022/services/styling/style-lazy-loader.module.mjs +15 -0
  28. package/esm2022/services/styling/style-lazy-loader.service.mjs +58 -0
  29. package/esm2022/stores/asset-path-override/asset-path-override.actions.mjs +8 -0
  30. package/esm2022/stores/asset-path-override/asset-path-override.module.mjs +39 -0
  31. package/esm2022/stores/asset-path-override/asset-path-override.reducer.mjs +17 -0
  32. package/esm2022/stores/asset-path-override/asset-path-override.selectors.mjs +7 -0
  33. package/esm2022/stores/asset-path-override/asset-path-override.state.mjs +5 -0
  34. package/esm2022/stores/asset-path-override/asset-path-override.sync.mjs +15 -0
  35. package/esm2022/stores/asset-path-override/index.mjs +7 -0
  36. package/esm2022/stores/index.mjs +2 -0
  37. package/fesm2022/o3r-dynamic-content.mjs +3 -2
  38. package/fesm2022/o3r-dynamic-content.mjs.map +1 -1
  39. package/middlewares/index.js.map +1 -0
  40. package/middlewares/parameter-extractor.middleware.js.map +1 -0
  41. package/package.json +3 -3
  42. package/schematics/ng-add/index.js.map +1 -0
  43. package/schematics/ng-add/schema.js.map +1 -0
  44. package/schematics/ng-update/v10-0/index.js.map +1 -0
  45. package/services/dynamic-content/dynamic-content.module.d.ts +1 -1
  46. package/services/dynamic-content/dynamic-content.module.d.ts.map +1 -1
package/README.md CHANGED
@@ -9,9 +9,6 @@ This package is an [Otter Framework Module](https://github.com/AmadeusITGroup/ot
9
9
 
10
10
  ## Description
11
11
 
12
- [![Stable Version](https://img.shields.io/npm/v/@o3r/dynamic-content?style=for-the-badge)](https://www.npmjs.com/package/@o3r/dynamic-content)
13
- [![Bundle Size](https://img.shields.io/bundlephobia/min/@o3r/dynamic-content?color=green&style=for-the-badge)](https://www.npmjs.com/package/@o3r/dynamic-content)
14
-
15
12
  This module provides a mechanism to retrieve media and data depending on the host or a server-specific url.
16
13
 
17
14
  ## How to install
@@ -20,30 +17,31 @@ This module provides a mechanism to retrieve media and data depending on the hos
20
17
  ng add @o3r/dynamic-content
21
18
  ```
22
19
 
23
- > [!WARNING]
24
- > This module requires [@o3r/core](https://www.npmjs.com/package/@o3r/core) to be installed.
20
+ > **Warning**: this module requires [@o3r/core](https://www.npmjs.com/package/@o3r/core) to be installed.
25
21
 
26
22
  ## Description
27
23
 
28
- In order to get your content from a different location than where your application is hosted, you may use the ``O3rDynamicContentPipe`` or ``DynamicContentService`` from ``@o3r/dynamic-content``.
29
-
30
- ### O3rDynamicContentPipe
24
+ In order to get your content from a different location than where your application is hosted, you may use the ``DynamicContentModule`` from ``@o3r/dynamic-content``. To include the module, you should just:
31
25
 
32
26
  ```typescript
33
- import {O3rDynamicContentPipe} from '@o3r/dynamic-content';
27
+ import {DynamicContentModule} from '@o3r/dynamic-content';
34
28
 
35
- @Component({
36
- ...
37
- imports: [O3rDynamicContentPipe, ...]
29
+ @NgModule({
30
+ imports: [DynamicContentModule]
38
31
  })
39
- export class MyComponent {}
32
+ export class MyModule {}
40
33
  ```
34
+
35
+ The module provides two things:
36
+
37
+ A pipe to be used in your component templates:
38
+
41
39
  ```html
42
40
  <img src="{{'assets-otter/imgs/logo.png' | o3rDynamicContent}}" /> or
43
41
  <img [src]="'assets-otter/imgs/logo.png' | o3rDynamicContent" />
44
42
  ```
45
43
 
46
- ### DynamicContentService
44
+ and a service to be used in your component classes, for example:
47
45
 
48
46
  ```typescript
49
47
 
@@ -51,12 +49,11 @@ export class MyComponent {}
51
49
  /* ... */
52
50
  })
53
51
  export class MyComponent {
54
- public readonly imgSrc = inject(DynamicContentService).getMediaPath('assets/assets-otter/imgs/logo.png');
52
+ constructor(private service: DynamicContentService) {
53
+ const imgSrc = this.service.getMediaPath('assets/assets-otter/imgs/logo.png');
54
+ }
55
55
  }
56
56
  ```
57
- ```html
58
- <img [src]="imgSrc" />
59
- ```
60
57
 
61
58
  In both examples above, the result will be the same.
62
59
 
@@ -71,34 +68,38 @@ By default, both the service and the pipe will concatenate the assets path with
71
68
 
72
69
  If no tag is present, it defaults to empty string ``''``.
73
70
 
74
- In order to change the default behavior, you can specify a configuration:
71
+ In order to change the default behavior, you can use the ``forRoot`` method from the module and pass a new function. Example:
75
72
 
76
73
  ```typescript
77
- import {provideDynamicContent, withBasePath} from '@o3r/dynamic-content';
74
+ import {DynamicContentModule} from '@o3r/dynamic-content';
78
75
 
79
- export const appConfig: ApplicationConfig = {
80
- providers: [
81
- // ...
82
- provideDynamicContent(withBasePath('a-different-path/'))
76
+ @NgModule({
77
+ imports: [
78
+ DynamicContentModule.forRoot({content: 'a-different-path/'})
83
79
  ]
84
- };
80
+ })
81
+ export class MyModule {}
85
82
  ```
86
83
 
87
- If you need an external dependency to get the rootpath, you may use need to provide a function.
84
+ If you need an external dependency to get the rootpath, you may need to provide the token directly.
85
+ Example:
86
+
88
87
  ```typescript
89
- import {provideDynamicContent, withBasePath} from '@o3r/dynamic-content';
88
+ import {DynamicContentModule, DYNAMIC_CONTENT_BASE_PATH_TOKEN} from '@o3r/dynamic-content';
90
89
 
91
90
  export function myContentPath() {
92
91
  return 'a-different-path/';
93
92
  }
94
93
 
95
-
96
- export const appConfig: ApplicationConfig = {
97
- providers: [
98
- // ...
99
- provideDynamicContent(withBasePath(myContentPath))
100
- ]
101
- };
94
+ @NgModule({
95
+ imports: [
96
+ DynamicContentModule
97
+ ],
98
+ providers: {
99
+ {provide: DYNAMIC_CONTENT_BASE_PATH_TOKEN, useFactory: myContentPath}
100
+ }
101
+ })
102
+ export class MyModule {}
102
103
  ```
103
104
 
104
105
  ## getContentPathStream
@@ -109,17 +110,20 @@ The content path is always related to the root of the application.
109
110
  It also ignores any path overrides from the `AssetPathOverrideStore` store, meaning that you will always get the same file.
110
111
 
111
112
  ```typescript
112
- import {from, type Observable} from 'rxjs';
113
- import {shareReplay, switchMap} from 'rxjs/operators';
113
+ import {Observable} from 'rxjs';
114
114
 
115
115
  @Component({
116
116
  /** */
117
117
  })
118
118
  export class MyComponent {
119
- public dynamicConfig$: Observable<Response> = inject(DynamicContentService).getContentPathStream('global.config.post.json').pipe(
120
- switchMap((filePath) => from(fetch(filePath))),
121
- shareReplay({ bufferSize: 1, refCount: true })
122
- );
119
+
120
+ public dynamicConfig$: Observable<Response>;
121
+
122
+ constructor(private service: DynamicContentService) {
123
+ this.dynamicConfig$ = this.service.getContentPathStream('global.config.post.json').pipe(
124
+ switchMap((filePath) => from(fetch(filePath))
125
+ ));
126
+ }
123
127
  }
124
128
  ```
125
129
 
@@ -134,7 +138,7 @@ Example:
134
138
  /** */
135
139
  })
136
140
  export class MyComponent {
137
- private readonly dynamicContentService = inject(DynamicContentService);
141
+ constructor(private service: DynamicContentService) {}
138
142
 
139
143
  async getDynamicConfig() {
140
144
  const filePath = await firstValueFrom(this.service.getMediaPathStream('imgs/my-image.png'));
@@ -0,0 +1,2 @@
1
+ export * from './request-parameters.fixture.jasmine';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZml4dHVyZXMvamFzbWluZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNDQUFzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9yZXF1ZXN0LXBhcmFtZXRlcnMuZml4dHVyZS5qYXNtaW5lJztcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibzNyLWR5bmFtaWMtY29udGVudC1maXh0dXJlcy1qYXNtaW5lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2ZpeHR1cmVzL2phc21pbmUvbzNyLWR5bmFtaWMtY29udGVudC1maXh0dXJlcy1qYXNtaW5lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -0,0 +1,27 @@
1
+ import { StorageStrategy, } from '@o3r/dynamic-content';
2
+ /**
3
+ * Fixture file for requestParameters service
4
+ */
5
+ export class RequestParametersServiceFixture {
6
+ constructor() {
7
+ this.query = {};
8
+ this.post = {};
9
+ this.config = {
10
+ strategy: StorageStrategy.Rehydrate,
11
+ storage: (typeof window === 'undefined') ? undefined : window.sessionStorage,
12
+ queryParamsValue: '{}',
13
+ postParamsValue: '{}'
14
+ };
15
+ this.getQueryParameter = jasmine.createSpy('getQueryParameter');
16
+ this.getQueryParameterAsBoolean = jasmine.createSpy('getQueryParameterAsBoolean');
17
+ this.getPostParameter = jasmine.createSpy('getPostParameter');
18
+ this.getPostParameterAsBoolean = jasmine.createSpy('getPostParameterAsBoolean');
19
+ this.getParameter = jasmine.createSpy('getParameter');
20
+ this.getParameterAsBoolean = jasmine.createSpy('getParameterAsBoolean');
21
+ this.clearQueryParameters = jasmine.createSpy('clearQueryParameters');
22
+ this.clearPostParameters = jasmine.createSpy('clearPostParameters');
23
+ this.getParams = jasmine.createSpy('getParams');
24
+ this.getFilteredParameters = jasmine.createSpy('filterParameters');
25
+ }
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC1wYXJhbWV0ZXJzLmZpeHR1cmUuamFzbWluZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maXh0dXJlcy9qYXNtaW5lL3JlcXVlc3QtcGFyYW1ldGVycy5maXh0dXJlLmphc21pbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUNMLGVBQWUsR0FDaEIsTUFBTSxzQkFBc0IsQ0FBQztBQUU5Qjs7R0FFRztBQUNILE1BQU0sT0FBTywrQkFBK0I7SUFxQjFDO1FBcEJPLFVBQUssR0FBOEIsRUFBRSxDQUFDO1FBQ3RDLFNBQUksR0FBOEIsRUFBRSxDQUFDO1FBQ3JDLFdBQU0sR0FBNEI7WUFDdkMsUUFBUSxFQUFFLGVBQWUsQ0FBQyxTQUFTO1lBQ25DLE9BQU8sRUFBRSxDQUFDLE9BQU8sTUFBTSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxjQUFjO1lBQzVFLGdCQUFnQixFQUFFLElBQUk7WUFDdEIsZUFBZSxFQUFFLElBQUk7U0FDdEIsQ0FBQztRQWNBLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLDBCQUEwQixHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUNsRixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyx5QkFBeUIsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLDJCQUEyQixDQUFDLENBQUM7UUFDaEYsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDeEUsSUFBSSxDQUFDLG9CQUFvQixHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNoRCxJQUFJLENBQUMscUJBQXFCLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgSW50ZXJmYWNlT2YsXG59IGZyb20gJ0BvM3IvY29yZSc7XG5pbXBvcnQgdHlwZSB7XG4gIFJlcXVlc3RQYXJhbWV0ZXJzQ29uZmlnLFxuICBSZXF1ZXN0UGFyYW1ldGVyc1NlcnZpY2UsXG59IGZyb20gJ0BvM3IvZHluYW1pYy1jb250ZW50JztcbmltcG9ydCB7XG4gIFN0b3JhZ2VTdHJhdGVneSxcbn0gZnJvbSAnQG8zci9keW5hbWljLWNvbnRlbnQnO1xuXG4vKipcbiAqIEZpeHR1cmUgZmlsZSBmb3IgcmVxdWVzdFBhcmFtZXRlcnMgc2VydmljZVxuICovXG5leHBvcnQgY2xhc3MgUmVxdWVzdFBhcmFtZXRlcnNTZXJ2aWNlRml4dHVyZSBpbXBsZW1lbnRzIEludGVyZmFjZU9mPFJlcXVlc3RQYXJhbWV0ZXJzU2VydmljZT4ge1xuICBwdWJsaWMgcXVlcnk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcbiAgcHVibGljIHBvc3Q6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcbiAgcHVibGljIGNvbmZpZzogUmVxdWVzdFBhcmFtZXRlcnNDb25maWcgPSB7XG4gICAgc3RyYXRlZ3k6IFN0b3JhZ2VTdHJhdGVneS5SZWh5ZHJhdGUsXG4gICAgc3RvcmFnZTogKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnKSA/IHVuZGVmaW5lZCA6IHdpbmRvdy5zZXNzaW9uU3RvcmFnZSxcbiAgICBxdWVyeVBhcmFtc1ZhbHVlOiAne30nLFxuICAgIHBvc3RQYXJhbXNWYWx1ZTogJ3t9J1xuICB9O1xuXG4gIHB1YmxpYyBnZXRRdWVyeVBhcmFtZXRlcjogamFzbWluZS5TcHk7XG4gIHB1YmxpYyBnZXRRdWVyeVBhcmFtZXRlckFzQm9vbGVhbjogamFzbWluZS5TcHk7XG4gIHB1YmxpYyBnZXRQb3N0UGFyYW1ldGVyOiBqYXNtaW5lLlNweTtcbiAgcHVibGljIGdldFBvc3RQYXJhbWV0ZXJBc0Jvb2xlYW46IGphc21pbmUuU3B5O1xuICBwdWJsaWMgZ2V0UGFyYW1ldGVyOiBqYXNtaW5lLlNweTtcbiAgcHVibGljIGdldFBhcmFtZXRlckFzQm9vbGVhbjogamFzbWluZS5TcHk7XG4gIHB1YmxpYyBjbGVhclF1ZXJ5UGFyYW1ldGVyczogamFzbWluZS5TcHk7XG4gIHB1YmxpYyBjbGVhclBvc3RQYXJhbWV0ZXJzOiBqYXNtaW5lLlNweTtcbiAgcHVibGljIGdldEZpbHRlcmVkUGFyYW1ldGVyczogamFzbWluZS5TcHk7XG4gIHB1YmxpYyBnZXRQYXJhbXM6IGphc21pbmUuU3B5O1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuZ2V0UXVlcnlQYXJhbWV0ZXIgPSBqYXNtaW5lLmNyZWF0ZVNweSgnZ2V0UXVlcnlQYXJhbWV0ZXInKTtcbiAgICB0aGlzLmdldFF1ZXJ5UGFyYW1ldGVyQXNCb29sZWFuID0gamFzbWluZS5jcmVhdGVTcHkoJ2dldFF1ZXJ5UGFyYW1ldGVyQXNCb29sZWFuJyk7XG4gICAgdGhpcy5nZXRQb3N0UGFyYW1ldGVyID0gamFzbWluZS5jcmVhdGVTcHkoJ2dldFBvc3RQYXJhbWV0ZXInKTtcbiAgICB0aGlzLmdldFBvc3RQYXJhbWV0ZXJBc0Jvb2xlYW4gPSBqYXNtaW5lLmNyZWF0ZVNweSgnZ2V0UG9zdFBhcmFtZXRlckFzQm9vbGVhbicpO1xuICAgIHRoaXMuZ2V0UGFyYW1ldGVyID0gamFzbWluZS5jcmVhdGVTcHkoJ2dldFBhcmFtZXRlcicpO1xuICAgIHRoaXMuZ2V0UGFyYW1ldGVyQXNCb29sZWFuID0gamFzbWluZS5jcmVhdGVTcHkoJ2dldFBhcmFtZXRlckFzQm9vbGVhbicpO1xuICAgIHRoaXMuY2xlYXJRdWVyeVBhcmFtZXRlcnMgPSBqYXNtaW5lLmNyZWF0ZVNweSgnY2xlYXJRdWVyeVBhcmFtZXRlcnMnKTtcbiAgICB0aGlzLmNsZWFyUG9zdFBhcmFtZXRlcnMgPSBqYXNtaW5lLmNyZWF0ZVNweSgnY2xlYXJQb3N0UGFyYW1ldGVycycpO1xuICAgIHRoaXMuZ2V0UGFyYW1zID0gamFzbWluZS5jcmVhdGVTcHkoJ2dldFBhcmFtcycpO1xuICAgIHRoaXMuZ2V0RmlsdGVyZWRQYXJhbWV0ZXJzID0gamFzbWluZS5jcmVhdGVTcHkoJ2ZpbHRlclBhcmFtZXRlcnMnKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './request-parameters.fixture.jest';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZml4dHVyZXMvamVzdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9yZXF1ZXN0LXBhcmFtZXRlcnMuZml4dHVyZS5qZXN0JztcbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibzNyLWR5bmFtaWMtY29udGVudC1maXh0dXJlcy1qZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2ZpeHR1cmVzL2plc3QvbzNyLWR5bmFtaWMtY29udGVudC1maXh0dXJlcy1qZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -0,0 +1,27 @@
1
+ import { StorageStrategy, } from '@o3r/dynamic-content';
2
+ /**
3
+ * Fixture file for requestParameters service
4
+ */
5
+ export class RequestParametersServiceFixture {
6
+ constructor() {
7
+ this.query = {};
8
+ this.post = {};
9
+ this.config = {
10
+ strategy: StorageStrategy.Rehydrate,
11
+ storage: (typeof window === 'undefined') ? undefined : window.sessionStorage,
12
+ queryParamsValue: '{}',
13
+ postParamsValue: '{}'
14
+ };
15
+ this.getQueryParameter = jest.fn();
16
+ this.getQueryParameterAsBoolean = jest.fn();
17
+ this.getPostParameter = jest.fn();
18
+ this.getPostParameterAsBoolean = jest.fn();
19
+ this.getParameter = jest.fn();
20
+ this.getParameterAsBoolean = jest.fn();
21
+ this.clearQueryParameters = jest.fn();
22
+ this.clearPostParameters = jest.fn();
23
+ this.getParams = jest.fn();
24
+ this.getFilteredParameters = jest.fn();
25
+ }
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC1wYXJhbWV0ZXJzLmZpeHR1cmUuamVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9maXh0dXJlcy9qZXN0L3JlcXVlc3QtcGFyYW1ldGVycy5maXh0dXJlLmplc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUNMLGVBQWUsR0FDaEIsTUFBTSxzQkFBc0IsQ0FBQztBQUU5Qjs7R0FFRztBQUNILE1BQU0sT0FBTywrQkFBK0I7SUFxQjFDO1FBcEJPLFVBQUssR0FBOEIsRUFBRSxDQUFDO1FBQ3RDLFNBQUksR0FBOEIsRUFBRSxDQUFDO1FBQ3JDLFdBQU0sR0FBNEI7WUFDdkMsUUFBUSxFQUFFLGVBQWUsQ0FBQyxTQUFTO1lBQ25DLE9BQU8sRUFBRSxDQUFDLE9BQU8sTUFBTSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxjQUFjO1lBQzVFLGdCQUFnQixFQUFFLElBQUk7WUFDdEIsZUFBZSxFQUFFLElBQUk7U0FDdEIsQ0FBQztRQWNBLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDbkMsSUFBSSxDQUFDLDBCQUEwQixHQUFHLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUM1QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDM0MsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDckMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEludGVyZmFjZU9mLFxufSBmcm9tICdAbzNyL2NvcmUnO1xuaW1wb3J0IHR5cGUge1xuICBSZXF1ZXN0UGFyYW1ldGVyc0NvbmZpZyxcbiAgUmVxdWVzdFBhcmFtZXRlcnNTZXJ2aWNlLFxufSBmcm9tICdAbzNyL2R5bmFtaWMtY29udGVudCc7XG5pbXBvcnQge1xuICBTdG9yYWdlU3RyYXRlZ3ksXG59IGZyb20gJ0BvM3IvZHluYW1pYy1jb250ZW50JztcblxuLyoqXG4gKiBGaXh0dXJlIGZpbGUgZm9yIHJlcXVlc3RQYXJhbWV0ZXJzIHNlcnZpY2VcbiAqL1xuZXhwb3J0IGNsYXNzIFJlcXVlc3RQYXJhbWV0ZXJzU2VydmljZUZpeHR1cmUgaW1wbGVtZW50cyBJbnRlcmZhY2VPZjxSZXF1ZXN0UGFyYW1ldGVyc1NlcnZpY2U+IHtcbiAgcHVibGljIHF1ZXJ5OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge307XG4gIHB1YmxpYyBwb3N0OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge307XG4gIHB1YmxpYyBjb25maWc6IFJlcXVlc3RQYXJhbWV0ZXJzQ29uZmlnID0ge1xuICAgIHN0cmF0ZWd5OiBTdG9yYWdlU3RyYXRlZ3kuUmVoeWRyYXRlLFxuICAgIHN0b3JhZ2U6ICh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykgPyB1bmRlZmluZWQgOiB3aW5kb3cuc2Vzc2lvblN0b3JhZ2UsXG4gICAgcXVlcnlQYXJhbXNWYWx1ZTogJ3t9JyxcbiAgICBwb3N0UGFyYW1zVmFsdWU6ICd7fSdcbiAgfTtcblxuICBwdWJsaWMgZ2V0UXVlcnlQYXJhbWV0ZXI6IGplc3QuTW9jazxhbnksIGFueT47XG4gIHB1YmxpYyBnZXRRdWVyeVBhcmFtZXRlckFzQm9vbGVhbjogamVzdC5Nb2NrPGFueSwgYW55PjtcbiAgcHVibGljIGdldFBvc3RQYXJhbWV0ZXI6IGplc3QuTW9jazxhbnksIGFueT47XG4gIHB1YmxpYyBnZXRQb3N0UGFyYW1ldGVyQXNCb29sZWFuOiBqZXN0Lk1vY2s8YW55LCBhbnk+O1xuICBwdWJsaWMgZ2V0UGFyYW1ldGVyOiBqZXN0Lk1vY2s8YW55LCBhbnk+O1xuICBwdWJsaWMgZ2V0UGFyYW1ldGVyQXNCb29sZWFuOiBqZXN0Lk1vY2s8YW55LCBhbnk+O1xuICBwdWJsaWMgY2xlYXJRdWVyeVBhcmFtZXRlcnM6IGplc3QuTW9jazxhbnksIGFueT47XG4gIHB1YmxpYyBjbGVhclBvc3RQYXJhbWV0ZXJzOiBqZXN0Lk1vY2s8YW55LCBhbnk+O1xuICBwdWJsaWMgZ2V0RmlsdGVyZWRQYXJhbWV0ZXJzOiBqZXN0Lk1vY2s8YW55LCBhbnk+O1xuICBwdWJsaWMgZ2V0UGFyYW1zOiBqZXN0Lk1vY2s8YW55LCBhbnk+O1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuZ2V0UXVlcnlQYXJhbWV0ZXIgPSBqZXN0LmZuKCk7XG4gICAgdGhpcy5nZXRRdWVyeVBhcmFtZXRlckFzQm9vbGVhbiA9IGplc3QuZm4oKTtcbiAgICB0aGlzLmdldFBvc3RQYXJhbWV0ZXIgPSBqZXN0LmZuKCk7XG4gICAgdGhpcy5nZXRQb3N0UGFyYW1ldGVyQXNCb29sZWFuID0gamVzdC5mbigpO1xuICAgIHRoaXMuZ2V0UGFyYW1ldGVyID0gamVzdC5mbigpO1xuICAgIHRoaXMuZ2V0UGFyYW1ldGVyQXNCb29sZWFuID0gamVzdC5mbigpO1xuICAgIHRoaXMuY2xlYXJRdWVyeVBhcmFtZXRlcnMgPSBqZXN0LmZuKCk7XG4gICAgdGhpcy5jbGVhclBvc3RQYXJhbWV0ZXJzID0gamVzdC5mbigpO1xuICAgIHRoaXMuZ2V0UGFyYW1zID0gamVzdC5mbigpO1xuICAgIHRoaXMuZ2V0RmlsdGVyZWRQYXJhbWV0ZXJzID0gamVzdC5mbigpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public_api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibzNyLWR5bmFtaWMtY29udGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vM3ItZHluYW1pYy1jb250ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './services/index';
2
+ export * from './stores/index';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvaW5kZXgnO1xuZXhwb3J0ICogZnJvbSAnLi9zdG9yZXMvaW5kZXgnO1xuIl19
@@ -0,0 +1,30 @@
1
+ import { Injectable, } from '@angular/core';
2
+ import { Store, } from '@ngrx/store';
3
+ import { RULES_ENGINE_ASSET_UPDATE_ACTION_TYPE, } from './asset.interfaces';
4
+ import { setAssetPathOverride, } from '@o3r/dynamic-content';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@ngrx/store";
7
+ /**
8
+ * Service to handle async Asset actions
9
+ */
10
+ export class AssetRulesEngineActionHandler {
11
+ constructor(store) {
12
+ this.store = store;
13
+ /** @inheritdoc */
14
+ this.supportingActions = [RULES_ENGINE_ASSET_UPDATE_ACTION_TYPE];
15
+ }
16
+ /** @inheritdoc */
17
+ executeActions(actions) {
18
+ const assetPathOverrides = actions.reduce((acc, { asset, value }) => {
19
+ acc[asset] = value;
20
+ return acc;
21
+ }, {});
22
+ this.store.dispatch(setAssetPathOverride({ state: { assetPathOverrides } }));
23
+ }
24
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AssetRulesEngineActionHandler, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
25
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AssetRulesEngineActionHandler }); }
26
+ }
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AssetRulesEngineActionHandler, decorators: [{
28
+ type: Injectable
29
+ }], ctorParameters: () => [{ type: i1.Store }] });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQuaGFuZGxlci1hY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcnVsZXMtZW5naW5lL2Fzc2V0LmhhbmRsZXItYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxVQUFVLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLEtBQUssR0FDTixNQUFNLGFBQWEsQ0FBQztBQUlyQixPQUFPLEVBRUwscUNBQXFDLEdBQ3RDLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUVMLG9CQUFvQixHQUNyQixNQUFNLHNCQUFzQixDQUFDOzs7QUFFOUI7O0dBRUc7QUFFSCxNQUFNLE9BQU8sNkJBQTZCO0lBSXhDLFlBQTZCLEtBQW9DO1FBQXBDLFVBQUssR0FBTCxLQUFLLENBQStCO1FBSGpFLGtCQUFrQjtRQUNGLHNCQUFpQixHQUFHLENBQUMscUNBQXFDLENBQVUsQ0FBQztJQUVqQixDQUFDO0lBRXJFLGtCQUFrQjtJQUNYLGNBQWMsQ0FBQyxPQUFpQztRQUNyRCxNQUFNLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQXlCLENBQUMsR0FBRyxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDMUYsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQztZQUNuQixPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVQLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsa0JBQWtCLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMvRSxDQUFDO2tJQWRVLDZCQUE2QjtzSUFBN0IsNkJBQTZCOzs0RkFBN0IsNkJBQTZCO2tCQUR6QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0YWJsZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBTdG9yZSxcbn0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHR5cGUge1xuICBSdWxlc0VuZ2luZUFjdGlvbkhhbmRsZXIsXG59IGZyb20gJ0BvM3IvY29yZSc7XG5pbXBvcnQge1xuICBBY3Rpb25VcGRhdGVBc3NldEJsb2NrLFxuICBSVUxFU19FTkdJTkVfQVNTRVRfVVBEQVRFX0FDVElPTl9UWVBFLFxufSBmcm9tICcuL2Fzc2V0LmludGVyZmFjZXMnO1xuaW1wb3J0IHtcbiAgQXNzZXRQYXRoT3ZlcnJpZGVTdG9yZSxcbiAgc2V0QXNzZXRQYXRoT3ZlcnJpZGUsXG59IGZyb20gJ0BvM3IvZHluYW1pYy1jb250ZW50JztcblxuLyoqXG4gKiBTZXJ2aWNlIHRvIGhhbmRsZSBhc3luYyBBc3NldCBhY3Rpb25zXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBc3NldFJ1bGVzRW5naW5lQWN0aW9uSGFuZGxlciBpbXBsZW1lbnRzIFJ1bGVzRW5naW5lQWN0aW9uSGFuZGxlcjxBY3Rpb25VcGRhdGVBc3NldEJsb2NrPiB7XG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwdWJsaWMgcmVhZG9ubHkgc3VwcG9ydGluZ0FjdGlvbnMgPSBbUlVMRVNfRU5HSU5FX0FTU0VUX1VQREFURV9BQ1RJT05fVFlQRV0gYXMgY29uc3Q7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBzdG9yZTogU3RvcmU8QXNzZXRQYXRoT3ZlcnJpZGVTdG9yZT4pIHt9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHB1YmxpYyBleGVjdXRlQWN0aW9ucyhhY3Rpb25zOiBBY3Rpb25VcGRhdGVBc3NldEJsb2NrW10pOiB2b2lkIHwgUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgYXNzZXRQYXRoT3ZlcnJpZGVzID0gYWN0aW9ucy5yZWR1Y2U8UmVjb3JkPHN0cmluZywgc3RyaW5nPj4oKGFjYywgeyBhc3NldCwgdmFsdWUgfSkgPT4ge1xuICAgICAgYWNjW2Fzc2V0XSA9IHZhbHVlO1xuICAgICAgcmV0dXJuIGFjYztcbiAgICB9LCB7fSk7XG5cbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKHNldEFzc2V0UGF0aE92ZXJyaWRlKHsgc3RhdGU6IHsgYXNzZXRQYXRoT3ZlcnJpZGVzIH0gfSkpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ /** ActionUpdateAssetBlock */
2
+ export const RULES_ENGINE_ASSET_UPDATE_ACTION_TYPE = 'UPDATE_ASSET';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQuaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ydWxlcy1lbmdpbmUvYXNzZXQuaW50ZXJmYWNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSw4QkFBOEI7QUFDOUIsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQUcsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBSdWxlc0VuZ2luZUFjdGlvbixcbn0gZnJvbSAnQG8zci9jb3JlJztcblxuLyoqIEFjdGlvblVwZGF0ZUFzc2V0QmxvY2sgICovXG5leHBvcnQgY29uc3QgUlVMRVNfRU5HSU5FX0FTU0VUX1VQREFURV9BQ1RJT05fVFlQRSA9ICdVUERBVEVfQVNTRVQnO1xuXG4vKipcbiAqIENvbnRlbnQgb2YgYWN0aW9uIHRoYXQgdXBkYXRlcyBhc3NldFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvblVwZGF0ZUFzc2V0QmxvY2sgZXh0ZW5kcyBSdWxlc0VuZ2luZUFjdGlvbiB7XG4gIGFjdGlvblR5cGU6IHR5cGVvZiBSVUxFU19FTkdJTkVfQVNTRVRfVVBEQVRFX0FDVElPTl9UWVBFO1xuICBhc3NldDogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nO1xufVxuIl19
@@ -0,0 +1,23 @@
1
+ import { NgModule, } from '@angular/core';
2
+ import { AssetRulesEngineActionHandler, } from './asset.handler-action';
3
+ import { AssetPathOverrideStoreModule, } from '@o3r/dynamic-content';
4
+ import * as i0 from "@angular/core";
5
+ export class AssetRulesEngineActionModule {
6
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AssetRulesEngineActionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: AssetRulesEngineActionModule, imports: [AssetPathOverrideStoreModule] }); }
8
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AssetRulesEngineActionModule, providers: [
9
+ AssetRulesEngineActionHandler
10
+ ], imports: [AssetPathOverrideStoreModule] }); }
11
+ }
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AssetRulesEngineActionModule, decorators: [{
13
+ type: NgModule,
14
+ args: [{
15
+ imports: [
16
+ AssetPathOverrideStoreModule
17
+ ],
18
+ providers: [
19
+ AssetRulesEngineActionHandler
20
+ ]
21
+ }]
22
+ }] });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQucnVsZXMtZW5naW5lLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ydWxlcy1lbmdpbmUvYXNzZXQucnVsZXMtZW5naW5lLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCw2QkFBNkIsR0FDOUIsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQ0wsNEJBQTRCLEdBQzdCLE1BQU0sc0JBQXNCLENBQUM7O0FBVTlCLE1BQU0sT0FBTyw0QkFBNEI7a0lBQTVCLDRCQUE0QjttSUFBNUIsNEJBQTRCLFlBTnJDLDRCQUE0QjttSUFNbkIsNEJBQTRCLGFBSjVCO1lBQ1QsNkJBQTZCO1NBQzlCLFlBSkMsNEJBQTRCOzs0RkFNbkIsNEJBQTRCO2tCQVJ4QyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCw0QkFBNEI7cUJBQzdCO29CQUNELFNBQVMsRUFBRTt3QkFDVCw2QkFBNkI7cUJBQzlCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgTmdNb2R1bGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQXNzZXRSdWxlc0VuZ2luZUFjdGlvbkhhbmRsZXIsXG59IGZyb20gJy4vYXNzZXQuaGFuZGxlci1hY3Rpb24nO1xuaW1wb3J0IHtcbiAgQXNzZXRQYXRoT3ZlcnJpZGVTdG9yZU1vZHVsZSxcbn0gZnJvbSAnQG8zci9keW5hbWljLWNvbnRlbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQXNzZXRQYXRoT3ZlcnJpZGVTdG9yZU1vZHVsZVxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICBBc3NldFJ1bGVzRW5naW5lQWN0aW9uSGFuZGxlclxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEFzc2V0UnVsZXNFbmdpbmVBY3Rpb25Nb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public_api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibzNyLWR5bmFtaWMtY29udGVudC1ydWxlcy1lbmdpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcnVsZXMtZW5naW5lL28zci1keW5hbWljLWNvbnRlbnQtcnVsZXMtZW5naW5lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljX2FwaSc7XG4iXX0=
@@ -0,0 +1,4 @@
1
+ export * from './asset.handler-action';
2
+ export * from './asset.interfaces';
3
+ export * from './asset.rules-engine.module';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ydWxlcy1lbmdpbmUvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyw2QkFBNkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXNzZXQuaGFuZGxlci1hY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9hc3NldC5pbnRlcmZhY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vYXNzZXQucnVsZXMtZW5naW5lLm1vZHVsZSc7XG4iXX0=
@@ -0,0 +1,81 @@
1
+ import { NgModule, } from '@angular/core';
2
+ import { DynamicContentPipe, O3rDynamicContentPipe, } from './dynamic-content.pipe';
3
+ import { DynamicContentService, } from './dynamic-content.service';
4
+ import { CMS_ASSETS_PATH_TOKEN, DYNAMIC_CONTENT_BASE_PATH_TOKEN, } from './dynamic-content.token';
5
+ import * as i0 from "@angular/core";
6
+ /**
7
+ * Function to get dynamic content from body dataset
8
+ */
9
+ export function getDynamicContent() {
10
+ return document.body.dataset.dynamiccontentpath || '';
11
+ }
12
+ /**
13
+ * Function to get the cms assets from body dataset
14
+ * This will be used only in a CMS context(not in local or prod) to display correctly the assets in the editor
15
+ */
16
+ export function getCmsAssets() {
17
+ return document.body.dataset.cmsassetspath || '';
18
+ }
19
+ /**
20
+ * DynamicContent module
21
+ */
22
+ export class DynamicContentModule {
23
+ /**
24
+ * Customize the location where the application will search for the base path of dynamic content
25
+ * @param dynamicPath Configuration for dynamic content path
26
+ * @param dynamicPath.content The string will be used as base path of dynamic content
27
+ * @param dynamicPath.cmsAssets The string will be used for the the base path of cms assets
28
+ * @note The cmsAssets will be used only in the cms editor mode and it will take priority over dynamic content
29
+ */
30
+ static forRoot(dynamicPath) {
31
+ const providers = [];
32
+ if ('content' in dynamicPath) {
33
+ providers.push({
34
+ provide: DYNAMIC_CONTENT_BASE_PATH_TOKEN,
35
+ useValue: dynamicPath.content
36
+ });
37
+ }
38
+ if ('cmsAssets' in dynamicPath) {
39
+ providers.push({
40
+ provide: CMS_ASSETS_PATH_TOKEN,
41
+ useValue: dynamicPath.cmsAssets
42
+ });
43
+ }
44
+ return {
45
+ ngModule: DynamicContentModule,
46
+ providers
47
+ };
48
+ }
49
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DynamicContentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
50
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: DynamicContentModule, declarations: [DynamicContentPipe, O3rDynamicContentPipe], exports: [DynamicContentPipe, O3rDynamicContentPipe] }); }
51
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DynamicContentModule, providers: [
52
+ {
53
+ provide: DYNAMIC_CONTENT_BASE_PATH_TOKEN,
54
+ useFactory: getDynamicContent
55
+ },
56
+ {
57
+ provide: CMS_ASSETS_PATH_TOKEN,
58
+ useFactory: getCmsAssets
59
+ },
60
+ DynamicContentService
61
+ ] }); }
62
+ }
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DynamicContentModule, decorators: [{
64
+ type: NgModule,
65
+ args: [{
66
+ declarations: [DynamicContentPipe, O3rDynamicContentPipe],
67
+ providers: [
68
+ {
69
+ provide: DYNAMIC_CONTENT_BASE_PATH_TOKEN,
70
+ useFactory: getDynamicContent
71
+ },
72
+ {
73
+ provide: CMS_ASSETS_PATH_TOKEN,
74
+ useFactory: getCmsAssets
75
+ },
76
+ DynamicContentService
77
+ ],
78
+ exports: [DynamicContentPipe, O3rDynamicContentPipe]
79
+ }]
80
+ }] });
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb250ZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9keW5hbWljLWNvbnRlbnQvZHluYW1pYy1jb250ZW50Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsUUFBUSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIscUJBQXFCLEdBQ3RCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUNMLHFCQUFxQixHQUN0QixNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFDTCxxQkFBcUIsRUFDckIsK0JBQStCLEdBQ2hDLE1BQU0seUJBQXlCLENBQUM7O0FBRWpDOztHQUVHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQjtJQUMvQixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixJQUFJLEVBQUUsQ0FBQztBQUN4RCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLFlBQVk7SUFDMUIsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLElBQUksRUFBRSxDQUFDO0FBQ25ELENBQUM7QUFpQkQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sb0JBQW9CO0lBQy9COzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBd0Q7UUFDNUUsTUFBTSxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksU0FBUyxJQUFJLFdBQVcsRUFBRSxDQUFDO1lBQzdCLFNBQVMsQ0FBQyxJQUFJLENBQUM7Z0JBQ2IsT0FBTyxFQUFFLCtCQUErQjtnQkFDeEMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxPQUFPO2FBQzlCLENBQUMsQ0FBQztRQUNMLENBQUM7UUFDRCxJQUFJLFdBQVcsSUFBSSxXQUFXLEVBQUUsQ0FBQztZQUMvQixTQUFTLENBQUMsSUFBSSxDQUFDO2dCQUNiLE9BQU8sRUFBRSxxQkFBcUI7Z0JBQzlCLFFBQVEsRUFBRSxXQUFXLENBQUMsU0FBUzthQUNoQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsT0FBTztZQUNMLFFBQVEsRUFBRSxvQkFBb0I7WUFDOUIsU0FBUztTQUNWLENBQUM7SUFDSixDQUFDO2tJQTNCVSxvQkFBb0I7bUlBQXBCLG9CQUFvQixpQkFqQmhCLGtCQUFrQixFQUFFLHFCQUFxQixhQVk5QyxrQkFBa0IsRUFBRSxxQkFBcUI7bUlBS3hDLG9CQUFvQixhQWhCcEI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsK0JBQStCO2dCQUN4QyxVQUFVLEVBQUUsaUJBQWlCO2FBQzlCO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLHFCQUFxQjtnQkFDOUIsVUFBVSxFQUFFLFlBQVk7YUFDekI7WUFDRCxxQkFBcUI7U0FDdEI7OzRGQU1VLG9CQUFvQjtrQkFsQmhDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsa0JBQWtCLEVBQUUscUJBQXFCLENBQUM7b0JBQ3pELFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsK0JBQStCOzRCQUN4QyxVQUFVLEVBQUUsaUJBQWlCO3lCQUM5Qjt3QkFDRDs0QkFDRSxPQUFPLEVBQUUscUJBQXFCOzRCQUM5QixVQUFVLEVBQUUsWUFBWTt5QkFDekI7d0JBQ0QscUJBQXFCO3FCQUN0QjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxxQkFBcUIsQ0FBQztpQkFDckQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBNb2R1bGVXaXRoUHJvdmlkZXJzLFxuICBOZ01vZHVsZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBEeW5hbWljQ29udGVudFBpcGUsXG4gIE8zckR5bmFtaWNDb250ZW50UGlwZSxcbn0gZnJvbSAnLi9keW5hbWljLWNvbnRlbnQucGlwZSc7XG5pbXBvcnQge1xuICBEeW5hbWljQ29udGVudFNlcnZpY2UsXG59IGZyb20gJy4vZHluYW1pYy1jb250ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgQ01TX0FTU0VUU19QQVRIX1RPS0VOLFxuICBEWU5BTUlDX0NPTlRFTlRfQkFTRV9QQVRIX1RPS0VOLFxufSBmcm9tICcuL2R5bmFtaWMtY29udGVudC50b2tlbic7XG5cbi8qKlxuICogRnVuY3Rpb24gdG8gZ2V0IGR5bmFtaWMgY29udGVudCBmcm9tIGJvZHkgZGF0YXNldFxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RHluYW1pY0NvbnRlbnQoKSB7XG4gIHJldHVybiBkb2N1bWVudC5ib2R5LmRhdGFzZXQuZHluYW1pY2NvbnRlbnRwYXRoIHx8ICcnO1xufVxuXG4vKipcbiAqIEZ1bmN0aW9uIHRvIGdldCB0aGUgY21zIGFzc2V0cyBmcm9tIGJvZHkgZGF0YXNldFxuICogVGhpcyB3aWxsIGJlIHVzZWQgb25seSBpbiBhIENNUyBjb250ZXh0KG5vdCBpbiBsb2NhbCBvciBwcm9kKSB0byBkaXNwbGF5IGNvcnJlY3RseSB0aGUgYXNzZXRzIGluIHRoZSBlZGl0b3JcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldENtc0Fzc2V0cygpIHtcbiAgcmV0dXJuIGRvY3VtZW50LmJvZHkuZGF0YXNldC5jbXNhc3NldHNwYXRoIHx8ICcnO1xufVxuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtEeW5hbWljQ29udGVudFBpcGUsIE8zckR5bmFtaWNDb250ZW50UGlwZV0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IERZTkFNSUNfQ09OVEVOVF9CQVNFX1BBVEhfVE9LRU4sXG4gICAgICB1c2VGYWN0b3J5OiBnZXREeW5hbWljQ29udGVudFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogQ01TX0FTU0VUU19QQVRIX1RPS0VOLFxuICAgICAgdXNlRmFjdG9yeTogZ2V0Q21zQXNzZXRzXG4gICAgfSxcbiAgICBEeW5hbWljQ29udGVudFNlcnZpY2VcbiAgXSxcbiAgZXhwb3J0czogW0R5bmFtaWNDb250ZW50UGlwZSwgTzNyRHluYW1pY0NvbnRlbnRQaXBlXVxufSlcbi8qKlxuICogRHluYW1pY0NvbnRlbnQgbW9kdWxlXG4gKi9cbmV4cG9ydCBjbGFzcyBEeW5hbWljQ29udGVudE1vZHVsZSB7XG4gIC8qKlxuICAgKiBDdXN0b21pemUgdGhlIGxvY2F0aW9uIHdoZXJlIHRoZSBhcHBsaWNhdGlvbiB3aWxsIHNlYXJjaCBmb3IgdGhlIGJhc2UgcGF0aCBvZiBkeW5hbWljIGNvbnRlbnRcbiAgICogQHBhcmFtIGR5bmFtaWNQYXRoIENvbmZpZ3VyYXRpb24gZm9yIGR5bmFtaWMgY29udGVudCBwYXRoXG4gICAqIEBwYXJhbSBkeW5hbWljUGF0aC5jb250ZW50IFRoZSBzdHJpbmcgd2lsbCBiZSB1c2VkIGFzIGJhc2UgcGF0aCBvZiBkeW5hbWljIGNvbnRlbnRcbiAgICogQHBhcmFtIGR5bmFtaWNQYXRoLmNtc0Fzc2V0cyBUaGUgc3RyaW5nIHdpbGwgYmUgdXNlZCBmb3IgdGhlIHRoZSBiYXNlIHBhdGggb2YgY21zIGFzc2V0c1xuICAgKiBAbm90ZSBUaGUgY21zQXNzZXRzIHdpbGwgYmUgdXNlZCBvbmx5IGluIHRoZSBjbXMgZWRpdG9yIG1vZGUgYW5kIGl0IHdpbGwgdGFrZSBwcmlvcml0eSBvdmVyIGR5bmFtaWMgY29udGVudFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmb3JSb290KGR5bmFtaWNQYXRoOiB7IGNvbnRlbnQ6IHN0cmluZyB9IHwgeyBjbXNBc3NldHM6IHN0cmluZyB9KTogTW9kdWxlV2l0aFByb3ZpZGVyczxEeW5hbWljQ29udGVudE1vZHVsZT4ge1xuICAgIGNvbnN0IHByb3ZpZGVycyA9IFtdO1xuICAgIGlmICgnY29udGVudCcgaW4gZHluYW1pY1BhdGgpIHtcbiAgICAgIHByb3ZpZGVycy5wdXNoKHtcbiAgICAgICAgcHJvdmlkZTogRFlOQU1JQ19DT05URU5UX0JBU0VfUEFUSF9UT0tFTixcbiAgICAgICAgdXNlVmFsdWU6IGR5bmFtaWNQYXRoLmNvbnRlbnRcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAoJ2Ntc0Fzc2V0cycgaW4gZHluYW1pY1BhdGgpIHtcbiAgICAgIHByb3ZpZGVycy5wdXNoKHtcbiAgICAgICAgcHJvdmlkZTogQ01TX0FTU0VUU19QQVRIX1RPS0VOLFxuICAgICAgICB1c2VWYWx1ZTogZHluYW1pY1BhdGguY21zQXNzZXRzXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IER5bmFtaWNDb250ZW50TW9kdWxlLFxuICAgICAgcHJvdmlkZXJzXG4gICAgfTtcbiAgfVxufVxuIl19
@@ -0,0 +1,48 @@
1
+ import { ChangeDetectorRef, Pipe, } from '@angular/core';
2
+ import { DynamicContentService, } from './dynamic-content.service';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./dynamic-content.service";
5
+ export class O3rDynamicContentPipe {
6
+ constructor(service, cd) {
7
+ this.service = service;
8
+ this.cd = cd;
9
+ /** Path to the media */
10
+ this.mediaPath = '';
11
+ }
12
+ /** @inheritDoc */
13
+ transform(query) {
14
+ if (query !== this.lastQuery) {
15
+ this.lastQuery = query;
16
+ if (this.onMediaPathChange) {
17
+ this.onMediaPathChange.unsubscribe();
18
+ }
19
+ this.onMediaPathChange = this.service.getMediaPathStream(query).subscribe((mediaPath) => {
20
+ this.mediaPath = mediaPath;
21
+ this.cd.markForCheck();
22
+ });
23
+ }
24
+ return this.mediaPath;
25
+ }
26
+ /** @inheritDoc */
27
+ ngOnDestroy() {
28
+ if (this.onMediaPathChange) {
29
+ this.onMediaPathChange.unsubscribe();
30
+ }
31
+ }
32
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: O3rDynamicContentPipe, deps: [{ token: i1.DynamicContentService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Pipe }); }
33
+ /** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: O3rDynamicContentPipe, name: "o3rDynamicContent", pure: false }); }
34
+ }
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: O3rDynamicContentPipe, decorators: [{
36
+ type: Pipe,
37
+ args: [{ name: 'o3rDynamicContent', pure: false }]
38
+ }], ctorParameters: () => [{ type: i1.DynamicContentService }, { type: i0.ChangeDetectorRef }] });
39
+ /** @deprecated please use O3rDynamicContentPipe, will be removed in v12. */
40
+ export class DynamicContentPipe extends O3rDynamicContentPipe {
41
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DynamicContentPipe, deps: null, target: i0.ɵɵFactoryTarget.Pipe }); }
42
+ /** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: DynamicContentPipe, name: "dynamicContent", pure: false }); }
43
+ }
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DynamicContentPipe, decorators: [{
45
+ type: Pipe,
46
+ args: [{ name: 'dynamicContent', pure: false }]
47
+ }] });
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb250ZW50LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvZHluYW1pYy1jb250ZW50L2R5bmFtaWMtY29udGVudC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFFakIsSUFBSSxHQUVMLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFDTCxxQkFBcUIsR0FDdEIsTUFBTSwyQkFBMkIsQ0FBQzs7O0FBR25DLE1BQU0sT0FBTyxxQkFBcUI7SUFVaEMsWUFBK0IsT0FBOEIsRUFBcUIsRUFBcUI7UUFBeEUsWUFBTyxHQUFQLE9BQU8sQ0FBdUI7UUFBcUIsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFIdkcsd0JBQXdCO1FBQ2QsY0FBUyxHQUFHLEVBQUUsQ0FBQztJQUVpRixDQUFDO0lBRTNHLGtCQUFrQjtJQUNYLFNBQVMsQ0FBQyxLQUFjO1FBQzdCLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO2dCQUMzQixJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdkMsQ0FBQztZQUNELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO2dCQUN0RixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztnQkFDM0IsSUFBSSxDQUFDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN6QixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELGtCQUFrQjtJQUNYLFdBQVc7UUFDaEIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdkMsQ0FBQztJQUNILENBQUM7a0lBakNVLHFCQUFxQjtnSUFBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQURqQyxJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7O0FBcUNoRCw0RUFBNEU7QUFFNUUsTUFBTSxPQUFPLGtCQUFtQixTQUFRLHFCQUFxQjtrSUFBaEQsa0JBQWtCO2dJQUFsQixrQkFBa0I7OzRGQUFsQixrQkFBa0I7a0JBRDlCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBPbkRlc3Ryb3ksXG4gIFBpcGUsXG4gIFBpcGVUcmFuc2Zvcm0sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgU3Vic2NyaXB0aW9uLFxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIER5bmFtaWNDb250ZW50U2VydmljZSxcbn0gZnJvbSAnLi9keW5hbWljLWNvbnRlbnQuc2VydmljZSc7XG5cbkBQaXBlKHsgbmFtZTogJ28zckR5bmFtaWNDb250ZW50JywgcHVyZTogZmFsc2UgfSlcbmV4cG9ydCBjbGFzcyBPM3JEeW5hbWljQ29udGVudFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtLCBPbkRlc3Ryb3kge1xuICAvKiogTGFzdCBxdWVyeSB2YWx1ZSAgKi9cbiAgcHJvdGVjdGVkIGxhc3RRdWVyeT86IHN0cmluZztcblxuICAvKiogU3Vic2NyaXB0aW9uIHRvIHJldHJpZXZlIG1lZGlhIHBhdGggKi9cbiAgcHJvdGVjdGVkIG9uTWVkaWFQYXRoQ2hhbmdlPzogU3Vic2NyaXB0aW9uO1xuXG4gIC8qKiBQYXRoIHRvIHRoZSBtZWRpYSAqL1xuICBwcm90ZWN0ZWQgbWVkaWFQYXRoID0gJyc7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIHJlYWRvbmx5IHNlcnZpY2U6IER5bmFtaWNDb250ZW50U2VydmljZSwgcHJvdGVjdGVkIHJlYWRvbmx5IGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICAvKiogQGluaGVyaXREb2MgKi9cbiAgcHVibGljIHRyYW5zZm9ybShxdWVyeT86IHN0cmluZykge1xuICAgIGlmIChxdWVyeSAhPT0gdGhpcy5sYXN0UXVlcnkpIHtcbiAgICAgIHRoaXMubGFzdFF1ZXJ5ID0gcXVlcnk7XG4gICAgICBpZiAodGhpcy5vbk1lZGlhUGF0aENoYW5nZSkge1xuICAgICAgICB0aGlzLm9uTWVkaWFQYXRoQ2hhbmdlLnVuc3Vic2NyaWJlKCk7XG4gICAgICB9XG4gICAgICB0aGlzLm9uTWVkaWFQYXRoQ2hhbmdlID0gdGhpcy5zZXJ2aWNlLmdldE1lZGlhUGF0aFN0cmVhbShxdWVyeSkuc3Vic2NyaWJlKChtZWRpYVBhdGgpID0+IHtcbiAgICAgICAgdGhpcy5tZWRpYVBhdGggPSBtZWRpYVBhdGg7XG4gICAgICAgIHRoaXMuY2QubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5tZWRpYVBhdGg7XG4gIH1cblxuICAvKiogQGluaGVyaXREb2MgKi9cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm9uTWVkaWFQYXRoQ2hhbmdlKSB7XG4gICAgICB0aGlzLm9uTWVkaWFQYXRoQ2hhbmdlLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG59XG5cbi8qKiBAZGVwcmVjYXRlZCBwbGVhc2UgdXNlIE8zckR5bmFtaWNDb250ZW50UGlwZSwgd2lsbCBiZSByZW1vdmVkIGluIHYxMi4gKi9cbkBQaXBlKHsgbmFtZTogJ2R5bmFtaWNDb250ZW50JywgcHVyZTogZmFsc2UgfSlcbmV4cG9ydCBjbGFzcyBEeW5hbWljQ29udGVudFBpcGUgZXh0ZW5kcyBPM3JEeW5hbWljQ29udGVudFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHt9XG4iXX0=
@@ -0,0 +1,75 @@
1
+ import { Inject, Injectable, Optional, } from '@angular/core';
2
+ import { select, Store, } from '@ngrx/store';
3
+ import { of, } from 'rxjs';
4
+ import { distinctUntilChanged, map, shareReplay, } from 'rxjs/operators';
5
+ import { selectAssetPathOverride, } from '../../stores/index';
6
+ import { CMS_ASSETS_PATH_TOKEN, DYNAMIC_CONTENT_BASE_PATH_TOKEN, } from './dynamic-content.token';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@ngrx/store";
9
+ const MEDIA_FOLDER_NAME = 'assets';
10
+ /**
11
+ * Service for getting dynamic content path
12
+ */
13
+ export class DynamicContentService {
14
+ constructor(dynamicContentPath, cmsOnlyAssetsPath, store) {
15
+ this.cmsOnlyAssetsPath = cmsOnlyAssetsPath;
16
+ this.store = store;
17
+ this.basePath = dynamicContentPath.replace(/\/$/, '');
18
+ this.mediaFolder = MEDIA_FOLDER_NAME;
19
+ }
20
+ normalizePath(assetPath) {
21
+ return assetPath ? assetPath.replace(/^\//, '') : '';
22
+ }
23
+ getContentPath(assetPath) {
24
+ const normalizedAssetPath = this.normalizePath(assetPath);
25
+ return this.basePath === '' ? assetPath || '' : `${this.basePath}/${normalizedAssetPath}`;
26
+ }
27
+ getMediaPath(assetPath) {
28
+ if (this.cmsOnlyAssetsPath && assetPath) {
29
+ return assetPath.startsWith('/') ? assetPath : `${this.cmsOnlyAssetsPath.replace(/\/$/, '')}/${assetPath}`;
30
+ }
31
+ return this.getContentPath(this.mediaFolder ? `${this.mediaFolder}/${this.normalizePath(assetPath)}` : assetPath);
32
+ }
33
+ /**
34
+ * Gets the full path of a content relative to the root
35
+ * Content path doesn't consider any override, you will always get the same file
36
+ * @param assetPath asset location in the root folder
37
+ * @example
38
+ * ```typescript
39
+ * getMediaPath('assets/imgs/my-image.png') // will give you the basePath + 'assets/imgs/my-image.png'
40
+ * ```
41
+ */
42
+ getContentPathStream(assetPath) {
43
+ return of(this.getContentPath(assetPath));
44
+ }
45
+ /**
46
+ * Gets the stream that provides the full path of a media content
47
+ * A Media content is always stored in the 'assets' media folder, no external content will be accessible through this function
48
+ * If any override is applied to the content, returns the override path instead
49
+ * @param assetPath asset location in the media folder (e.g imgs/my-image.png)
50
+ * @example
51
+ * ```typescript
52
+ * getMediaPathStream('imgs/my-image.png') // will give you the basePath + mediaFolder + 'imgs/my-image.png'
53
+ * ```
54
+ */
55
+ getMediaPathStream(assetPath) {
56
+ if (!this.store) {
57
+ return of(this.getMediaPath(assetPath));
58
+ }
59
+ return this.store.pipe(select(selectAssetPathOverride), map((entities) => assetPath && entities && entities[assetPath] ? entities[assetPath] : assetPath), map((finalAssetPath) => this.getMediaPath(finalAssetPath)), distinctUntilChanged(), shareReplay({ bufferSize: 1, refCount: true }));
60
+ }
61
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DynamicContentService, deps: [{ token: DYNAMIC_CONTENT_BASE_PATH_TOKEN }, { token: CMS_ASSETS_PATH_TOKEN }, { token: i1.Store, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
62
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DynamicContentService }); }
63
+ }
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DynamicContentService, decorators: [{
65
+ type: Injectable
66
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
67
+ type: Inject,
68
+ args: [DYNAMIC_CONTENT_BASE_PATH_TOKEN]
69
+ }] }, { type: undefined, decorators: [{
70
+ type: Inject,
71
+ args: [CMS_ASSETS_PATH_TOKEN]
72
+ }] }, { type: i1.Store, decorators: [{
73
+ type: Optional
74
+ }] }] });
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb250ZW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvZHluYW1pYy1jb250ZW50L2R5bmFtaWMtY29udGVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxNQUFNLEVBQ04sVUFBVSxFQUNWLFFBQVEsR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsTUFBTSxFQUNOLEtBQUssR0FDTixNQUFNLGFBQWEsQ0FBQztBQUNyQixPQUFPLEVBQ0wsRUFBRSxHQUNILE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixHQUFHLEVBQ0gsV0FBVyxHQUNaLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUVMLHVCQUF1QixHQUN4QixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFDTCxxQkFBcUIsRUFDckIsK0JBQStCLEdBQ2hDLE1BQU0seUJBQXlCLENBQUM7OztBQUVqQyxNQUFNLGlCQUFpQixHQUFHLFFBQVEsQ0FBQztBQUVuQzs7R0FFRztBQUVILE1BQU0sT0FBTyxxQkFBcUI7SUFLaEMsWUFBcUQsa0JBQTBCLEVBQzdCLGlCQUF5QixFQUM1QyxLQUFxQztRQURsQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQVE7UUFDNUMsVUFBSyxHQUFMLEtBQUssQ0FBZ0M7UUFDbEUsSUFBSSxDQUFDLFFBQVEsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxXQUFXLEdBQUcsaUJBQWlCLENBQUM7SUFDdkMsQ0FBQztJQUVPLGFBQWEsQ0FBQyxTQUFrQjtRQUN0QyxPQUFPLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUN2RCxDQUFDO0lBRU8sY0FBYyxDQUFDLFNBQWtCO1FBQ3ZDLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMxRCxPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLElBQUksbUJBQW1CLEVBQUUsQ0FBQztJQUM1RixDQUFDO0lBRU8sWUFBWSxDQUFDLFNBQWtCO1FBQ3JDLElBQUksSUFBSSxDQUFDLGlCQUFpQixJQUFJLFNBQVMsRUFBRSxDQUFDO1lBQ3hDLE9BQU8sU0FBUyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLFNBQVMsRUFBRSxDQUFDO1FBQzdHLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDcEgsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0ksb0JBQW9CLENBQUMsU0FBa0I7UUFDNUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDSSxrQkFBa0IsQ0FBQyxTQUFrQjtRQUMxQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2hCLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUMxQyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDcEIsTUFBTSxDQUFDLHVCQUF1QixDQUFDLEVBQy9CLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsU0FBUyxJQUFJLFFBQVEsSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQ2pHLEdBQUcsQ0FBQyxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQyxFQUMxRCxvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUMvQyxDQUFDO0lBQ0osQ0FBQztrSUE5RFUscUJBQXFCLGtCQUtaLCtCQUErQixhQUN6QyxxQkFBcUI7c0lBTnBCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFEakMsVUFBVTs7MEJBTUksTUFBTTsyQkFBQywrQkFBK0I7OzBCQUNoRCxNQUFNOzJCQUFDLHFCQUFxQjs7MEJBQzVCLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBJbmplY3QsXG4gIEluamVjdGFibGUsXG4gIE9wdGlvbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIHNlbGVjdCxcbiAgU3RvcmUsXG59IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7XG4gIG9mLFxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICBtYXAsXG4gIHNoYXJlUmVwbGF5LFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICBBc3NldFBhdGhPdmVycmlkZVN0b3JlLFxuICBzZWxlY3RBc3NldFBhdGhPdmVycmlkZSxcbn0gZnJvbSAnLi4vLi4vc3RvcmVzL2luZGV4JztcbmltcG9ydCB7XG4gIENNU19BU1NFVFNfUEFUSF9UT0tFTixcbiAgRFlOQU1JQ19DT05URU5UX0JBU0VfUEFUSF9UT0tFTixcbn0gZnJvbSAnLi9keW5hbWljLWNvbnRlbnQudG9rZW4nO1xuXG5jb25zdCBNRURJQV9GT0xERVJfTkFNRSA9ICdhc3NldHMnO1xuXG4vKipcbiAqIFNlcnZpY2UgZm9yIGdldHRpbmcgZHluYW1pYyBjb250ZW50IHBhdGhcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIER5bmFtaWNDb250ZW50U2VydmljZSB7XG4gIHB1YmxpYyByZWFkb25seSBiYXNlUGF0aDogc3RyaW5nO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbWVkaWFGb2xkZXI6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KERZTkFNSUNfQ09OVEVOVF9CQVNFX1BBVEhfVE9LRU4pIGR5bmFtaWNDb250ZW50UGF0aDogc3RyaW5nLFxuICAgIEBJbmplY3QoQ01TX0FTU0VUU19QQVRIX1RPS0VOKSBwcml2YXRlIHJlYWRvbmx5IGNtc09ubHlBc3NldHNQYXRoOiBzdHJpbmcsXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSByZWFkb25seSBzdG9yZT86IFN0b3JlPEFzc2V0UGF0aE92ZXJyaWRlU3RvcmU+KSB7XG4gICAgdGhpcy5iYXNlUGF0aCA9IGR5bmFtaWNDb250ZW50UGF0aC5yZXBsYWNlKC9cXC8kLywgJycpO1xuICAgIHRoaXMubWVkaWFGb2xkZXIgPSBNRURJQV9GT0xERVJfTkFNRTtcbiAgfVxuXG4gIHByaXZhdGUgbm9ybWFsaXplUGF0aChhc3NldFBhdGg/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYXNzZXRQYXRoID8gYXNzZXRQYXRoLnJlcGxhY2UoL15cXC8vLCAnJykgOiAnJztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29udGVudFBhdGgoYXNzZXRQYXRoPzogc3RyaW5nKSB7XG4gICAgY29uc3Qgbm9ybWFsaXplZEFzc2V0UGF0aCA9IHRoaXMubm9ybWFsaXplUGF0aChhc3NldFBhdGgpO1xuICAgIHJldHVybiB0aGlzLmJhc2VQYXRoID09PSAnJyA/IGFzc2V0UGF0aCB8fCAnJyA6IGAke3RoaXMuYmFzZVBhdGh9LyR7bm9ybWFsaXplZEFzc2V0UGF0aH1gO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRNZWRpYVBhdGgoYXNzZXRQYXRoPzogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMuY21zT25seUFzc2V0c1BhdGggJiYgYXNzZXRQYXRoKSB7XG4gICAgICByZXR1cm4gYXNzZXRQYXRoLnN0YXJ0c1dpdGgoJy8nKSA/IGFzc2V0UGF0aCA6IGAke3RoaXMuY21zT25seUFzc2V0c1BhdGgucmVwbGFjZSgvXFwvJC8sICcnKX0vJHthc3NldFBhdGh9YDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZ2V0Q29udGVudFBhdGgodGhpcy5tZWRpYUZvbGRlciA/IGAke3RoaXMubWVkaWFGb2xkZXJ9LyR7dGhpcy5ub3JtYWxpemVQYXRoKGFzc2V0UGF0aCl9YCA6IGFzc2V0UGF0aCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgZnVsbCBwYXRoIG9mIGEgY29udGVudCByZWxhdGl2ZSB0byB0aGUgcm9vdFxuICAgKiBDb250ZW50IHBhdGggZG9lc24ndCBjb25zaWRlciBhbnkgb3ZlcnJpZGUsIHlvdSB3aWxsIGFsd2F5cyBnZXQgdGhlIHNhbWUgZmlsZVxuICAgKiBAcGFyYW0gYXNzZXRQYXRoIGFzc2V0IGxvY2F0aW9uIGluIHRoZSByb290IGZvbGRlclxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIGdldE1lZGlhUGF0aCgnYXNzZXRzL2ltZ3MvbXktaW1hZ2UucG5nJykgLy8gd2lsbCBnaXZlIHlvdSB0aGUgYmFzZVBhdGggKyAnYXNzZXRzL2ltZ3MvbXktaW1hZ2UucG5nJ1xuICAgKiBgYGBcbiAgICovXG4gIHB1YmxpYyBnZXRDb250ZW50UGF0aFN0cmVhbShhc3NldFBhdGg/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gb2YodGhpcy5nZXRDb250ZW50UGF0aChhc3NldFBhdGgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBzdHJlYW0gdGhhdCBwcm92aWRlcyB0aGUgZnVsbCBwYXRoIG9mIGEgbWVkaWEgY29udGVudFxuICAgKiBBIE1lZGlhIGNvbnRlbnQgaXMgYWx3YXlzIHN0b3JlZCBpbiB0aGUgJ2Fzc2V0cycgbWVkaWEgZm9sZGVyLCBubyBleHRlcm5hbCBjb250ZW50IHdpbGwgYmUgYWNjZXNzaWJsZSB0aHJvdWdoIHRoaXMgZnVuY3Rpb25cbiAgICogSWYgYW55IG92ZXJyaWRlIGlzIGFwcGxpZWQgdG8gdGhlIGNvbnRlbnQsIHJldHVybnMgdGhlIG92ZXJyaWRlIHBhdGggaW5zdGVhZFxuICAgKiBAcGFyYW0gYXNzZXRQYXRoIGFzc2V0IGxvY2F0aW9uIGluIHRoZSBtZWRpYSBmb2xkZXIgKGUuZyBpbWdzL215LWltYWdlLnBuZylcbiAgICogQGV4YW1wbGVcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiBnZXRNZWRpYVBhdGhTdHJlYW0oJ2ltZ3MvbXktaW1hZ2UucG5nJykgLy8gd2lsbCBnaXZlIHlvdSB0aGUgYmFzZVBhdGggKyBtZWRpYUZvbGRlciArICdpbWdzL215LWltYWdlLnBuZydcbiAgICogYGBgXG4gICAqL1xuICBwdWJsaWMgZ2V0TWVkaWFQYXRoU3RyZWFtKGFzc2V0UGF0aD86IHN0cmluZykge1xuICAgIGlmICghdGhpcy5zdG9yZSkge1xuICAgICAgcmV0dXJuIG9mKHRoaXMuZ2V0TWVkaWFQYXRoKGFzc2V0UGF0aCkpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zdG9yZS5waXBlKFxuICAgICAgc2VsZWN0KHNlbGVjdEFzc2V0UGF0aE92ZXJyaWRlKSxcbiAgICAgIG1hcCgoZW50aXRpZXMpID0+IGFzc2V0UGF0aCAmJiBlbnRpdGllcyAmJiBlbnRpdGllc1thc3NldFBhdGhdID8gZW50aXRpZXNbYXNzZXRQYXRoXSA6IGFzc2V0UGF0aCksXG4gICAgICBtYXAoKGZpbmFsQXNzZXRQYXRoKSA9PiB0aGlzLmdldE1lZGlhUGF0aChmaW5hbEFzc2V0UGF0aCkpLFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgIHNoYXJlUmVwbGF5KHsgYnVmZmVyU2l6ZTogMSwgcmVmQ291bnQ6IHRydWUgfSlcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,11 @@
1
+ import { InjectionToken, } from '@angular/core';
2
+ /**
3
+ * Injection token for the rootpath of dynamic content
4
+ */
5
+ export const DYNAMIC_CONTENT_BASE_PATH_TOKEN = new InjectionToken('Dynamic content path injection token');
6
+ /**
7
+ * Injection token for the assets path injected by the cms
8
+ * This token will be injected only in editor mode
9
+ */
10
+ export const CMS_ASSETS_PATH_TOKEN = new InjectionToken('CMS assets path injection token');
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb250ZW50LnRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2R5bmFtaWMtY29udGVudC9keW5hbWljLWNvbnRlbnQudG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGNBQWMsR0FDZixNQUFNLGVBQWUsQ0FBQztBQUV2Qjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUEyQixJQUFJLGNBQWMsQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO0FBRWxJOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUEyQixJQUFJLGNBQWMsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0aW9uVG9rZW4sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIEluamVjdGlvbiB0b2tlbiBmb3IgdGhlIHJvb3RwYXRoIG9mIGR5bmFtaWMgY29udGVudFxuICovXG5leHBvcnQgY29uc3QgRFlOQU1JQ19DT05URU5UX0JBU0VfUEFUSF9UT0tFTjogSW5qZWN0aW9uVG9rZW48c3RyaW5nPiA9IG5ldyBJbmplY3Rpb25Ub2tlbignRHluYW1pYyBjb250ZW50IHBhdGggaW5qZWN0aW9uIHRva2VuJyk7XG5cbi8qKlxuICogSW5qZWN0aW9uIHRva2VuIGZvciB0aGUgYXNzZXRzIHBhdGggaW5qZWN0ZWQgYnkgdGhlIGNtc1xuICogVGhpcyB0b2tlbiB3aWxsIGJlIGluamVjdGVkIG9ubHkgaW4gZWRpdG9yIG1vZGVcbiAqL1xuZXhwb3J0IGNvbnN0IENNU19BU1NFVFNfUEFUSF9UT0tFTjogSW5qZWN0aW9uVG9rZW48c3RyaW5nPiA9IG5ldyBJbmplY3Rpb25Ub2tlbignQ01TIGFzc2V0cyBwYXRoIGluamVjdGlvbiB0b2tlbicpO1xuIl19
@@ -0,0 +1,5 @@
1
+ export * from './dynamic-content.module';
2
+ export * from './dynamic-content.pipe';
3
+ export * from './dynamic-content.service';
4
+ export * from './dynamic-content.token';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvZHluYW1pYy1jb250ZW50L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtY29udGVudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9keW5hbWljLWNvbnRlbnQucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtY29udGVudC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZHluYW1pYy1jb250ZW50LnRva2VuJztcbiJdfQ==
@@ -0,0 +1,4 @@
1
+ export * from './dynamic-content/index';
2
+ export * from './request-parameters/index';
3
+ export * from './styling/index';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtY29udGVudC9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL3JlcXVlc3QtcGFyYW1ldGVycy9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL3N0eWxpbmcvaW5kZXgnO1xuIl19
@@ -0,0 +1,4 @@
1
+ export * from './request-parameters.config';
2
+ export * from './request-parameters.module';
3
+ export * from './request-parameters.service';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvcmVxdWVzdC1wYXJhbWV0ZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9yZXF1ZXN0LXBhcmFtZXRlcnMuY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vcmVxdWVzdC1wYXJhbWV0ZXJzLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlcXVlc3QtcGFyYW1ldGVycy5zZXJ2aWNlJztcbiJdfQ==