@ethlete/contentful 0.1.0-next.1 → 0.1.0-next.3

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 (30) hide show
  1. package/esm2020/lib/components/audio/contentful-audio.component.mjs +36 -15
  2. package/esm2020/lib/components/file/contentful-file.component.mjs +30 -11
  3. package/esm2020/lib/components/image/contentful-image.component.mjs +31 -11
  4. package/esm2020/lib/components/rich-text-renderer/index.mjs +2 -0
  5. package/esm2020/lib/components/rich-text-renderer/public-api.mjs +3 -2
  6. package/esm2020/lib/components/rich-text-renderer/rich-text-renderer.component.mjs +16 -10
  7. package/esm2020/lib/components/rich-text-renderer/rich-text-renderer.constants.mjs +3 -0
  8. package/esm2020/lib/components/rich-text-renderer/rich-text-renderer.types.mjs +1 -1
  9. package/esm2020/lib/components/rich-text-renderer/rich-text-renderer.util.mjs +43 -15
  10. package/esm2020/lib/components/video/contentful-video.component.mjs +28 -13
  11. package/esm2020/lib/contentful.module.mjs +4 -4
  12. package/esm2020/lib/types/contentful.types.mjs +1 -1
  13. package/esm2020/lib/utils/contentful-config.mjs +1 -1
  14. package/fesm2015/ethlete-contentful.mjs +225 -117
  15. package/fesm2015/ethlete-contentful.mjs.map +1 -1
  16. package/fesm2020/ethlete-contentful.mjs +222 -116
  17. package/fesm2020/ethlete-contentful.mjs.map +1 -1
  18. package/lib/components/audio/contentful-audio.component.d.ts +11 -4
  19. package/lib/components/file/contentful-file.component.d.ts +9 -4
  20. package/lib/components/image/contentful-image.component.d.ts +10 -4
  21. package/lib/components/rich-text-renderer/index.d.ts +1 -0
  22. package/lib/components/rich-text-renderer/public-api.d.ts +2 -1
  23. package/lib/components/rich-text-renderer/rich-text-renderer.component.d.ts +2 -2
  24. package/lib/components/rich-text-renderer/rich-text-renderer.constants.d.ts +2 -0
  25. package/lib/components/rich-text-renderer/rich-text-renderer.types.d.ts +6 -0
  26. package/lib/components/rich-text-renderer/rich-text-renderer.util.d.ts +9 -7
  27. package/lib/components/video/contentful-video.component.d.ts +9 -4
  28. package/lib/types/contentful.types.d.ts +14 -2
  29. package/lib/utils/contentful-config.d.ts +1 -1
  30. package/package.json +2 -2
@@ -1,43 +1,64 @@
1
- import { NgIf } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';
1
+ import { NgClass, NgIf } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, inject, Input, ViewEncapsulation } from '@angular/core';
3
+ import { RICH_TEXT_RENDERER_COMPONENT_DATA } from '../rich-text-renderer';
3
4
  import * as i0 from "@angular/core";
4
5
  export class ContentfulAudioComponent {
5
6
  constructor() {
7
+ this._richTextData = inject(RICH_TEXT_RENDERER_COMPONENT_DATA, { optional: true });
6
8
  this._data = null;
9
+ this.audioClass = null;
10
+ this.figureClass = null;
11
+ this.figcaptionClass = null;
7
12
  }
8
13
  get data() {
9
14
  return this._data;
10
15
  }
11
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
+ }
12
22
  if (v && !v.contentType.startsWith('audio/')) {
13
23
  throw new Error('The provided asset is not an audio');
14
24
  }
15
- this._data = v;
25
+ this._data = v ?? null;
26
+ }
27
+ ngOnInit() {
28
+ if (this._richTextData) {
29
+ this.data = this._richTextData;
30
+ }
16
31
  }
17
32
  }
18
- ContentfulAudioComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: ContentfulAudioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
19
- ContentfulAudioComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: ContentfulAudioComponent, isStandalone: true, selector: "et-contentful-audio", inputs: { data: "data" }, ngImport: i0, template: `
20
- <figure *ngIf="data">
21
- <figcaption>{{ data.title }}</figcaption>
22
- <audio controls src="{{ data.url }}"></audio>
33
+ ContentfulAudioComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ContentfulAudioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
34
+ ContentfulAudioComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: ContentfulAudioComponent, isStandalone: true, selector: "et-contentful-audio", inputs: { data: "data", audioClass: "audioClass", figureClass: "figureClass", figcaptionClass: "figcaptionClass" }, ngImport: i0, template: `
35
+ <figure *ngIf="data" [ngClass]="figureClass">
36
+ <figcaption [ngClass]="figcaptionClass">{{ data.title }}</figcaption>
37
+ <audio [ngClass]="audioClass" controls src="{{ data.url }}"></audio>
23
38
  </figure>
24
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: ContentfulAudioComponent, decorators: [{
39
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ContentfulAudioComponent, decorators: [{
26
41
  type: Component,
27
42
  args: [{
28
43
  selector: 'et-contentful-audio',
29
44
  template: `
30
- <figure *ngIf="data">
31
- <figcaption>{{ data.title }}</figcaption>
32
- <audio controls src="{{ data.url }}"></audio>
45
+ <figure *ngIf="data" [ngClass]="figureClass">
46
+ <figcaption [ngClass]="figcaptionClass">{{ data.title }}</figcaption>
47
+ <audio [ngClass]="audioClass" controls src="{{ data.url }}"></audio>
33
48
  </figure>
34
49
  `,
35
50
  changeDetection: ChangeDetectionStrategy.OnPush,
36
51
  encapsulation: ViewEncapsulation.None,
37
52
  standalone: true,
38
- imports: [NgIf],
53
+ imports: [NgIf, NgClass],
39
54
  }]
40
55
  }], propDecorators: { data: [{
41
56
  type: Input
57
+ }], audioClass: [{
58
+ type: Input
59
+ }], figureClass: [{
60
+ type: Input
61
+ }], figcaptionClass: [{
62
+ type: Input
42
63
  }] } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC1hdWRpby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL2F1ZGlvL2NvbnRlbnRmdWwtYXVkaW8uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFnQjdGLE1BQU0sT0FBTyx3QkFBd0I7SUFickM7UUF5QlUsVUFBSyxHQUEyQixJQUFJLENBQUM7S0FDOUM7SUFaQyxJQUNJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLENBQXlCO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDNUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDakIsQ0FBQzs7cUhBWFUsd0JBQXdCO3lHQUF4Qix3QkFBd0IseUdBWHpCOzs7OztHQUtULDREQUlTLElBQUk7MkZBRUgsd0JBQXdCO2tCQWJwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFFBQVEsRUFBRTs7Ozs7R0FLVDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUM7aUJBQ2hCOzhCQUdLLElBQUk7c0JBRFAsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250ZW50ZnVsQXNzZXQgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2V0LWNvbnRlbnRmdWwtYXVkaW8nLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxmaWd1cmUgKm5nSWY9XCJkYXRhXCI+XG4gICAgICA8ZmlnY2FwdGlvbj57eyBkYXRhLnRpdGxlIH19PC9maWdjYXB0aW9uPlxuICAgICAgPGF1ZGlvIGNvbnRyb2xzIHNyYz1cInt7IGRhdGEudXJsIH19XCI+PC9hdWRpbz5cbiAgICA8L2ZpZ3VyZT5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0lmXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29udGVudGZ1bEF1ZGlvQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgZ2V0IGRhdGEoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGE7XG4gIH1cbiAgc2V0IGRhdGEodjogQ29udGVudGZ1bEFzc2V0IHwgbnVsbCkge1xuICAgIGlmICh2ICYmICF2LmNvbnRlbnRUeXBlLnN0YXJ0c1dpdGgoJ2F1ZGlvLycpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBwcm92aWRlZCBhc3NldCBpcyBub3QgYW4gYXVkaW8nKTtcbiAgICB9XG5cbiAgICB0aGlzLl9kYXRhID0gdjtcbiAgfVxuICBwcml2YXRlIF9kYXRhOiBDb250ZW50ZnVsQXNzZXQgfCBudWxsID0gbnVsbDtcbn1cbiJdfQ==
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC1hdWRpby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL2F1ZGlvL2NvbnRlbnRmdWwtYXVkaW8uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzdHLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQWUxRSxNQUFNLE9BQU8sd0JBQXdCO0lBYnJDO1FBY1Usa0JBQWEsR0FBRyxNQUFNLENBQWtCLGlDQUFpQyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFxQi9GLFVBQUssR0FBMkIsSUFBSSxDQUFDO1FBRzdDLGVBQVUsR0FBZ0IsSUFBSSxDQUFDO1FBRy9CLGdCQUFXLEdBQWdCLElBQUksQ0FBQztRQUdoQyxvQkFBZSxHQUFnQixJQUFJLENBQUM7S0FPckM7SUFuQ0MsSUFDSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxDQUFxQztRQUM1QyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUU7WUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFFbEIsT0FBTyxDQUFDLElBQUksQ0FBQywrQkFBK0IsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUVqRCxPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzVDLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQztTQUN2RDtRQUVELElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQztJQUN6QixDQUFDO0lBWUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7U0FDaEM7SUFDSCxDQUFDOztxSEFyQ1Usd0JBQXdCO3lHQUF4Qix3QkFBd0IsbU1BWHpCOzs7OztHQUtULDREQUlTLElBQUksNkZBQUUsT0FBTzsyRkFFWix3QkFBd0I7a0JBYnBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFOzs7OztHQUtUO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUM7aUJBQ3pCOzhCQUtLLElBQUk7c0JBRFAsS0FBSztnQkFzQk4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixlQUFlO3NCQURkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCwgSW5wdXQsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nQ2xhc3NUeXBlIH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5pbXBvcnQgeyBDb250ZW50ZnVsQXNzZXQgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBSSUNIX1RFWFRfUkVOREVSRVJfQ09NUE9ORU5UX0RBVEEgfSBmcm9tICcuLi9yaWNoLXRleHQtcmVuZGVyZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdldC1jb250ZW50ZnVsLWF1ZGlvJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZmlndXJlICpuZ0lmPVwiZGF0YVwiIFtuZ0NsYXNzXT1cImZpZ3VyZUNsYXNzXCI+XG4gICAgICA8ZmlnY2FwdGlvbiBbbmdDbGFzc109XCJmaWdjYXB0aW9uQ2xhc3NcIj57eyBkYXRhLnRpdGxlIH19PC9maWdjYXB0aW9uPlxuICAgICAgPGF1ZGlvIFtuZ0NsYXNzXT1cImF1ZGlvQ2xhc3NcIiBjb250cm9scyBzcmM9XCJ7eyBkYXRhLnVybCB9fVwiPjwvYXVkaW8+XG4gICAgPC9maWd1cmU+XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdJZiwgTmdDbGFzc10sXG59KVxuZXhwb3J0IGNsYXNzIENvbnRlbnRmdWxBdWRpb0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgX3JpY2hUZXh0RGF0YSA9IGluamVjdDxDb250ZW50ZnVsQXNzZXQ+KFJJQ0hfVEVYVF9SRU5ERVJFUl9DT01QT05FTlRfREFUQSwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICBASW5wdXQoKVxuICBnZXQgZGF0YSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YTtcbiAgfVxuICBzZXQgZGF0YSh2OiBDb250ZW50ZnVsQXNzZXQgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKHYgJiYgIXYuY29udGVudFR5cGUpIHtcbiAgICAgIHRoaXMuX2RhdGEgPSBudWxsO1xuXG4gICAgICBjb25zb2xlLndhcm4oJ1RoZSBwcm92aWRlZCBhc3NldCBpcyBpbnZhbGlkJywgdik7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodiAmJiAhdi5jb250ZW50VHlwZS5zdGFydHNXaXRoKCdhdWRpby8nKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgcHJvdmlkZWQgYXNzZXQgaXMgbm90IGFuIGF1ZGlvJyk7XG4gICAgfVxuXG4gICAgdGhpcy5fZGF0YSA9IHYgPz8gbnVsbDtcbiAgfVxuICBwcml2YXRlIF9kYXRhOiBDb250ZW50ZnVsQXNzZXQgfCBudWxsID0gbnVsbDtcblxuICBASW5wdXQoKVxuICBhdWRpb0NsYXNzOiBOZ0NsYXNzVHlwZSA9IG51bGw7XG5cbiAgQElucHV0KClcbiAgZmlndXJlQ2xhc3M6IE5nQ2xhc3NUeXBlID0gbnVsbDtcblxuICBASW5wdXQoKVxuICBmaWdjYXB0aW9uQ2xhc3M6IE5nQ2xhc3NUeXBlID0gbnVsbDtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fcmljaFRleHREYXRhKSB7XG4gICAgICB0aGlzLmRhdGEgPSB0aGlzLl9yaWNoVGV4dERhdGE7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,34 +1,53 @@
1
- import { NgIf } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';
1
+ import { NgClass, NgIf } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, inject, Input, ViewEncapsulation } from '@angular/core';
3
+ import { RICH_TEXT_RENDERER_COMPONENT_DATA } from '../rich-text-renderer';
3
4
  import * as i0 from "@angular/core";
4
5
  export class ContentfulFileComponent {
5
6
  constructor() {
7
+ this._richTextData = inject(RICH_TEXT_RENDERER_COMPONENT_DATA, { optional: true });
6
8
  this._data = null;
9
+ this.fileClass = null;
7
10
  }
8
11
  get data() {
9
12
  return this._data;
10
13
  }
11
14
  set data(v) {
12
- this._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) {
24
+ this.data = this._richTextData;
25
+ }
13
26
  }
14
27
  }
