@ethlete/contentful 2.1.2 → 3.0.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.
Files changed (33) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/esm2022/index.mjs +2 -1
  3. package/esm2022/lib/components/audio/contentful-audio.component.mjs +18 -47
  4. package/esm2022/lib/components/file/contentful-file.component.mjs +14 -36
  5. package/esm2022/lib/components/image/contentful-image.component.mjs +64 -113
  6. package/esm2022/lib/components/image/contentful-image.component.utils.mjs +15 -19
  7. package/esm2022/lib/components/rich-text-renderer/index.mjs +1 -3
  8. package/esm2022/lib/components/rich-text-renderer/rich-text-renderer.component.mjs +683 -78
  9. package/esm2022/lib/components/rich-text-renderer/rich-text-renderer.errors.mjs +21 -0
  10. package/esm2022/lib/components/rich-text-renderer/rich-text-renderer.util.mjs +4 -133
  11. package/esm2022/lib/components/video/contentful-video.component.mjs +14 -39
  12. package/esm2022/lib/gql/asset.fragments.mjs +1 -17
  13. package/esm2022/lib/types/contentful.types.mjs +1 -1
  14. package/esm2022/lib/utils/contentful.util.mjs +1 -7
  15. package/fesm2022/ethlete-contentful.mjs +835 -484
  16. package/fesm2022/ethlete-contentful.mjs.map +1 -1
  17. package/lib/components/audio/contentful-audio.component.d.ts +6 -11
  18. package/lib/components/file/contentful-file.component.d.ts +4 -9
  19. package/lib/components/image/contentful-image.component.d.ts +19 -24
  20. package/lib/components/image/contentful-image.component.utils.d.ts +2 -2
  21. package/lib/components/rich-text-renderer/index.d.ts +0 -2
  22. package/lib/components/rich-text-renderer/rich-text-renderer.component.d.ts +160 -15
  23. package/lib/components/rich-text-renderer/rich-text-renderer.errors.d.ts +12 -0
  24. package/lib/components/rich-text-renderer/rich-text-renderer.util.d.ts +4 -17
  25. package/lib/components/video/contentful-video.component.d.ts +4 -9
  26. package/lib/gql/asset.fragments.d.ts +0 -1
  27. package/lib/types/contentful.types.d.ts +92 -48
  28. package/lib/utils/contentful.util.d.ts +1 -3
  29. package/package.json +4 -4
  30. package/esm2022/lib/components/rich-text-renderer/rich-text-renderer.constants.mjs +0 -3
  31. package/esm2022/lib/components/rich-text-renderer/rich-text-renderer.types.mjs +0 -2
  32. package/lib/components/rich-text-renderer/rich-text-renderer.constants.d.ts +0 -2
  33. package/lib/components/rich-text-renderer/rich-text-renderer.types.d.ts +0 -12
package/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # @ethlete/contentful
2
2
 
3
+ ## 3.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - [`ef63100`](https://github.com/ethlete-io/ethdk/commit/ef6310039b70c0321021a532b5818822518f47c6) Thanks [@TomTomB](https://github.com/TomTomB)! - The `rich-text-renderer` component was rebuild from scratch.
8
+
9
+ - The `richText` input was renamed to `content` and is required.
10
+ - The value of the `content` input should be a `ContentfulCollection` object. This can be directly fetched using the Contentful REST API. Do not use their GraphQL API for this purpose.
11
+ - A `richTextPath` input was added to allow for the customization of the path to the `richText` field in the `ContentfulCollection` object. It is required and should point to the start of the rich text object inside the `ContentfulCollection` object. The start contains a `nodeType` property with the value `document`.
12
+ - All custom components now can contain the following input signals. They are optional and will be used by the renderer to expose the entry's data.
13
+ - `fields` with your custom type defined inside Contentful.
14
+ - `includes` with a type of `ContentfulIncludeMap`. Using this map you can access linked entries and assets.
15
+ - `metadata` with a type of `ContentfulMetadata`
16
+ - `sys` with a type of `ContentfulSys`
17
+ - Inside the `ContentfulAudioComponent`, `ContentfulFileComponent`, `ContentfulImageComponent`, and `ContentfulVideoComponent` components, the `data` input was renamed to `asset`.
18
+ - If you supply custom components for the ones mentioned above, they must also contain an `asset` signal with a type of `ContentfulAsset`.
19
+ - Everything evolving around the `RICH_TEXT_RENDERER_COMPONENT_DATA` DI token was removed. The renderer now sets and updates inputs instead of using dependency injection.
20
+ - The `GQL_FRAGMENT_CONTENTFUL_IMAGE` constant has been removed without replacement.
21
+
3
22
  ## 2.1.2
4
23
 
5
24
  ### Patch Changes
package/esm2022/index.mjs CHANGED
@@ -8,4 +8,5 @@ export * from './lib/contentful.imports';
8
8
  export * from './lib/gql';
9
9
  export * from './lib/types';
10
10
  export * from './lib/utils';
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2F1ZGlvJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZmlsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2ltYWdlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcmljaC10ZXh0LXJlbmRlcmVyJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdmlkZW8nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRlbnRmdWwuaW1wb3J0cyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9ncWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdXRpbHMnO1xuIl19
11
+ // Burst cache
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxhQUFhLENBQUM7QUFFNUIsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYXVkaW8nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9maWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvaW1hZ2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9yaWNoLXRleHQtcmVuZGVyZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy92aWRlbyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udGVudGZ1bC5pbXBvcnRzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2dxbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91dGlscyc7XG5cbi8vIEJ1cnN0IGNhY2hlXG4iXX0=
@@ -1,53 +1,32 @@
1
1
  import { NgClass } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation, inject } from '@angular/core';
3
- import { RICH_TEXT_RENDERER_COMPONENT_DATA } from '../rich-text-renderer';
2
+ import { ChangeDetectionStrategy, Component, ViewEncapsulation, input } from '@angular/core';
4
3
  import * as i0 from "@angular/core";
