@dotcms/angular 0.0.1-beta.30 → 0.0.1-beta.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/next/components/dotcms-block-editor-renderer/blocks/dot-contentlet.component.mjs +125 -0
- package/esm2022/next/components/dotcms-block-editor-renderer/blocks/unknown.component.mjs +65 -0
- package/esm2022/next/components/dotcms-block-editor-renderer/dotcms-block-editor-renderer.component.mjs +7 -3
- package/esm2022/next/components/dotcms-block-editor-renderer/item/dotcms-block-editor-item.component.mjs +7 -5
- package/fesm2022/dotcms-angular-next.mjs +159 -29
- package/fesm2022/dotcms-angular-next.mjs.map +1 -1
- package/next/components/dotcms-block-editor-renderer/blocks/dot-contentlet.component.d.ts +34 -0
- package/next/components/dotcms-block-editor-renderer/blocks/dot-contentlet.component.d.ts.map +1 -0
- package/next/components/dotcms-block-editor-renderer/blocks/unknown.component.d.ts +18 -0
- package/next/components/dotcms-block-editor-renderer/blocks/unknown.component.d.ts.map +1 -0
- package/next/components/dotcms-block-editor-renderer/dotcms-block-editor-renderer.component.d.ts +3 -1
- package/next/components/dotcms-block-editor-renderer/dotcms-block-editor-renderer.component.d.ts.map +1 -1
- package/next/components/dotcms-block-editor-renderer/item/dotcms-block-editor-item.component.d.ts.map +1 -1
- package/package.json +3 -3
- package/esm2022/next/components/dotcms-block-editor-renderer/blocks/contentlet.component.mjs +0 -53
- package/next/components/dotcms-block-editor-renderer/blocks/contentlet.component.d.ts +0 -25
- package/next/components/dotcms-block-editor-renderer/blocks/contentlet.component.d.ts.map +0 -1
package/esm2022/next/components/dotcms-block-editor-renderer/blocks/dot-contentlet.component.mjs
ADDED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { AsyncPipe, NgComponentOutlet } from '@angular/common';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, computed, Input } from '@angular/core';
|
|
3
|
+
import { UVE_MODE } from '@dotcms/types';
|
|
4
|
+
import { getUVEState } from '@dotcms/uve';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class NoComponentProvided {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.style = {
|
|
9
|
+
backgroundColor: '#fffaf0',
|
|
10
|
+
color: '#333',
|
|
11
|
+
padding: '1rem',
|
|
12
|
+
borderRadius: '0.5rem',
|
|
13
|
+
marginBottom: '1rem',
|
|
14
|
+
marginTop: '1rem',
|
|
15
|
+
border: '1px solid #ed8936'
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NoComponentProvided, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.3", type: NoComponentProvided, isStandalone: true, selector: "dotcms-no-component-provided", inputs: { contentType: "contentType" }, ngImport: i0, template: `
|
|
20
|
+
<div data-testid="no-component-provided" [style]="style">
|
|
21
|
+
<strong style="color: #c05621">Dev Warning</strong>
|
|
22
|
+
: No component or custom renderer provided for content type
|
|
23
|
+
<strong style="color: #c05621">{{ contentType || 'Unknown' }}</strong>
|
|
24
|
+
.
|
|
25
|
+
<br />
|
|
26
|
+
Please refer to the
|
|
27
|
+
<a
|
|
28
|
+
href="https://dev.dotcms.com/docs/block-editor"
|
|
29
|
+
target="_blank"
|
|
30
|
+
rel="noopener noreferrer"
|
|
31
|
+
style="color: #c05621">
|
|
32
|
+
Block Editor Custom Renderers Documentation
|
|
33
|
+
</a>
|
|
34
|
+
for guidance.
|
|
35
|
+
</div>
|
|
36
|
+
`, isInline: true }); }
|
|
37
|
+
}
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: NoComponentProvided, decorators: [{
|
|
39
|
+
type: Component,
|
|
40
|
+
args: [{
|
|
41
|
+
selector: 'dotcms-no-component-provided',
|
|
42
|
+
standalone: true,
|
|
43
|
+
template: `
|
|
44
|
+
<div data-testid="no-component-provided" [style]="style">
|
|
45
|
+
<strong style="color: #c05621">Dev Warning</strong>
|
|
46
|
+
: No component or custom renderer provided for content type
|
|
47
|
+
<strong style="color: #c05621">{{ contentType || 'Unknown' }}</strong>
|
|
48
|
+
.
|
|
49
|
+
<br />
|
|
50
|
+
Please refer to the
|
|
51
|
+
<a
|
|
52
|
+
href="https://dev.dotcms.com/docs/block-editor"
|
|
53
|
+
target="_blank"
|
|
54
|
+
rel="noopener noreferrer"
|
|
55
|
+
style="color: #c05621">
|
|
56
|
+
Block Editor Custom Renderers Documentation
|
|
57
|
+
</a>
|
|
58
|
+
for guidance.
|
|
59
|
+
</div>
|
|
60
|
+
`
|
|
61
|
+
}]
|
|
62
|
+
}], propDecorators: { contentType: [{
|
|
63
|
+
type: Input
|
|
64
|
+
}] } });
|
|
65
|
+
/**
|
|
66
|
+
* DotContent component that renders content based on content type
|
|
67
|
+
*/
|
|
68
|
+
export class DotContentletBlock {
|
|
69
|
+
constructor() {
|
|
70
|
+
this.$data = computed(() => this.attrs?.['data']);
|
|
71
|
+
this.DOT_CONTENT_NO_DATA_MESSAGE = '[DotCMSBlockEditorRenderer]: No data provided for Contentlet Block. Try to add a contentlet to the block editor. If the error persists, please contact the DotCMS support team.';
|
|
72
|
+
this.DOT_CONTENT_NO_MATCHING_COMPONENT_MESSAGE = (contentType) => `[DotCMSBlockEditorRenderer]: No matching component found for content type: ${contentType}. Provide a custom renderer for this content type to fix this error.`;
|
|
73
|
+
}
|
|
74
|
+
get isDevMode() {
|
|
75
|
+
return getUVEState()?.mode === UVE_MODE.EDIT;
|
|
76
|
+
}
|
|
77
|
+
ngOnInit() {
|
|
78
|
+
if (!this.$data()) {
|
|
79
|
+
console.error(this.DOT_CONTENT_NO_DATA_MESSAGE);
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
const contentType = this.$data()?.contentType || '';
|
|
83
|
+
this.contentComponent = this.customRenderers?.[contentType];
|
|
84
|
+
if (!this.contentComponent) {
|
|
85
|
+
console.warn(this.DOT_CONTENT_NO_MATCHING_COMPONENT_MESSAGE(contentType));
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: DotContentletBlock, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
89
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.3", type: DotContentletBlock, isStandalone: true, selector: "dotcms-block-editor-renderer-contentlet", inputs: { customRenderers: "customRenderers", attrs: "attrs" }, ngImport: i0, template: `
|
|
90
|
+
@if (contentComponent) {
|
|
91
|
+
<ng-container
|
|
92
|
+
*ngComponentOutlet="
|
|
93
|
+
contentComponent | async;
|
|
94
|
+
inputs: { contentlet: $data() }
|
|
95
|
+
"></ng-container>
|
|
96
|
+
} @else if (isDevMode) {
|
|
97
|
+
<dotcms-no-component-provided [contentType]="$data()?.contentType" />
|
|
98
|
+
}
|
|
99
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: NoComponentProvided, selector: "dotcms-no-component-provided", inputs: ["contentType"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
100
|
+
}
|
|
101
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: DotContentletBlock, decorators: [{
|
|
102
|
+
type: Component,
|
|
103
|
+
args: [{
|
|
104
|
+
selector: 'dotcms-block-editor-renderer-contentlet',
|
|
105
|
+
standalone: true,
|
|
106
|
+
imports: [NgComponentOutlet, AsyncPipe, NoComponentProvided],
|
|
107
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
108
|
+
template: `
|
|
109
|
+
@if (contentComponent) {
|
|
110
|
+
<ng-container
|
|
111
|
+
*ngComponentOutlet="
|
|
112
|
+
contentComponent | async;
|
|
113
|
+
inputs: { contentlet: $data() }
|
|
114
|
+
"></ng-container>
|
|
115
|
+
} @else if (isDevMode) {
|
|
116
|
+
<dotcms-no-component-provided [contentType]="$data()?.contentType" />
|
|
117
|
+
}
|
|
118
|
+
`
|
|
119
|
+
}]
|
|
120
|
+
}], propDecorators: { customRenderers: [{
|
|
121
|
+
type: Input
|
|
122
|
+
}], attrs: [{
|
|
123
|
+
type: Input
|
|
124
|
+
}] } });
|
|
125
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG90LWNvbnRlbnRsZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvYW5ndWxhci9uZXh0L2NvbXBvbmVudHMvZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci9ibG9ja3MvZG90LWNvbnRlbnRsZXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEYsT0FBTyxFQUFtQixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUEyQjFDLE1BQU0sT0FBTyxtQkFBbUI7SUF0QmhDO1FBd0J1QixVQUFLLEdBQUc7WUFDdkIsZUFBZSxFQUFFLFNBQVM7WUFDMUIsS0FBSyxFQUFFLE1BQU07WUFDYixPQUFPLEVBQUUsTUFBTTtZQUNmLFlBQVksRUFBRSxRQUFRO1lBQ3RCLFlBQVksRUFBRSxNQUFNO1lBQ3BCLFNBQVMsRUFBRSxNQUFNO1lBQ2pCLE1BQU0sRUFBRSxtQkFBbUI7U0FDOUIsQ0FBQztLQUNMOzhHQVhZLG1CQUFtQjtrR0FBbkIsbUJBQW1CLGdJQW5CbEI7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBaUJUOzsyRkFFUSxtQkFBbUI7a0JBdEIvQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSw4QkFBOEI7b0JBQ3hDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBaUJUO2lCQUNKOzhCQUVZLFdBQVc7c0JBQW5CLEtBQUs7O0FBWVY7O0dBRUc7QUFrQkgsTUFBTSxPQUFPLGtCQUFrQjtJQWpCL0I7UUFzQnVCLFVBQUssR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDL0MsZ0NBQTJCLEdBQ3hDLGlMQUFpTCxDQUFDO1FBQ3JLLDhDQUF5QyxHQUFHLENBQUMsV0FBbUIsRUFBRSxFQUFFLENBQ2pGLDhFQUE4RSxXQUFXLHNFQUFzRSxDQUFDO0tBbUJ2SztJQWxCRyxJQUFjLFNBQVM7UUFDbkIsT0FBTyxXQUFXLEVBQUUsRUFBRSxJQUFJLEtBQUssUUFBUSxDQUFDLElBQUksQ0FBQztJQUNqRCxDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUNoQixPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1lBRWhELE9BQU87UUFDWCxDQUFDO1FBRUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLFdBQVcsSUFBSSxFQUFFLENBQUM7UUFDcEQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUU1RCxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDekIsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMseUNBQXlDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUM5RSxDQUFDO0lBQ0wsQ0FBQzs4R0EzQlEsa0JBQWtCO2tHQUFsQixrQkFBa0IsbUtBWmpCOzs7Ozs7Ozs7O0tBVVQsNERBWlMsaUJBQWlCLCtPQUFFLFNBQVMsOENBbkI3QixtQkFBbUI7OzJGQWlDbkIsa0JBQWtCO2tCQWpCOUIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUseUNBQXlDO29CQUNuRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixDQUFDO29CQUM1RCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsUUFBUSxFQUFFOzs7Ozs7Ozs7O0tBVVQ7aUJBQ0o7OEJBRVksZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUsIE5nQ29tcG9uZW50T3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBCbG9ja0VkaXRvck5vZGUsIFVWRV9NT0RFIH0gZnJvbSAnQGRvdGNtcy90eXBlcyc7XG5pbXBvcnQgeyBnZXRVVkVTdGF0ZSB9IGZyb20gJ0Bkb3RjbXMvdXZlJztcblxuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudEVudGl0eSB9IGZyb20gJy4uLy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBDdXN0b21SZW5kZXJlciB9IGZyb20gJy4uL2RvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXIuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkb3RjbXMtbm8tY29tcG9uZW50LXByb3ZpZGVkJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxkaXYgZGF0YS10ZXN0aWQ9XCJuby1jb21wb25lbnQtcHJvdmlkZWRcIiBbc3R5bGVdPVwic3R5bGVcIj5cbiAgICAgICAgICAgIDxzdHJvbmcgc3R5bGU9XCJjb2xvcjogI2MwNTYyMVwiPkRldiBXYXJuaW5nPC9zdHJvbmc+XG4gICAgICAgICAgICA6IE5vIGNvbXBvbmVudCBvciBjdXN0b20gcmVuZGVyZXIgcHJvdmlkZWQgZm9yIGNvbnRlbnQgdHlwZVxuICAgICAgICAgICAgPHN0cm9uZyBzdHlsZT1cImNvbG9yOiAjYzA1NjIxXCI+e3sgY29udGVudFR5cGUgfHwgJ1Vua25vd24nIH19PC9zdHJvbmc+XG4gICAgICAgICAgICAuXG4gICAgICAgICAgICA8YnIgLz5cbiAgICAgICAgICAgIFBsZWFzZSByZWZlciB0byB0aGVcbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgaHJlZj1cImh0dHBzOi8vZGV2LmRvdGNtcy5jb20vZG9jcy9ibG9jay1lZGl0b3JcIlxuICAgICAgICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgICAgICAgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiXG4gICAgICAgICAgICAgICAgc3R5bGU9XCJjb2xvcjogI2MwNTYyMVwiPlxuICAgICAgICAgICAgICAgIEJsb2NrIEVkaXRvciBDdXN0b20gUmVuZGVyZXJzIERvY3VtZW50YXRpb25cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIGZvciBndWlkYW5jZS5cbiAgICAgICAgPC9kaXY+XG4gICAgYFxufSlcbmV4cG9ydCBjbGFzcyBOb0NvbXBvbmVudFByb3ZpZGVkIHtcbiAgICBASW5wdXQoKSBjb250ZW50VHlwZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBzdHlsZSA9IHtcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiAnI2ZmZmFmMCcsXG4gICAgICAgIGNvbG9yOiAnIzMzMycsXG4gICAgICAgIHBhZGRpbmc6ICcxcmVtJyxcbiAgICAgICAgYm9yZGVyUmFkaXVzOiAnMC41cmVtJyxcbiAgICAgICAgbWFyZ2luQm90dG9tOiAnMXJlbScsXG4gICAgICAgIG1hcmdpblRvcDogJzFyZW0nLFxuICAgICAgICBib3JkZXI6ICcxcHggc29saWQgI2VkODkzNidcbiAgICB9O1xufVxuXG4vKipcbiAqIERvdENvbnRlbnQgY29tcG9uZW50IHRoYXQgcmVuZGVycyBjb250ZW50IGJhc2VkIG9uIGNvbnRlbnQgdHlwZVxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItY29udGVudGxldCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbTmdDb21wb25lbnRPdXRsZXQsIEFzeW5jUGlwZSwgTm9Db21wb25lbnRQcm92aWRlZF0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgQGlmIChjb250ZW50Q29tcG9uZW50KSB7XG4gICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgKm5nQ29tcG9uZW50T3V0bGV0PVwiXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnRDb21wb25lbnQgfCBhc3luYztcbiAgICAgICAgICAgICAgICAgICAgaW5wdXRzOiB7IGNvbnRlbnRsZXQ6ICRkYXRhKCkgfVxuICAgICAgICAgICAgICAgIFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICB9IEBlbHNlIGlmIChpc0Rldk1vZGUpIHtcbiAgICAgICAgICAgIDxkb3RjbXMtbm8tY29tcG9uZW50LXByb3ZpZGVkIFtjb250ZW50VHlwZV09XCIkZGF0YSgpPy5jb250ZW50VHlwZVwiIC8+XG4gICAgICAgIH1cbiAgICBgXG59KVxuZXhwb3J0IGNsYXNzIERvdENvbnRlbnRsZXRCbG9jayB7XG4gICAgQElucHV0KCkgY3VzdG9tUmVuZGVyZXJzOiBDdXN0b21SZW5kZXJlciB8IHVuZGVmaW5lZDtcbiAgICBASW5wdXQoKSBhdHRyczogQmxvY2tFZGl0b3JOb2RlWydhdHRycyddO1xuXG4gICAgY29udGVudENvbXBvbmVudDogRHluYW1pY0NvbXBvbmVudEVudGl0eSB8IHVuZGVmaW5lZDtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgJGRhdGEgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmF0dHJzPy5bJ2RhdGEnXSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBET1RfQ09OVEVOVF9OT19EQVRBX01FU1NBR0UgPVxuICAgICAgICAnW0RvdENNU0Jsb2NrRWRpdG9yUmVuZGVyZXJdOiBObyBkYXRhIHByb3ZpZGVkIGZvciBDb250ZW50bGV0IEJsb2NrLiBUcnkgdG8gYWRkIGEgY29udGVudGxldCB0byB0aGUgYmxvY2sgZWRpdG9yLiBJZiB0aGUgZXJyb3IgcGVyc2lzdHMsIHBsZWFzZSBjb250YWN0IHRoZSBEb3RDTVMgc3VwcG9ydCB0ZWFtLic7XG4gICAgcHJpdmF0ZSByZWFkb25seSBET1RfQ09OVEVOVF9OT19NQVRDSElOR19DT01QT05FTlRfTUVTU0FHRSA9IChjb250ZW50VHlwZTogc3RyaW5nKSA9PlxuICAgICAgICBgW0RvdENNU0Jsb2NrRWRpdG9yUmVuZGVyZXJdOiBObyBtYXRjaGluZyBjb21wb25lbnQgZm91bmQgZm9yIGNvbnRlbnQgdHlwZTogJHtjb250ZW50VHlwZX0uIFByb3ZpZGUgYSBjdXN0b20gcmVuZGVyZXIgZm9yIHRoaXMgY29udGVudCB0eXBlIHRvIGZpeCB0aGlzIGVycm9yLmA7XG4gICAgcHJvdGVjdGVkIGdldCBpc0Rldk1vZGUoKSB7XG4gICAgICAgIHJldHVybiBnZXRVVkVTdGF0ZSgpPy5tb2RlID09PSBVVkVfTU9ERS5FRElUO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBpZiAoIXRoaXMuJGRhdGEoKSkge1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcih0aGlzLkRPVF9DT05URU5UX05PX0RBVEFfTUVTU0FHRSk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNvbnRlbnRUeXBlID0gdGhpcy4kZGF0YSgpPy5jb250ZW50VHlwZSB8fCAnJztcbiAgICAgICAgdGhpcy5jb250ZW50Q29tcG9uZW50ID0gdGhpcy5jdXN0b21SZW5kZXJlcnM/Lltjb250ZW50VHlwZV07XG5cbiAgICAgICAgaWYgKCF0aGlzLmNvbnRlbnRDb21wb25lbnQpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2Fybih0aGlzLkRPVF9DT05URU5UX05PX01BVENISU5HX0NPTVBPTkVOVF9NRVNTQUdFKGNvbnRlbnRUeXBlKSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { UVE_MODE } from '@dotcms/types';
|
|
3
|
+
import { getUVEState } from '@dotcms/uve';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class DotUnknownBlockComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.style = {
|
|
8
|
+
backgroundColor: '#fff5f5',
|
|
9
|
+
color: '#333',
|
|
10
|
+
padding: '1rem',
|
|
11
|
+
borderRadius: '0.5rem',
|
|
12
|
+
marginBottom: '1rem',
|
|
13
|
+
marginTop: '1rem',
|
|
14
|
+
border: '1px solid #fc8181'
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
get isEditMode() {
|
|
18
|
+
return getUVEState()?.mode === UVE_MODE.EDIT;
|
|
19
|
+
}
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: DotUnknownBlockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.3", type: DotUnknownBlockComponent, isStandalone: true, selector: "dotcms-block-editor-renderer-unknown", inputs: { node: "node" }, ngImport: i0, template: `
|
|
22
|
+
@if (isEditMode) {
|
|
23
|
+
<div [style]="style" data-testid="unknown-block-type">
|
|
24
|
+
<strong style="color: #c53030">Warning:</strong>
|
|
25
|
+
The block type
|
|
26
|
+
<strong>{{ node.type }}</strong>
|
|
27
|
+
is not recognized. Please check your
|
|
28
|
+
<a
|
|
29
|
+
href="https://dev.dotcms.com/docs/block-editor"
|
|
30
|
+
target="_blank"
|
|
31
|
+
rel="noopener noreferrer">
|
|
32
|
+
configuration
|
|
33
|
+
</a>
|
|
34
|
+
or contact support for assistance.
|
|
35
|
+
</div>
|
|
36
|
+
}
|
|
37
|
+
`, isInline: true }); }
|
|
38
|
+
}
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: DotUnknownBlockComponent, decorators: [{
|
|
40
|
+
type: Component,
|
|
41
|
+
args: [{
|
|
42
|
+
selector: 'dotcms-block-editor-renderer-unknown',
|
|
43
|
+
standalone: true,
|
|
44
|
+
template: `
|
|
45
|
+
@if (isEditMode) {
|
|
46
|
+
<div [style]="style" data-testid="unknown-block-type">
|
|
47
|
+
<strong style="color: #c53030">Warning:</strong>
|
|
48
|
+
The block type
|
|
49
|
+
<strong>{{ node.type }}</strong>
|
|
50
|
+
is not recognized. Please check your
|
|
51
|
+
<a
|
|
52
|
+
href="https://dev.dotcms.com/docs/block-editor"
|
|
53
|
+
target="_blank"
|
|
54
|
+
rel="noopener noreferrer">
|
|
55
|
+
configuration
|
|
56
|
+
</a>
|
|
57
|
+
or contact support for assistance.
|
|
58
|
+
</div>
|
|
59
|
+
}
|
|
60
|
+
`
|
|
61
|
+
}]
|
|
62
|
+
}], propDecorators: { node: [{
|
|
63
|
+
type: Input
|
|
64
|
+
}] } });
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5rbm93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9hbmd1bGFyL25leHQvY29tcG9uZW50cy9kb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyL2Jsb2Nrcy91bmtub3duLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRCxPQUFPLEVBQW1CLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQXVCMUMsTUFBTSxPQUFPLHdCQUF3QjtJQXJCckM7UUE0QnVCLFVBQUssR0FBRztZQUN2QixlQUFlLEVBQUUsU0FBUztZQUMxQixLQUFLLEVBQUUsTUFBTTtZQUNiLE9BQU8sRUFBRSxNQUFNO1lBQ2YsWUFBWSxFQUFFLFFBQVE7WUFDdEIsWUFBWSxFQUFFLE1BQU07WUFDcEIsU0FBUyxFQUFFLE1BQU07WUFDakIsTUFBTSxFQUFFLG1CQUFtQjtTQUM5QixDQUFDO0tBQ0w7SUFiRyxJQUFJLFVBQVU7UUFDVixPQUFPLFdBQVcsRUFBRSxFQUFFLElBQUksS0FBSyxRQUFRLENBQUMsSUFBSSxDQUFDO0lBQ2pELENBQUM7OEdBTFEsd0JBQXdCO2tHQUF4Qix3QkFBd0IsMEhBbEJ2Qjs7Ozs7Ozs7Ozs7Ozs7OztLQWdCVDs7MkZBRVEsd0JBQXdCO2tCQXJCcEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsc0NBQXNDO29CQUNoRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7O0tBZ0JUO2lCQUNKOzhCQUVZLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQmxvY2tFZGl0b3JOb2RlLCBVVkVfTU9ERSB9IGZyb20gJ0Bkb3RjbXMvdHlwZXMnO1xuaW1wb3J0IHsgZ2V0VVZFU3RhdGUgfSBmcm9tICdAZG90Y21zL3V2ZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci11bmtub3duJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIEBpZiAoaXNFZGl0TW9kZSkge1xuICAgICAgICAgICAgPGRpdiBbc3R5bGVdPVwic3R5bGVcIiBkYXRhLXRlc3RpZD1cInVua25vd24tYmxvY2stdHlwZVwiPlxuICAgICAgICAgICAgICAgIDxzdHJvbmcgc3R5bGU9XCJjb2xvcjogI2M1MzAzMFwiPldhcm5pbmc6PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgVGhlIGJsb2NrIHR5cGVcbiAgICAgICAgICAgICAgICA8c3Ryb25nPnt7IG5vZGUudHlwZSB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgICAgIGlzIG5vdCByZWNvZ25pemVkLiBQbGVhc2UgY2hlY2sgeW91clxuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgIGhyZWY9XCJodHRwczovL2Rldi5kb3RjbXMuY29tL2RvY3MvYmxvY2stZWRpdG9yXCJcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICAgICAgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiPlxuICAgICAgICAgICAgICAgICAgICBjb25maWd1cmF0aW9uXG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIG9yIGNvbnRhY3Qgc3VwcG9ydCBmb3IgYXNzaXN0YW5jZS5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgYFxufSlcbmV4cG9ydCBjbGFzcyBEb3RVbmtub3duQmxvY2tDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIG5vZGUhOiBCbG9ja0VkaXRvck5vZGU7XG5cbiAgICBnZXQgaXNFZGl0TW9kZSgpIHtcbiAgICAgICAgcmV0dXJuIGdldFVWRVN0YXRlKCk/Lm1vZGUgPT09IFVWRV9NT0RFLkVESVQ7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHN0eWxlID0ge1xuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZmZmNWY1JyxcbiAgICAgICAgY29sb3I6ICcjMzMzJyxcbiAgICAgICAgcGFkZGluZzogJzFyZW0nLFxuICAgICAgICBib3JkZXJSYWRpdXM6ICcwLjVyZW0nLFxuICAgICAgICBtYXJnaW5Cb3R0b206ICcxcmVtJyxcbiAgICAgICAgbWFyZ2luVG9wOiAnMXJlbScsXG4gICAgICAgIGJvcmRlcjogJzFweCBzb2xpZCAjZmM4MTgxJ1xuICAgIH07XG59XG4iXX0=
|
|
@@ -33,14 +33,18 @@ export class DotCMSBlockEditorRendererComponent {
|
|
|
33
33
|
this.$blockEditorState.set(isValidBlocks(this.blocks));
|
|
34
34
|
}
|
|
35
35
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: DotCMSBlockEditorRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
36
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.3", type: DotCMSBlockEditorRendererComponent, isStandalone: true, selector: "dotcms-block-editor-renderer", inputs: { blocks: "blocks", customRenderers: "customRenderers" }, ngImport: i0, template: "@if ($blockEditorState().error && $isInEditMode()) {\n <div data-testid=\"invalid-blocks-message\">\n {{ $blockEditorState().error }}\n </div>\n} @else if (!$blockEditorState().error) {\n <dotcms-block-editor-renderer-block\n
|
|
36
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.3", type: DotCMSBlockEditorRendererComponent, isStandalone: true, selector: "dotcms-block-editor-renderer", inputs: { blocks: "blocks", customRenderers: "customRenderers", class: "class", style: "style" }, ngImport: i0, template: "@if ($blockEditorState().error && $isInEditMode()) {\n <div data-testid=\"invalid-blocks-message\">\n {{ $blockEditorState().error }}\n </div>\n} @else if (!$blockEditorState().error) {\n <div [class]=\"class\" [style]=\"style\">\n <dotcms-block-editor-renderer-block\n [content]=\"blocks.content\"\n [customRenderers]=\"customRenderers\" />\n </div>\n}\n", styles: [""], dependencies: [{ kind: "component", type: DotCMSBlockEditorItemComponent, selector: "dotcms-block-editor-renderer-block", inputs: ["content", "customRenderers"] }] }); }
|
|
37
37
|
}
|
|
38
38
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: DotCMSBlockEditorRendererComponent, decorators: [{
|
|
39
39
|
type: Component,
|
|
40
|
-
args: [{ selector: 'dotcms-block-editor-renderer', standalone: true, imports: [DotCMSBlockEditorItemComponent], template: "@if ($blockEditorState().error && $isInEditMode()) {\n <div data-testid=\"invalid-blocks-message\">\n {{ $blockEditorState().error }}\n </div>\n} @else if (!$blockEditorState().error) {\n <dotcms-block-editor-renderer-block\n
|
|
40
|
+
args: [{ selector: 'dotcms-block-editor-renderer', standalone: true, imports: [DotCMSBlockEditorItemComponent], template: "@if ($blockEditorState().error && $isInEditMode()) {\n <div data-testid=\"invalid-blocks-message\">\n {{ $blockEditorState().error }}\n </div>\n} @else if (!$blockEditorState().error) {\n <div [class]=\"class\" [style]=\"style\">\n <dotcms-block-editor-renderer-block\n [content]=\"blocks.content\"\n [customRenderers]=\"customRenderers\" />\n </div>\n}\n" }]
|
|
41
41
|
}], propDecorators: { blocks: [{
|
|
42
42
|
type: Input
|
|
43
43
|
}], customRenderers: [{
|
|
44
44
|
type: Input
|
|
45
|
+
}], class: [{
|
|
46
|
+
type: Input
|
|
47
|
+
}], style: [{
|
|
48
|
+
type: Input
|
|
45
49
|
}] } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9hbmd1bGFyL25leHQvY29tcG9uZW50cy9kb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyL2RvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvYW5ndWxhci9uZXh0L2NvbXBvbmVudHMvZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci9kb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQUUsUUFBUSxFQUFzQixNQUFNLGVBQWUsQ0FBQztBQUU3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7QUFZM0Y7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBUUgsTUFBTSxPQUFPLGtDQUFrQztJQVAvQztRQWFJLHNCQUFpQixHQUFHLE1BQU0sQ0FBbUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM5RCxrQkFBYSxHQUFHLE1BQU0sQ0FBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEtBQUssUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0tBV2pFO0lBVEcsUUFBUTtRQUNKLE1BQU0sS0FBSyxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFekMsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZCxPQUFPLENBQUMsS0FBSyxDQUFDLHlDQUF5QyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxRSxDQUFDO1FBRUQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDM0QsQ0FBQzs4R0FqQlEsa0NBQWtDO2tHQUFsQyxrQ0FBa0MsMExDMUMvQyxxWkFXQSwwREQ2QmMsOEJBQThCOzsyRkFFL0Isa0NBQWtDO2tCQVA5QyxTQUFTOytCQUNJLDhCQUE4QixjQUM1QixJQUFJLFdBR1AsQ0FBQyw4QkFBOEIsQ0FBQzs4QkFHaEMsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBVVkVfTU9ERSwgQmxvY2tFZGl0b3JDb250ZW50IH0gZnJvbSAnQGRvdGNtcy90eXBlcyc7XG5pbXBvcnQgeyBCbG9ja0VkaXRvclN0YXRlIH0gZnJvbSAnQGRvdGNtcy90eXBlcy9pbnRlcm5hbCc7XG5pbXBvcnQgeyBnZXRVVkVTdGF0ZSB9IGZyb20gJ0Bkb3RjbXMvdXZlJztcbmltcG9ydCB7IGlzVmFsaWRCbG9ja3MgfSBmcm9tICdAZG90Y21zL3V2ZS9pbnRlcm5hbCc7XG5cbmltcG9ydCB7IERvdENNU0Jsb2NrRWRpdG9ySXRlbUNvbXBvbmVudCB9IGZyb20gJy4vaXRlbS9kb3RjbXMtYmxvY2stZWRpdG9yLWl0ZW0uY29tcG9uZW50JztcblxuaW1wb3J0IHsgRHluYW1pY0NvbXBvbmVudEVudGl0eSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIEN1c3RvbSBSZW5kZXJlciB1c2VkIGJ5IHRoZSBCbG9jayBFZGl0b3IgQ29tcG9uZW50XG4gKlxuICogQGV4cG9ydFxuICogQGludGVyZmFjZSBDdXN0b21SZW5kZXJlclxuICovXG5leHBvcnQgdHlwZSBDdXN0b21SZW5kZXJlciA9IFJlY29yZDxzdHJpbmcsIER5bmFtaWNDb21wb25lbnRFbnRpdHk+O1xuXG4vKipcbiAqIEEgY29tcG9uZW50IHRoYXQgcmVuZGVycyBjb250ZW50IGZyb20gRG90Q01TJ3MgQmxvY2sgRWRpdG9yIGZpZWxkLlxuICpcbiAqIFRoaXMgY29tcG9uZW50IHByb3ZpZGVzIGFuIGVhc3kgd2F5IHRvIHJlbmRlciBCbG9jayBFZGl0b3IgY29udGVudCBpbiB5b3VyIEFuZ3VsYXIgYXBwbGljYXRpb25zLlxuICogSXQgaGFuZGxlcyB0aGUgcmVuZGVyaW5nIG9mIHN0YW5kYXJkIGJsb2NrcyBhbmQgYWxsb3dzIGN1c3RvbWl6YXRpb24gdGhyb3VnaCBjdXN0b20gcmVuZGVyZXJzLlxuICpcbiAqIEZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IEJsb2NrIEVkaXRvciwgc2VlIHtAbGluayBodHRwczovL2Rldi5kb3RjbXMuY29tL2RvY3MvYmxvY2stZWRpdG9yfVxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBodG1sXG4gKiA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlclxuICogICBbYmxvY2tzXT1cIm15QmxvY2tFZGl0b3JDb250ZW50XCJcbiAqICAgW2N1c3RvbVJlbmRlcmVyc109XCJteUN1c3RvbVJlbmRlcmVyc1wiPlxuICogPC9kb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlcicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci5jb21wb25lbnQuc2NzcyddLFxuICAgIGltcG9ydHM6IFtEb3RDTVNCbG9ja0VkaXRvckl0ZW1Db21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIERvdENNU0Jsb2NrRWRpdG9yUmVuZGVyZXJDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIGJsb2NrcyE6IEJsb2NrRWRpdG9yQ29udGVudDtcbiAgICBASW5wdXQoKSBjdXN0b21SZW5kZXJlcnM6IEN1c3RvbVJlbmRlcmVyIHwgdW5kZWZpbmVkO1xuICAgIEBJbnB1dCgpIGNsYXNzOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgQElucHV0KCkgc3R5bGU6IHN0cmluZyB8IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gfCB1bmRlZmluZWQ7XG5cbiAgICAkYmxvY2tFZGl0b3JTdGF0ZSA9IHNpZ25hbDxCbG9ja0VkaXRvclN0YXRlPih7IGVycm9yOiBudWxsIH0pO1xuICAgICRpc0luRWRpdE1vZGUgPSBzaWduYWwoZ2V0VVZFU3RhdGUoKT8ubW9kZSA9PT0gVVZFX01PREUuRURJVCk7XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgY29uc3Qgc3RhdGUgPSBpc1ZhbGlkQmxvY2tzKHRoaXMuYmxvY2tzKTtcblxuICAgICAgICBpZiAoc3RhdGUuZXJyb3IpIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGluIGRvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXI6ICcsIHN0YXRlLmVycm9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuJGJsb2NrRWRpdG9yU3RhdGUuc2V0KGlzVmFsaWRCbG9ja3ModGhpcy5ibG9ja3MpKTtcbiAgICB9XG59XG4iLCJAaWYgKCRibG9ja0VkaXRvclN0YXRlKCkuZXJyb3IgJiYgJGlzSW5FZGl0TW9kZSgpKSB7XG4gICAgPGRpdiBkYXRhLXRlc3RpZD1cImludmFsaWQtYmxvY2tzLW1lc3NhZ2VcIj5cbiAgICAgICAge3sgJGJsb2NrRWRpdG9yU3RhdGUoKS5lcnJvciB9fVxuICAgIDwvZGl2PlxufSBAZWxzZSBpZiAoISRibG9ja0VkaXRvclN0YXRlKCkuZXJyb3IpIHtcbiAgICA8ZGl2IFtjbGFzc109XCJjbGFzc1wiIFtzdHlsZV09XCJzdHlsZVwiPlxuICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci1ibG9ja1xuICAgICAgICAgICAgW2NvbnRlbnRdPVwiYmxvY2tzLmNvbnRlbnRcIlxuICAgICAgICAgICAgW2N1c3RvbVJlbmRlcmVyc109XCJjdXN0b21SZW5kZXJlcnNcIiAvPlxuICAgIDwvZGl2PlxufVxuIl19
|
|
@@ -2,11 +2,12 @@ import { AsyncPipe, NgComponentOutlet, NgTemplateOutlet } from '@angular/common'
|
|
|
2
2
|
import { Component, Input } from '@angular/core';
|
|
3
3
|
import { BlockEditorDefaultBlocks } from '@dotcms/types/internal';
|
|
4
4
|
import { DotCodeBlock, DotBlockQuote } from '../blocks/code.component';
|
|
5
|
-
import { DotContentletBlock } from '../blocks/contentlet.component';
|
|
5
|
+
import { DotContentletBlock } from '../blocks/dot-contentlet.component';
|
|
6
6
|
import { DotImageBlock } from '../blocks/image.component';
|
|
7
7
|
import { DotBulletList, DotOrdererList, DotListItem } from '../blocks/list.component';
|
|
8
8
|
import { DotTableBlock } from '../blocks/table.component';
|
|
9
9
|
import { DotParagraphBlock, DotTextBlock, DotHeadingBlock } from '../blocks/text.component';
|
|
10
|
+
import { DotUnknownBlockComponent } from '../blocks/unknown.component';
|
|
10
11
|
import { DotVideoBlock } from '../blocks/video.component';
|
|
11
12
|
import * as i0 from "@angular/core";
|
|
12
13
|
export class DotCMSBlockEditorItemComponent {
|
|
@@ -14,7 +15,7 @@ export class DotCMSBlockEditorItemComponent {
|
|
|
14
15
|
this.BLOCKS = BlockEditorDefaultBlocks;
|
|
15
16
|
}
|
|
16
17
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: DotCMSBlockEditorItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.3", type: DotCMSBlockEditorItemComponent, isStandalone: true, selector: "dotcms-block-editor-renderer-block", inputs: { content: "content", customRenderers: "customRenderers" }, ngImport: i0, template: "@for (node of content; track node) {\n @if (customRenderers?.[node.type]) {\n <ng-container\n *ngTemplateOutlet=\"\n customRender;\n context: { customRender: customRenderers?.[node.type], node: node }\n \"></ng-container>\n } @else {\n @switch (node.type) {\n @case (BLOCKS.PARAGRAPH) {\n <dotcms-block-editor-renderer-paragraph [style]=\"node.attrs\">\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-paragraph>\n }\n\n @case (BLOCKS.TEXT) {\n <dotcms-block-editor-renderer-text [marks]=\"node.marks\" [text]=\"node.text || ''\" />\n }\n\n @case (BLOCKS.HEADING) {\n <dotcms-block-editor-renderer-heading\n [style]=\"node.attrs || {}\"\n [level]=\"node.attrs?.['level'] || '1'\">\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-heading>\n }\n\n @case (BLOCKS.BULLET_LIST) {\n <dotcms-block-editor-renderer-bullet-list>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-bullet-list>\n }\n\n @case (BLOCKS.ORDERED_LIST) {\n <dotcms-block-editor-renderer-ordered-list>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-ordered-list>\n }\n\n @case (BLOCKS.LIST_ITEM) {\n <dotcms-block-editor-renderer-list-item>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-list-item>\n }\n\n @case (BLOCKS.BLOCK_QUOTE) {\n <dotcms-block-editor-renderer-block-quote>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-block-quote>\n }\n\n @case (BLOCKS.CODE_BLOCK) {\n <dotcms-block-editor-renderer-code-block>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-code-block>\n }\n\n @case (BLOCKS.HARDBREAK) {\n <br />\n }\n\n @case (BLOCKS.HORIZONTAL_RULE) {\n <hr />\n }\n\n @case (BLOCKS.DOT_IMAGE) {\n <dotcms-block-editor-renderer-image [attrs]=\"node.attrs || {}\" />\n }\n\n @case (BLOCKS.DOT_VIDEO) {\n <dotcms-block-editor-renderer-video [attrs]=\"node.attrs || {}\" />\n }\n\n @case (BLOCKS.TABLE) {\n <dotcms-block-editor-renderer-table [content]=\"node.content\" />\n }\n\n @case (BLOCKS.DOT_CONTENT) {\n <dotcms-block-editor-renderer-contentlet\n [attrs]=\"node.attrs || {}\"\n [customRenderers]=\"customRenderers\" />\n }\n\n @default {\n <
|
|
18
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.3", type: DotCMSBlockEditorItemComponent, isStandalone: true, selector: "dotcms-block-editor-renderer-block", inputs: { content: "content", customRenderers: "customRenderers" }, ngImport: i0, template: "@for (node of content; track node) {\n @if (customRenderers?.[node.type]) {\n <ng-container\n *ngTemplateOutlet=\"\n customRender;\n context: { customRender: customRenderers?.[node.type], node: node }\n \"></ng-container>\n } @else {\n @switch (node.type) {\n @case (BLOCKS.PARAGRAPH) {\n <dotcms-block-editor-renderer-paragraph [style]=\"node.attrs\">\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-paragraph>\n }\n\n @case (BLOCKS.TEXT) {\n <dotcms-block-editor-renderer-text [marks]=\"node.marks\" [text]=\"node.text || ''\" />\n }\n\n @case (BLOCKS.HEADING) {\n <dotcms-block-editor-renderer-heading\n [style]=\"node.attrs || {}\"\n [level]=\"node.attrs?.['level'] || '1'\">\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-heading>\n }\n\n @case (BLOCKS.BULLET_LIST) {\n <dotcms-block-editor-renderer-bullet-list>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-bullet-list>\n }\n\n @case (BLOCKS.ORDERED_LIST) {\n <dotcms-block-editor-renderer-ordered-list>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-ordered-list>\n }\n\n @case (BLOCKS.LIST_ITEM) {\n <dotcms-block-editor-renderer-list-item>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-list-item>\n }\n\n @case (BLOCKS.BLOCK_QUOTE) {\n <dotcms-block-editor-renderer-block-quote>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-block-quote>\n }\n\n @case (BLOCKS.CODE_BLOCK) {\n <dotcms-block-editor-renderer-code-block>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-code-block>\n }\n\n @case (BLOCKS.HARDBREAK) {\n <br />\n }\n\n @case (BLOCKS.HORIZONTAL_RULE) {\n <hr />\n }\n\n @case (BLOCKS.DOT_IMAGE) {\n <dotcms-block-editor-renderer-image [attrs]=\"node.attrs || {}\" />\n }\n\n @case (BLOCKS.DOT_VIDEO) {\n <dotcms-block-editor-renderer-video [attrs]=\"node.attrs || {}\" />\n }\n\n @case (BLOCKS.TABLE) {\n <dotcms-block-editor-renderer-table [content]=\"node.content\" />\n }\n\n @case (BLOCKS.DOT_CONTENT) {\n <dotcms-block-editor-renderer-contentlet\n [attrs]=\"node.attrs || {}\"\n [customRenderers]=\"customRenderers\" />\n }\n\n @default {\n <dotcms-block-editor-renderer-unknown [node]=\"node\" />\n }\n }\n }\n}\n\n<ng-template #customRender let-customRender=\"customRender\" let-node=\"node\">\n <ng-container\n *ngComponentOutlet=\"customRender | async; inputs: { content: node }\"></ng-container>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "component", type: DotCMSBlockEditorItemComponent, selector: "dotcms-block-editor-renderer-block", inputs: ["content", "customRenderers"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: DotParagraphBlock, selector: "dotcms-block-editor-renderer-paragraph" }, { kind: "component", type: DotTextBlock, selector: "dotcms-block-editor-renderer-text", inputs: ["marks", "text"] }, { kind: "component", type: DotHeadingBlock, selector: "dotcms-block-editor-renderer-heading", inputs: ["level"] }, { kind: "component", type: DotBulletList, selector: "dotcms-block-editor-renderer-bullet-list" }, { kind: "component", type: DotOrdererList, selector: "dotcms-block-editor-renderer-ordered-list" }, { kind: "component", type: DotListItem, selector: "dotcms-block-editor-renderer-list-item" }, { kind: "component", type: DotCodeBlock, selector: "dotcms-block-editor-renderer-code-block" }, { kind: "component", type: DotBlockQuote, selector: "dotcms-block-editor-renderer-block-quote" }, { kind: "component", type: DotImageBlock, selector: "dotcms-block-editor-renderer-image", inputs: ["attrs"] }, { kind: "component", type: DotVideoBlock, selector: "dotcms-block-editor-renderer-video", inputs: ["attrs"] }, { kind: "component", type: DotTableBlock, selector: "dotcms-block-editor-renderer-table", inputs: ["content"] }, { kind: "component", type: DotContentletBlock, selector: "dotcms-block-editor-renderer-contentlet", inputs: ["customRenderers", "attrs"] }, { kind: "component", type: DotUnknownBlockComponent, selector: "dotcms-block-editor-renderer-unknown", inputs: ["node"] }] }); }
|
|
18
19
|
}
|
|
19
20
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImport: i0, type: DotCMSBlockEditorItemComponent, decorators: [{
|
|
20
21
|
type: Component,
|
|
@@ -33,11 +34,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.3", ngImpor
|
|
|
33
34
|
DotImageBlock,
|
|
34
35
|
DotVideoBlock,
|
|
35
36
|
DotTableBlock,
|
|
36
|
-
DotContentletBlock
|
|
37
|
-
|
|
37
|
+
DotContentletBlock,
|
|
38
|
+
DotUnknownBlockComponent
|
|
39
|
+
], template: "@for (node of content; track node) {\n @if (customRenderers?.[node.type]) {\n <ng-container\n *ngTemplateOutlet=\"\n customRender;\n context: { customRender: customRenderers?.[node.type], node: node }\n \"></ng-container>\n } @else {\n @switch (node.type) {\n @case (BLOCKS.PARAGRAPH) {\n <dotcms-block-editor-renderer-paragraph [style]=\"node.attrs\">\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-paragraph>\n }\n\n @case (BLOCKS.TEXT) {\n <dotcms-block-editor-renderer-text [marks]=\"node.marks\" [text]=\"node.text || ''\" />\n }\n\n @case (BLOCKS.HEADING) {\n <dotcms-block-editor-renderer-heading\n [style]=\"node.attrs || {}\"\n [level]=\"node.attrs?.['level'] || '1'\">\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-heading>\n }\n\n @case (BLOCKS.BULLET_LIST) {\n <dotcms-block-editor-renderer-bullet-list>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-bullet-list>\n }\n\n @case (BLOCKS.ORDERED_LIST) {\n <dotcms-block-editor-renderer-ordered-list>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-ordered-list>\n }\n\n @case (BLOCKS.LIST_ITEM) {\n <dotcms-block-editor-renderer-list-item>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-list-item>\n }\n\n @case (BLOCKS.BLOCK_QUOTE) {\n <dotcms-block-editor-renderer-block-quote>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-block-quote>\n }\n\n @case (BLOCKS.CODE_BLOCK) {\n <dotcms-block-editor-renderer-code-block>\n <dotcms-block-editor-renderer-block\n [content]=\"node.content\"\n [customRenderers]=\"customRenderers\" />\n </dotcms-block-editor-renderer-code-block>\n }\n\n @case (BLOCKS.HARDBREAK) {\n <br />\n }\n\n @case (BLOCKS.HORIZONTAL_RULE) {\n <hr />\n }\n\n @case (BLOCKS.DOT_IMAGE) {\n <dotcms-block-editor-renderer-image [attrs]=\"node.attrs || {}\" />\n }\n\n @case (BLOCKS.DOT_VIDEO) {\n <dotcms-block-editor-renderer-video [attrs]=\"node.attrs || {}\" />\n }\n\n @case (BLOCKS.TABLE) {\n <dotcms-block-editor-renderer-table [content]=\"node.content\" />\n }\n\n @case (BLOCKS.DOT_CONTENT) {\n <dotcms-block-editor-renderer-contentlet\n [attrs]=\"node.attrs || {}\"\n [customRenderers]=\"customRenderers\" />\n }\n\n @default {\n <dotcms-block-editor-renderer-unknown [node]=\"node\" />\n }\n }\n }\n}\n\n<ng-template #customRender let-customRender=\"customRender\" let-node=\"node\">\n <ng-container\n *ngComponentOutlet=\"customRender | async; inputs: { content: node }\"></ng-container>\n</ng-template>\n" }]
|
|
38
40
|
}], propDecorators: { content: [{
|
|
39
41
|
type: Input
|
|
40
42
|
}], customRenderers: [{
|
|
41
43
|
type: Input
|
|
42
44
|
}] } });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG90Y21zLWJsb2NrLWVkaXRvci1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2FuZ3VsYXIvbmV4dC9jb21wb25lbnRzL2RvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXIvaXRlbS9kb3RjbXMtYmxvY2stZWRpdG9yLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvYW5ndWxhci9uZXh0L2NvbXBvbmVudHMvZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci9pdGVtL2RvdGNtcy1ibG9jay1lZGl0b3ItaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDakYsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHakQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDNUYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQTBCMUQsTUFBTSxPQUFPLDhCQUE4QjtJQXZCM0M7UUEyQkksV0FBTSxHQUFHLHdCQUF3QixDQUFDO0tBQ3JDOzhHQUxZLDhCQUE4QjtrR0FBOUIsOEJBQThCLGtLQ3RDM0MsaXBJQTRHQSwwRER0RWEsOEJBQThCLHVIQWpCbkMsZ0JBQWdCLG9KQUNoQixpQkFBaUIsK09BQ2pCLFNBQVMsOENBQ1QsaUJBQWlCLG1GQUNqQixZQUFZLHlHQUNaLGVBQWUsb0dBQ2YsYUFBYSxxRkFDYixjQUFjLHNGQUNkLFdBQVcsbUZBQ1gsWUFBWSxvRkFDWixhQUFhLHFGQUNiLGFBQWEsa0dBQ2IsYUFBYSxrR0FDYixhQUFhLG9HQUNiLGtCQUFrQjs7MkZBR2IsOEJBQThCO2tCQXZCMUMsU0FBUzsrQkFDSSxvQ0FBb0MsY0FDbEMsSUFBSSxXQUdQO3dCQUNMLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQixTQUFTO3dCQUNULGlCQUFpQjt3QkFDakIsWUFBWTt3QkFDWixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxXQUFXO3dCQUNYLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixrQkFBa0I7cUJBQ3JCOzhCQUdRLE9BQU87c0JBQWYsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXN5bmNQaXBlLCBOZ0NvbXBvbmVudE91dGxldCwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJsb2NrRWRpdG9yTm9kZSB9IGZyb20gJ0Bkb3RjbXMvdHlwZXMnO1xuaW1wb3J0IHsgQmxvY2tFZGl0b3JEZWZhdWx0QmxvY2tzIH0gZnJvbSAnQGRvdGNtcy90eXBlcy9pbnRlcm5hbCc7XG5cbmltcG9ydCB7IERvdENvZGVCbG9jaywgRG90QmxvY2tRdW90ZSB9IGZyb20gJy4uL2Jsb2Nrcy9jb2RlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEb3RDb250ZW50bGV0QmxvY2sgfSBmcm9tICcuLi9ibG9ja3MvY29udGVudGxldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG90SW1hZ2VCbG9jayB9IGZyb20gJy4uL2Jsb2Nrcy9pbWFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG90QnVsbGV0TGlzdCwgRG90T3JkZXJlckxpc3QsIERvdExpc3RJdGVtIH0gZnJvbSAnLi4vYmxvY2tzL2xpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IERvdFRhYmxlQmxvY2sgfSBmcm9tICcuLi9ibG9ja3MvdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7IERvdFBhcmFncmFwaEJsb2NrLCBEb3RUZXh0QmxvY2ssIERvdEhlYWRpbmdCbG9jayB9IGZyb20gJy4uL2Jsb2Nrcy90ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEb3RWaWRlb0Jsb2NrIH0gZnJvbSAnLi4vYmxvY2tzL3ZpZGVvLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21SZW5kZXJlciB9IGZyb20gJy4uL2RvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXIuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWJsb2NrJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kb3RjbXMtYmxvY2stZWRpdG9yLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2RvdGNtcy1ibG9jay1lZGl0b3ItaXRlbS5jb21wb25lbnQuc2NzcyddLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICAgICAgTmdDb21wb25lbnRPdXRsZXQsXG4gICAgICAgIEFzeW5jUGlwZSxcbiAgICAgICAgRG90UGFyYWdyYXBoQmxvY2ssXG4gICAgICAgIERvdFRleHRCbG9jayxcbiAgICAgICAgRG90SGVhZGluZ0Jsb2NrLFxuICAgICAgICBEb3RCdWxsZXRMaXN0LFxuICAgICAgICBEb3RPcmRlcmVyTGlzdCxcbiAgICAgICAgRG90TGlzdEl0ZW0sXG4gICAgICAgIERvdENvZGVCbG9jayxcbiAgICAgICAgRG90QmxvY2tRdW90ZSxcbiAgICAgICAgRG90SW1hZ2VCbG9jayxcbiAgICAgICAgRG90VmlkZW9CbG9jayxcbiAgICAgICAgRG90VGFibGVCbG9jayxcbiAgICAgICAgRG90Q29udGVudGxldEJsb2NrXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBEb3RDTVNCbG9ja0VkaXRvckl0ZW1Db21wb25lbnQge1xuICAgIEBJbnB1dCgpIGNvbnRlbnQ6IEJsb2NrRWRpdG9yTm9kZVtdIHwgdW5kZWZpbmVkO1xuICAgIEBJbnB1dCgpIGN1c3RvbVJlbmRlcmVyczogQ3VzdG9tUmVuZGVyZXIgfCB1bmRlZmluZWQ7XG5cbiAgICBCTE9DS1MgPSBCbG9ja0VkaXRvckRlZmF1bHRCbG9ja3M7XG59XG4iLCJAZm9yIChub2RlIG9mIGNvbnRlbnQ7IHRyYWNrIG5vZGUpIHtcbiAgICBAaWYgKGN1c3RvbVJlbmRlcmVycz8uW25vZGUudHlwZV0pIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICBjdXN0b21SZW5kZXI7XG4gICAgICAgICAgICAgICAgY29udGV4dDogeyBjdXN0b21SZW5kZXI6IGN1c3RvbVJlbmRlcmVycz8uW25vZGUudHlwZV0sIG5vZGU6IG5vZGUgfVxuICAgICAgICAgICAgXCI+PC9uZy1jb250YWluZXI+XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEBzd2l0Y2ggKG5vZGUudHlwZSkge1xuICAgICAgICAgICAgQGNhc2UgKEJMT0NLUy5QQVJBR1JBUEgpIHtcbiAgICAgICAgICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci1wYXJhZ3JhcGggW3N0eWxlXT1cIm5vZGUuYXR0cnNcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItYmxvY2tcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb250ZW50XT1cIm5vZGUuY29udGVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY3VzdG9tUmVuZGVyZXJzXT1cImN1c3RvbVJlbmRlcmVyc1wiIC8+XG4gICAgICAgICAgICAgICAgPC9kb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLXBhcmFncmFwaD5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGNhc2UgKEJMT0NLUy5URVhUKSB7XG4gICAgICAgICAgICAgICAgPGRvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItdGV4dCBbbWFya3NdPVwibm9kZS5tYXJrc1wiIFt0ZXh0XT1cIm5vZGUudGV4dCB8fCAnJ1wiIC8+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBjYXNlIChCTE9DS1MuSEVBRElORykge1xuICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWhlYWRpbmdcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlXT1cIm5vZGUuYXR0cnMgfHwge31cIlxuICAgICAgICAgICAgICAgICAgICBbbGV2ZWxdPVwibm9kZS5hdHRycz8uWydsZXZlbCddIHx8ICcxJ1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci1ibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwibm9kZS5jb250ZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21SZW5kZXJlcnNdPVwiY3VzdG9tUmVuZGVyZXJzXCIgLz5cbiAgICAgICAgICAgICAgICA8L2RvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItaGVhZGluZz5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGNhc2UgKEJMT0NLUy5CVUxMRVRfTElTVCkge1xuICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWJ1bGxldC1saXN0PlxuICAgICAgICAgICAgICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci1ibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwibm9kZS5jb250ZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21SZW5kZXJlcnNdPVwiY3VzdG9tUmVuZGVyZXJzXCIgLz5cbiAgICAgICAgICAgICAgICA8L2RvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItYnVsbGV0LWxpc3Q+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBjYXNlIChCTE9DS1MuT1JERVJFRF9MSVNUKSB7XG4gICAgICAgICAgICAgICAgPGRvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItb3JkZXJlZC1saXN0PlxuICAgICAgICAgICAgICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci1ibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwibm9kZS5jb250ZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21SZW5kZXJlcnNdPVwiY3VzdG9tUmVuZGVyZXJzXCIgLz5cbiAgICAgICAgICAgICAgICA8L2RvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItb3JkZXJlZC1saXN0PlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAY2FzZSAoQkxPQ0tTLkxJU1RfSVRFTSkge1xuICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWxpc3QtaXRlbT5cbiAgICAgICAgICAgICAgICAgICAgPGRvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItYmxvY2tcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb250ZW50XT1cIm5vZGUuY29udGVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY3VzdG9tUmVuZGVyZXJzXT1cImN1c3RvbVJlbmRlcmVyc1wiIC8+XG4gICAgICAgICAgICAgICAgPC9kb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWxpc3QtaXRlbT5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGNhc2UgKEJMT0NLUy5CTE9DS19RVU9URSkge1xuICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWJsb2NrLXF1b3RlPlxuICAgICAgICAgICAgICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci1ibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwibm9kZS5jb250ZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21SZW5kZXJlcnNdPVwiY3VzdG9tUmVuZGVyZXJzXCIgLz5cbiAgICAgICAgICAgICAgICA8L2RvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItYmxvY2stcXVvdGU+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBjYXNlIChCTE9DS1MuQ09ERV9CTE9DSykge1xuICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWNvZGUtYmxvY2s+XG4gICAgICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWJsb2NrXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29udGVudF09XCJub2RlLmNvbnRlbnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2N1c3RvbVJlbmRlcmVyc109XCJjdXN0b21SZW5kZXJlcnNcIiAvPlxuICAgICAgICAgICAgICAgIDwvZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci1jb2RlLWJsb2NrPlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAY2FzZSAoQkxPQ0tTLkhBUkRCUkVBSykge1xuICAgICAgICAgICAgICAgIDxiciAvPlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAY2FzZSAoQkxPQ0tTLkhPUklaT05UQUxfUlVMRSkge1xuICAgICAgICAgICAgICAgIDxociAvPlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAY2FzZSAoQkxPQ0tTLkRPVF9JTUFHRSkge1xuICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWltYWdlIFthdHRyc109XCJub2RlLmF0dHJzIHx8IHt9XCIgLz5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGNhc2UgKEJMT0NLUy5ET1RfVklERU8pIHtcbiAgICAgICAgICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci12aWRlbyBbYXR0cnNdPVwibm9kZS5hdHRycyB8fCB7fVwiIC8+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBjYXNlIChCTE9DS1MuVEFCTEUpIHtcbiAgICAgICAgICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci10YWJsZSBbY29udGVudF09XCJub2RlLmNvbnRlbnRcIiAvPlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAY2FzZSAoQkxPQ0tTLkRPVF9DT05URU5UKSB7XG4gICAgICAgICAgICAgICAgPGRvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItY29udGVudGxldFxuICAgICAgICAgICAgICAgICAgICBbYXR0cnNdPVwibm9kZS5hdHRycyB8fCB7fVwiXG4gICAgICAgICAgICAgICAgICAgIFtjdXN0b21SZW5kZXJlcnNdPVwiY3VzdG9tUmVuZGVyZXJzXCIgLz5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGRlZmF1bHQge1xuICAgICAgICAgICAgICAgIDxkaXY+VW5rbm93biBCbG9jayBUeXBlOiB7eyBub2RlLnR5cGUgfX08L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuPG5nLXRlbXBsYXRlICNjdXN0b21SZW5kZXIgbGV0LWN1c3RvbVJlbmRlcj1cImN1c3RvbVJlbmRlclwiIGxldC1ub2RlPVwibm9kZVwiPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nQ29tcG9uZW50T3V0bGV0PVwiY3VzdG9tUmVuZGVyIHwgYXN5bmM7IGlucHV0czogeyBjb250ZW50OiBub2RlIH1cIj48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG90Y21zLWJsb2NrLWVkaXRvci1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2FuZ3VsYXIvbmV4dC9jb21wb25lbnRzL2RvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXIvaXRlbS9kb3RjbXMtYmxvY2stZWRpdG9yLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvYW5ndWxhci9uZXh0L2NvbXBvbmVudHMvZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci9pdGVtL2RvdGNtcy1ibG9jay1lZGl0b3ItaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDakYsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHakQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDNUYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQTJCMUQsTUFBTSxPQUFPLDhCQUE4QjtJQXhCM0M7UUE0QkksV0FBTSxHQUFHLHdCQUF3QixDQUFDO0tBQ3JDOzhHQUxZLDhCQUE4QjtrR0FBOUIsOEJBQThCLGtLQ3hDM0MsMnBJQTRHQSwwRERwRWEsOEJBQThCLHVIQWxCbkMsZ0JBQWdCLG9KQUNoQixpQkFBaUIsK09BQ2pCLFNBQVMsOENBQ1QsaUJBQWlCLG1GQUNqQixZQUFZLHlHQUNaLGVBQWUsb0dBQ2YsYUFBYSxxRkFDYixjQUFjLHNGQUNkLFdBQVcsbUZBQ1gsWUFBWSxvRkFDWixhQUFhLHFGQUNiLGFBQWEsa0dBQ2IsYUFBYSxrR0FDYixhQUFhLG9HQUNiLGtCQUFrQiwwSEFDbEIsd0JBQXdCOzsyRkFHbkIsOEJBQThCO2tCQXhCMUMsU0FBUzsrQkFDSSxvQ0FBb0MsY0FDbEMsSUFBSSxXQUdQO3dCQUNMLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQixTQUFTO3dCQUNULGlCQUFpQjt3QkFDakIsWUFBWTt3QkFDWixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxXQUFXO3dCQUNYLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixrQkFBa0I7d0JBQ2xCLHdCQUF3QjtxQkFDM0I7OEJBR1EsT0FBTztzQkFBZixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUsIE5nQ29tcG9uZW50T3V0bGV0LCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQmxvY2tFZGl0b3JOb2RlIH0gZnJvbSAnQGRvdGNtcy90eXBlcyc7XG5pbXBvcnQgeyBCbG9ja0VkaXRvckRlZmF1bHRCbG9ja3MgfSBmcm9tICdAZG90Y21zL3R5cGVzL2ludGVybmFsJztcblxuaW1wb3J0IHsgRG90Q29kZUJsb2NrLCBEb3RCbG9ja1F1b3RlIH0gZnJvbSAnLi4vYmxvY2tzL2NvZGUuY29tcG9uZW50JztcbmltcG9ydCB7IERvdENvbnRlbnRsZXRCbG9jayB9IGZyb20gJy4uL2Jsb2Nrcy9kb3QtY29udGVudGxldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG90SW1hZ2VCbG9jayB9IGZyb20gJy4uL2Jsb2Nrcy9pbWFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG90QnVsbGV0TGlzdCwgRG90T3JkZXJlckxpc3QsIERvdExpc3RJdGVtIH0gZnJvbSAnLi4vYmxvY2tzL2xpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IERvdFRhYmxlQmxvY2sgfSBmcm9tICcuLi9ibG9ja3MvdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7IERvdFBhcmFncmFwaEJsb2NrLCBEb3RUZXh0QmxvY2ssIERvdEhlYWRpbmdCbG9jayB9IGZyb20gJy4uL2Jsb2Nrcy90ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEb3RVbmtub3duQmxvY2tDb21wb25lbnQgfSBmcm9tICcuLi9ibG9ja3MvdW5rbm93bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRG90VmlkZW9CbG9jayB9IGZyb20gJy4uL2Jsb2Nrcy92aWRlby5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3VzdG9tUmVuZGVyZXIgfSBmcm9tICcuLi9kb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci1ibG9jaycsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZG90Y21zLWJsb2NrLWVkaXRvci1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kb3RjbXMtYmxvY2stZWRpdG9yLWl0ZW0uY29tcG9uZW50LnNjc3MnXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgICAgIE5nQ29tcG9uZW50T3V0bGV0LFxuICAgICAgICBBc3luY1BpcGUsXG4gICAgICAgIERvdFBhcmFncmFwaEJsb2NrLFxuICAgICAgICBEb3RUZXh0QmxvY2ssXG4gICAgICAgIERvdEhlYWRpbmdCbG9jayxcbiAgICAgICAgRG90QnVsbGV0TGlzdCxcbiAgICAgICAgRG90T3JkZXJlckxpc3QsXG4gICAgICAgIERvdExpc3RJdGVtLFxuICAgICAgICBEb3RDb2RlQmxvY2ssXG4gICAgICAgIERvdEJsb2NrUXVvdGUsXG4gICAgICAgIERvdEltYWdlQmxvY2ssXG4gICAgICAgIERvdFZpZGVvQmxvY2ssXG4gICAgICAgIERvdFRhYmxlQmxvY2ssXG4gICAgICAgIERvdENvbnRlbnRsZXRCbG9jayxcbiAgICAgICAgRG90VW5rbm93bkJsb2NrQ29tcG9uZW50XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBEb3RDTVNCbG9ja0VkaXRvckl0ZW1Db21wb25lbnQge1xuICAgIEBJbnB1dCgpIGNvbnRlbnQ6IEJsb2NrRWRpdG9yTm9kZVtdIHwgdW5kZWZpbmVkO1xuICAgIEBJbnB1dCgpIGN1c3RvbVJlbmRlcmVyczogQ3VzdG9tUmVuZGVyZXIgfCB1bmRlZmluZWQ7XG5cbiAgICBCTE9DS1MgPSBCbG9ja0VkaXRvckRlZmF1bHRCbG9ja3M7XG59XG4iLCJAZm9yIChub2RlIG9mIGNvbnRlbnQ7IHRyYWNrIG5vZGUpIHtcbiAgICBAaWYgKGN1c3RvbVJlbmRlcmVycz8uW25vZGUudHlwZV0pIHtcbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgICBjdXN0b21SZW5kZXI7XG4gICAgICAgICAgICAgICAgY29udGV4dDogeyBjdXN0b21SZW5kZXI6IGN1c3RvbVJlbmRlcmVycz8uW25vZGUudHlwZV0sIG5vZGU6IG5vZGUgfVxuICAgICAgICAgICAgXCI+PC9uZy1jb250YWluZXI+XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEBzd2l0Y2ggKG5vZGUudHlwZSkge1xuICAgICAgICAgICAgQGNhc2UgKEJMT0NLUy5QQVJBR1JBUEgpIHtcbiAgICAgICAgICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci1wYXJhZ3JhcGggW3N0eWxlXT1cIm5vZGUuYXR0cnNcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItYmxvY2tcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb250ZW50XT1cIm5vZGUuY29udGVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY3VzdG9tUmVuZGVyZXJzXT1cImN1c3RvbVJlbmRlcmVyc1wiIC8+XG4gICAgICAgICAgICAgICAgPC9kb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLXBhcmFncmFwaD5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGNhc2UgKEJMT0NLUy5URVhUKSB7XG4gICAgICAgICAgICAgICAgPGRvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItdGV4dCBbbWFya3NdPVwibm9kZS5tYXJrc1wiIFt0ZXh0XT1cIm5vZGUudGV4dCB8fCAnJ1wiIC8+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBjYXNlIChCTE9DS1MuSEVBRElORykge1xuICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWhlYWRpbmdcbiAgICAgICAgICAgICAgICAgICAgW3N0eWxlXT1cIm5vZGUuYXR0cnMgfHwge31cIlxuICAgICAgICAgICAgICAgICAgICBbbGV2ZWxdPVwibm9kZS5hdHRycz8uWydsZXZlbCddIHx8ICcxJ1wiPlxuICAgICAgICAgICAgICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci1ibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwibm9kZS5jb250ZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21SZW5kZXJlcnNdPVwiY3VzdG9tUmVuZGVyZXJzXCIgLz5cbiAgICAgICAgICAgICAgICA8L2RvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItaGVhZGluZz5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGNhc2UgKEJMT0NLUy5CVUxMRVRfTElTVCkge1xuICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWJ1bGxldC1saXN0PlxuICAgICAgICAgICAgICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci1ibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwibm9kZS5jb250ZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21SZW5kZXJlcnNdPVwiY3VzdG9tUmVuZGVyZXJzXCIgLz5cbiAgICAgICAgICAgICAgICA8L2RvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItYnVsbGV0LWxpc3Q+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBjYXNlIChCTE9DS1MuT1JERVJFRF9MSVNUKSB7XG4gICAgICAgICAgICAgICAgPGRvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItb3JkZXJlZC1saXN0PlxuICAgICAgICAgICAgICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci1ibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwibm9kZS5jb250ZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21SZW5kZXJlcnNdPVwiY3VzdG9tUmVuZGVyZXJzXCIgLz5cbiAgICAgICAgICAgICAgICA8L2RvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItb3JkZXJlZC1saXN0PlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAY2FzZSAoQkxPQ0tTLkxJU1RfSVRFTSkge1xuICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWxpc3QtaXRlbT5cbiAgICAgICAgICAgICAgICAgICAgPGRvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItYmxvY2tcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb250ZW50XT1cIm5vZGUuY29udGVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbY3VzdG9tUmVuZGVyZXJzXT1cImN1c3RvbVJlbmRlcmVyc1wiIC8+XG4gICAgICAgICAgICAgICAgPC9kb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWxpc3QtaXRlbT5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGNhc2UgKEJMT0NLUy5CTE9DS19RVU9URSkge1xuICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWJsb2NrLXF1b3RlPlxuICAgICAgICAgICAgICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci1ibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRlbnRdPVwibm9kZS5jb250ZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjdXN0b21SZW5kZXJlcnNdPVwiY3VzdG9tUmVuZGVyZXJzXCIgLz5cbiAgICAgICAgICAgICAgICA8L2RvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItYmxvY2stcXVvdGU+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBjYXNlIChCTE9DS1MuQ09ERV9CTE9DSykge1xuICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWNvZGUtYmxvY2s+XG4gICAgICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWJsb2NrXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29udGVudF09XCJub2RlLmNvbnRlbnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2N1c3RvbVJlbmRlcmVyc109XCJjdXN0b21SZW5kZXJlcnNcIiAvPlxuICAgICAgICAgICAgICAgIDwvZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci1jb2RlLWJsb2NrPlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAY2FzZSAoQkxPQ0tTLkhBUkRCUkVBSykge1xuICAgICAgICAgICAgICAgIDxiciAvPlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAY2FzZSAoQkxPQ0tTLkhPUklaT05UQUxfUlVMRSkge1xuICAgICAgICAgICAgICAgIDxociAvPlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAY2FzZSAoQkxPQ0tTLkRPVF9JTUFHRSkge1xuICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLWltYWdlIFthdHRyc109XCJub2RlLmF0dHJzIHx8IHt9XCIgLz5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGNhc2UgKEJMT0NLUy5ET1RfVklERU8pIHtcbiAgICAgICAgICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci12aWRlbyBbYXR0cnNdPVwibm9kZS5hdHRycyB8fCB7fVwiIC8+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBjYXNlIChCTE9DS1MuVEFCTEUpIHtcbiAgICAgICAgICAgICAgICA8ZG90Y21zLWJsb2NrLWVkaXRvci1yZW5kZXJlci10YWJsZSBbY29udGVudF09XCJub2RlLmNvbnRlbnRcIiAvPlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAY2FzZSAoQkxPQ0tTLkRPVF9DT05URU5UKSB7XG4gICAgICAgICAgICAgICAgPGRvdGNtcy1ibG9jay1lZGl0b3ItcmVuZGVyZXItY29udGVudGxldFxuICAgICAgICAgICAgICAgICAgICBbYXR0cnNdPVwibm9kZS5hdHRycyB8fCB7fVwiXG4gICAgICAgICAgICAgICAgICAgIFtjdXN0b21SZW5kZXJlcnNdPVwiY3VzdG9tUmVuZGVyZXJzXCIgLz5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGRlZmF1bHQge1xuICAgICAgICAgICAgICAgIDxkb3RjbXMtYmxvY2stZWRpdG9yLXJlbmRlcmVyLXVua25vd24gW25vZGVdPVwibm9kZVwiIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbjxuZy10ZW1wbGF0ZSAjY3VzdG9tUmVuZGVyIGxldC1jdXN0b21SZW5kZXI9XCJjdXN0b21SZW5kZXJcIiBsZXQtbm9kZT1cIm5vZGVcIj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ0NvbXBvbmVudE91dGxldD1cImN1c3RvbVJlbmRlciB8IGFzeW5jOyBpbnB1dHM6IHsgY29udGVudDogbm9kZSB9XCI+PC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuIl19
|