15
- ContentfulFileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: ContentfulFileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
16
- ContentfulFileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: ContentfulFileComponent, isStandalone: true, selector: "et-contentful-file", inputs: { data: "data" }, ngImport: i0, template: `
17
- <a *ngIf="data" [href]="data.url" class="underline" target="_blank"> {{ data.title }} ({{ data.size }} Bytes) </a>
18
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: ContentfulFileComponent, decorators: [{
28
+ ContentfulFileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ContentfulFileComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
+ ContentfulFileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: ContentfulFileComponent, isStandalone: true, selector: "et-contentful-file", inputs: { data: "data", fileClass: "fileClass" }, ngImport: i0, template: `
30
+ <a *ngIf="data" [href]="data.url" [ngClass]="fileClass" class="underline" target="_blank">
31
+ {{ data.title }} ({{ data.size }} Bytes)
32
+ </a>
33
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ContentfulFileComponent, decorators: [{
20
35
  type: Component,
21
36
  args: [{
22
37
  selector: 'et-contentful-file',
23
38
  template: `
24
- <a *ngIf="data" [href]="data.url" class="underline" target="_blank"> {{ data.title }} ({{ data.size }} Bytes) </a>
39
+ <a *ngIf="data" [href]="data.url" [ngClass]="fileClass" class="underline" target="_blank">
40
+ {{ data.title }} ({{ data.size }} Bytes)
41
+ </a>
25
42
  `,
26
43
  changeDetection: ChangeDetectionStrategy.OnPush,
27
44
  encapsulation: ViewEncapsulation.None,
28
45
  standalone: true,
29
- imports: [NgIf],
46
+ imports: [NgIf, NgClass],
30
47
  }]
31
48
  }], propDecorators: { data: [{
32
49
  type: Input
50
+ }], fileClass: [{
51
+ type: Input
33
52
  }] } });
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC1maWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29udGVudGZ1bC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS9jb250ZW50ZnVsLWZpbGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFhN0YsTUFBTSxPQUFPLHVCQUF1QjtJQVZwQztRQWtCVSxVQUFLLEdBQTJCLElBQUksQ0FBQztLQUM5QztJQVJDLElBQ0ksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBSSxJQUFJLENBQUMsQ0FBeUI7UUFDaEMsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7SUFDakIsQ0FBQzs7b0hBUFUsdUJBQXVCO3dHQUF2Qix1QkFBdUIsd0dBUnhCOztHQUVULDREQUlTLElBQUk7MkZBRUgsdUJBQXVCO2tCQVZuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFFBQVEsRUFBRTs7R0FFVDtvQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUM7aUJBQ2hCOzhCQUdLLElBQUk7c0JBRFAsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250ZW50ZnVsQXNzZXQgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2V0LWNvbnRlbnRmdWwtZmlsZScsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGEgKm5nSWY9XCJkYXRhXCIgW2hyZWZdPVwiZGF0YS51cmxcIiBjbGFzcz1cInVuZGVybGluZVwiIHRhcmdldD1cIl9ibGFua1wiPiB7eyBkYXRhLnRpdGxlIH19ICh7eyBkYXRhLnNpemUgfX0gQnl0ZXMpIDwvYT5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0lmXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29udGVudGZ1bEZpbGVDb21wb25lbnQge1xuICBASW5wdXQoKVxuICBnZXQgZGF0YSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YTtcbiAgfVxuICBzZXQgZGF0YSh2OiBDb250ZW50ZnVsQXNzZXQgfCBudWxsKSB7XG4gICAgdGhpcy5fZGF0YSA9IHY7XG4gIH1cbiAgcHJpdmF0ZSBfZGF0YTogQ29udGVudGZ1bEFzc2V0IHwgbnVsbCA9IG51bGw7XG59XG4iXX0=
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC1maWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29udGVudGZ1bC9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS9jb250ZW50ZnVsLWZpbGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzdHLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQWMxRSxNQUFNLE9BQU8sdUJBQXVCO0lBWnBDO1FBYVUsa0JBQWEsR0FBRyxNQUFNLENBQWtCLGlDQUFpQyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFpQi9GLFVBQUssR0FBMkIsSUFBSSxDQUFDO1FBRzdDLGNBQVMsR0FBZ0IsSUFBSSxDQUFDO0tBTy9CO0lBekJDLElBQ0ksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBSSxJQUFJLENBQUMsQ0FBcUM7UUFDNUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1lBRWxCLE9BQU8sQ0FBQyxJQUFJLENBQUMsK0JBQStCLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFFakQsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDO0lBQ3pCLENBQUM7SUFNRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztTQUNoQztJQUNILENBQUM7O29IQTNCVSx1QkFBdUI7d0dBQXZCLHVCQUF1QixnSUFWeEI7Ozs7R0FJVCw0REFJUyxJQUFJLDZGQUFFLE9BQU87MkZBRVosdUJBQXVCO2tCQVpuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFFBQVEsRUFBRTs7OztHQUlUO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUM7aUJBQ3pCOzhCQUtLLElBQUk7c0JBRFAsS0FBSztnQkFrQk4sU0FBUztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDbGFzcywgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIElucHV0LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0NsYXNzVHlwZSB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgQ29udGVudGZ1bEFzc2V0IH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgUklDSF9URVhUX1JFTkRFUkVSX0NPTVBPTkVOVF9EQVRBIH0gZnJvbSAnLi4vcmljaC10ZXh0LXJlbmRlcmVyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZXQtY29udGVudGZ1bC1maWxlJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8YSAqbmdJZj1cImRhdGFcIiBbaHJlZl09XCJkYXRhLnVybFwiIFtuZ0NsYXNzXT1cImZpbGVDbGFzc1wiIGNsYXNzPVwidW5kZXJsaW5lXCIgdGFyZ2V0PVwiX2JsYW5rXCI+XG4gICAgICB7eyBkYXRhLnRpdGxlIH19ICh7eyBkYXRhLnNpemUgfX0gQnl0ZXMpXG4gICAgPC9hPlxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nSWYsIE5nQ2xhc3NdLFxufSlcbmV4cG9ydCBjbGFzcyBDb250ZW50ZnVsRmlsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgX3JpY2hUZXh0RGF0YSA9IGluamVjdDxDb250ZW50ZnVsQXNzZXQ+KFJJQ0hfVEVYVF9SRU5ERVJFUl9DT01QT05FTlRfREFUQSwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICBASW5wdXQoKVxuICBnZXQgZGF0YSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YTtcbiAgfVxuICBzZXQgZGF0YSh2OiBDb250ZW50ZnVsQXNzZXQgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKHYgJiYgIXYuY29udGVudFR5cGUpIHtcbiAgICAgIHRoaXMuX2RhdGEgPSBudWxsO1xuXG4gICAgICBjb25zb2xlLndhcm4oJ1RoZSBwcm92aWRlZCBhc3NldCBpcyBpbnZhbGlkJywgdik7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9kYXRhID0gdiA/PyBudWxsO1xuICB9XG4gIHByaXZhdGUgX2RhdGE6IENvbnRlbnRmdWxBc3NldCB8IG51bGwgPSBudWxsO1xuXG4gIEBJbnB1dCgpXG4gIGZpbGVDbGFzczogTmdDbGFzc1R5cGUgPSBudWxsO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9yaWNoVGV4dERhdGEpIHtcbiAgICAgIHRoaXMuZGF0YSA9IHRoaXMuX3JpY2hUZXh0RGF0YTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,23 +1,37 @@
1
- import { NgIf } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';
1
+ import { NgClass, NgIf } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, inject, Input, ViewEncapsulation } from '@angular/core';
3
+ import { RICH_TEXT_RENDERER_COMPONENT_DATA } from '../rich-text-renderer';
3
4
  import * as i0 from "@angular/core";
4
5
  export class ContentfulImageComponent {
5
6
  constructor() {
7
+ this._richTextData = inject(RICH_TEXT_RENDERER_COMPONENT_DATA, { optional: true });
6
8
  this._data = null;
9
+ this.imgClass = null;
10
+ this.pictureClass = null;
7
11
  }
8
12
  get data() {
9
13
  return this._data;
10
14
  }
11
15
  set data(v) {
16
+ if (v && !v.contentType) {
17
+ this._data = null;
18
+ console.warn('The provided asset is invalid', v);
19
+ return;
20
+ }
12
21
  if (v && !v.contentType.startsWith('image/')) {
13
22
  throw new Error('The provided asset is not an image');
14
23
  }
15
- this._data = v;
24
+ this._data = v ?? null;
25
+ }
26
+ ngOnInit() {
27
+ if (this._richTextData) {
28
+ this.data = this._richTextData;
29
+ }
16
30
  }
17
31
  }
18
- ContentfulImageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: ContentfulImageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
19
- ContentfulImageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: ContentfulImageComponent, isStandalone: true, selector: "et-contentful-image", inputs: { data: "data" }, ngImport: i0, template: `
20
- <picture *ngIf="data">
32
+ ContentfulImageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ContentfulImageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
33
+ ContentfulImageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: ContentfulImageComponent, isStandalone: true, selector: "et-contentful-image", inputs: { data: "data", imgClass: "imgClass", pictureClass: "pictureClass" }, ngImport: i0, template: `
34
+ <picture *ngIf="data" [ngClass]="pictureClass">
21
35
  <source srcset="{{ data.url }}?fm=avif" />
22
36
  <source srcset="{{ data.url }}?fm=webp" />
23
37
  <source srcset="{{ data.url }}?fm=jpg" />
@@ -25,16 +39,17 @@ ContentfulImageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0
25
39
  [attr.alt]="data.description ?? undefined"
26
40
  [attr.width]="data.width ?? undefined"
27
41
  [attr.height]="data.height ?? undefined"
42
+ [ngClass]="imgClass"
28
43
  src="{{ data.url }}"
29
44
  />
30
45
  </picture>