5
4
  export class ContentfulAudioComponent {
6
5
  constructor() {
7
- this._richTextData = inject(RICH_TEXT_RENDERER_COMPONENT_DATA, { optional: true });
8
- this._data = null;
9
- this.audioClass = null;
10
- this.figureClass = null;
11
- this.figcaptionClass = null;
6
+ this.asset = input.required();
7
+ this.audioClass = input(null);
8
+ this.figureClass = input(null);
9
+ this.figcaptionClass = input(null);
12
10
  }
13
- get data() {
14
- return this._data;
15
- }
16
- set data(v) {
17
- if (v && !v.contentType) {
18
- this._data = null;
19
- console.warn('The provided asset is invalid', v);
20
- return;
21
- }
22
- if (v && !v.contentType.startsWith('audio/')) {
23
- throw new Error('The provided asset is not an audio');
24
- }
25
- this._data = v ?? null;
26
- }
27
- ngOnInit() {
28
- if (this._richTextData && !this.data) {
29
- this.data = this._richTextData;
30
- }
31
- }
32
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ContentfulAudioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
33
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: ContentfulAudioComponent, isStandalone: true, selector: "et-contentful-audio", inputs: { data: "data", audioClass: "audioClass", figureClass: "figureClass", figcaptionClass: "figcaptionClass" }, ngImport: i0, template: `
34
- @if (data) {
35
- <figure [ngClass]="figureClass">
36
- <figcaption [ngClass]="figcaptionClass">{{ data.title }}</figcaption>
37
- <audio [ngClass]="audioClass" controls src="{{ data.url }}"></audio>
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ContentfulAudioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: ContentfulAudioComponent, isStandalone: true, selector: "et-contentful-audio", inputs: { asset: { classPropertyName: "asset", publicName: "asset", isSignal: true, isRequired: true, transformFunction: null }, audioClass: { classPropertyName: "audioClass", publicName: "audioClass", isSignal: true, isRequired: false, transformFunction: null }, figureClass: { classPropertyName: "figureClass", publicName: "figureClass", isSignal: true, isRequired: false, transformFunction: null }, figcaptionClass: { classPropertyName: "figcaptionClass", publicName: "figcaptionClass", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
13
+ @if (asset(); as data) {
14
+ <figure [ngClass]="figureClass()">
15
+ <figcaption [ngClass]="figcaptionClass()">{{ data.fields.title }}</figcaption>
16
+ <audio [ngClass]="audioClass()" controls src="{{ data.fields.file.url }}"></audio>
38
17
  </figure>
39
18
  }
40
19
  `, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
41
20
  }
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ContentfulAudioComponent, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ContentfulAudioComponent, decorators: [{
43
22
  type: Component,
44
23
  args: [{
45
24
  selector: 'et-contentful-audio',
46
25
  template: `
47
- @if (data) {
48
- <figure [ngClass]="figureClass">
49
- <figcaption [ngClass]="figcaptionClass">{{ data.title }}</figcaption>
50
- <audio [ngClass]="audioClass" controls src="{{ data.url }}"></audio>
26
+ @if (asset(); as data) {
27
+ <figure [ngClass]="figureClass()">
28
+ <figcaption [ngClass]="figcaptionClass()">{{ data.fields.title }}</figcaption>
29
+ <audio [ngClass]="audioClass()" controls src="{{ data.fields.file.url }}"></audio>
51
30
  </figure>
52
31
  }
53
32
  `,
@@ -56,13 +35,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
56
35
  standalone: true,
57
36
  imports: [NgClass],
58
37
  }]
59
- }], propDecorators: { data: [{
60
- type: Input
61
- }], audioClass: [{
62
- type: Input
63
- }], figureClass: [{
64
- type: Input
65
- }], figcaptionClass: [{
66
- type: Input
67
- }] } });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC1hdWRpby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL2F1ZGlvL2NvbnRlbnRmdWwtYXVkaW8uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHN0csT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBaUIxRSxNQUFNLE9BQU8sd0JBQXdCO0lBZnJDO1FBZ0JVLGtCQUFhLEdBQUcsTUFBTSxDQUFrQixpQ0FBaUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBcUIvRixVQUFLLEdBQTJCLElBQUksQ0FBQztRQUc3QyxlQUFVLEdBQWdCLElBQUksQ0FBQztRQUcvQixnQkFBVyxHQUFnQixJQUFJLENBQUM7UUFHaEMsb0JBQWUsR0FBZ0IsSUFBSSxDQUFDO0tBT3JDO0lBbkNDLElBQ0ksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBSSxJQUFJLENBQUMsQ0FBcUM7UUFDNUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFFbEIsT0FBTyxDQUFDLElBQUksQ0FBQywrQkFBK0IsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUVqRCxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUM3QyxNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUVELElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQztJQUN6QixDQUFDO0lBWUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDakMsQ0FBQztJQUNILENBQUM7OEdBckNVLHdCQUF3QjtrR0FBeEIsd0JBQXdCLG1NQWJ6Qjs7Ozs7OztHQU9ULDREQUlTLE9BQU87OzJGQUVOLHdCQUF3QjtrQkFmcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixRQUFRLEVBQUU7Ozs7Ozs7R0FPVDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7aUJBQ25COzhCQUtLLElBQUk7c0JBRFAsS0FBSztnQkFzQk4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixlQUFlO3NCQURkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nQ2xhc3NUeXBlIH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5pbXBvcnQgeyBDb250ZW50ZnVsQXNzZXQgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBSSUNIX1RFWFRfUkVOREVSRVJfQ09NUE9ORU5UX0RBVEEgfSBmcm9tICcuLi9yaWNoLXRleHQtcmVuZGVyZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdldC1jb250ZW50ZnVsLWF1ZGlvJyxcbiAgdGVtcGxhdGU6IGBcbiAgICBAaWYgKGRhdGEpIHtcbiAgICAgIDxmaWd1cmUgW25nQ2xhc3NdPVwiZmlndXJlQ2xhc3NcIj5cbiAgICAgICAgPGZpZ2NhcHRpb24gW25nQ2xhc3NdPVwiZmlnY2FwdGlvbkNsYXNzXCI+e3sgZGF0YS50aXRsZSB9fTwvZmlnY2FwdGlvbj5cbiAgICAgICAgPGF1ZGlvIFtuZ0NsYXNzXT1cImF1ZGlvQ2xhc3NcIiBjb250cm9scyBzcmM9XCJ7eyBkYXRhLnVybCB9fVwiPjwvYXVkaW8+XG4gICAgICA8L2ZpZ3VyZT5cbiAgICB9XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdDbGFzc10sXG59KVxuZXhwb3J0IGNsYXNzIENvbnRlbnRmdWxBdWRpb0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgX3JpY2hUZXh0RGF0YSA9IGluamVjdDxDb250ZW50ZnVsQXNzZXQ+KFJJQ0hfVEVYVF9SRU5ERVJFUl9DT01QT05FTlRfREFUQSwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICBASW5wdXQoKVxuICBnZXQgZGF0YSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YTtcbiAgfVxuICBzZXQgZGF0YSh2OiBDb250ZW50ZnVsQXNzZXQgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKHYgJiYgIXYuY29udGVudFR5cGUpIHtcbiAgICAgIHRoaXMuX2RhdGEgPSBudWxsO1xuXG4gICAgICBjb25zb2xlLndhcm4oJ1RoZSBwcm92aWRlZCBhc3NldCBpcyBpbnZhbGlkJywgdik7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodiAmJiAhdi5jb250ZW50VHlwZS5zdGFydHNXaXRoKCdhdWRpby8nKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgcHJvdmlkZWQgYXNzZXQgaXMgbm90IGFuIGF1ZGlvJyk7XG4gICAgfVxuXG4gICAgdGhpcy5fZGF0YSA9IHYgPz8gbnVsbDtcbiAgfVxuICBwcml2YXRlIF9kYXRhOiBDb250ZW50ZnVsQXNzZXQgfCBudWxsID0gbnVsbDtcblxuICBASW5wdXQoKVxuICBhdWRpb0NsYXNzOiBOZ0NsYXNzVHlwZSA9IG51bGw7XG5cbiAgQElucHV0KClcbiAgZmlndXJlQ2xhc3M6IE5nQ2xhc3NUeXBlID0gbnVsbDtcblxuICBASW5wdXQoKVxuICBmaWdjYXB0aW9uQ2xhc3M6IE5nQ2xhc3NUeXBlID0gbnVsbDtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fcmljaFRleHREYXRhICYmICF0aGlzLmRhdGEpIHtcbiAgICAgIHRoaXMuZGF0YSA9IHRoaXMuX3JpY2hUZXh0RGF0YTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
38
+ }] });
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC1hdWRpby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL2F1ZGlvL2NvbnRlbnRmdWwtYXVkaW8uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFtQjdGLE1BQU0sT0FBTyx3QkFBd0I7SUFmckM7UUFnQkUsVUFBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXNDLENBQUM7UUFDN0QsZUFBVSxHQUFHLEtBQUssQ0FBYyxJQUFJLENBQUMsQ0FBQztRQUN0QyxnQkFBVyxHQUFHLEtBQUssQ0FBYyxJQUFJLENBQUMsQ0FBQztRQUN2QyxvQkFBZSxHQUFHLEtBQUssQ0FBYyxJQUFJLENBQUMsQ0FBQztLQUM1Qzs4R0FMWSx3QkFBd0I7a0dBQXhCLHdCQUF3Qix5bkJBYnpCOzs7Ozs7O0dBT1QsNERBSVMsT0FBTzs7MkZBRU4sd0JBQXdCO2tCQWZwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFFBQVEsRUFBRTs7Ozs7OztHQU9UO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uLCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdDbGFzc1R5cGUgfSBmcm9tICdAZXRobGV0ZS9jb3JlJztcbmltcG9ydCB7IENvbnRlbnRmdWxBc3NldCB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZXQtY29udGVudGZ1bC1hdWRpbycsXG4gIHRlbXBsYXRlOiBgXG4gICAgQGlmIChhc3NldCgpOyBhcyBkYXRhKSB7XG4gICAgICA8ZmlndXJlIFtuZ0NsYXNzXT1cImZpZ3VyZUNsYXNzKClcIj5cbiAgICAgICAgPGZpZ2NhcHRpb24gW25nQ2xhc3NdPVwiZmlnY2FwdGlvbkNsYXNzKClcIj57eyBkYXRhLmZpZWxkcy50aXRsZSB9fTwvZmlnY2FwdGlvbj5cbiAgICAgICAgPGF1ZGlvIFtuZ0NsYXNzXT1cImF1ZGlvQ2xhc3MoKVwiIGNvbnRyb2xzIHNyYz1cInt7IGRhdGEuZmllbGRzLmZpbGUudXJsIH19XCI+PC9hdWRpbz5cbiAgICAgIDwvZmlndXJlPlxuICAgIH1cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0NsYXNzXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29udGVudGZ1bEF1ZGlvQ29tcG9uZW50IHtcbiAgYXNzZXQgPSBpbnB1dC5yZXF1aXJlZDxDb250ZW50ZnVsQXNzZXQgfCBudWxsIHwgdW5kZWZpbmVkPigpO1xuICBhdWRpb0NsYXNzID0gaW5wdXQ8TmdDbGFzc1R5cGU+KG51bGwpO1xuICBmaWd1cmVDbGFzcyA9IGlucHV0PE5nQ2xhc3NUeXBlPihudWxsKTtcbiAgZmlnY2FwdGlvbkNsYXNzID0gaW5wdXQ8TmdDbGFzc1R5cGU+KG51bGwpO1xufVxuIl19
@@ -1,46 +1,28 @@
1
1
  import { NgClass } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation, inject } from '@angular/core';
3
- import { RICH_TEXT_RENDERER_COMPONENT_DATA } from '../rich-text-renderer';
2
+ import { ChangeDetectionStrategy, Component, ViewEncapsulation, input } from '@angular/core';
4
3
  import * as i0 from "@angular/core";
5
4
  export class ContentfulFileComponent {
6
5
  constructor() {
7
- this._richTextData = inject(RICH_TEXT_RENDERER_COMPONENT_DATA, { optional: true });
8
- this._data = null;
9
- this.fileClass = null;
6
+ this.asset = input.required();
7
+ this.fileClass = input(null);
10
8
  }
11
- get data() {
12
- return this._data;
13
- }
14
- set data(v) {
15
- if (v && !v.contentType) {
16
- this._data = null;
17
- console.warn('The provided asset is invalid', v);
18
- return;
19
- }
20
- this._data = v ?? null;
21
- }
22
- ngOnInit() {
23
- if (this._richTextData && !this.data) {
24
- this.data = this._richTextData;
25
- }
26
- }
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ContentfulFileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: ContentfulFileComponent, isStandalone: true, selector: "et-contentful-file", inputs: { data: "data", fileClass: "fileClass" }, ngImport: i0, template: `
29
- @if (data) {
30
- <a [href]="data.url" [ngClass]="fileClass" class="underline" target="_blank">
31
- {{ data.title }} ({{ data.size }} Bytes)
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ContentfulFileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: ContentfulFileComponent, isStandalone: true, selector: "et-contentful-file", inputs: { asset: { classPropertyName: "asset", publicName: "asset", isSignal: true, isRequired: true, transformFunction: null }, fileClass: { classPropertyName: "fileClass", publicName: "fileClass", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
11
+ @if (asset(); as data) {
12
+ <a [href]="data.fields.file.url" [ngClass]="fileClass()" class="underline" target="_blank">
13
+ {{ data.fields.title }} ({{ data.fields.file.details.size }} Bytes)
32
14
  </a>
33
15
  }
34
16
  `, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
35
17
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ContentfulFileComponent, decorators: [{
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ContentfulFileComponent, decorators: [{
37
19
  type: Component,
38
20
  args: [{
39
21
  selector: 'et-contentful-file',
40
22
  template: `
41
- @if (data) {
42
- <a [href]="data.url" [ngClass]="fileClass" class="underline" target="_blank">
43
- {{ data.title }} ({{ data.size }} Bytes)
23
+ @if (asset(); as data) {
24
+ <a [href]="data.fields.file.url" [ngClass]="fileClass()" class="underline" target="_blank">
25
+ {{ data.fields.title }} ({{ data.fields.file.details.size }} Bytes)
44
26
  </a>
45
27
  }
46
28
  `,
@@ -49,9 +31,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
49
31
  standalone: true,
50
32
  imports: [NgClass],
51
33
  }]
52
- }], propDecorators: { data: [{
53
- type: Input
54
- }], fileClass: [{
55
- type: Input
56
- }] } });
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC1maWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29udGVudGZ1bC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS9jb250ZW50ZnVsLWZpbGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHN0csT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBZ0IxRSxNQUFNLE9BQU8sdUJBQXVCO0lBZHBDO1FBZVUsa0JBQWEsR0FBRyxNQUFNLENBQWtCLGlDQUFpQyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFpQi9GLFVBQUssR0FBMkIsSUFBSSxDQUFDO1FBRzdDLGNBQVMsR0FBZ0IsSUFBSSxDQUFDO0tBTy9CO0lBekJDLElBQ0ksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBSSxJQUFJLENBQUMsQ0FBcUM7UUFDNUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFFbEIsT0FBTyxDQUFDLElBQUksQ0FBQywrQkFBK0IsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUVqRCxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQztJQUN6QixDQUFDO0lBTUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDakMsQ0FBQztJQUNILENBQUM7OEdBM0JVLHVCQUF1QjtrR0FBdkIsdUJBQXVCLGdJQVp4Qjs7Ozs7O0dBTVQsNERBSVMsT0FBTzs7MkZBRU4sdUJBQXVCO2tCQWRuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFFBQVEsRUFBRTs7Ozs7O0dBTVQ7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO2lCQUNuQjs4QkFLSyxJQUFJO3NCQURQLEtBQUs7Z0JBa0JOLFNBQVM7c0JBRFIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24sIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdDbGFzc1R5cGUgfSBmcm9tICdAZXRobGV0ZS9jb3JlJztcbmltcG9ydCB7IENvbnRlbnRmdWxBc3NldCB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IFJJQ0hfVEVYVF9SRU5ERVJFUl9DT01QT05FTlRfREFUQSB9IGZyb20gJy4uL3JpY2gtdGV4dC1yZW5kZXJlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2V0LWNvbnRlbnRmdWwtZmlsZScsXG4gIHRlbXBsYXRlOiBgXG4gICAgQGlmIChkYXRhKSB7XG4gICAgICA8YSBbaHJlZl09XCJkYXRhLnVybFwiIFtuZ0NsYXNzXT1cImZpbGVDbGFzc1wiIGNsYXNzPVwidW5kZXJsaW5lXCIgdGFyZ2V0PVwiX2JsYW5rXCI+XG4gICAgICAgIHt7IGRhdGEudGl0bGUgfX0gKHt7IGRhdGEuc2l6ZSB9fSBCeXRlcylcbiAgICAgIDwvYT5cbiAgICB9XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdDbGFzc10sXG59KVxuZXhwb3J0IGNsYXNzIENvbnRlbnRmdWxGaWxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJpdmF0ZSBfcmljaFRleHREYXRhID0gaW5qZWN0PENvbnRlbnRmdWxBc3NldD4oUklDSF9URVhUX1JFTkRFUkVSX0NPTVBPTkVOVF9EQVRBLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBkYXRhKCkge1xuICAgIHJldHVybiB0aGlzLl9kYXRhO1xuICB9XG4gIHNldCBkYXRhKHY6IENvbnRlbnRmdWxBc3NldCB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAodiAmJiAhdi5jb250ZW50VHlwZSkge1xuICAgICAgdGhpcy5fZGF0YSA9IG51bGw7XG5cbiAgICAgIGNvbnNvbGUud2FybignVGhlIHByb3ZpZGVkIGFzc2V0IGlzIGludmFsaWQnLCB2KTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2RhdGEgPSB2ID8/IG51bGw7XG4gIH1cbiAgcHJpdmF0ZSBfZGF0YTogQ29udGVudGZ1bEFzc2V0IHwgbnVsbCA9IG51bGw7XG5cbiAgQElucHV0KClcbiAgZmlsZUNsYXNzOiBOZ0NsYXNzVHlwZSA9IG51bGw7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3JpY2hUZXh0RGF0YSAmJiAhdGhpcy5kYXRhKSB7XG4gICAgICB0aGlzLmRhdGEgPSB0aGlzLl9yaWNoVGV4dERhdGE7XG4gICAgfVxuICB9XG59XG4iXX0=
34
+ }] });
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC1maWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29udGVudGZ1bC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS9jb250ZW50ZnVsLWZpbGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFrQjdGLE1BQU0sT0FBTyx1QkFBdUI7SUFkcEM7UUFlRSxVQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBc0MsQ0FBQztRQUM3RCxjQUFTLEdBQUcsS0FBSyxDQUFjLElBQUksQ0FBQyxDQUFDO0tBQ3RDOzhHQUhZLHVCQUF1QjtrR0FBdkIsdUJBQXVCLHFWQVp4Qjs7Ozs7O0dBTVQsNERBSVMsT0FBTzs7MkZBRU4sdUJBQXVCO2tCQWRuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFFBQVEsRUFBRTs7Ozs7O0dBTVQ7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24sIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0NsYXNzVHlwZSB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgQ29udGVudGZ1bEFzc2V0IH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdldC1jb250ZW50ZnVsLWZpbGUnLFxuICB0ZW1wbGF0ZTogYFxuICAgIEBpZiAoYXNzZXQoKTsgYXMgZGF0YSkge1xuICAgICAgPGEgW2hyZWZdPVwiZGF0YS5maWVsZHMuZmlsZS51cmxcIiBbbmdDbGFzc109XCJmaWxlQ2xhc3MoKVwiIGNsYXNzPVwidW5kZXJsaW5lXCIgdGFyZ2V0PVwiX2JsYW5rXCI+XG4gICAgICAgIHt7IGRhdGEuZmllbGRzLnRpdGxlIH19ICh7eyBkYXRhLmZpZWxkcy5maWxlLmRldGFpbHMuc2l6ZSB9fSBCeXRlcylcbiAgICAgIDwvYT5cbiAgICB9XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdDbGFzc10sXG59KVxuZXhwb3J0IGNsYXNzIENvbnRlbnRmdWxGaWxlQ29tcG9uZW50IHtcbiAgYXNzZXQgPSBpbnB1dC5yZXF1aXJlZDxDb250ZW50ZnVsQXNzZXQgfCBudWxsIHwgdW5kZWZpbmVkPigpO1xuICBmaWxlQ2xhc3MgPSBpbnB1dDxOZ0NsYXNzVHlwZT4obnVsbCk7XG59XG4iXX0=
@@ -1,136 +1,87 @@
1
- import { NgClass, NgOptimizedImage } from '@angular/common';
2
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, ViewEncapsulation, inject, } from '@angular/core';
3
- import { PictureComponent, PictureDataDirective } from '@ethlete/cdk';
4
- import { isContentfulImage } from '../../utils';
5
- import { RICH_TEXT_RENDERER_COMPONENT_DATA } from '../rich-text-renderer';
1
+ import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, inject, input } from '@angular/core';
2
+ import { PictureComponent, normalizePictureSizes } from '@ethlete/cdk';
3
+ import { CONTENTFUL_CONFIG } from '../../constants';
6
4
  import { generateContentfulImageSources, generateDefaultContentfulImageSource, } from './contentful-image.component.utils';
7
5
  import * as i0 from "@angular/core";