31
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: ContentfulImageComponent, decorators: [{
46
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ContentfulImageComponent, decorators: [{
33
48
  type: Component,
34
49
  args: [{
35
50
  selector: 'et-contentful-image',
36
51
  template: `
37
- <picture *ngIf="data">
52
+ <picture *ngIf="data" [ngClass]="pictureClass">
38
53
  <source srcset="{{ data.url }}?fm=avif" />
39
54
  <source srcset="{{ data.url }}?fm=webp" />
40
55
  <source srcset="{{ data.url }}?fm=jpg" />
@@ -42,6 +57,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImpor
42
57
  [attr.alt]="data.description ?? undefined"
43
58
  [attr.width]="data.width ?? undefined"
44
59
  [attr.height]="data.height ?? undefined"
60
+ [ngClass]="imgClass"
45
61
  src="{{ data.url }}"
46
62
  />
47
63
  </picture>
@@ -49,9 +65,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImpor
49
65
  changeDetection: ChangeDetectionStrategy.OnPush,
50
66
  encapsulation: ViewEncapsulation.None,
51
67
  standalone: true,
52
- imports: [NgIf],
68
+ imports: [NgIf, NgClass],
53
69
  }]
54
70
  }], propDecorators: { data: [{
55
71
  type: Input
72
+ }], imgClass: [{
73
+ type: Input
74
+ }], pictureClass: [{
75
+ type: Input
56
76
  }] } });
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC1pbWFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL2ltYWdlL2NvbnRlbnRmdWwtaW1hZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUF1QjdGLE1BQU0sT0FBTyx3QkFBd0I7SUFwQnJDO1FBZ0NVLFVBQUssR0FBMkIsSUFBSSxDQUFDO0tBQzlDO0lBWkMsSUFDSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxDQUF5QjtRQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzVDLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQztTQUN2RDtRQUVELElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBQ2pCLENBQUM7O3FIQVhVLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLHlHQWxCekI7Ozs7Ozs7Ozs7OztHQVlULDREQUlTLElBQUk7MkZBRUgsd0JBQXdCO2tCQXBCcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7OztHQVlUO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQztpQkFDaEI7OEJBR0ssSUFBSTtzQkFEUCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRlbnRmdWxBc3NldCB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZXQtY29udGVudGZ1bC1pbWFnZScsXG4gIHRlbXBsYXRlOiBgXG4gICAgPHBpY3R1cmUgKm5nSWY9XCJkYXRhXCI+XG4gICAgICA8c291cmNlIHNyY3NldD1cInt7IGRhdGEudXJsIH19P2ZtPWF2aWZcIiAvPlxuICAgICAgPHNvdXJjZSBzcmNzZXQ9XCJ7eyBkYXRhLnVybCB9fT9mbT13ZWJwXCIgLz5cbiAgICAgIDxzb3VyY2Ugc3Jjc2V0PVwie3sgZGF0YS51cmwgfX0/Zm09anBnXCIgLz5cbiAgICAgIDxpbWdcbiAgICAgICAgW2F0dHIuYWx0XT1cImRhdGEuZGVzY3JpcHRpb24gPz8gdW5kZWZpbmVkXCJcbiAgICAgICAgW2F0dHIud2lkdGhdPVwiZGF0YS53aWR0aCA/PyB1bmRlZmluZWRcIlxuICAgICAgICBbYXR0ci5oZWlnaHRdPVwiZGF0YS5oZWlnaHQgPz8gdW5kZWZpbmVkXCJcbiAgICAgICAgc3JjPVwie3sgZGF0YS51cmwgfX1cIlxuICAgICAgLz5cbiAgICA8L3BpY3R1cmU+XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdJZl0sXG59KVxuZXhwb3J0IGNsYXNzIENvbnRlbnRmdWxJbWFnZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIGdldCBkYXRhKCkge1xuICAgIHJldHVybiB0aGlzLl9kYXRhO1xuICB9XG4gIHNldCBkYXRhKHY6IENvbnRlbnRmdWxBc3NldCB8IG51bGwpIHtcbiAgICBpZiAodiAmJiAhdi5jb250ZW50VHlwZS5zdGFydHNXaXRoKCdpbWFnZS8nKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgcHJvdmlkZWQgYXNzZXQgaXMgbm90IGFuIGltYWdlJyk7XG4gICAgfVxuXG4gICAgdGhpcy5fZGF0YSA9IHY7XG4gIH1cbiAgcHJpdmF0ZSBfZGF0YTogQ29udGVudGZ1bEFzc2V0IHwgbnVsbCA9IG51bGw7XG59XG4iXX0=
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudGZ1bC1pbWFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL2ltYWdlL2NvbnRlbnRmdWwtaW1hZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzdHLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQXVCMUUsTUFBTSxPQUFPLHdCQUF3QjtJQXJCckM7UUFzQlUsa0JBQWEsR0FBRyxNQUFNLENBQWtCLGlDQUFpQyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFxQi9GLFVBQUssR0FBMkIsSUFBSSxDQUFDO1FBRzdDLGFBQVEsR0FBZ0IsSUFBSSxDQUFDO1FBRzdCLGlCQUFZLEdBQWdCLElBQUksQ0FBQztLQU9sQztJQWhDQyxJQUNJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLENBQXFDO1FBQzVDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRTtZQUN2QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztZQUVsQixPQUFPLENBQUMsSUFBSSxDQUFDLCtCQUErQixFQUFFLENBQUMsQ0FBQyxDQUFDO1lBRWpELE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDNUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDO0lBQ3pCLENBQUM7SUFTRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztTQUNoQztJQUNILENBQUM7O3FIQWxDVSx3QkFBd0I7eUdBQXhCLHdCQUF3Qiw2SkFuQnpCOzs7Ozs7Ozs7Ozs7O0dBYVQsNERBSVMsSUFBSSw2RkFBRSxPQUFPOzJGQUVaLHdCQUF3QjtrQkFyQnBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7O0dBYVQ7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQztpQkFDekI7OEJBS0ssSUFBSTtzQkFEUCxLQUFLO2dCQXNCTixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDbGFzcywgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIElucHV0LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0NsYXNzVHlwZSB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgQ29udGVudGZ1bEFzc2V0IH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgUklDSF9URVhUX1JFTkRFUkVSX0NPTVBPTkVOVF9EQVRBIH0gZnJvbSAnLi4vcmljaC10ZXh0LXJlbmRlcmVyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZXQtY29udGVudGZ1bC1pbWFnZScsXG4gIHRlbXBsYXRlOiBgXG4gICAgPHBpY3R1cmUgKm5nSWY9XCJkYXRhXCIgW25nQ2xhc3NdPVwicGljdHVyZUNsYXNzXCI+XG4gICAgICA8c291cmNlIHNyY3NldD1cInt7IGRhdGEudXJsIH19P2ZtPWF2aWZcIiAvPlxuICAgICAgPHNvdXJjZSBzcmNzZXQ9XCJ7eyBkYXRhLnVybCB9fT9mbT13ZWJwXCIgLz5cbiAgICAgIDxzb3VyY2Ugc3Jjc2V0PVwie3sgZGF0YS51cmwgfX0/Zm09anBnXCIgLz5cbiAgICAgIDxpbWdcbiAgICAgICAgW2F0dHIuYWx0XT1cImRhdGEuZGVzY3JpcHRpb24gPz8gdW5kZWZpbmVkXCJcbiAgICAgICAgW2F0dHIud2lkdGhdPVwiZGF0YS53aWR0aCA/PyB1bmRlZmluZWRcIlxuICAgICAgICBbYXR0ci5oZWlnaHRdPVwiZGF0YS5oZWlnaHQgPz8gdW5kZWZpbmVkXCJcbiAgICAgICAgW25nQ2xhc3NdPVwiaW1nQ2xhc3NcIlxuICAgICAgICBzcmM9XCJ7eyBkYXRhLnVybCB9fVwiXG4gICAgICAvPlxuICAgIDwvcGljdHVyZT5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0lmLCBOZ0NsYXNzXSxcbn0pXG5leHBvcnQgY2xhc3MgQ29udGVudGZ1bEltYWdlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJpdmF0ZSBfcmljaFRleHREYXRhID0gaW5qZWN0PENvbnRlbnRmdWxBc3NldD4oUklDSF9URVhUX1JFTkRFUkVSX0NPTVBPTkVOVF9EQVRBLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBkYXRhKCkge1xuICAgIHJldHVybiB0aGlzLl9kYXRhO1xuICB9XG4gIHNldCBkYXRhKHY6IENvbnRlbnRmdWxBc3NldCB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAodiAmJiAhdi5jb250ZW50VHlwZSkge1xuICAgICAgdGhpcy5fZGF0YSA9IG51bGw7XG5cbiAgICAgIGNvbnNvbGUud2FybignVGhlIHByb3ZpZGVkIGFzc2V0IGlzIGludmFsaWQnLCB2KTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh2ICYmICF2LmNvbnRlbnRUeXBlLnN0YXJ0c1dpdGgoJ2ltYWdlLycpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBwcm92aWRlZCBhc3NldCBpcyBub3QgYW4gaW1hZ2UnKTtcbiAgICB9XG5cbiAgICB0aGlzLl9kYXRhID0gdiA/PyBudWxsO1xuICB9XG4gIHByaXZhdGUgX2RhdGE6IENvbnRlbnRmdWxBc3NldCB8IG51bGwgPSBudWxsO1xuXG4gIEBJbnB1dCgpXG4gIGltZ0NsYXNzOiBOZ0NsYXNzVHlwZSA9IG51bGw7XG5cbiAgQElucHV0KClcbiAgcGljdHVyZUNsYXNzOiBOZ0NsYXNzVHlwZSA9IG51bGw7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3JpY2hUZXh0RGF0YSkge1xuICAgICAgdGhpcy5kYXRhID0gdGhpcy5fcmljaFRleHREYXRhO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './public-api';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL3JpY2gtdGV4dC1yZW5kZXJlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
@@ -1,4 +1,5 @@
1
1
  export * from './rich-text-renderer.component';
2
- export * from './rich-text-renderer.util';
2
+ export * from './rich-text-renderer.constants';
3
3
  export * from './rich-text-renderer.types';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29udGVudGZ1bC9zcmMvbGliL2NvbXBvbmVudHMvcmljaC10ZXh0LXJlbmRlcmVyL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3JpY2gtdGV4dC1yZW5kZXJlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9yaWNoLXRleHQtcmVuZGVyZXIudXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL3JpY2gtdGV4dC1yZW5kZXJlci50eXBlcyc7XG4iXX0=
4
+ export * from './rich-text-renderer.util';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29udGVudGZ1bC9zcmMvbGliL2NvbXBvbmVudHMvcmljaC10ZXh0LXJlbmRlcmVyL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcmljaC10ZXh0LXJlbmRlcmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3JpY2gtdGV4dC1yZW5kZXJlci5jb25zdGFudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9yaWNoLXRleHQtcmVuZGVyZXIudHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9yaWNoLXRleHQtcmVuZGVyZXIudXRpbCc7XG4iXX0=
@@ -3,6 +3,7 @@ import { DOCUMENT } from '@angular/common';
3
3
  import { ApplicationRef, ChangeDetectionStrategy, Component, ComponentFactoryResolver, ElementRef, inject, Injector, Input, Renderer2, ViewContainerRef, ViewEncapsulation, } from '@angular/core';
4
4
  import { CONTENTFUL_CONFIG } from '../../constants';
5
5
  import { ContentfulConfig } from '../../utils';
6
+ import { RICH_TEXT_RENDERER_COMPONENT_DATA } from './rich-text-renderer.constants';
6
7
  import { createRenderCommandsFromContentfulRichText } from './rich-text-renderer.util';
7
8
  import * as i0 from "@angular/core";
8
9
  export class ContentfulRichTextRendererComponent {
@@ -21,7 +22,7 @@ export class ContentfulRichTextRendererComponent {
21
22
  return this._richText;
22
23
  }
23
24
  set richText(v) {
24
- this._richText = v;
25
+ this._richText = v ?? null;
25
26
  // clear the element
26
27
  this._viewContainerRef.clear();
27
28
  if (!v) {
@@ -59,13 +60,18 @@ export class ContentfulRichTextRendererComponent {
59
60
  this._renderer.appendChild(parent, element);
60
61
  }
61
62
  else {
62
- const portal = new DomPortalOutlet(parent, this._componentFactoryResolver, this._appRef, this._injector, this._document);
63
+ const injector = Injector.create({
64
+ providers: [
65
+ {
66
+ provide: RICH_TEXT_RENDERER_COMPONENT_DATA,
67
+ useValue: data,
68
+ },
69
+ ],
70
+ parent: this._injector,
71
+ });
72
+ const portal = new DomPortalOutlet(parent, this._componentFactoryResolver, this._appRef, injector, this._document);
63
73
  const comp = new ComponentPortal(command.payload);
64
74
  const ref = comp.attach(portal);
65
- if (command.data) {
66
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
67
- ref.instance.data = command.data;
68
- }
69
75
  element = ref.location.nativeElement;
70
76
  }
71
77
  }
@@ -75,9 +81,9 @@ export class ContentfulRichTextRendererComponent {
75
81
  }
76
82
  }
77
83
  }
78
- ContentfulRichTextRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: ContentfulRichTextRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
79
- ContentfulRichTextRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: ContentfulRichTextRendererComponent, isStandalone: true, selector: "et-contentful-rich-text-renderer", inputs: { richText: "richText" }, host: { classAttribute: "et-contentful-rich-text-renderer" }, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: ContentfulRichTextRendererComponent, decorators: [{
84
+ ContentfulRichTextRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ContentfulRichTextRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
85
+ ContentfulRichTextRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.9", type: ContentfulRichTextRendererComponent, isStandalone: true, selector: "et-contentful-rich-text-renderer", inputs: { richText: "richText" }, host: { classAttribute: "et-contentful-rich-text-renderer" }, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.9", ngImport: i0, type: ContentfulRichTextRendererComponent, decorators: [{
81
87
  type: Component,
82
88
  args: [{
83
89
  selector: 'et-contentful-rich-text-renderer',
@@ -92,4 +98,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImpor
92
98
  }], propDecorators: { richText: [{
93
99
  type: Input
94
100
  }] } });
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LXJlbmRlcmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29udGVudGZ1bC9zcmMvbGliL2NvbXBvbmVudHMvcmljaC10ZXh0LXJlbmRlcmVyL3JpY2gtdGV4dC1yZW5kZXJlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUNMLGNBQWMsRUFDZCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULHdCQUF3QixFQUN4QixVQUFVLEVBQ1YsTUFBTSxFQUNOLFFBQVEsRUFDUixLQUFLLEVBQ0wsU0FBUyxFQUNULGdCQUFnQixFQUNoQixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFcEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRS9DLE9BQU8sRUFBRSwwQ0FBMEMsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQVl2RixNQUFNLE9BQU8sbUNBQW1DO0lBVmhEO1FBNkJVLGNBQVMsR0FBNEIsSUFBSSxDQUFDO1FBRTFDLGNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDOUIsZ0JBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakMsc0JBQWlCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDN0MsOEJBQXlCLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDN0QsY0FBUyxHQUFHLE1BQU0sQ0FBVyxRQUFRLENBQUMsQ0FBQztRQUN2QyxZQUFPLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FB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SSxPQUFPLENBQUMsSUFBSSxFQUFFO29CQUNoQiw4REFBOEQ7b0JBQzdELEdBQUcsQ0FBQyxRQUFnQixDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDO2lCQUMzQztnQkFFRCxPQUFPLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7YUFDdEM7U0FDRjtRQUVELHlCQUF5QjtRQUN6QixLQUFLLE1BQU0sWUFBWSxJQUFJLE9BQU8sQ0FBQyxRQUFRLEVBQUU7WUFDM0MsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE9BQU8sSUFBSSxNQUFNLEVBQUUsQ0FBQyxDQUFDO1NBQzVFO0lBQ0gsQ0FBQzs7Z0lBMUZVLG1DQUFtQztvSEFBbkMsbUNBQW1DLDRMQVJwQyxFQUFFOzJGQVFELG1DQUFtQztrQkFWL0MsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0NBQWtDO29CQUM1QyxRQUFRLEVBQUUsRUFBRTtvQkFDWixhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLGtDQUFrQztxQkFDMUM7aUJBQ0Y7OEJBR0ssUUFBUTtzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsLCBEb21Qb3J0YWxPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFwcGxpY2F0aW9uUmVmLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gIEVsZW1lbnRSZWYsXG4gIGluamVjdCxcbiAgSW5qZWN0b3IsXG4gIElucHV0LFxuICBSZW5kZXJlcjIsXG4gIFZpZXdDb250YWluZXJSZWYsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENPTlRFTlRGVUxfQ09ORklHIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IFJpY2hUZXh0UmVzcG9uc2UgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBDb250ZW50ZnVsQ29uZmlnIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgUmljaFRleHRSZW5kZXJDb21tYW5kIH0gZnJvbSAnLi9yaWNoLXRleHQtcmVuZGVyZXIudHlwZXMnO1xuaW1wb3J0IHsgY3JlYXRlUmVuZGVyQ29tbWFuZHNGcm9tQ29udGVudGZ1bFJpY2hUZXh0IH0gZnJvbSAnLi9yaWNoLXRleHQtcmVuZGVyZXIudXRpbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2V0LWNvbnRlbnRmdWwtcmljaC10ZXh0LXJlbmRlcmVyJyxcbiAgdGVtcGxhdGU6IGBgLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZXQtY29udGVudGZ1bC1yaWNoLXRleHQtcmVuZGVyZXInLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBDb250ZW50ZnVsUmljaFRleHRSZW5kZXJlckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIGdldCByaWNoVGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5fcmljaFRleHQ7XG4gIH1cbiAgc2V0IHJpY2hUZXh0KHY6IFJpY2hUZXh0UmVzcG9uc2UgfCBudWxsKSB7XG4gICAgdGhpcy5fcmljaFRleHQgPSB2O1xuXG4gICAgLy8gY2xlYXIgdGhlIGVsZW1lbnRcbiAgICB0aGlzLl92aWV3Q29udGFpbmVyUmVmLmNsZWFyKCk7XG5cbiAgICBpZiAoIXYpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBjb21tYW5kcyA9IGNyZWF0ZVJlbmRlckNvbW1hbmRzRnJvbUNvbnRlbnRmdWxSaWNoVGV4dCh7IGRhdGE6IHYsIGNvbmZpZzogdGhpcy5fY29uZmlnIH0pO1xuXG4gICAgdGhpcy5fcmVuZGVyKGNvbW1hbmRzKTtcbiAgfVxuICBwcml2YXRlIF9yaWNoVGV4dDogUmljaFRleHRSZXNwb25zZSB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgX3JlbmRlcmVyID0gaW5qZWN0KFJlbmRlcmVyMik7XG4gIHByaXZhdGUgX2VsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG4gIHByaXZhdGUgX3ZpZXdDb250YWluZXJSZWYgPSBpbmplY3QoVmlld0NvbnRhaW5lclJlZik7XG4gIHByaXZhdGUgX2NvbXBvbmVudEZhY3RvcnlSZXNvbHZlciA9IGluamVjdChDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIpO1xuICBwcml2YXRlIF9kb2N1bWVudCA9IGluamVjdDxEb2N1bWVudD4oRE9DVU1FTlQpO1xuICBwcml2YXRlIF9hcHBSZWYgPSBpbmplY3QoQXBwbGljYXRpb25SZWYpO1xuICBwcml2YXRlIF9pbmplY3RvciA9IGluamVjdChJbmplY3Rvcik7XG4gIHByaXZhdGUgX2NvbmZpZyA9IGluamVjdChDT05URU5URlVMX0NPTkZJRywgeyBvcHRpb25hbDogdHJ1ZSB9KSA/PyBuZXcgQ29udGVudGZ1bENvbmZpZygpO1xuXG4gIHByaXZhdGUgX3JlbmRlcihjb21tYW5kczogUmljaFRleHRSZW5kZXJDb21tYW5kW10pIHtcbiAgICAvLyBjcmVhdGUgYSBkb2N1bWVudCBmcmFnbWVudCB0byBob2xkIHRoZSBlbGVtZW50cyB3aGlsZSB3ZSBjcmVhdGUgdGhlbVxuICAgIGNvbnN0IGZyYWdtZW50ID0gZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpO1xuXG4gICAgY29uc3QgaG9zdENvbW1hbmQ6IFJpY2hUZXh0UmVuZGVyQ29tbWFuZCA9IHtcbiAgICAgIHBheWxvYWQ6ICdkb2N1bWVudCcsXG4gICAgICBjaGlsZHJlbjogY29tbWFuZHMsXG4gICAgfTtcblxuICAgIC8vIGxvb3Agb3ZlciB0aGUgY29tbWFuZHNcbiAgICB0aGlzLl9leGVjdXRlQ29tbWFuZCh7IGNvbW1hbmQ6IGhvc3RDb21tYW5kLCBwYXJlbnQ6IGZyYWdtZW50IH0pO1xuXG4gICAgLy8gYXBwZW5kIHRoZSBmcmFnbWVudCB0byB0aGUgaG9zdCBlbGVtZW50XG4gICAgdGhpcy5fcmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCBmcmFnbWVudCk7XG4gIH1cblxuICBwcml2YXRlIF9leGVjdXRlQ29tbWFuZChkYXRhOiB7IGNvbW1hbmQ6IFJpY2hUZXh0UmVuZGVyQ29tbWFuZDsgcGFyZW50OiBFbGVtZW50IHwgRG9jdW1lbnRGcmFnbWVudCB9KSB7XG4gICAgY29uc3QgeyBjb21tYW5kLCBwYXJlbnQgfSA9IGRhdGE7XG5cbiAgICBsZXQgZWxlbWVudDogRWxlbWVudCB8IG51bGwgPSBudWxsO1xuICAgIGlmIChjb21tYW5kLnBheWxvYWQgIT09ICdkb2N1bWVudCcpIHtcbiAgICAgIGlmICh0eXBlb2YgY29tbWFuZC5wYXlsb2FkID09PSAnc3RyaW5nJykge1xuICAgICAgICBlbGVtZW50ID0gdGhpcy5fcmVuZGVyZXIuY3JlYXRlRWxlbWVudChjb21tYW5kLnBheWxvYWQpO1xuXG4gICAgICAgIGlmIChjb21tYW5kLmRhdGEpIHtcbiAgICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRQcm9wZXJ0eShlbGVtZW50LCAnaW5uZXJUZXh0JywgY29tbWFuZC5kYXRhKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjb21tYW5kLmF0dHJpYnV0ZXMpIHtcbiAgICAgICAgICBmb3IgKGNvbnN0IFtuYW1lLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoY29tbWFuZC5hdHRyaWJ1dGVzKSkge1xuICAgICAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0QXR0cmlidXRlKGVsZW1lbnQsIG5hbWUsIHZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9yZW5kZXJlci5hcHBlbmRDaGlsZChwYXJlbnQsIGVsZW1lbnQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgcG9ydGFsID0gbmV3IERvbVBvcnRhbE91dGxldChcbiAgICAgICAgICBwYXJlbnQgYXMgRWxlbWVudCxcbiAgICAgICAgICB0aGlzLl9jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgICAgICAgdGhpcy5fYXBwUmVmLFxuICAgICAgICAgIHRoaXMuX2luamVjdG9yLFxuICAgICAgICAgIHRoaXMuX2RvY3VtZW50LFxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IGNvbXAgPSBuZXcgQ29tcG9uZW50UG9ydGFsKGNvbW1hbmQucGF5bG9hZCk7XG4gICAgICAgIGNvbnN0IHJlZiA9IGNvbXAuYXR0YWNoKHBvcnRhbCk7XG5cbiAgICAgICAgaWYgKGNvbW1hbmQuZGF0YSkge1xuICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgICAgKHJlZi5pbnN0YW5jZSBhcyBhbnkpLmRhdGEgPSBjb21tYW5kLmRhdGE7XG4gICAgICAgIH1cblxuICAgICAgICBlbGVtZW50ID0gcmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gbG9vcCBvdmVyIHRoZSBjb21tYW5kc1xuICAgIGZvciAoY29uc3QgY2hpbGRDb21tYW5kIG9mIGNvbW1hbmQuY2hpbGRyZW4pIHtcbiAgICAgIHRoaXMuX2V4ZWN1dGVDb21tYW5kKHsgY29tbWFuZDogY2hpbGRDb21tYW5kLCBwYXJlbnQ6IGVsZW1lbnQgPz8gcGFyZW50IH0pO1xuICAgIH1cbiAgfVxufVxuIl19
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LXJlbmRlcmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29udGVudGZ1bC9zcmMvbGliL2NvbXBvbmVudHMvcmljaC10ZXh0LXJlbmRlcmVyL3JpY2gtdGV4dC1yZW5kZXJlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUNMLGNBQWMsRUFDZCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULHdCQUF3QixFQUN4QixVQUFVLEVBQ1YsTUFBTSxFQUNOLFFBQVEsRUFDUixLQUFLLEVBQ0wsU0FBUyxFQUNULGdCQUFnQixFQUNoQixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFcEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRW5GLE9BQU8sRUFBRSwwQ0FBMEMsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQVl2RixNQUFNLE9BQU8sbUNBQW1DO0lBVmhEO1FBNkJVLGNBQVMsR0FBNEIsSUFBSSxDQUFDO1FBRTFDLGNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDOUIsZ0JBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakMsc0JBQWlCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDN0MsOEJBQXlCLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDN0QsY0FBUyxHQUFHLE1BQU0sQ0FBVyxRQUFR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QixFQUNqQixJQUFJLENBQUMseUJBQXlCLEVBQzlCLElBQUksQ0FBQyxPQUFPLEVBQ1osUUFBUSxFQUNSLElBQUksQ0FBQyxTQUFTLENBQ2YsQ0FBQztnQkFFRixNQUFNLElBQUksR0FBRyxJQUFJLGVBQWUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQ2xELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ2hDLE9BQU8sR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQzthQUN0QztTQUNGO1FBRUQseUJBQXlCO1FBQ3pCLEtBQUssTUFBTSxZQUFZLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRTtZQUMzQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsT0FBTyxJQUFJLE1BQU0sRUFBRSxDQUFDLENBQUM7U0FDNUU7SUFDSCxDQUFDOztnSUE5RlUsbUNBQW1DO29IQUFuQyxtQ0FBbUMsNExBUnBDLEVBQUU7MkZBUUQsbUNBQW1DO2tCQVYvQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQ0FBa0M7b0JBQzVDLFFBQVEsRUFBRSxFQUFFO29CQUNaLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRTt3QkFDSixLQUFLLEVBQUUsa0NBQWtDO3FCQUMxQztpQkFDRjs4QkFHSyxRQUFRO3NCQURYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRQb3J0YWwsIERvbVBvcnRhbE91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQXBwbGljYXRpb25SZWYsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgRWxlbWVudFJlZixcbiAgaW5qZWN0LFxuICBJbmplY3RvcixcbiAgSW5wdXQsXG4gIFJlbmRlcmVyMixcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ09OVEVOVEZVTF9DT05GSUcgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgUmljaFRleHRSZXNwb25zZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IENvbnRlbnRmdWxDb25maWcgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBSSUNIX1RFWFRfUkVOREVSRVJfQ09NUE9ORU5UX0RBVEEgfSBmcm9tICcuL3JpY2gtdGV4dC1yZW5kZXJlci5jb25zdGFudHMnO1xuaW1wb3J0IHsgUmljaFRleHRSZW5kZXJDb21tYW5kIH0gZnJvbSAnLi9yaWNoLXRleHQtcmVuZGVyZXIudHlwZXMnO1xuaW1wb3J0IHsgY3JlYXRlUmVuZGVyQ29tbWFuZHNGcm9tQ29udGVudGZ1bFJpY2hUZXh0IH0gZnJvbSAnLi9yaWNoLXRleHQtcmVuZGVyZXIudXRpbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2V0LWNvbnRlbnRmdWwtcmljaC10ZXh0LXJlbmRlcmVyJyxcbiAgdGVtcGxhdGU6IGBgLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZXQtY29udGVudGZ1bC1yaWNoLXRleHQtcmVuZGVyZXInLFxuICB9LFxufSlcbmV4cG9ydCBjbGFzcyBDb250ZW50ZnVsUmljaFRleHRSZW5kZXJlckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIGdldCByaWNoVGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5fcmljaFRleHQ7XG4gIH1cbiAgc2V0IHJpY2hUZXh0KHY6IFJpY2hUZXh0UmVzcG9uc2UgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5fcmljaFRleHQgPSB2ID8/IG51bGw7XG5cbiAgICAvLyBjbGVhciB0aGUgZWxlbWVudFxuICAgIHRoaXMuX3ZpZXdDb250YWluZXJSZWYuY2xlYXIoKTtcblxuICAgIGlmICghdikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbW1hbmRzID0gY3JlYXRlUmVuZGVyQ29tbWFuZHNGcm9tQ29udGVudGZ1bFJpY2hUZXh0KHsgZGF0YTogdiwgY29uZmlnOiB0aGlzLl9jb25maWcgfSk7XG5cbiAgICB0aGlzLl9yZW5kZXIoY29tbWFuZHMpO1xuICB9XG4gIHByaXZhdGUgX3JpY2hUZXh0OiBSaWNoVGV4dFJlc3BvbnNlIHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBfcmVuZGVyZXIgPSBpbmplY3QoUmVuZGVyZXIyKTtcbiAgcHJpdmF0ZSBfZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSBfdmlld0NvbnRhaW5lclJlZiA9IGluamVjdChWaWV3Q29udGFpbmVyUmVmKTtcbiAgcHJpdmF0ZSBfY29tcG9uZW50RmFjdG9yeVJlc29sdmVyID0gaW5qZWN0KENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcik7XG4gIHByaXZhdGUgX2RvY3VtZW50ID0gaW5qZWN0PERvY3VtZW50PihET0NVTUVOVCk7XG4gIHByaXZhdGUgX2FwcFJlZiA9IGluamVjdChBcHBsaWNhdGlvblJlZik7XG4gIHByaXZhdGUgX2luamVjdG9yID0gaW5qZWN0KEluamVjdG9yKTtcbiAgcHJpdmF0ZSBfY29uZmlnID0gaW5qZWN0KENPTlRFTlRGVUxfQ09ORklHLCB7IG9wdGlvbmFsOiB0cnVlIH0pID8/IG5ldyBDb250ZW50ZnVsQ29uZmlnKCk7XG5cbiAgcHJpdmF0ZSBfcmVuZGVyKGNvbW1hbmRzOiBSaWNoVGV4dFJlbmRlckNvbW1hbmRbXSkge1xuICAgIC8vIGNyZWF0ZSBhIGRvY3VtZW50IGZyYWdtZW50IHRvIGhvbGQgdGhlIGVsZW1lbnRzIHdoaWxlIHdlIGNyZWF0ZSB0aGVtXG4gICAgY29uc3QgZnJhZ21lbnQgPSBkb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7XG5cbiAgICBjb25zdCBob3N0Q29tbWFuZDogUmljaFRleHRSZW5kZXJDb21tYW5kID0ge1xuICAgICAgcGF5bG9hZDogJ2RvY3VtZW50JyxcbiAgICAgIGNoaWxkcmVuOiBjb21tYW5kcyxcbiAgICB9O1xuXG4gICAgLy8gbG9vcCBvdmVyIHRoZSBjb21tYW5kc1xuICAgIHRoaXMuX2V4ZWN1dGVDb21tYW5kKHsgY29tbWFuZDogaG9zdENvbW1hbmQsIHBhcmVudDogZnJhZ21lbnQgfSk7XG5cbiAgICAvLyBhcHBlbmQgdGhlIGZyYWdtZW50IHRvIHRoZSBob3N0IGVsZW1lbnRcbiAgICB0aGlzLl9yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIGZyYWdtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgX2V4ZWN1dGVDb21tYW5kKGRhdGE6IHsgY29tbWFuZDogUmljaFRleHRSZW5kZXJDb21tYW5kOyBwYXJlbnQ6IEVsZW1lbnQgfCBEb2N1bWVudEZyYWdtZW50IH0pIHtcbiAgICBjb25zdCB7IGNvbW1hbmQsIHBhcmVudCB9ID0gZGF0YTtcblxuICAgIGxldCBlbGVtZW50OiBFbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gICAgaWYgKGNvbW1hbmQucGF5bG9hZCAhPT0gJ2RvY3VtZW50Jykge1xuICAgICAgaWYgKHR5cGVvZiBjb21tYW5kLnBheWxvYWQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGVsZW1lbnQgPSB0aGlzLl9yZW5kZXJlci5jcmVhdGVFbGVtZW50KGNvbW1hbmQucGF5bG9hZCk7XG5cbiAgICAgICAgaWYgKGNvbW1hbmQuZGF0YSkge1xuICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFByb3BlcnR5KGVsZW1lbnQsICdpbm5lclRleHQnLCBjb21tYW5kLmRhdGEpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNvbW1hbmQuYXR0cmlidXRlcykge1xuICAgICAgICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhjb21tYW5kLmF0dHJpYnV0ZXMpKSB7XG4gICAgICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRBdHRyaWJ1dGUoZWxlbWVudCwgbmFtZSwgdmFsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLmFwcGVuZENoaWxkKHBhcmVudCwgZWxlbWVudCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBpbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHByb3ZpZGU6IFJJQ0hfVEVYVF9SRU5ERVJFUl9DT01QT05FTlRfREFUQSxcbiAgICAgICAgICAgICAgdXNlVmFsdWU6IGRhdGEsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcGFyZW50OiB0aGlzLl9pbmplY3RvcixcbiAgICAgICAgfSk7XG5cbiAgICAgICAgY29uc3QgcG9ydGFsID0gbmV3IERvbVBvcnRhbE91dGxldChcbiAgICAgICAgICBwYXJlbnQgYXMgRWxlbWVudCxcbiAgICAgICAgICB0aGlzLl9jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgICAgICAgdGhpcy5fYXBwUmVmLFxuICAgICAgICAgIGluamVjdG9yLFxuICAgICAgICAgIHRoaXMuX2RvY3VtZW50LFxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IGNvbXAgPSBuZXcgQ29tcG9uZW50UG9ydGFsKGNvbW1hbmQucGF5bG9hZCk7XG4gICAgICAgIGNvbnN0IHJlZiA9IGNvbXAuYXR0YWNoKHBvcnRhbCk7XG4gICAgICAgIGVsZW1lbnQgPSByZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBsb29wIG92ZXIgdGhlIGNvbW1hbmRzXG4gICAgZm9yIChjb25zdCBjaGlsZENvbW1hbmQgb2YgY29tbWFuZC5jaGlsZHJlbikge1xuICAgICAgdGhpcy5fZXhlY3V0ZUNvbW1hbmQoeyBjb21tYW5kOiBjaGlsZENvbW1hbmQsIHBhcmVudDogZWxlbWVudCA/PyBwYXJlbnQgfSk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export const RICH_TEXT_RENDERER_COMPONENT_DATA = new InjectionToken('RICH_TEXT_RENDERER_COMPONENT_DATA');
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LXJlbmRlcmVyLmNvbnN0YW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29udGVudGZ1bC9zcmMvbGliL2NvbXBvbmVudHMvcmljaC10ZXh0LXJlbmRlcmVyL3JpY2gtdGV4dC1yZW5kZXJlci5jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxNQUFNLENBQUMsTUFBTSxpQ0FBaUMsR0FBRyxJQUFJLGNBQWMsQ0FBVSxtQ0FBbUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNvbnN0IFJJQ0hfVEVYVF9SRU5ERVJFUl9DT01QT05FTlRfREFUQSA9IG5ldyBJbmplY3Rpb25Ub2tlbjx1bmtub3duPignUklDSF9URVhUX1JFTkRFUkVSX0NPTVBPTkVOVF9EQVRBJyk7XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LXJlbmRlcmVyLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb250ZW50ZnVsL3NyYy9saWIvY29tcG9uZW50cy9yaWNoLXRleHQtcmVuZGVyZXIvcmljaC10ZXh0LXJlbmRlcmVyLnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFJpY2hUZXh0UmVuZGVyQ29tbWFuZCB7XG4gIHBheWxvYWQ6IHN0cmluZyB8IChuZXcgKCkgPT4gdW5rbm93bik7XG4gIGRhdGE/OiB1bmtub3duO1xuICBhdHRyaWJ1dGVzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgY2hpbGRyZW46IFJpY2hUZXh0UmVuZGVyQ29tbWFuZFtdO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LXJlbmRlcmVyLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb250ZW50ZnVsL3NyYy9saWIvY29tcG9uZW50cy9yaWNoLXRleHQtcmVuZGVyZXIvcmljaC10ZXh0LXJlbmRlcmVyLnR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250ZW50ZnVsQXNzZXQsIENvbnRlbnRmdWxFbnRyeUJhc2UgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmljaFRleHRSZW5kZXJDb21tYW5kIHtcbiAgcGF5bG9hZDogc3RyaW5nIHwgKG5ldyAoKSA9PiB1bmtub3duKTtcbiAgZGF0YT86IHVua25vd247XG4gIGF0dHJpYnV0ZXM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICBjaGlsZHJlbjogUmljaFRleHRSZW5kZXJDb21tYW5kW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudGZ1bFJlc291cmNlTWFwIHtcbiAgcmVhZG9ubHkgYXNzZXRzQmxvY2s6IE1hcDxzdHJpbmcsIENvbnRlbnRmdWxBc3NldD47XG4gIHJlYWRvbmx5IGVudHJpZXNJbmxpbmU6IE1hcDxzdHJpbmcsIENvbnRlbnRmdWxFbnRyeUJhc2U+O1xuICByZWFkb25seSBlbnRyaWVzQmxvY2s6IE1hcDxzdHJpbmcsIENvbnRlbnRmdWxFbnRyeUJhc2U+O1xufVxuIl19
@@ -6,15 +6,12 @@ import { ContentfulVideoComponent } from '../video';
6
6
  export const createRenderCommandsFromContentfulRichText = (options) => {
7
7
  const { data, config } = options;
8
8
  const commands = [];
9
- const assetMap = new Map();
10
9
  const assetComponents = getAssetComponentsFromConfig(config);
11
- for (const asset of data.links.assets.block) {
12
- assetMap.set(asset.sys.id, asset);
13
- }
14
- createContentfulRenderCommand(data.json, { children: commands, payload: data.json.nodeType }, assetMap, config.useTailwindClasses, assetComponents, config.customComponents);
10
+ const resourceMap = createContentfulResourceMap(data.links);
11
+ createContentfulRenderCommand(data.json, { children: commands, payload: data.json.nodeType }, resourceMap, config.useTailwindClasses, assetComponents, config.customComponents);
15
12
  return commands;
16
13
  };
17
- export const createContentfulRenderCommand = (node, parent, assetMap, useTailwindClasses, assetComponents, customComponents) => {
14
+ export const createContentfulRenderCommand = (node, parent, resourceMap, useTailwindClasses, assetComponents, customComponents) => {
18
15
  const { nodeType, data: nodeData } = node;
19
16
  const { children, marks, value } = getContentfulNodeProps(node);
20
17
  const command = {
@@ -30,8 +27,9 @@ export const createContentfulRenderCommand = (node, parent, assetMap, useTailwin
30
27
  },
31
28
  children: [],
32
29
  };
30
+ const entryId = nodeData['target']?.sys?.id;
33
31
  if (nodeType === BLOCKS.EMBEDDED_ASSET) {
34
- const asset = assetMap.get(nodeData['target']?.sys?.id);
32
+ const asset = resourceMap.assetsBlock.get(entryId);
35
33
  if (asset) {
36
34
  const isImage = asset.contentType.startsWith('image/');
37
35
  const isVideo = asset.contentType.startsWith('video/');
@@ -50,21 +48,30 @@ export const createContentfulRenderCommand = (node, parent, assetMap, useTailwin
50
48
  command.payload = assetComponents.file;
51
49
  }
52
50
  }
51
+ else {
52
+ console.warn(`No asset found for entry id "${entryId}"!`, nodeData);
53
+ }
53
54
  }
54
55
  else if (nodeType === BLOCKS.EMBEDDED_ENTRY || nodeType === INLINES.EMBEDDED_ENTRY) {
55
- const componentId = nodeData['target']?.sys?.contentType?.sys?.id;
56
- const component = customComponents?.[componentId];
57
- if (component) {
58
- command.payload = component;
59
- command.data = nodeData['target']?.fields;
56
+ const entry = resourceMap.entriesBlock.get(entryId) ?? resourceMap.entriesInline.get(entryId);
57
+ if (entry) {
58
+ const type = entry?.__typename ?? 'ET_UNKNOWN';
59
+ const component = customComponents?.[type];
60
+ if (component) {
61
+ command.payload = component;
62
+ command.data = entry;
63
+ }
64
+ else {
65
+ command.data = `ERROR: No component found for embedded entry "${type}" as "${nodeType}"!`;
66
+ }
60
67
  }
61
68
  else {
62
- command.data = `No component found for embedded entry ${componentId} as ${nodeType}!`;
69
+ console.warn(`No entry found for entry id "${entryId}"!`, nodeData);
63
70
  }
64
71
  }
65
72
  if (children && (children.length !== 1 || children[0].nodeType !== 'text')) {
66
73
  children.forEach((child) => {
67
- createContentfulRenderCommand(child, command, assetMap, useTailwindClasses, assetComponents, customComponents);
74
+ createContentfulRenderCommand(child, command, resourceMap, useTailwindClasses, assetComponents, customComponents);
68
75
  });
69
76
  }
70
77
  parent.children.push(command);
@@ -170,4 +177,25 @@ export const translateContentfulNodeTypeToHtmlTag = (nodeType) => {
170
177
  return 'div';
171
178
  }
172
179
  };
173
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LXJlbmRlcmVyLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL3JpY2gtdGV4dC1yZW5kZXJlci9yaWNoLXRleHQtcmVuZGVyZXIudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQVMsTUFBTSxFQUFVLE9BQU8sRUFBYyxNQUFNLDZCQUE2QixDQUFDO0FBR3pGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDbEQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUdwRCxNQUFNLENBQUMsTUFBTSwwQ0FBMEMsR0FBRyxDQUFDLE9BRzFELEVBQUUsRUFBRTtJQUNILE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDO0lBRWpDLE1BQU0sUUFBUSxHQUE0QixFQUFFLENBQUM7SUFDN0MsTUFBTSxRQUFRLEdBQUcsSUFBSSxHQUFHLEVBQTJCLENBQUM7SUFFcEQsTUFBTSxlQUFlLEdBQUcsNEJBQTRCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFN0QsS0FBSyxNQUFNLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUU7UUFDM0MsUUFBUSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztLQUNuQztJQUVELDZCQUE2QixDQUMzQixJQUFJLENBQUMsSUFBSSxFQUNULEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUs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Q2YsT0FBTyxZQUFZLENBQUM7UUFDdEIsS0FBSyxNQUFNLENBQUMsS0FBSztZQUNmLE9BQU8sT0FBTyxDQUFDO1FBQ2pCLEtBQUssTUFBTSxDQUFDLFNBQVM7WUFDbkIsT0FBTyxJQUFJLENBQUM7UUFDZCxLQUFLLE1BQU0sQ0FBQyxVQUFVO1lBQ3BCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsS0FBSyxNQUFNLENBQUMsaUJBQWlCO1lBQzNCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsS0FBSyxNQUFNLENBQUMsY0FBYztZQUN4QixPQUFPLEtBQUssQ0FBQztRQUVmLEtBQUssT0FBTyxDQUFDLFNBQVM7WUFDcEIsT0FBTyxHQUFHLENBQUM7UUFDYixLQUFLLE9BQU8sQ0FBQyxlQUFlO1lBQzFCLE9BQU8sR0FBRyxDQUFDO1FBQ2IsS0FBSyxPQUFPLENBQUMsZUFBZTtZQUMxQixPQUFPLEdBQUcsQ0FBQztRQUViLEtBQUssTUFBTTtZQUNULE9BQU8sTUFBTSxDQUFDO1FBRWhCLGtDQUFrQztRQUNsQyxLQUFLLFVBQVU7WUFDYixPQUFPLFVBQVUsQ0FBQztRQUVwQiw0Q0FBNEM7UUFDNUMsS0FBSyxNQUFNLENBQUMsY0FBYztZQUN4QixPQUFPLEtBQUssQ0FBQztRQUNmLEtBQUssT0FBTyxDQUFDLGNBQWM7WUFDekIsT0FBTyxLQUFLLENBQUM7UUFFZjtZQUNFLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0FBQ0gsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50VHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQmxvY2ssIEJMT0NLUywgSW5saW5lLCBJTkxJTkVTLCBNYXJrLCBUZXh0IH0gZnJvbSAnQGNvbnRlbnRmdWwvcmljaC10ZXh0LXR5cGVzJztcbmltcG9ydCB7IFJpY2hUZXh0UmVzcG9uc2UsIENvbnRlbnRmdWxBc3NldCB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IENvbnRlbnRmdWxBc3NldENvbXBvbmVudHMsIENvbnRlbnRmdWxDb25maWcgfSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBDb250ZW50ZnVsQXVkaW9Db21wb25lbnQgfSBmcm9tICcuLi9hdWRpbyc7XG5pbXBvcnQgeyBDb250ZW50ZnVsRmlsZUNvbXBvbmVudCB9IGZyb20gJy4uL2ZpbGUnO1xuaW1wb3J0IHsgQ29udGVudGZ1bEltYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vaW1hZ2UnO1xuaW1wb3J0IHsgQ29udGVudGZ1bFZpZGVvQ29tcG9uZW50IH0gZnJvbSAnLi4vdmlkZW8nO1xuaW1wb3J0IHsgUmljaFRleHRSZW5kZXJDb21tYW5kIH0gZnJvbSAnLi9yaWNoLXRleHQtcmVuZGVyZXIudHlwZXMnO1xuXG5leHBvcnQgY29uc3QgY3JlYXRlUmVuZGVyQ29tbWFuZHNGcm9tQ29udGVudGZ1bFJpY2hUZXh0ID0gKG9wdGlvbnM6IHtcbiAgZGF0YTogUmljaFRleHRSZXNwb25zZTtcbiAgY29uZmlnOiBDb250ZW50ZnVsQ29uZmlnO1xufSkgPT4ge1xuICBjb25zdCB7IGRhdGEsIGNvbmZpZyB9ID0gb3B0aW9ucztcblxuICBjb25zdCBjb21tYW5kczogUmljaFRleHRSZW5kZXJDb21tYW5kW10gPSBbXTtcbiAgY29uc3QgYXNzZXRNYXAgPSBuZXcgTWFwPHN0cmluZywgQ29udGVudGZ1bEFzc2V0PigpO1xuXG4gIGNvbnN0IGFzc2V0Q29tcG9uZW50cyA9IGdldEFzc2V0Q29tcG9uZW50c0Zyb21Db25maWcoY29uZmlnKTtcblxuICBmb3IgKGNvbnN0IGFzc2V0IG9mIGRhdGEubGlua3MuYXNzZXRzLmJsb2NrKSB7XG4gICAgYXNzZXRNYXAuc2V0KGFzc2V0LnN5cy5pZCwgYXNzZXQpO1xuICB9XG5cbiAgY3JlYXRlQ29udGVudGZ1bFJlbmRlckNvbW1hbmQoXG4gICAgZGF0YS5qc29uLFxuICAgIHsgY2hpbGRyZW46IGNvbW1hbmRzLCBwYXlsb2FkOiBkYXRhLmpzb24ubm9kZVR5cGUgfSxcbiAgICBhc3NldE1hcCxcbiAgICBjb25maWcudXNlVGFpbHdpbmRDbGFzc2VzLFxuICAgIGFzc2V0Q29tcG9uZW50cyxcbiAgICBjb25maWcuY3VzdG9tQ29tcG9uZW50cyxcbiAgKTtcblxuICByZXR1cm4gY29tbWFuZHM7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlQ29udGVudGZ1bFJlbmRlckNvbW1hbmQgPSAoXG4gIG5vZGU6IEJsb2NrIHwgSW5saW5lIHwgVGV4dCxcbiAgcGFyZW50OiBSaWNoVGV4dFJlbmRlckNvbW1hbmQsXG4gIGFzc2V0TWFwOiBNYXA8c3RyaW5nLCBDb250ZW50ZnVsQXNzZXQ+LFxuICB1c2VUYWlsd2luZENsYXNzZXM6IGJvb2xlYW4sXG4gIGFzc2V0Q29tcG9uZW50czogQ29udGVudGZ1bEFzc2V0Q29tcG9uZW50cyxcbiAgY3VzdG9tQ29tcG9uZW50czogUmVjb3JkPHN0cmluZywgQ29tcG9uZW50VHlwZTx1bmtub3duPj4gfCB1bmRlZmluZWQsXG4pID0+IHtcbiAgY29uc3QgeyBub2RlVHlwZSwgZGF0YTogbm9kZURhdGEgfSA9IG5vZGU7XG5cbiAgY29uc3QgeyBjaGlsZHJlbiwgbWFya3MsIHZhbHVlIH0gPSBnZXRDb250ZW50ZnVsTm9kZVByb3BzKG5vZGUpO1xuXG4gIGNvbnN0IGNvbW1hbmQ6IFJpY2hUZXh0UmVuZGVyQ29tbWFuZCA9IHtcbiAgICBwYXlsb2FkOiB0cmFuc2xhdGVDb250ZW50ZnVsTm9kZVR5cGVUb0h0bWxUYWcobm9kZVR5cGUpLFxuICAgIGRhdGE6IHZhbHVlLFxuICAgIGF0dHJpYnV0ZXM6IHtcbiAgICAgIC4uLihtYXJrc1xuICAgICAgICA/IHtcbiAgICAgICAgICAgIGNsYXNzOiB0cmFuc2Zvcm1Db250ZW50ZnVsTWFya3MobWFya3MsIHVzZVRhaWx3aW5kQ2xhc3NlcyksXG4gICAgICAgICAgfVxuICAgICAgICA6IHt9KSxcbiAgICAgIC4uLihub2RlRGF0YVsndXJpJ10gPyB7IGhyZWY6IG5vZGVEYXRhWyd1cmknXSwgdGFyZ2V0OiAnX2JsYW5rJyB9IDoge30pLFxuICAgIH0sXG4gICAgY2hpbGRyZW46IFtdLFxuICB9O1xuXG4gIGlmIChub2RlVHlwZSA9PT0gQkxPQ0tTLkVNQkVEREVEX0FTU0VUKSB7XG4gICAgY29uc3QgYXNzZXQgPSBhc3NldE1hcC5nZXQobm9kZURhdGFbJ3RhcmdldCddPy5zeXM/LmlkKTtcblxuICAgIGlmIChhc3NldCkge1xuICAgICAgY29uc3QgaXNJbWFnZSA9IGFzc2V0LmNvbnRlbnRUeXBlLnN0YXJ0c1dpdGgoJ2ltYWdlLycpO1xuICAgICAgY29uc3QgaXNWaWRlbyA9IGFzc2V0LmNvbnRlbnRUeXBlLnN0YXJ0c1dpdGgoJ3ZpZGVvLycpO1xuICAgICAgY29uc3QgaXNBdWRpbyA9IGFzc2V0LmNvbnRlbnRUeXBlLnN0YXJ0c1dpdGgoJ2F1ZGlvLycpO1xuXG4gICAgICBjb21tYW5kLmRhdGEgPSBhc3NldDtcblxuICAgICAgaWYgKGlzSW1hZ2UpIHtcbiAgICAgICAgY29tbWFuZC5wYXlsb2FkID0gYXNzZXRDb21wb25lbnRzLmltYWdlO1xuICAgICAgfSBlbHNlIGlmIChpc1ZpZGVvKSB7XG4gICAgICAgIGNvbW1hbmQucGF5bG9hZCA9IGFzc2V0Q29tcG9uZW50cy52aWRlbztcbiAgICAgIH0gZWxzZSBpZiAoaXNBdWRpbykge1xuICAgICAgICBjb21tYW5kLnBheWxvYWQgPSBhc3NldENvbXBvbmVudHMuYXVkaW87XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb21tYW5kLnBheWxvYWQgPSBhc3NldENvbXBvbmVudHMuZmlsZTtcbiAgICAgIH1cbiAgICB9XG4gIH0gZWxzZSBpZiAobm9kZVR5cGUgPT09IEJMT0NLUy5FTUJFRERFRF9FTlRSWSB8fCBub2RlVHlwZSA9PT0gSU5MSU5FUy5FTUJFRERFRF9FTlRSWSkge1xuICAgIGNvbnN0IGNvbXBvbmVudElkID0gbm9kZURhdGFbJ3RhcmdldCddPy5zeXM/LmNvbnRlbnRUeXBlPy5zeXM/LmlkO1xuICAgIGNvbnN0IGNvbXBvbmVudCA9IGN1c3RvbUNvbXBvbmVudHM/Lltjb21wb25lbnRJZF07XG5cbiAgICBpZiAoY29tcG9uZW50KSB7XG4gICAgICBjb21tYW5kLnBheWxvYWQgPSBjb21wb25lbnQ7XG4gICAgICBjb21tYW5kLmRhdGEgPSBub2RlRGF0YVsndGFyZ2V0J10/LmZpZWxkcztcbiAgICB9IGVsc2Uge1xuICAgICAgY29tbWFuZC5kYXRhID0gYE5vIGNvbXBvbmVudCBmb3VuZCBmb3IgZW1iZWRkZWQgZW50cnkgJHtjb21wb25lbnRJZH0gYXMgJHtub2RlVHlwZX0hYDtcbiAgICB9XG4gIH1cblxuICBpZiAoY2hpbGRyZW4gJiYgKGNoaWxkcmVuLmxlbmd0aCAhPT0gMSB8fCBjaGlsZHJlblswXS5ub2RlVHlwZSAhPT0gJ3RleHQnKSkge1xuICAgIGNoaWxkcmVuLmZvckVhY2goKGNoaWxkKSA9PiB7XG4gICAgICBjcmVhdGVDb250ZW50ZnVsUmVuZGVyQ29tbWFuZChjaGlsZCwgY29tbWFuZCwgYXNzZXRNYXAsIHVzZVRhaWx3aW5kQ2xhc3NlcywgYXNzZXRDb21wb25lbnRzLCBjdXN0b21Db21wb25lbnRzKTtcbiAgICB9KTtcbiAgfVxuXG4gIHBhcmVudC5jaGlsZHJlbi5wdXNoKGNvbW1hbmQpO1xuXG4gIHJldHVybiBjb21tYW5kO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldENvbnRlbnRmdWxOb2RlUHJvcHMgPSAobm9kZTogQmxvY2sgfCBJbmxpbmUgfCBUZXh0KSA9PiB7XG4gIGNvbnN0IGNoaWxkcmVuID0gJ2NvbnRlbnQnIGluIG5vZGUgPyBub2RlLmNvbnRlbnQgOiBudWxsO1xuICBsZXQgbWFya3M6IE1hcmtbXSB8IG51bGwgPSBudWxsO1xuICBsZXQgdmFsdWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIGlmIChjaGlsZHJlbiAmJiBjaGlsZHJlbi5sZW5ndGggPT09IDEgJiYgY2hpbGRyZW5bMF0ubm9kZVR5cGUgPT09ICd0ZXh0Jykge1xuICAgIG1hcmtzID0gY2hpbGRyZW5bMF0ubWFya3M/Lmxlbmd0aCA/IGNoaWxkcmVuWzBdLm1hcmtzIDogbnVsbDtcbiAgICB2YWx1ZSA9IGNoaWxkcmVuWzBdLnZhbHVlO1xuICB9IGVsc2Uge1xuICAgIG1hcmtzID0gJ21hcmtzJyBpbiBub2RlID8gKG5vZGUubWFya3M/Lmxlbmd0aCA/IG5vZGUubWFya3MgOiBudWxsKSA6IG51bGw7XG4gICAgdmFsdWUgPSAndmFsdWUnIGluIG5vZGUgPyBub2RlLnZhbHVlIDogbnVsbDtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgY2hpbGRyZW4sXG4gICAgbWFya3MsXG4gICAgdmFsdWUsXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0QXNzZXRDb21wb25lbnRzRnJvbUNvbmZpZyA9IChjb25maWc6IENvbnRlbnRmdWxDb25maWcpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBmaWxlOiBjb25maWcuY29tcG9uZW50cz8uZmlsZSA/PyBDb250ZW50ZnVsRmlsZUNvbXBvbmVudCxcbiAgICBpbWFnZTogY29uZmlnLmNvbXBvbmVudHM/LmltYWdlID8/IENvbnRlbnRmdWxJbWFnZUNvbXBvbmVudCxcbiAgICB2aWRlbzogY29uZmlnLmNvbXBvbmVudHM/LnZpZGVvID8/IENvbnRlbnRmdWxWaWRlb0NvbXBvbmVudCxcbiAgICBhdWRpbzogY29uZmlnLmNvbXBvbmVudHM/LmF1ZGlvID8/IENvbnRlbnRmdWxBdWRpb0NvbXBvbmVudCxcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCB0cmFuc2Zvcm1Db250ZW50ZnVsTWFya3MgPSAobWFya3M6IE1hcmtbXSwgdXNlVGFpbHdpbmRDbGFzc2VzOiBib29sZWFuKSA9PiB7XG4gIHJldHVybiBtYXJrc1xuICAgIC5tYXAoKG1hcmspID0+IHtcbiAgICAgIHN3aXRjaCAobWFyay50eXBlKSB7XG4gICAgICAgIGNhc2UgJ2JvbGQnOlxuICAgICAgICAgIHJldHVybiB1c2VUYWlsd2luZENsYXNzZXMgPyAnZm9udC1ib2xkJyA6IG1hcmsudHlwZTtcbiAgICAgICAgY2FzZSAnaXRhbGljJzpcbiAgICAgICAgICByZXR1cm4gdXNlVGFpbHdpbmRDbGFzc2VzID8gJ2l0YWxpYycgOiBtYXJrLnR5cGU7XG4gICAgICAgIGNhc2UgJ3VuZGVybGluZSc6XG4gICAgICAgICAgcmV0dXJuIHVzZVRhaWx3aW5kQ2xhc3NlcyA/ICd1bmRlcmxpbmUnIDogbWFyay50eXBlO1xuICAgICAgICBjYXNlICdjb2RlJzpcbiAgICAgICAgICByZXR1cm4gdXNlVGFpbHdpbmRDbGFzc2VzID8gJ2ZvbnQtbW9ubycgOiBtYXJrLnR5cGU7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgcmV0dXJuIG1hcmsudHlwZTtcbiAgICAgIH1cbiAgICB9KVxuICAgIC5qb2luKCcgJyk7XG59O1xuXG5leHBvcnQgY29uc3QgdHJhbnNsYXRlQ29udGVudGZ1bE5vZGVUeXBlVG9IdG1sVGFnID0gKG5vZGVUeXBlOiAndGV4dCcgfCBCTE9DS1MgfCBJTkxJTkVTKSA9PiB7XG4gIHN3aXRjaCAobm9kZVR5cGUpIHtcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzE6XG4gICAgICByZXR1cm4gJ2gxJztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzI6XG4gICAgICByZXR1cm4gJ2gyJztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzM6XG4gICAgICByZXR1cm4gJ2gzJztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzQ6XG4gICAgICByZXR1cm4gJ2g0JztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzU6XG4gICAgICByZXR1cm4gJ2g1JztcbiAgICBjYXNlIEJMT0NLUy5IRUFESU5HXzY6XG4gICAgICByZXR1cm4gJ2g2JztcbiAgICBjYXNlIEJMT0NLUy5QQVJBR1JBUEg6XG4gICAgICByZXR1cm4gJ3AnO1xuICAgIGNhc2UgQkxPQ0tTLlVMX0xJU1Q6XG4gICAgICByZXR1cm4gJ3VsJztcbiAgICBjYXNlIEJMT0NLUy5PTF9MSVNUOlxuICAgICAgcmV0dXJuICdvbCc7XG4gICAgY2FzZSBCTE9DS1MuTElTVF9JVEVNOlxuICAgICAgcmV0dXJuICdsaSc7XG4gICAgY2FzZSBCTE9DS1MuSFI6XG4gICAgICByZXR1cm4gJ2hyJztcbiAgICBjYXNlIEJMT0NLUy5RVU9URTpcbiAgICAgIHJldHVybiAnYmxvY2txdW90ZSc7XG4gICAgY2FzZSBCTE9DS1MuVEFCTEU6XG4gICAgICByZXR1cm4gJ3RhYmxlJztcbiAgICBjYXNlIEJMT0NLUy5UQUJMRV9ST1c6XG4gICAgICByZXR1cm4gJ3RyJztcbiAgICBjYXNlIEJMT0NLUy5UQUJMRV9DRUxMOlxuICAgICAgcmV0dXJuICd0ZCc7XG4gICAgY2FzZSBCTE9DS1MuVEFCTEVfSEVBREVSX0NFTEw6XG4gICAgICByZXR1cm4gJ3RoJztcbiAgICBjYXNlIEJMT0NLUy5FTUJFRERFRF9BU1NFVDpcbiAgICAgIHJldHVybiAnZGl2JztcblxuICAgIGNhc2UgSU5MSU5FUy5IWVBFUkxJTks6XG4gICAgICByZXR1cm4gJ2EnO1xuICAgIGNhc2UgSU5MSU5FUy5FTlRSWV9IWVBFUkxJTks6XG4gICAgICByZXR1cm4gJ2EnO1xuICAgIGNhc2UgSU5MSU5FUy5BU1NFVF9IWVBFUkxJTks6XG4gICAgICByZXR1cm4gJ2EnO1xuXG4gICAgY2FzZSAndGV4dCc6XG4gICAgICByZXR1cm4gJ3NwYW4nO1xuXG4gICAgLy8gV2lsbCBiZSBpZ25vcmVkIGJ5IHRoZSByZW5kZXJlclxuICAgIGNhc2UgJ2RvY3VtZW50JzpcbiAgICAgIHJldHVybiAnZG9jdW1lbnQnO1xuXG4gICAgLy8gVE9ETyhUUkIpOiBUaGVzZSBzaG91bGQgcmVuZGVyIGNvbXBvbmVudHNcbiAgICBjYXNlIEJMT0NLUy5FTUJFRERFRF9FTlRSWTpcbiAgICAgIHJldHVybiAnZGl2JztcbiAgICBjYXNlIElOTElORVMuRU1CRURERURfRU5UUlk6XG4gICAgICByZXR1cm4gJ2Rpdic7XG5cbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuICdkaXYnO1xuICB9XG59O1xuIl19
180
+ export const createContentfulResourceMap = (links) => {
181
+ const resourceMap = {
182
+ assetsBlock: createContentfulMap(links?.assets?.block),
183
+ entriesInline: createContentfulMap(links?.entries?.inline),
184
+ entriesBlock: createContentfulMap(links?.entries?.block),
185
+ };
186
+ return resourceMap;
187
+ };
188
+ export const createContentfulMap = (links) => {
189
+ const assetMap = new Map();
190
+ if (links) {
191
+ for (const link of links) {
192
+ if (!link?.sys?.id) {
193
+ console.warn('Link has no sys.id property. Please include it inside your query.', link);
194
+ continue;
195
+ }
196
+ assetMap.set(link.sys.id, link);
197
+ }
198
+ }
199
+ return assetMap;
200
+ };
201
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LXJlbmRlcmVyLnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbnRlbnRmdWwvc3JjL2xpYi9jb21wb25lbnRzL3JpY2gtdGV4dC1yZW5kZXJlci9yaWNoLXRleHQtcmVuZGVyZXIudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQVMsTUFBTSxFQUFVLE9BQU8sRUFBYyxNQUFNLDZCQUE2QixDQUFDO0FBR3pGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDbEQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUdwRCxNQUFNLENBQUMsTUFBTSwwQ0FBMEMsR0FBRyxDQUFDLE9BRzFELEVBQUUsRUFBRTtJQUNILE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDO0lBRWpDLE1BQU0sUUFBUSxHQUE0QixFQUFFLENBQUM7SUFDN0MsTUFBTSxlQUFlLEdBQUcsNEJBQTRCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0QsTUFBTSxXQUFXLEdBQUcsMkJBQTJCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRTVELDZCQUE2QixDQUMzQixJQUFJLENBQUMsSUFBSSxFQUNULEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFDbkQsV0FBVyxFQUNYLE1BQU0sQ0FBQyxrQkFBa0IsRUFDekIsZUFBZSxFQUNmLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FDeEIsQ0FBQztJQUVGLE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FB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UUFDdkUsYUFBYSxFQUFFLG1CQUFtQixDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDO1FBQzFELFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQztLQUNoRCxDQUFDO0lBRVgsT0FBTyxXQUFXLENBQUM7QUFDckIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBZ0MsS0FBa0MsRUFBRSxFQUFFO0lBQ3ZHLE1BQU0sUUFBUSxHQUFHLElBQUksR0FBRyxFQUFhLENBQUM7SUFFdEMsSUFBSSxLQUFLLEVBQUU7UUFDVCxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRTtZQUN4QixJQUFJLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUU7Z0JBQ2xCLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUVBQW1FLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQ3hGLFNBQVM7YUFDVjtZQUVELFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDakM7S0FDRjtJQUVELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFR5cGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IEJsb2NrLCBCTE9DS1MsIElubGluZSwgSU5MSU5FUywgTWFyaywgVGV4dCB9IGZyb20gJ0Bjb250ZW50ZnVsL3JpY2gtdGV4dC10eXBlcyc7XG5pbXBvcnQgeyBDb250ZW50ZnVsQXNzZXQsIENvbnRlbnRmdWxFbnRyeUJhc2UsIFJpY2hUZXh0UmVzcG9uc2UgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBDb250ZW50ZnVsQXNzZXRDb21wb25lbnRzLCBDb250ZW50ZnVsQ29uZmlnIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgQ29udGVudGZ1bEF1ZGlvQ29tcG9uZW50IH0gZnJvbSAnLi4vYXVkaW8nO1xuaW1wb3J0IHsgQ29udGVudGZ1bEZpbGVDb21wb25lbnQgfSBmcm9tICcuLi9maWxlJztcbmltcG9ydCB7IENvbnRlbnRmdWxJbWFnZUNvbXBvbmVudCB9IGZyb20gJy4uL2ltYWdlJztcbmltcG9ydCB7IENvbnRlbnRmdWxWaWRlb0NvbXBvbmVudCB9IGZyb20gJy4uL3ZpZGVvJztcbmltcG9ydCB7IENvbnRlbnRmdWxSZXNvdXJjZU1hcCwgUmljaFRleHRSZW5kZXJDb21tYW5kIH0gZnJvbSAnLi9yaWNoLXRleHQtcmVuZGVyZXIudHlwZXMnO1xuXG5leHBvcnQgY29uc3QgY3JlYXRlUmVuZGVyQ29tbWFuZHNGcm9tQ29udGVudGZ1bFJpY2hUZXh0ID0gKG9wdGlvbnM6IHtcbiAgZGF0YTogUmljaFRleHRSZXNwb25zZTtcbiAgY29uZmlnOiBDb250ZW50ZnVsQ29uZmlnO1xufSkgPT4ge1xuICBjb25zdCB7IGRhdGEsIGNvbmZpZyB9ID0gb3B0aW9ucztcblxuICBjb25zdCBjb21tYW5kczogUmljaFRleHRSZW5kZXJDb21tYW5kW10gPSBbXTtcbiAgY29uc3QgYXNzZXRDb21wb25lbnRzID0gZ2V0QXNzZXRDb21wb25lbnRzRnJvbUNvbmZpZyhjb25maWcpO1xuICBjb25zdCByZXNvdXJjZU1hcCA9IGNyZWF0ZUNvbnRlbnRmdWxSZXNvdXJjZU1hcChkYXRhLmxpbmtzKTtcblxuICBjcmVhdGVDb250ZW50ZnVsUmVuZGVyQ29tbWFuZChcbiAgICBkYXRhLmpzb24sXG4gICAgeyBjaGlsZHJlbjogY29tbWFuZHMsIHBheWxvYWQ6IGRhdGEuanNvbi5ub2RlVHlwZSB9LFxuICAgIHJlc291cmNlTWFwLFxuICAgIGNvbmZpZy51c2VUYWlsd2luZENsYXNzZXMsXG4gICAgYXNzZXRDb21wb25lbnRzLFxuICAgIGNvbmZpZy5jdXN0b21Db21wb25lbnRzLFxuICApO1xuXG4gIHJldHVybiBjb21tYW5kcztcbn07XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVDb250ZW50ZnVsUmVuZGVyQ29tbWFuZCA9IChcbiAgbm9kZTogQmxvY2sgfCBJbmxpbmUgfCBUZXh0LFxuICBwYXJlbnQ6IFJpY2hUZXh0UmVuZGVyQ29tbWFuZCxcbiAgcmVzb3VyY2VNYXA6IENvbnRlbnRmdWxSZXNvdXJjZU1hcCxcbiAgdXNlVGFpbHdpbmRDbGFzc2VzOiBib29sZWFuLFxuICBhc3NldENvbXBvbmVudHM6IENvbnRlbnRmdWxBc3NldENvbXBvbmVudHMsXG4gIGN1c3RvbUNvbXBvbmVudHM6IFJlY29yZDxzdHJpbmcsIENvbXBvbmVudFR5cGU8dW5rbm93bj4+IHwgdW5kZWZpbmVkLFxuKSA9PiB7XG4gIGNvbnN0IHsgbm9kZVR5cGUsIGRhdGE6IG5vZGVEYXRhIH0gPSBub2RlO1xuXG4gIGNvbnN0IHsgY2hpbGRyZW4sIG1hcmtzLCB2YWx1ZSB9ID0gZ2V0Q29udGVudGZ1bE5vZGVQcm9wcyhub2RlKTtcblxuICBjb25zdCBjb21tYW5kOiBSaWNoVGV4dFJlbmRlckNvbW1hbmQgPSB7XG4gICAgcGF5bG9hZDogdHJhbnNsYXRlQ29udGVudGZ1bE5vZGVUeXBlVG9IdG1sVGFnKG5vZGVUeXBlKSxcbiAgICBkYXRhOiB2YWx1ZSxcbiAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAuLi4obWFya3NcbiAgICAgICAgPyB7XG4gICAgICAgICAgICBjbGFzczogdHJhbnNmb3JtQ29udGVudGZ1bE1hcmtzKG1hcmtzLCB1c2VUYWlsd2luZENsYXNzZXMpLFxuICAgICAgICAgIH1cbiAgICAgICAgOiB7fSksXG4gICAgICAuLi4obm9kZURhdGFbJ3VyaSddID8geyBocmVmOiBub2RlRGF0YVsndXJpJ10sIHRhcmdldDogJ19ibGFuaycgfSA6IHt9KSxcbiAgICB9LFxuICAgIGNoaWxkcmVuOiBbXSxcbiAgfTtcblxuICBjb25zdCBlbnRyeUlkID0gbm9kZURhdGFbJ3RhcmdldCddPy5zeXM/LmlkO1xuXG4gIGlmIChub2RlVHlwZSA9PT0gQkxPQ0tTLkVNQkVEREVEX0FTU0VUKSB7XG4gICAgY29uc3QgYXNzZXQgPSByZXNvdXJjZU1hcC5hc3NldHNCbG9jay5nZXQoZW50cnlJZCk7XG5cbiAgICBpZiAoYXNzZXQpIHtcbiAgICAgIGNvbnN0IGlzSW1hZ2UgPSBhc3NldC5jb250ZW50VHlwZS5zdGFydHNXaXRoKCdpbWFnZS8nKTtcbiAgICAgIGNvbnN0IGlzVmlkZW8gPSBhc3NldC5jb250ZW50VHlwZS5zdGFydHNXaXRoKCd2aWRlby8nKTtcbiAgICAgIGNvbnN0IGlzQXVkaW8gPSBhc3NldC5jb250ZW50VHlwZS5zdGFydHNXaXRoKCdhdWRpby8nKTtcblxuICAgICAgY29tbWFuZC5kYXRhID0gYXNzZXQ7XG5cbiAgICAgIGlmIChpc0ltYWdlKSB7XG4gICAgICAgIGNvbW1hbmQucGF5bG9hZCA9IGFzc2V0Q29tcG9uZW50cy5pbWFnZTtcbiAgICAgIH0gZWxzZSBpZiAoaXNWaWRlbykge1xuICAgICAgICBjb21tYW5kLnBheWxvYWQgPSBhc3NldENvbXBvbmVudHMudmlkZW87XG4gICAgICB9IGVsc2UgaWYgKGlzQXVkaW8pIHtcbiAgICAgICAgY29tbWFuZC5wYXlsb2FkID0gYXNzZXRDb21wb25lbnRzLmF1ZGlvO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29tbWFuZC5wYXlsb2FkID0gYXNzZXRDb21wb25lbnRzLmZpbGU7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUud2FybihgTm8gYXNzZXQgZm91bmQgZm9yIGVudHJ5IGlkIFwiJHtlbnRyeUlkfVwiIWAsIG5vZGVEYXRhKTtcbiAgICB9XG4gIH0gZWxzZSBpZiAobm9kZVR5cGUgPT09IEJMT0NLUy5FTUJFRERFRF9FTlRSWSB8fCBub2RlVHlwZSA9PT0gSU5MSU5FUy5FTUJFRERFRF9FTlRSWSkge1xuICAgIGNvbnN0IGVudHJ5ID0gcmVzb3VyY2VNYXAuZW50cmllc0Jsb2NrLmdldChlbnRyeUlkKSA/PyByZXNvdXJjZU1hcC5lbnRyaWVzSW5saW5lLmdldChlbnRyeUlkKTtcblxuICAgIGlmIChlbnRyeSkge1xuICAgICAgY29uc3QgdHlwZSA9IGVudHJ5Py5fX3R5cGVuYW1lID8/ICdFVF9VTktOT1dOJztcbiAgICAgIGNvbnN0IGNvbXBvbmVudCA9IGN1c3RvbUNvbXBvbmVudHM/Llt0eXBlXTtcblxuICAgICAgaWYgKGNvbXBvbmVudCkge1xuICAgICAgICBjb21tYW5kLnBheWxvYWQgPSBjb21wb25lbnQ7XG4gICAgICAgIGNvbW1hbmQuZGF0YSA9IGVudHJ5O1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29tbWFuZC5kYXRhID0gYEVSUk9SOiBObyBjb21wb25lbnQgZm91bmQgZm9yIGVtYmVkZGVkIGVudHJ5IFwiJHt0eXBlfVwiIGFzIFwiJHtub2RlVHlwZX1cIiFgO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLndhcm4oYE5vIGVudHJ5IGZvdW5kIGZvciBlbnRyeSBpZCBcIiR7ZW50cnlJZH1cIiFgLCBub2RlRGF0YSk7XG4gICAgfVxuICB9XG5cbiAgaWYgKGNoaWxkcmVuICYmIChjaGlsZHJlbi5sZW5ndGggIT09IDEgfHwgY2hpbGRyZW5bMF0ubm9kZVR5cGUgIT09ICd0ZXh0JykpIHtcbiAgICBjaGlsZHJlbi5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgY3JlYXRlQ29udGVudGZ1bFJlbmRlckNvbW1hbmQoY2hpbGQsIGNvbW1hbmQsIHJlc291cmNlTWFwLCB1c2VUYWlsd2luZENsYXNzZXMsIGFzc2V0Q29tcG9uZW50cywgY3VzdG9tQ29tcG9uZW50cyk7XG4gICAgfSk7XG4gIH1cblxuICBwYXJlbnQuY2hpbGRyZW4ucHVzaChjb21tYW5kKTtcblxuICByZXR1cm4gY29tbWFuZDtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRDb250ZW50ZnVsTm9kZVByb3BzID0gKG5vZGU6IEJsb2NrIHwgSW5saW5lIHwgVGV4dCkgPT4ge1xuICBjb25zdCBjaGlsZHJlbiA9ICdjb250ZW50JyBpbiBub2RlID8gbm9kZS5jb250ZW50IDogbnVsbDtcbiAgbGV0IG1hcmtzOiBNYXJrW10gfCBudWxsID0gbnVsbDtcbiAgbGV0IHZhbHVlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICBpZiAoY2hpbGRyZW4gJiYgY2hpbGRyZW4ubGVuZ3RoID09PSAxICYmIGNoaWxkcmVuWzBdLm5vZGVUeXBlID09PSAndGV4dCcpIHtcbiAgICBtYXJrcyA9IGNoaWxkcmVuWzBdLm1hcmtzPy5sZW5ndGggPyBjaGlsZHJlblswXS5tYXJrcyA6IG51bGw7XG4gICAgdmFsdWUgPSBjaGlsZHJlblswXS52YWx1ZTtcbiAgfSBlbHNlIHtcbiAgICBtYXJrcyA9ICdtYXJrcycgaW4gbm9kZSA/IChub2RlLm1hcmtzPy5sZW5ndGggPyBub2RlLm1hcmtzIDogbnVsbCkgOiBudWxsO1xuICAgIHZhbHVlID0gJ3ZhbHVlJyBpbiBub2RlID8gbm9kZS52YWx1ZSA6IG51bGw7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIGNoaWxkcmVuLFxuICAgIG1hcmtzLFxuICAgIHZhbHVlLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGdldEFzc2V0Q29tcG9uZW50c0Zyb21Db25maWcgPSAoY29uZmlnOiBDb250ZW50ZnVsQ29uZmlnKSA9PiB7XG4gIHJldHVybiB7XG4gICAgZmlsZTogY29uZmlnLmNvbXBvbmVudHM/LmZpbGUgPz8gQ29udGVudGZ1bEZpbGVDb21wb25lbnQsXG4gICAgaW1hZ2U6IGNvbmZpZy5jb21wb25lbnRzPy5pbWFnZSA/PyBDb250ZW50ZnVsSW1hZ2VDb21wb25lbnQsXG4gICAgdmlkZW86IGNvbmZpZy5jb21wb25lbnRzPy52aWRlbyA/PyBDb250ZW50ZnVsVmlkZW9Db21wb25lbnQsXG4gICAgYXVkaW86IGNvbmZpZy5jb21wb25lbnRzPy5hdWRpbyA/PyBDb250ZW50ZnVsQXVkaW9Db21wb25lbnQsXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgdHJhbnNmb3JtQ29udGVudGZ1bE1hcmtzID0gKG1hcmtzOiBNYXJrW10sIHVzZVRhaWx3aW5kQ2xhc3NlczogYm9vbGVhbikgPT4ge1xuICByZXR1cm4gbWFya3NcbiAgICAubWFwKChtYXJrKSA9PiB7XG4gICAgICBzd2l0Y2ggKG1hcmsudHlwZSkge1xuICAgICAgICBjYXNlICdib2xkJzpcbiAgICAgICAgICByZXR1cm4gdXNlVGFpbHdpbmRDbGFzc2VzID8gJ2ZvbnQtYm9sZCcgOiBtYXJrLnR5cGU7XG4gICAgICAgIGNhc2UgJ2l0YWxpYyc6XG4gICAgICAgICAgcmV0dXJuIHVzZVRhaWx3aW5kQ2xhc3NlcyA/ICdpdGFsaWMnIDogbWFyay50eXBlO1xuICAgICAgICBjYXNlICd1bmRlcmxpbmUnOlxuICAgICAgICAgIHJldHVybiB1c2VUYWlsd2luZENsYXNzZXMgPyAndW5kZXJsaW5lJyA6IG1hcmsudHlwZTtcbiAgICAgICAgY2FzZSAnY29kZSc6XG4gICAgICAgICAgcmV0dXJuIHVzZVRhaWx3aW5kQ2xhc3NlcyA/ICdmb250LW1vbm8nIDogbWFyay50eXBlO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHJldHVybiBtYXJrLnR5cGU7XG4gICAgICB9XG4gICAgfSlcbiAgICAuam9pbignICcpO1xufTtcblxuZXhwb3J0IGNvbnN0IHRyYW5zbGF0ZUNvbnRlbnRmdWxOb2RlVHlwZVRvSHRtbFRhZyA9IChub2RlVHlwZTogJ3RleHQnIHwgQkxPQ0tTIHwgSU5MSU5FUykgPT4ge1xuICBzd2l0Y2ggKG5vZGVUeXBlKSB7XG4gICAgY2FzZSBCTE9DS1MuSEVBRElOR18xOlxuICAgICAgcmV0dXJuICdoMSc7XG4gICAgY2FzZSBCTE9DS1MuSEVBRElOR18yOlxuICAgICAgcmV0dXJuICdoMic7XG4gICAgY2FzZSBCTE9DS1MuSEVBRElOR18zOlxuICAgICAgcmV0dXJuICdoMyc7XG4gICAgY2FzZSBCTE9DS1MuSEVBRElOR180OlxuICAgICAgcmV0dXJuICdoNCc7XG4gICAgY2FzZSBCTE9DS1MuSEVBRElOR181OlxuICAgICAgcmV0dXJuICdoNSc7XG4gICAgY2FzZSBCTE9DS1MuSEVBRElOR182OlxuICAgICAgcmV0dXJuICdoNic7XG4gICAgY2FzZSBCTE9DS1MuUEFSQUdSQVBIOlxuICAgICAgcmV0dXJuICdwJztcbiAgICBjYXNlIEJMT0NLUy5VTF9MSVNUOlxuICAgICAgcmV0dXJuICd1bCc7XG4gICAgY2FzZSBCTE9DS1MuT0xfTElTVDpcbiAgICAgIHJldHVybiAnb2wnO1xuICAgIGNhc2UgQkxPQ0tTLkxJU1RfSVRFTTpcbiAgICAgIHJldHVybiAnbGknO1xuICAgIGNhc2UgQkxPQ0tTLkhSOlxuICAgICAgcmV0dXJuICdocic7XG4gICAgY2FzZSBCTE9DS1MuUVVPVEU6XG4gICAgICByZXR1cm4gJ2Jsb2NrcXVvdGUnO1xuICAgIGNhc2UgQkxPQ0tTLlRBQkxFOlxuICAgICAgcmV0dXJuICd0YWJsZSc7XG4gICAgY2FzZSBCTE9DS1MuVEFCTEVfUk9XOlxuICAgICAgcmV0dXJuICd0cic7XG4gICAgY2FzZSBCTE9DS1MuVEFCTEVfQ0VMTDpcbiAgICAgIHJldHVybiAndGQnO1xuICAgIGNhc2UgQkxPQ0tTLlRBQkxFX0hFQURFUl9DRUxMOlxuICAgICAgcmV0dXJuICd0aCc7XG4gICAgY2FzZSBCTE9DS1MuRU1CRURERURfQVNTRVQ6XG4gICAgICByZXR1cm4gJ2Rpdic7XG5cbiAgICBjYXNlIElOTElORVMuSFlQRVJMSU5LOlxuICAgICAgcmV0dXJuICdhJztcbiAgICBjYXNlIElOTElORVMuRU5UUllfSFlQRVJMSU5LOlxuICAgICAgcmV0dXJuICdhJztcbiAgICBjYXNlIElOTElORVMuQVNTRVRfSFlQRVJMSU5LOlxuICAgICAgcmV0dXJuICdhJztcblxuICAgIGNhc2UgJ3RleHQnOlxuICAgICAgcmV0dXJuICdzcGFuJztcblxuICAgIC8vIFdpbGwgYmUgaWdub3JlZCBieSB0aGUgcmVuZGVyZXJcbiAgICBjYXNlICdkb2N1bWVudCc6XG4gICAgICByZXR1cm4gJ2RvY3VtZW50JztcblxuICAgIC8vIFRPRE8oVFJCKTogVGhlc2Ugc2hvdWxkIHJlbmRlciBjb21wb25lbnRzXG4gICAgY2FzZSBCTE9DS1MuRU1CRURERURfRU5UUlk6XG4gICAgICByZXR1cm4gJ2Rpdic7XG4gICAgY2FzZSBJTkxJTkVTLkVNQkVEREVEX0VOVFJZOlxuICAgICAgcmV0dXJuICdkaXYnO1xuXG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiAnZGl2JztcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUNvbnRlbnRmdWxSZXNvdXJjZU1hcCA9IChsaW5rczogUmljaFRleHRSZXNwb25zZVsnbGlua3MnXSk6IENvbnRlbnRmdWxSZXNvdXJjZU1hcCA9PiB7XG4gIGNvbnN0IHJlc291cmNlTWFwID0ge1xuICAgIGFzc2V0c0Jsb2NrOiBjcmVhdGVDb250ZW50ZnVsTWFwPENvbnRlbnRmdWxBc3NldD4obGlua3M/LmFzc2V0cz8uYmxvY2spLFxuICAgIGVudHJpZXNJbmxpbmU6IGNyZWF0ZUNvbnRlbnRmdWxNYXAobGlua3M/LmVudHJpZXM/LmlubGluZSksXG4gICAgZW50cmllc0Jsb2NrOiBjcmVhdGVDb250ZW50ZnVsTWFwKGxpbmtzPy5lbnRyaWVzPy5ibG9jayksXG4gIH0gYXMgY29uc3Q7XG5cbiAgcmV0dXJuIHJlc291cmNlTWFwO1xufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUNvbnRlbnRmdWxNYXAgPSA8VCBleHRlbmRzIENvbnRlbnRmdWxFbnRyeUJhc2U+KGxpbmtzOiBBcnJheTxUPiB8IG51bGwgfCB1bmRlZmluZWQpID0+IHtcbiAgY29uc3QgYXNzZXRNYXAgPSBuZXcgTWFwPHN0cmluZywgVD4oKTtcblxuICBpZiAobGlua3MpIHtcbiAgICBmb3IgKGNvbnN0IGxpbmsgb2YgbGlua3MpIHtcbiAgICAgIGlmICghbGluaz8uc3lzPy5pZCkge1xuICAgICAgICBjb25zb2xlLndhcm4oJ0xpbmsgaGFzIG5vIHN5cy5pZCBwcm9wZXJ0eS4gUGxlYXNlIGluY2x1ZGUgaXQgaW5zaWRlIHlvdXIgcXVlcnkuJywgbGluayk7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBhc3NldE1hcC5zZXQobGluay5zeXMuaWQsIGxpbmspO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBhc3NldE1hcDtcbn07XG4iXX0=