8
- import * as i1 from "@ethlete/cdk";
9
6
  export class ContentfulImageComponent {
10
7
  constructor() {
11
- this._richTextData = inject(RICH_TEXT_RENDERER_COMPONENT_DATA, {
12
- optional: true,
8
+ this._contentfulConfig = inject(CONTENTFUL_CONFIG);
9
+ this.asset = input.required();
10
+ this.backgroundColor = input(null);
11
+ this.srcsetSizes = input(this._contentfulConfig.imageOptions.srcsetSizes);
12
+ this.quality = input(null);
13
+ this.focusArea = input(null);
14
+ this.resizeBehavior = input(null);
15
+ this.hasPriority = input(false);
16
+ this.imgClass = input(null);
17
+ this.figureClass = input(null);
18
+ this.figcaptionClass = input(null);
19
+ this.pictureClass = input(null);
20
+ this.sizes = input(normalizePictureSizes(this._contentfulConfig.imageOptions.sizes), {
21
+ transform: (v) => normalizePictureSizes(v),
22
+ });
23
+ this._sources = computed(() => {
24
+ const asset = this.asset();
25
+ const backgroundColor = this.backgroundColor();
26
+ const srcsetSizes = this.srcsetSizes();
27
+ const quality = this.quality();
28
+ const focusArea = this.focusArea();
29
+ const resizeBehavior = this.resizeBehavior();
30
+ if (!asset) {
31
+ return [];
32
+ }
33
+ return generateContentfulImageSources(asset, srcsetSizes, backgroundColor, quality, focusArea, resizeBehavior);
34
+ });
35
+ this._defaultSrc = computed(() => {
36
+ const asset = this.asset();
37
+ return asset ? generateDefaultContentfulImageSource(asset) : null;
13
38
  });
14
- this.pictureData = inject(PictureDataDirective);
15
- this._cdr = inject(ChangeDetectorRef);
16
- this._data = null;
17
- this._sizes = [];
18
- this._srcsetSizes = [];
19
- this._backgroundColor = null;
20
- this.sources = [];
21
- }
22
- get data() {
23
- return this._data;
24
- }
25
- set data(v) {
26
- const assetData = isContentfulImage(v) ? v.asset : v;
27
- const imageData = isContentfulImage(v) ? v : null;
28
- if (assetData && !assetData.contentType) {
29
- this._data = null;
30
- console.warn('The provided asset is invalid', v);
31
- return;
32
- }
33
- if (assetData && !assetData.contentType.startsWith('image/')) {
34
- throw new Error('The provided asset is not an image');
35
- }
36
- this._data = v ?? null;
37
- this.pictureData.defaultSrc = assetData ? generateDefaultContentfulImageSource(assetData) : null;
38
- this.pictureData.alt = imageData?.alt ?? assetData?.description ?? null;
39
- this.pictureData.width = assetData?.width ?? null;
40
- this.pictureData.height = assetData?.height ?? null;
41
- this.pictureData.figcaption = imageData?.caption ?? null;
42
- this.updateSizes();
43
- }
44
- get sizes() {
45
- return this._sizes;
46
- }
47
- set sizes(v) {
48
- this._sizes = v;
49
- this.pictureData.sizes = this.sizes?.join(', ') ?? null;
50
- }
51
- get srcsetSizes() {
52
- return this._srcsetSizes;
53
- }
54
- set srcsetSizes(v) {
55
- this._srcsetSizes = v;
56
- this.updateSizes();
57
- }
58
- get backgroundColor() {
59
- return this._backgroundColor;
60
- }
61
- set backgroundColor(v) {
62
- this._backgroundColor = v;
63
- this.updateSizes();
64
- }
65
- ngOnInit() {
66
- if (this._richTextData && !this.data) {
67
- this.data = this._richTextData;
68
- }
69
- }
70
- updateSizes() {
71
- this.sources = this._data ? generateContentfulImageSources(this._data, this.srcsetSizes, this.backgroundColor) : [];
72
- this._cdr.markForCheck();
73
39
  }
74
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ContentfulImageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
75
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: ContentfulImageComponent, isStandalone: true, selector: "et-contentful-image", inputs: { data: "data", sizes: "sizes", srcsetSizes: "srcsetSizes", backgroundColor: "backgroundColor" }, host: { classAttribute: "et-contentful-image" }, hostDirectives: [{ directive: i1.PictureDataDirective, inputs: ["imgClass", "imgClass", "hasPriority", "hasPriority", "figureClass", "figureClass", "pictureClass", "pictureClass", "figcaptionClass", "figcaptionClass"] }], ngImport: i0, template: `
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ContentfulImageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.3", type: ContentfulImageComponent, isStandalone: true, selector: "et-contentful-image", inputs: { asset: { classPropertyName: "asset", publicName: "asset", isSignal: true, isRequired: true, transformFunction: null }, backgroundColor: { classPropertyName: "backgroundColor", publicName: "backgroundColor", isSignal: true, isRequired: false, transformFunction: null }, srcsetSizes: { classPropertyName: "srcsetSizes", publicName: "srcsetSizes", isSignal: true, isRequired: false, transformFunction: null }, quality: { classPropertyName: "quality", publicName: "quality", isSignal: true, isRequired: false, transformFunction: null }, focusArea: { classPropertyName: "focusArea", publicName: "focusArea", isSignal: true, isRequired: false, transformFunction: null }, resizeBehavior: { classPropertyName: "resizeBehavior", publicName: "resizeBehavior", isSignal: true, isRequired: false, transformFunction: null }, hasPriority: { classPropertyName: "hasPriority", publicName: "hasPriority", isSignal: true, isRequired: false, transformFunction: null }, imgClass: { classPropertyName: "imgClass", publicName: "imgClass", isSignal: true, isRequired: false, transformFunction: null }, figureClass: { classPropertyName: "figureClass", publicName: "figureClass", isSignal: true, isRequired: false, transformFunction: null }, figcaptionClass: { classPropertyName: "figcaptionClass", publicName: "figcaptionClass", isSignal: true, isRequired: false, transformFunction: null }, pictureClass: { classPropertyName: "pictureClass", publicName: "pictureClass", isSignal: true, isRequired: false, transformFunction: null }, sizes: { classPropertyName: "sizes", publicName: "sizes", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "et-contentful-image" }, ngImport: i0, template: `
76
42
  <et-picture
77
- [imgClass]="pictureData.imgClass"
78
- [hasPriority]="pictureData.hasPriority"
79
- [figureClass]="pictureData.figureClass"
80
- [pictureClass]="pictureData.pictureClass"
81
- [figcaptionClass]="pictureData.figcaptionClass"
82
- [defaultSrc]="pictureData.defaultSrc"
83
- [alt]="pictureData.alt"
84
- [figcaption]="pictureData.figcaption"
85
- [width]="pictureData.width"
86
- [height]="pictureData.height"
87
- [sizes]="pictureData.sizes"
88
- [sources]="sources"
43
+ [imgClass]="imgClass()"
44
+ [hasPriority]="hasPriority()"
45
+ [figureClass]="figureClass()"
46
+ [pictureClass]="pictureClass()"
47
+ [figcaptionClass]="figcaptionClass()"
48
+ [defaultSrc]="_defaultSrc()"
49
+ [alt]="asset()?.fields?.title ?? null"
50
+ [figcaption]="asset()?.fields?.description ?? null"
51
+ [width]="asset()?.fields?.file?.details?.image?.width ?? null"
52
+ [height]="asset()?.fields?.file?.details?.image?.height ?? null"
53
+ [sizes]="sizes()"
54
+ [sources]="_sources()"
89
55
  />
90
- `, isInline: true, dependencies: [{ kind: "component", type: PictureComponent, selector: "et-picture", inputs: ["sources"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
56
+ `, isInline: true, dependencies: [{ kind: "component", type: PictureComponent, selector: "et-picture", inputs: ["sources", "hasPriority", "imgClass", "figureClass", "figcaptionClass", "pictureClass", "defaultSrc", "alt", "figcaption", "width", "height", "sizes"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
91
57
  }
92
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ContentfulImageComponent, decorators: [{
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ContentfulImageComponent, decorators: [{
93
59
  type: Component,
94
60
  args: [{
95
61
  selector: 'et-contentful-image',
96
62
  template: `
97
63
  <et-picture
98
- [imgClass]="pictureData.imgClass"
99
- [hasPriority]="pictureData.hasPriority"
100
- [figureClass]="pictureData.figureClass"
101
- [pictureClass]="pictureData.pictureClass"
102
- [figcaptionClass]="pictureData.figcaptionClass"
103
- [defaultSrc]="pictureData.defaultSrc"
104
- [alt]="pictureData.alt"
105
- [figcaption]="pictureData.figcaption"
106
- [width]="pictureData.width"
107
- [height]="pictureData.height"
108
- [sizes]="pictureData.sizes"
109
- [sources]="sources"
64
+ [imgClass]="imgClass()"
65
+ [hasPriority]="hasPriority()"
66
+ [figureClass]="figureClass()"
67
+ [pictureClass]="pictureClass()"
68
+ [figcaptionClass]="figcaptionClass()"
69
+ [defaultSrc]="_defaultSrc()"
70
+ [alt]="asset()?.fields?.title ?? null"
71
+ [figcaption]="asset()?.fields?.description ?? null"
72
+ [width]="asset()?.fields?.file?.details?.image?.width ?? null"
73
+ [height]="asset()?.fields?.file?.details?.image?.height ?? null"
74
+ [sizes]="sizes()"
75
+ [sources]="_sources()"
110
76
  />
111
77
  `,
112
78
  changeDetection: ChangeDetectionStrategy.OnPush,
113
79
  encapsulation: ViewEncapsulation.None,
114
80
  standalone: true,
115
- imports: [NgClass, NgOptimizedImage, PictureComponent],
116
- hostDirectives: [
117
- {
118
- directive: PictureDataDirective,
119
- // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
120
- inputs: ['imgClass', 'hasPriority', 'figureClass', 'pictureClass', 'figcaptionClass'],
121
- },
122
- ],
81
+ imports: [PictureComponent],
123
82
  host: {
124
83
  class: 'et-contentful-image',
125
84
  },
126
85
  }]
127
- }], propDecorators: { data: [{
128
- type: Input
129
- }], sizes: [{
130
- type: Input
131
- }], srcsetSizes: [{
132
- type: Input
133
- }], backgroundColor: [{
134
- type: Input
135
- }] } });
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC1pbWFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL2ltYWdlL2NvbnRlbnRmdWwtaW1hZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsS0FBSyxFQUVMLGlCQUFpQixFQUNqQixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFpQixNQUFNLGNBQWMsQ0FBQztBQUVyRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDaEQsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUUsT0FBTyxFQUNMLDhCQUE4QixFQUM5QixvQ0FBb0MsR0FDckMsTUFBTSxvQ0FBb0MsQ0FBQzs7O0FBbUM1QyxNQUFNLE9BQU8sd0JBQXdCO0lBakNyQztRQWtDVSxrQkFBYSxHQUFHLE1BQU0sQ0FBb0MsaUNBQWlDLEVBQUU7WUFDbkcsUUFBUSxFQUFFLElBQUk7U0FDZixDQUFDLENBQUM7UUFFZ0IsZ0JBQVcsR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUNyRCxTQUFJLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUErQmxDLFVBQUssR0FBNkMsSUFBSSxDQUFDO1FBVXZELFdBQU0sR0FBYSxFQUFFLENBQUM7UUFVdEIsaUJBQVksR0FBYSxFQUFFLENBQUM7UUFVNUIscUJBQWdCLEdBQWtCLElBQUksQ0FBQztRQUVyQyxZQUFPLEdBQW9CLEVBQUUsQ0FBQztLQWF6QztJQTFFQyxJ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QUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFFcEgsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMzQixDQUFDOzhHQWpGVSx3QkFBd0I7a0dBQXhCLHdCQUF3Qix3Y0EvQnpCOzs7Ozs7Ozs7Ozs7Ozs7R0FlVCw0REFJb0MsZ0JBQWdCOzsyRkFZMUMsd0JBQXdCO2tCQWpDcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7OztHQWVUO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQztvQkFDdEQsY0FBYyxFQUFFO3dCQUNkOzRCQUNFLFNBQVMsRUFBRSxvQkFBb0I7NEJBQy9CLHVFQUF1RTs0QkFDdkUsTUFBTSxFQUFFLENBQUMsVUFBVSxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixDQUFDO3lCQUN0RjtxQkFDRjtvQkFDRCxJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLHFCQUFxQjtxQkFDN0I7aUJBQ0Y7OEJBVUssSUFBSTtzQkFEUCxLQUFLO2dCQWdDRixLQUFLO3NCQURSLEtBQUs7Z0JBV0YsV0FBVztzQkFEZCxLQUFLO2dCQVdGLGVBQWU7c0JBRGxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzLCBOZ09wdGltaXplZEltYWdlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBpY3R1cmVDb21wb25lbnQsIFBpY3R1cmVEYXRhRGlyZWN0aXZlLCBQaWN0dXJlU291cmNlIH0gZnJvbSAnQGV0aGxldGUvY2RrJztcbmltcG9ydCB7IENvbnRlbnRmdWxBc3NldCwgQ29udGVudGZ1bEltYWdlIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgaXNDb250ZW50ZnVsSW1hZ2UgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBSSUNIX1RFWFRfUkVOREVSRVJfQ09NUE9ORU5UX0RBVEEgfSBmcm9tICcuLi9yaWNoLXRleHQtcmVuZGVyZXInO1xuaW1wb3J0IHtcbiAgZ2VuZXJhdGVDb250ZW50ZnVsSW1hZ2VTb3VyY2VzLFxuICBnZW5lcmF0ZURlZmF1bHRDb250ZW50ZnVsSW1hZ2VTb3VyY2UsXG59IGZyb20gJy4vY29udGVudGZ1bC1pbWFnZS5jb21wb25lbnQudXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdldC1jb250ZW50ZnVsLWltYWdlJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZXQtcGljdHVyZVxuICAgICAgW2ltZ0NsYXNzXT1cInBpY3R1cmVEYXRhLmltZ0NsYXNzXCJcbiAgICAgIFtoYXNQcmlvcml0eV09XCJwaWN0dXJlRGF0YS5oYXNQcmlvcml0eVwiXG4gICAgICBbZmlndXJlQ2xhc3NdPVwicGljdHVyZURhdGEuZmlndXJlQ2xhc3NcIlxuICAgICAgW3BpY3R1cmVDbGFzc109XCJwaWN0dXJlRGF0YS5waWN0dXJlQ2xhc3NcIlxuICAgICAgW2ZpZ2NhcHRpb25DbGFzc109XCJwaWN0dXJlRGF0YS5maWdjYXB0aW9uQ2xhc3NcIlxuICAgICAgW2RlZmF1bHRTcmNdPVwicGljdHVyZURhdGEuZGVmYXVsdFNyY1wiXG4gICAgICBbYWx0XT1cInBpY3R1cmVEYXRhLmFsdFwiXG4gICAgICBbZmlnY2FwdGlvbl09XCJwaWN0dXJlRGF0YS5maWdjYXB0aW9uXCJcbiAgICAgIFt3aWR0aF09XCJwaWN0dXJlRGF0YS53aWR0aFwiXG4gICAgICBbaGVpZ2h0XT1cInBpY3R1cmVEYXRhLmhlaWdodFwiXG4gICAgICBbc2l6ZXNdPVwicGljdHVyZURhdGEuc2l6ZXNcIlxuICAgICAgW3NvdXJjZXNdPVwic291cmNlc1wiXG4gICAgLz5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0NsYXNzLCBOZ09wdGltaXplZEltYWdlLCBQaWN0dXJlQ29tcG9uZW50XSxcbiAgaG9zdERpcmVjdGl2ZXM6IFtcbiAgICB7XG4gICAgICBkaXJlY3RpdmU6IFBpY3R1cmVEYXRhRGlyZWN0aXZlLFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dHMtbWV0YWRhdGEtcHJvcGVydHlcbiAgICAgIGlucHV0czogWydpbWdDbGFzcycsICdoYXNQcmlvcml0eScsICdmaWd1cmVDbGFzcycsICdwaWN0dXJlQ2xhc3MnLCAnZmlnY2FwdGlvbkNsYXNzJ10sXG4gICAgfSxcbiAgXSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZXQtY29udGVudGZ1bC1pbWFnZScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIENvbnRlbnRmdWxJbWFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgX3JpY2hUZXh0RGF0YSA9IGluamVjdDxDb250ZW50ZnVsQXNzZXQgfCBDb250ZW50ZnVsSW1hZ2U+KFJJQ0hfVEVYVF9SRU5ERVJFUl9DT01QT05FTlRfREFUQSwge1xuICAgIG9wdGlvbmFsOiB0cnVlLFxuICB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcGljdHVyZURhdGEgPSBpbmplY3QoUGljdHVyZURhdGFEaXJlY3RpdmUpO1xuICByZWFkb25seSBfY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICBASW5wdXQoKVxuICBnZXQgZGF0YSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YTtcbiAgfVxuICBzZXQgZGF0YSh2OiBDb250ZW50ZnVsQXNzZXQgfCBDb250ZW50ZnVsSW1hZ2UgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgY29uc3QgYXNzZXREYXRhID0gaXNDb250ZW50ZnVsSW1hZ2UodikgPyB2LmFzc2V0IDogdjtcbiAgICBjb25zdCBpbWFnZURhdGEgPSBpc0NvbnRlbnRmdWxJbWFnZSh2KSA/IHYgOiBudWxsO1xuXG4gICAgaWYgKGFzc2V0RGF0YSAmJiAhYXNzZXREYXRhLmNvbnRlbnRUeXBlKSB7XG4gICAgICB0aGlzLl9kYXRhID0gbnVsbDtcblxuICAgICAgY29uc29sZS53YXJuKCdUaGUgcHJvdmlkZWQgYXNzZXQgaXMgaW52YWxpZCcsIHYpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGFzc2V0RGF0YSAmJiAhYXNzZXREYXRhLmNvbnRlbnRUeXBlLnN0YXJ0c1dpdGgoJ2ltYWdlLycpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBwcm92aWRlZCBhc3NldCBpcyBub3QgYW4gaW1hZ2UnKTtcbiAgICB9XG5cbiAgICB0aGlzLl9kYXRhID0gdiA/PyBudWxsO1xuICAgIHRoaXMucGljdHVyZURhdGEuZGVmYXVsdFNyYyA9IGFzc2V0RGF0YSA/IGdlbmVyYXRlRGVmYXVsdENvbnRlbnRmdWxJbWFnZVNvdXJjZShhc3NldERhdGEpIDogbnVsbDtcbiAgICB0aGlzLnBpY3R1cmVEYXRhLmFsdCA9IGltYWdlRGF0YT8uYWx0ID8/IGFzc2V0RGF0YT8uZGVzY3JpcHRpb24gPz8gbnVsbDtcbiAgICB0aGlzLnBpY3R1cmVEYXRhLndpZHRoID0gYXNzZXREYXRhPy53aWR0aCA/PyBudWxsO1xuICAgIHRoaXMucGljdHVyZURhdGEuaGVpZ2h0ID0gYXNzZXREYXRhPy5oZWlnaHQgPz8gbnVsbDtcbiAgICB0aGlzLnBpY3R1cmVEYXRhLmZpZ2NhcHRpb24gPSBpbWFnZURhdGE/LmNhcHRpb24gPz8gbnVsbDtcblxuICAgIHRoaXMudXBkYXRlU2l6ZXMoKTtcbiAgfVxuICBwcml2YXRlIF9kYXRhOiBDb250ZW50ZnVsQXNzZXQgfCBDb250ZW50ZnVsSW1hZ2UgfCBudWxsID0gbnVsbDtcblxuICBASW5wdXQoKVxuICBnZXQgc2l6ZXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLl9zaXplcztcbiAgfVxuICBzZXQgc2l6ZXModjogc3RyaW5nW10pIHtcbiAgICB0aGlzLl9zaXplcyA9IHY7XG4gICAgdGhpcy5waWN0dXJlRGF0YS5zaXplcyA9IHRoaXMuc2l6ZXM/LmpvaW4oJywgJykgPz8gbnVsbDtcbiAgfVxuICBwcml2YXRlIF9zaXplczogc3RyaW5nW10gPSBbXTtcblxuICBASW5wdXQoKVxuICBnZXQgc3Jjc2V0U2l6ZXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLl9zcmNzZXRTaXplcztcbiAgfVxuICBzZXQgc3Jjc2V0U2l6ZXModjogc3RyaW5nW10pIHtcbiAgICB0aGlzLl9zcmNzZXRTaXplcyA9IHY7XG4gICAgdGhpcy51cGRhdGVTaXplcygpO1xuICB9XG4gIHByaXZhdGUgX3NyY3NldFNpemVzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBiYWNrZ3JvdW5kQ29sb3IoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2JhY2tncm91bmRDb2xvcjtcbiAgfVxuICBzZXQgYmFja2dyb3VuZENvbG9yKHY6IHN0cmluZyB8IG51bGwpIHtcbiAgICB0aGlzLl9iYWNrZ3JvdW5kQ29sb3IgPSB2O1xuICAgIHRoaXMudXBkYXRlU2l6ZXMoKTtcbiAgfVxuICBwcml2YXRlIF9iYWNrZ3JvdW5kQ29sb3I6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIHByb3RlY3RlZCBzb3VyY2VzOiBQaWN0dXJlU291cmNlW10gPSBbXTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fcmljaFRleHREYXRhICYmICF0aGlzLmRhdGEpIHtcbiAgICAgIHRoaXMuZGF0YSA9IHRoaXMuX3JpY2hUZXh0RGF0YTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZVNpemVzKCkge1xuICAgIHRoaXMuc291cmNlcyA9IHRoaXMuX2RhdGEgPyBnZW5lcmF0ZUNvbnRlbnRmdWxJbWFnZVNvdXJjZXModGhpcy5fZGF0YSwgdGhpcy5zcmNzZXRTaXplcywgdGhpcy5iYWNrZ3JvdW5kQ29sb3IpIDogW107XG5cbiAgICB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbn1cbiJdfQ==
86
+ }] });
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC1pbWFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL2ltYWdlL2NvbnRlbnRmdWwtaW1hZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0csT0FBTyxFQUFFLGdCQUFnQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXZFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXBELE9BQU8sRUFDTCw4QkFBOEIsRUFDOUIsb0NBQW9DLEdBQ3JDLE1BQU0sb0NBQW9DLENBQUM7O0FBNEI1QyxNQUFNLE9BQU8sd0JBQXdCO0lBMUJyQztRQTJCRSxzQkFBaUIsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUU5QyxVQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBc0MsQ0FBQztRQUM3RCxvQkFBZSxHQUFHLEtBQUssQ0FBZ0IsSUFBSSxDQUFDLENBQUM7UUFDN0MsZ0JBQVcsR0FBRyxLQUFLLENBQVcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUUvRSxZQUFPLEdBQUcsS0FBSyxDQUFnQixJQUFJLENBQUMsQ0FBQztRQUNyQyxjQUFTLEdBQUcsS0FBSyxDQUFrQyxJQUFJLENBQUMsQ0FBQztRQUN6RCxtQkFBYyxHQUFHLEtBQUssQ0FBdUMsSUFBSSxDQUFDLENBQUM7UUFDbkUsZ0JBQVcsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsYUFBUSxHQUFHLEtBQUssQ0FBYyxJQUFJLENBQUMsQ0FBQztRQUNwQyxnQkFBVyxHQUFHLEtBQUssQ0FBYyxJQUFJLENBQUMsQ0FBQztRQUN2QyxvQkFBZSxHQUFHLEtBQUssQ0FBYyxJQUFJLENBQUMsQ0FBQztRQUMzQyxpQkFBWSxHQUFHLEtBQUssQ0FBYyxJQUFJLENBQUMsQ0FBQztRQUN4QyxVQUFLLEdBQUcsS0FBSyxDQUNYLHFCQUFxQixDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEVBQ2hFO1lBQ0UsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7U0FDM0MsQ0FDRixDQUFDO1FBRUYsYUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDdkIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzNCLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUMvQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdkMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQy9CLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNuQyxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFFN0MsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNYLE9BQU8sRUFBRSxDQUFDO1lBQ1osQ0FBQztZQUVELE9BQU8sOEJBQThCLENBQUMsS0FBSyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxjQUFjLENBQUMsQ0FBQztRQUNqSCxDQUFDLENBQUMsQ0FBQztRQUVILGdCQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUMxQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFFM0IsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLG9DQUFvQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDcEUsQ0FBQyxDQUFDLENBQUM7S0FDSjs4R0ExQ1ksd0JBQXdCO2tHQUF4Qix3QkFBd0Isd3VEQXhCekI7Ozs7Ozs7Ozs7Ozs7OztHQWVULDREQUlTLGdCQUFnQjs7MkZBS2Ysd0JBQXdCO2tCQTFCcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7OztHQWVUO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUMzQixJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLHFCQUFxQjtxQkFDN0I7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiwgY29tcHV0ZWQsIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBpY3R1cmVDb21wb25lbnQsIG5vcm1hbGl6ZVBpY3R1cmVTaXplcyB9IGZyb20gJ0BldGhsZXRlL2Nkayc7XG5pbXBvcnQgeyBOZ0NsYXNzVHlwZSB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgQ09OVEVOVEZVTF9DT05GSUcgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgQ29udGVudGZ1bEFzc2V0LCBDb250ZW50ZnVsSW1hZ2VGb2N1c0FyZWEsIENvbnRlbnRmdWxJbWFnZVJlc2l6ZUJlaGF2aW9yIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHtcbiAgZ2VuZXJhdGVDb250ZW50ZnVsSW1hZ2VTb3VyY2VzLFxuICBnZW5lcmF0ZURlZmF1bHRDb250ZW50ZnVsSW1hZ2VTb3VyY2UsXG59IGZyb20gJy4vY29udGVudGZ1bC1pbWFnZS5jb21wb25lbnQudXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdldC1jb250ZW50ZnVsLWltYWdlJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZXQtcGljdHVyZVxuICAgICAgW2ltZ0NsYXNzXT1cImltZ0NsYXNzKClcIlxuICAgICAgW2hhc1ByaW9yaXR5XT1cImhhc1ByaW9yaXR5KClcIlxuICAgICAgW2ZpZ3VyZUNsYXNzXT1cImZpZ3VyZUNsYXNzKClcIlxuICAgICAgW3BpY3R1cmVDbGFzc109XCJwaWN0dXJlQ2xhc3MoKVwiXG4gICAgICBbZmlnY2FwdGlvbkNsYXNzXT1cImZpZ2NhcHRpb25DbGFzcygpXCJcbiAgICAgIFtkZWZhdWx0U3JjXT1cIl9kZWZhdWx0U3JjKClcIlxuICAgICAgW2FsdF09XCJhc3NldCgpPy5maWVsZHM/LnRpdGxlID8/IG51bGxcIlxuICAgICAgW2ZpZ2NhcHRpb25dPVwiYXNzZXQoKT8uZmllbGRzPy5kZXNjcmlwdGlvbiA/PyBudWxsXCJcbiAgICAgIFt3aWR0aF09XCJhc3NldCgpPy5maWVsZHM/LmZpbGU/LmRldGFpbHM/LmltYWdlPy53aWR0aCA/PyBudWxsXCJcbiAgICAgIFtoZWlnaHRdPVwiYXNzZXQoKT8uZmllbGRzPy5maWxlPy5kZXRhaWxzPy5pbWFnZT8uaGVpZ2h0ID8/IG51bGxcIlxuICAgICAgW3NpemVzXT1cInNpemVzKClcIlxuICAgICAgW3NvdXJjZXNdPVwiX3NvdXJjZXMoKVwiXG4gICAgLz5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtQaWN0dXJlQ29tcG9uZW50XSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZXQtY29udGVudGZ1bC1pbWFnZScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIENvbnRlbnRmdWxJbWFnZUNvbXBvbmVudCB7XG4gIF9jb250ZW50ZnVsQ29uZmlnID0gaW5qZWN0KENPTlRFTlRGVUxfQ09ORklHKTtcblxuICBhc3NldCA9IGlucHV0LnJlcXVpcmVkPENvbnRlbnRmdWxBc3NldCB8IG51bGwgfCB1bmRlZmluZWQ+KCk7XG4gIGJhY2tncm91bmRDb2xvciA9IGlucHV0PHN0cmluZyB8IG51bGw+KG51bGwpO1xuICBzcmNzZXRTaXplcyA9IGlucHV0PHN0cmluZ1tdPih0aGlzLl9jb250ZW50ZnVsQ29uZmlnLmltYWdlT3B0aW9ucy5zcmNzZXRTaXplcyk7XG5cbiAgcXVhbGl0eSA9IGlucHV0PG51bWJlciB8IG51bGw+KG51bGwpO1xuICBmb2N1c0FyZWEgPSBpbnB1dDxDb250ZW50ZnVsSW1hZ2VGb2N1c0FyZWEgfCBudWxsPihudWxsKTtcbiAgcmVzaXplQmVoYXZpb3IgPSBpbnB1dDxDb250ZW50ZnVsSW1hZ2VSZXNpemVCZWhhdmlvciB8IG51bGw+KG51bGwpO1xuICBoYXNQcmlvcml0eSA9IGlucHV0KGZhbHNlKTtcbiAgaW1nQ2xhc3MgPSBpbnB1dDxOZ0NsYXNzVHlwZT4obnVsbCk7XG4gIGZpZ3VyZUNsYXNzID0gaW5wdXQ8TmdDbGFzc1R5cGU+KG51bGwpO1xuICBmaWdjYXB0aW9uQ2xhc3MgPSBpbnB1dDxOZ0NsYXNzVHlwZT4obnVsbCk7XG4gIHBpY3R1cmVDbGFzcyA9IGlucHV0PE5nQ2xhc3NUeXBlPihudWxsKTtcbiAgc2l6ZXMgPSBpbnB1dDxzdHJpbmcgfCBudWxsLCBzdHJpbmdbXSB8IHN0cmluZyB8IG51bGw+KFxuICAgIG5vcm1hbGl6ZVBpY3R1cmVTaXplcyh0aGlzLl9jb250ZW50ZnVsQ29uZmlnLmltYWdlT3B0aW9ucy5zaXplcyksXG4gICAge1xuICAgICAgdHJhbnNmb3JtOiAodikgPT4gbm9ybWFsaXplUGljdHVyZVNpemVzKHYpLFxuICAgIH0sXG4gICk7XG5cbiAgX3NvdXJjZXMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgYXNzZXQgPSB0aGlzLmFzc2V0KCk7XG4gICAgY29uc3QgYmFja2dyb3VuZENvbG9yID0gdGhpcy5iYWNrZ3JvdW5kQ29sb3IoKTtcbiAgICBjb25zdCBzcmNzZXRTaXplcyA9IHRoaXMuc3Jjc2V0U2l6ZXMoKTtcbiAgICBjb25zdCBxdWFsaXR5ID0gdGhpcy5xdWFsaXR5KCk7XG4gICAgY29uc3QgZm9jdXNBcmVhID0gdGhpcy5mb2N1c0FyZWEoKTtcbiAgICBjb25zdCByZXNpemVCZWhhdmlvciA9IHRoaXMucmVzaXplQmVoYXZpb3IoKTtcblxuICAgIGlmICghYXNzZXQpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICByZXR1cm4gZ2VuZXJhdGVDb250ZW50ZnVsSW1hZ2VTb3VyY2VzKGFzc2V0LCBzcmNzZXRTaXplcywgYmFja2dyb3VuZENvbG9yLCBxdWFsaXR5LCBmb2N1c0FyZWEsIHJlc2l6ZUJlaGF2aW9yKTtcbiAgfSk7XG5cbiAgX2RlZmF1bHRTcmMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgYXNzZXQgPSB0aGlzLmFzc2V0KCk7XG5cbiAgICByZXR1cm4gYXNzZXQgPyBnZW5lcmF0ZURlZmF1bHRDb250ZW50ZnVsSW1hZ2VTb3VyY2UoYXNzZXQpIDogbnVsbDtcbiAgfSk7XG59XG4iXX0=
@@ -1,9 +1,8 @@
1
- import { isContentfulImage } from '../../utils';
2
1
  export const generateDefaultContentfulImageSource = (data) => {
3
- const { url, contentType } = data;
2
+ const file = data.fields.file;
4
3
  return {
5
- type: contentType,
6
- srcset: url,
4
+ type: file.contentType,
5
+ srcset: file.url,
7
6
  };
8
7
  };
9
8
  /**
@@ -33,16 +32,15 @@ export const parseContentfulImageSize = (size) => {
33
32
  height: height ? parseInt(height, 10) : null,
34
33
  };
35
34
  };
36
- export const generateContentfulImageSources = (data, srcsetSizes, backgroundColor) => {
37
- const assetData = isContentfulImage(data) ? data.asset : data;
38
- const imageData = isContentfulImage(data) ? data : null;
35
+ export const generateContentfulImageSources = (data, srcsetSizes, backgroundColor, quality, focusArea, resizeBehavior) => {
36
+ const assetData = data;
39
37
  if (!assetData) {
40
38
  return [];
41
39
  }
42
40
  const sources = [];
43
41
  const SOURCE_TYPES = ['image/avif', 'image/webp', 'image/png', 'image/jpg'];
44
42
  for (const type of SOURCE_TYPES) {
45
- const baseUrl = assetData.url;
43
+ const baseUrl = assetData.fields.file.url;
46
44
  const sourceSets = [];
47
45
  const queryParams = [];
48
46
  // Set the format (e.g. 'fm=webp')
@@ -50,16 +48,14 @@ export const generateContentfulImageSources = (data, srcsetSizes, backgroundColo
50
48
  if (backgroundColor) {
51
49
  queryParams.push(`bg=rgb:${backgroundColor}`);
52
50
  }
53
- if (imageData) {
54
- if (imageData.quality) {
55
- queryParams.push(`q=${imageData.quality}`);
56
- }
57
- if (imageData.focusArea) {
58
- queryParams.push(`f=${imageData.focusArea}`);
59
- }
60
- if (imageData.resizeBehavior) {
61
- queryParams.push(`fit=${imageData.resizeBehavior}`);
62
- }
51
+ if (quality !== null) {
52
+ queryParams.push(`q=${quality}`);
53
+ }
54
+ if (focusArea) {
55
+ queryParams.push(`f=${focusArea}`);
56
+ }
57
+ if (resizeBehavior) {
58
+ queryParams.push(`fit=${resizeBehavior}`);
63
59
  }
64
60
  if (srcsetSizes?.length) {
65
61
  const urlWithParams = `${baseUrl}?${queryParams.join('&')}`;
@@ -83,4 +79,4 @@ export const generateContentfulImageSources = (data, srcsetSizes, backgroundColo
83
79
  }
84
80
  return sources;
85
81
  };
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC1pbWFnZS5jb21wb25lbnQudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL2ltYWdlL2NvbnRlbnRmdWwtaW1hZ2UuY29tcG9uZW50LnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVoRCxNQUFNLENBQUMsTUFBTSxvQ0FBb0MsR0FBRyxDQUFDLElBQXFCLEVBQWlCLEVBQUU7SUFDM0YsTUFBTSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFFbEMsT0FBTztRQUNMLElBQUksRUFBRSxXQUFXO1FBQ2pCLE1BQU0sRUFBRSxHQUFHO0tBQ1osQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGOzs7Ozs7O0lBT0k7QUFDSixNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxDQUFDLElBQVksRUFBbUQsRUFBRTtJQUN4RyxJQUFJLEtBQUssR0FBOEIsSUFBSSxDQUFDO0lBQzVDLElBQUksTUFBTSxHQUE4QixJQUFJLENBQUM7SUFFN0MsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDdkIsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRS9CLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDVixNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ2IsQ0FBQztTQUFNLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQzlCLE1BQU0sR0FBRyxJQUFJLENBQUM7SUFDaEIsQ0FBQztTQUFNLENBQUM7UUFDTixLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ2YsQ0FBQztJQUVELE9BQU87UUFD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QUFDO29CQUNsQixVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsYUFBYSxNQUFNLE1BQU0sSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDO2dCQUM3RCxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLENBQUMsSUFBSSxDQUFDO1lBQ1gsSUFBSTtZQUNKLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1NBQzFGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaWN0dXJlU291cmNlIH0gZnJvbSAnQGV0aGxldGUvY2RrJztcbmltcG9ydCB7IENvbnRlbnRmdWxBc3NldCwgQ29udGVudGZ1bEltYWdlIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgaXNDb250ZW50ZnVsSW1hZ2UgfSBmcm9tICcuLi8uLi91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBnZW5lcmF0ZURlZmF1bHRDb250ZW50ZnVsSW1hZ2VTb3VyY2UgPSAoZGF0YTogQ29udGVudGZ1bEFzc2V0KTogUGljdHVyZVNvdXJjZSA9PiB7XG4gIGNvbnN0IHsgdXJsLCBjb250ZW50VHlwZSB9ID0gZGF0YTtcblxuICByZXR1cm4ge1xuICAgIHR5cGU6IGNvbnRlbnRUeXBlLFxuICAgIHNyY3NldDogdXJsLFxuICB9O1xufTtcblxuLyoqXG4gKiBQYXJzZXMgc291cmNlIHNldCBzaXplcyBpbnRvIGFuIG9iamVjdCBjb250YWluaW5nIHdpdGggYW5kIGhlaWdodC4gRWcuXG4gKiAtIGBcIjQwMFwiYCAtIDQwMHB4IHdpZHRoXG4gKiAtIGBcIjQwMHgzMDBcImAgLSA0MDBweCB3aWR0aCBhbmQgMzAwcHggaGVpZ2h0XG4gKiAtIGBcIjQwMHdcImAgLSA0MDBweCB3aWR0aFxuICogLSBgXCI0MDBoXCJgIC0gNDAwcHggaGVpZ2h0XG4gKiAtIGBcIjQwMHd4MzAwaFwiYCAtIDQwMHB4IHdpZHRoIGFuZCAzMDBweCBoZWlnaHRcbiAqKi9cbmV4cG9ydCBjb25zdCBwYXJzZUNvbnRlbnRmdWxJbWFnZVNpemUgPSAoc2l6ZTogc3RyaW5nKTogeyB3aWR0aDogbnVtYmVyIHwgbnVsbDsgaGVpZ2h0OiBudW1iZXIgfCBudWxsIH0gPT4ge1xuICBsZXQgd2lkdGg6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQgPSBudWxsO1xuICBsZXQgaGVpZ2h0OiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkID0gbnVsbDtcblxuICBpZiAoc2l6ZS5pbmNsdWRlcygneCcpKSB7XG4gICAgY29uc3QgW3csIGhdID0gc2l6ZS5zcGxpdCgneCcpO1xuXG4gICAgd2lkdGggPSB3O1xuICAgIGhlaWdodCA9IGg7XG4gIH0gZWxzZSBpZiAoc2l6ZS5pbmNsdWRlcygnaCcpKSB7XG4gICAgaGVpZ2h0ID0gc2l6ZTtcbiAgfSBlbHNlIHtcbiAgICB3aWR0aCA9IHNpemU7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHdpZHRoOiB3aWR0aCA/IHBhcnNlSW50KHdpZHRoLCAxMCkgOiBudWxsLFxuICAgIGhlaWdodDogaGVpZ2h0ID8gcGFyc2VJbnQoaGVpZ2h0LCAxMCkgOiBudWxsLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGdlbmVyYXRlQ29udGVudGZ1bEltYWdlU291cmNlcyA9IChcbiAgZGF0YTogQ29udGVudGZ1bEFzc2V0IHwgQ29udGVudGZ1bEltYWdlLFxuICBzcmNzZXRTaXplczogc3RyaW5nW10sXG4gIGJhY2tncm91bmRDb2xvcjogc3RyaW5nIHwgbnVsbCxcbik6IFBpY3R1cmVTb3VyY2VbXSA9PiB7XG4gIGNvbnN0IGFzc2V0RGF0YSA9IGlzQ29udGVudGZ1bEltYWdlKGRhdGEpID8gZGF0YS5hc3NldCA6IGRhdGE7XG4gIGNvbnN0IGltYWdlRGF0YSA9IGlzQ29udGVudGZ1bEltYWdlKGRhdGEpID8gZGF0YSA6IG51bGw7XG5cbiAgaWYgKCFhc3NldERhdGEpIHtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICBjb25zdCBzb3VyY2VzOiBQaWN0dXJlU291cmNlW10gPSBbXTtcblxuICBjb25zdCBTT1VSQ0VfVFlQRVMgPSBbJ2ltYWdlL2F2aWYnLCAnaW1hZ2Uvd2VicCcsICdpbWFnZS9wbmcnLCAnaW1hZ2UvanBnJ107XG5cbiAgZm9yIChjb25zdCB0eXBlIG9mIFNPVVJDRV9UWVBFUykge1xuICAgIGNvbnN0IGJhc2VVcmwgPSBhc3NldERhdGEudXJsO1xuICAgIGNvbnN0IHNvdXJjZVNldHM6IHN0cmluZ1tdID0gW107XG4gICAgY29uc3QgcXVlcnlQYXJhbXM6IHN0cmluZ1tdID0gW107XG5cbiAgICAvLyBTZXQgdGhlIGZvcm1hdCAoZS5nLiAnZm09d2VicCcpXG4gICAgcXVlcnlQYXJhbXMucHVzaChgZm09JHt0eXBlLnNwbGl0KCcvJylbMV19YCk7XG5cbiAgICBpZiAoYmFja2dyb3VuZENvbG9yKSB7XG4gICAgICBxdWVyeVBhcmFtcy5wdXNoKGBiZz1yZ2I6JHtiYWNrZ3JvdW5kQ29sb3J9YCk7XG4gICAgfVxuXG4gICAgaWYgKGltYWdlRGF0YSkge1xuICAgICAgaWYgKGltYWdlRGF0YS5xdWFsaXR5KSB7XG4gICAgICAgIHF1ZXJ5UGFyYW1zLnB1c2goYHE9JHtpbWFnZURhdGEucXVhbGl0eX1gKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGltYWdlRGF0YS5mb2N1c0FyZWEpIHtcbiAgICAgICAgcXVlcnlQYXJhbXMucHVzaChgZj0ke2ltYWdlRGF0YS5mb2N1c0FyZWF9YCk7XG4gICAgICB9XG5cbiAgICAgIGlmIChpbWFnZURhdGEucmVzaXplQmVoYXZpb3IpIHtcbiAgICAgICAgcXVlcnlQYXJhbXMucHVzaChgZml0PSR7aW1hZ2VEYXRhLnJlc2l6ZUJlaGF2aW9yfWApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChzcmNzZXRTaXplcz8ubGVuZ3RoKSB7XG4gICAgICBjb25zdCB1cmxXaXRoUGFyYW1zID0gYCR7YmFzZVVybH0/JHtxdWVyeVBhcmFtcy5qb2luKCcmJyl9YDtcblxuICAgICAgZm9yIChjb25zdCBzaXplIG9mIHNyY3NldFNpemVzKSB7XG4gICAgICAgIGNvbnN0IHsgd2lkdGgsIGhlaWdodCB9ID0gcGFyc2VDb250ZW50ZnVsSW1hZ2VTaXplKHNpemUpO1xuXG4gICAgICAgIGlmICh3aWR0aCAmJiBoZWlnaHQpIHtcbiAgICAgICAgICBzb3VyY2VTZXRzLnB1c2goYCR7dXJsV2l0aFBhcmFtc30mdz0ke3dpZHRofSZoPSR7aGVpZ2h0fSAke3dpZHRofXdgKTtcbiAgICAgICAgfSBlbHNlIGlmICh3aWR0aCkge1xuICAgICAgICAgIHNvdXJjZVNldHMucHVzaChgJHt1cmxXaXRoUGFyYW1zfSZ3PSR7d2lkdGh9ICR7d2lkdGh9d2ApO1xuICAgICAgICB9IGVsc2UgaWYgKGhlaWdodCkge1xuICAgICAgICAgIHNvdXJjZVNldHMucHVzaChgJHt1cmxXaXRoUGFyYW1zfSZoPSR7aGVpZ2h0fSAke2hlaWdodH1oYCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBzb3VyY2VzLnB1c2goe1xuICAgICAgdHlwZSxcbiAgICAgIHNyY3NldDogc291cmNlU2V0cy5sZW5ndGggPyBzb3VyY2VTZXRzLmpvaW4oJywgJykgOiBgJHtiYXNlVXJsfT8ke3F1ZXJ5UGFyYW1zLmpvaW4oJyYnKX1gLFxuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIHNvdXJjZXM7XG59O1xuIl19
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC1pbWFnZS5jb21wb25lbnQudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL2ltYWdlL2NvbnRlbnRmdWwtaW1hZ2UuY29tcG9uZW50LnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sQ0FBQyxNQUFNLG9DQUFvQyxHQUFHLENBQUMsSUFBcUIsRUFBaUIsRUFBRTtJQUMzRixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztJQUU5QixPQUFPO1FBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxXQUFXO1FBQ3RCLE1BQU0sRUFBRSxJQUFJLENBQUMsR0FBRztLQUNqQixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUY7Ozs7Ozs7SUFPSTtBQUNKLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLENBQUMsSUFBWSxFQUFtRCxFQUFFO0lBQ3hHLElBQUksS0FBSyxHQUE4QixJQUFJLENBQUM7SUFDNUMsSUFBSSxNQUFNLEdBQThCLElBQUksQ0FBQztJQUU3QyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUN2QixNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFL0IsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNWLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDYixDQUFDO1NBQU0sSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDOUIsTUFBTSxHQUFHLElBQUksQ0FBQztJQUNoQixDQUFDO1NBQU0sQ0FBQztRQUNOLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDZixDQUFDO0lBRUQsT0FBTztRQUNMLEtBQUssRUFBRSxLQUFLLENBQUMs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QUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxPQUFPLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtTQUMxRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGljdHVyZVNvdXJjZSB9IGZyb20gJ0BldGhsZXRlL2Nkayc7XG5pbXBvcnQgeyBDb250ZW50ZnVsQXNzZXQsIENvbnRlbnRmdWxJbWFnZUZvY3VzQXJlYSwgQ29udGVudGZ1bEltYWdlUmVzaXplQmVoYXZpb3IgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBnZW5lcmF0ZURlZmF1bHRDb250ZW50ZnVsSW1hZ2VTb3VyY2UgPSAoZGF0YTogQ29udGVudGZ1bEFzc2V0KTogUGljdHVyZVNvdXJjZSA9PiB7XG4gIGNvbnN0IGZpbGUgPSBkYXRhLmZpZWxkcy5maWxlO1xuXG4gIHJldHVybiB7XG4gICAgdHlwZTogZmlsZS5jb250ZW50VHlwZSxcbiAgICBzcmNzZXQ6IGZpbGUudXJsLFxuICB9O1xufTtcblxuLyoqXG4gKiBQYXJzZXMgc291cmNlIHNldCBzaXplcyBpbnRvIGFuIG9iamVjdCBjb250YWluaW5nIHdpdGggYW5kIGhlaWdodC4gRWcuXG4gKiAtIGBcIjQwMFwiYCAtIDQwMHB4IHdpZHRoXG4gKiAtIGBcIjQwMHgzMDBcImAgLSA0MDBweCB3aWR0aCBhbmQgMzAwcHggaGVpZ2h0XG4gKiAtIGBcIjQwMHdcImAgLSA0MDBweCB3aWR0aFxuICogLSBgXCI0MDBoXCJgIC0gNDAwcHggaGVpZ2h0XG4gKiAtIGBcIjQwMHd4MzAwaFwiYCAtIDQwMHB4IHdpZHRoIGFuZCAzMDBweCBoZWlnaHRcbiAqKi9cbmV4cG9ydCBjb25zdCBwYXJzZUNvbnRlbnRmdWxJbWFnZVNpemUgPSAoc2l6ZTogc3RyaW5nKTogeyB3aWR0aDogbnVtYmVyIHwgbnVsbDsgaGVpZ2h0OiBudW1iZXIgfCBudWxsIH0gPT4ge1xuICBsZXQgd2lkdGg6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQgPSBudWxsO1xuICBsZXQgaGVpZ2h0OiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkID0gbnVsbDtcblxuICBpZiAoc2l6ZS5pbmNsdWRlcygneCcpKSB7XG4gICAgY29uc3QgW3csIGhdID0gc2l6ZS5zcGxpdCgneCcpO1xuXG4gICAgd2lkdGggPSB3O1xuICAgIGhlaWdodCA9IGg7XG4gIH0gZWxzZSBpZiAoc2l6ZS5pbmNsdWRlcygnaCcpKSB7XG4gICAgaGVpZ2h0ID0gc2l6ZTtcbiAgfSBlbHNlIHtcbiAgICB3aWR0aCA9IHNpemU7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHdpZHRoOiB3aWR0aCA/IHBhcnNlSW50KHdpZHRoLCAxMCkgOiBudWxsLFxuICAgIGhlaWdodDogaGVpZ2h0ID8gcGFyc2VJbnQoaGVpZ2h0LCAxMCkgOiBudWxsLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGdlbmVyYXRlQ29udGVudGZ1bEltYWdlU291cmNlcyA9IChcbiAgZGF0YTogQ29udGVudGZ1bEFzc2V0LFxuICBzcmNzZXRTaXplczogc3RyaW5nW10sXG4gIGJhY2tncm91bmRDb2xvcjogc3RyaW5nIHwgbnVsbCxcbiAgcXVhbGl0eTogbnVtYmVyIHwgbnVsbCxcbiAgZm9jdXNBcmVhOiBDb250ZW50ZnVsSW1hZ2VGb2N1c0FyZWEgfCBudWxsLFxuICByZXNpemVCZWhhdmlvcjogQ29udGVudGZ1bEltYWdlUmVzaXplQmVoYXZpb3IgfCBudWxsLFxuKTogUGljdHVyZVNvdXJjZVtdID0+IHtcbiAgY29uc3QgYXNzZXREYXRhID0gZGF0YTtcblxuICBpZiAoIWFzc2V0RGF0YSkge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIGNvbnN0IHNvdXJjZXM6IFBpY3R1cmVTb3VyY2VbXSA9IFtdO1xuXG4gIGNvbnN0IFNPVVJDRV9UWVBFUyA9IFsnaW1hZ2UvYXZpZicsICdpbWFnZS93ZWJwJywgJ2ltYWdlL3BuZycsICdpbWFnZS9qcGcnXTtcblxuICBmb3IgKGNvbnN0IHR5cGUgb2YgU09VUkNFX1RZUEVTKSB7XG4gICAgY29uc3QgYmFzZVVybCA9IGFzc2V0RGF0YS5maWVsZHMuZmlsZS51cmw7XG4gICAgY29uc3Qgc291cmNlU2V0czogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCBxdWVyeVBhcmFtczogc3RyaW5nW10gPSBbXTtcblxuICAgIC8vIFNldCB0aGUgZm9ybWF0IChlLmcuICdmbT13ZWJwJylcbiAgICBxdWVyeVBhcmFtcy5wdXNoKGBmbT0ke3R5cGUuc3BsaXQoJy8nKVsxXX1gKTtcblxuICAgIGlmIChiYWNrZ3JvdW5kQ29sb3IpIHtcbiAgICAgIHF1ZXJ5UGFyYW1zLnB1c2goYGJnPXJnYjoke2JhY2tncm91bmRDb2xvcn1gKTtcbiAgICB9XG5cbiAgICBpZiAocXVhbGl0eSAhPT0gbnVsbCkge1xuICAgICAgcXVlcnlQYXJhbXMucHVzaChgcT0ke3F1YWxpdHl9YCk7XG4gICAgfVxuXG4gICAgaWYgKGZvY3VzQXJlYSkge1xuICAgICAgcXVlcnlQYXJhbXMucHVzaChgZj0ke2ZvY3VzQXJlYX1gKTtcbiAgICB9XG5cbiAgICBpZiAocmVzaXplQmVoYXZpb3IpIHtcbiAgICAgIHF1ZXJ5UGFyYW1zLnB1c2goYGZpdD0ke3Jlc2l6ZUJlaGF2aW9yfWApO1xuICAgIH1cbiAgICBpZiAoc3Jjc2V0U2l6ZXM/Lmxlbmd0aCkge1xuICAgICAgY29uc3QgdXJsV2l0aFBhcmFtcyA9IGAke2Jhc2VVcmx9PyR7cXVlcnlQYXJhbXMuam9pbignJicpfWA7XG5cbiAgICAgIGZvciAoY29uc3Qgc2l6ZSBvZiBzcmNzZXRTaXplcykge1xuICAgICAgICBjb25zdCB7IHdpZHRoLCBoZWlnaHQgfSA9IHBhcnNlQ29udGVudGZ1bEltYWdlU2l6ZShzaXplKTtcblxuICAgICAgICBpZiAod2lkdGggJiYgaGVpZ2h0KSB7XG4gICAgICAgICAgc291cmNlU2V0cy5wdXNoKGAke3VybFdpdGhQYXJhbXN9Jnc9JHt3aWR0aH0maD0ke2hlaWdodH0gJHt3aWR0aH13YCk7XG4gICAgICAgIH0gZWxzZSBpZiAod2lkdGgpIHtcbiAgICAgICAgICBzb3VyY2VTZXRzLnB1c2goYCR7dXJsV2l0aFBhcmFtc30mdz0ke3dpZHRofSAke3dpZHRofXdgKTtcbiAgICAgICAgfSBlbHNlIGlmIChoZWlnaHQpIHtcbiAgICAgICAgICBzb3VyY2VTZXRzLnB1c2goYCR7dXJsV2l0aFBhcmFtc30maD0ke2hlaWdodH0gJHtoZWlnaHR9aGApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgc291cmNlcy5wdXNoKHtcbiAgICAgIHR5cGUsXG4gICAgICBzcmNzZXQ6IHNvdXJjZVNldHMubGVuZ3RoID8gc291cmNlU2V0cy5qb2luKCcsICcpIDogYCR7YmFzZVVybH0/JHtxdWVyeVBhcmFtcy5qb2luKCcmJyl9YCxcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBzb3VyY2VzO1xufTtcbiJdfQ==
@@ -1,5 +1,3 @@
1
1
  export * from './rich-text-renderer.component';
2
- export * from './rich-text-renderer.constants';
3
- export * from './rich-text-renderer.types';
4
2
  export * from './rich-text-renderer.util';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL3JpY2gtdGV4dC1yZW5kZXJlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9yaWNoLXRleHQtcmVuZGVyZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcmljaC10ZXh0LXJlbmRlcmVyLmNvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL3JpY2gtdGV4dC1yZW5kZXJlci50eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL3JpY2gtdGV4dC1yZW5kZXJlci51dGlsJztcbiJdfQ==
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL3JpY2gtdGV4dC1yZW5kZXJlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3JpY2gtdGV4dC1yZW5kZXJlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9yaWNoLXRleHQtcmVuZGVyZXIudXRpbCc7XG4iXX0=