valtech-components 2.0.298 → 2.0.300
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/lib/components/molecules/language-selector/language-selector.component.mjs +24 -13
- package/esm2022/lib/components/molecules/popover-selector/popover-selector.component.mjs +3 -3
- package/esm2022/lib/examples/reactive-components-demo.component.mjs +303 -0
- package/esm2022/lib/examples/reactivity-test.component.mjs +200 -0
- package/esm2022/lib/examples/selector-examples.component.mjs +37 -11
- package/esm2022/lib/services/lang-provider/content.mjs +69 -1
- package/esm2022/lib/services/lang-provider/lang-provider.service.mjs +2 -2
- package/esm2022/public-api.mjs +3 -1
- package/fesm2022/valtech-components.mjs +617 -26
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/examples/reactive-components-demo.component.d.ts +45 -0
- package/lib/examples/reactivity-test.component.d.ts +27 -0
- package/lib/examples/selector-examples.component.d.ts +1 -0
- package/package.json +1 -1
- package/public-api.d.ts +2 -0
- package/esm2022/lib/services/lang-provider/components/display-demo.mjs +0 -86
- package/lib/services/lang-provider/components/display-demo.d.ts +0 -3
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { OnDestroy, OnInit } from '@angular/core';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { ReactiveAlertBoxMetadata } from '../components/molecules/alert-box/types';
|
|
4
|
+
import { ButtonMetadata } from '../components/types';
|
|
5
|
+
import { ContentService } from '../services/content.service';
|
|
6
|
+
import { LangService } from '../services/lang-provider/lang-provider.service';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
/**
|
|
9
|
+
* Simple demo component showcasing reactive content patterns
|
|
10
|
+
* for buttons and alert boxes.
|
|
11
|
+
*
|
|
12
|
+
* Demonstrates:
|
|
13
|
+
* - Button components with reactive text
|
|
14
|
+
* - Alert boxes with reactive content
|
|
15
|
+
* - Language switching
|
|
16
|
+
* - Static vs reactive content patterns
|
|
17
|
+
*/
|
|
18
|
+
export declare class ReactiveComponentsDemoComponent implements OnInit, OnDestroy {
|
|
19
|
+
private contentService;
|
|
20
|
+
private langService;
|
|
21
|
+
private subscriptions;
|
|
22
|
+
pageTitle$: Observable<string>;
|
|
23
|
+
languageLabel$: Observable<string>;
|
|
24
|
+
buttonSectionTitle$: Observable<string>;
|
|
25
|
+
alertSectionTitle$: Observable<string>;
|
|
26
|
+
currentLanguage$: Observable<string>;
|
|
27
|
+
availableLanguages$: Observable<string[]>;
|
|
28
|
+
saveButton: ButtonMetadata;
|
|
29
|
+
cancelButton: ButtonMetadata;
|
|
30
|
+
staticButton: ButtonMetadata;
|
|
31
|
+
warningAlert: ReactiveAlertBoxMetadata;
|
|
32
|
+
successAlert: ReactiveAlertBoxMetadata;
|
|
33
|
+
staticAlert: ReactiveAlertBoxMetadata;
|
|
34
|
+
constructor(contentService: ContentService, langService: LangService);
|
|
35
|
+
ngOnInit(): void;
|
|
36
|
+
ngOnDestroy(): void;
|
|
37
|
+
private initializeContent;
|
|
38
|
+
private initializeComponents;
|
|
39
|
+
changeLanguage(language: string): void;
|
|
40
|
+
private handleSave;
|
|
41
|
+
private handleCancel;
|
|
42
|
+
private handleStatic;
|
|
43
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ReactiveComponentsDemoComponent, never>;
|
|
44
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ReactiveComponentsDemoComponent, "val-reactive-components-demo", never, {}, {}, never, never, true, never>;
|
|
45
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { OnInit } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Test component to diagnose reactive content behavior.
|
|
5
|
+
* Compares fromContent vs fromMultipleContent reactivity.
|
|
6
|
+
*/
|
|
7
|
+
export declare class ReactivityTestComponent implements OnInit {
|
|
8
|
+
private contentService;
|
|
9
|
+
private langService;
|
|
10
|
+
currentLang$: import("rxjs").Observable<string>;
|
|
11
|
+
singleWelcome$: import("rxjs").Observable<string>;
|
|
12
|
+
singleSave$: import("rxjs").Observable<string>;
|
|
13
|
+
singleCancel$: import("rxjs").Observable<string>;
|
|
14
|
+
multipleContent$: import("rxjs").Observable<Record<string, string>>;
|
|
15
|
+
directSingle$: import("rxjs").Observable<string>;
|
|
16
|
+
directMultiple$: import("rxjs").Observable<Record<string, string>>;
|
|
17
|
+
singleUpdateCount: number;
|
|
18
|
+
multipleUpdateCount: number;
|
|
19
|
+
directSingleUpdateCount: number;
|
|
20
|
+
directMultipleUpdateCount: number;
|
|
21
|
+
ngOnInit(): void;
|
|
22
|
+
switchToSpanish(): void;
|
|
23
|
+
switchToEnglish(): void;
|
|
24
|
+
switchToFrench(): void;
|
|
25
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ReactivityTestComponent, never>;
|
|
26
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ReactivityTestComponent, "val-reactivity-test", never, {}, {}, never, never, true, never>;
|
|
27
|
+
}
|
|
@@ -11,6 +11,7 @@ export declare class SelectorExamplesComponent {
|
|
|
11
11
|
basicLanguageSelector: LanguageSelectorMetadata;
|
|
12
12
|
flagLanguageSelector: LanguageSelectorMetadata;
|
|
13
13
|
customLanguageSelector: LanguageSelectorMetadata;
|
|
14
|
+
compactLanguageSelector: LanguageSelectorMetadata;
|
|
14
15
|
onCategoryChange(category: string | string[]): void;
|
|
15
16
|
onPriorityChange(priority: string | string[]): void;
|
|
16
17
|
onMultipleChange(notifications: string | string[]): void;
|
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -89,6 +89,8 @@ export * from './lib/examples/display-demo.component';
|
|
|
89
89
|
export * from './lib/examples/display-simple-example.component';
|
|
90
90
|
export * from './lib/examples/link-processing-example.component';
|
|
91
91
|
export * from './lib/examples/multi-language-demo.component';
|
|
92
|
+
export * from './lib/examples/reactive-components-demo.component';
|
|
93
|
+
export * from './lib/examples/reactivity-test.component';
|
|
92
94
|
export * from './lib/examples/selector-examples.component';
|
|
93
95
|
export * from './lib/services/content.service';
|
|
94
96
|
export * from './lib/services/download.service';
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { TextContent } from '../types';
|
|
2
|
-
/**
|
|
3
|
-
* Contenido específico para el componente de demostración de Display.
|
|
4
|
-
* Todas las claves son planas (sin anidación) ya que el sistema no soporta claves anidadas.
|
|
5
|
-
*/
|
|
6
|
-
const displayDemoContent = {
|
|
7
|
-
es: {
|
|
8
|
-
// Página principal
|
|
9
|
-
pageTitle: 'Demostración del Componente Display',
|
|
10
|
-
// Secciones
|
|
11
|
-
sectionsStatic: 'Ejemplos Estáticos',
|
|
12
|
-
sectionsReactive: 'Ejemplos Reactivos',
|
|
13
|
-
sectionsMixed: 'Ejemplos Mixtos',
|
|
14
|
-
sectionsDynamic: 'Ejemplos Dinámicos',
|
|
15
|
-
sectionsAnalysis: 'Análisis de Idioma',
|
|
16
|
-
// Subsecciones
|
|
17
|
-
subsectionsReactiveContent: 'Contenido reactivo básico:',
|
|
18
|
-
subsectionsInterpolation: 'Contenido con interpolación:',
|
|
19
|
-
subsectionsFallback: 'Demostración de fallbacks:',
|
|
20
|
-
subsectionsMixedContent: 'Contenido estático vs reactivo:',
|
|
21
|
-
subsectionsDynamicContent: 'Contenido que se actualiza dinámicamente:',
|
|
22
|
-
// Contenido de bienvenida
|
|
23
|
-
welcomeTitle: 'Bienvenido a la aplicación',
|
|
24
|
-
welcomeDescription: 'Esta es una descripción de ejemplo',
|
|
25
|
-
welcomeUser: 'Hola, {{userName}}!',
|
|
26
|
-
// Estados y mensajes
|
|
27
|
-
statusOnline: 'En línea',
|
|
28
|
-
counterCurrent: 'Contador: {{count}}',
|
|
29
|
-
dynamicContent: 'Clics: {{count}}',
|
|
30
|
-
// Contenido mixto
|
|
31
|
-
mixedReactive: 'Este contenido sí cambia con el idioma',
|
|
32
|
-
// Botones
|
|
33
|
-
buttonsUpdateCounter: 'Actualizar Contador',
|
|
34
|
-
// Análisis
|
|
35
|
-
analysisCurrentLanguage: 'Idioma actual',
|
|
36
|
-
analysisAvailableLanguages: 'Idiomas disponibles',
|
|
37
|
-
},
|
|
38
|
-
en: {
|
|
39
|
-
// Main page
|
|
40
|
-
pageTitle: 'Display Component Demo',
|
|
41
|
-
// Sections
|
|
42
|
-
sectionsStatic: 'Static Examples',
|
|
43
|
-
sectionsReactive: 'Reactive Examples',
|
|
44
|
-
sectionsMixed: 'Mixed Examples',
|
|
45
|
-
sectionsDynamic: 'Dynamic Examples',
|
|
46
|
-
sectionsAnalysis: 'Language Analysis',
|
|
47
|
-
// Subsections
|
|
48
|
-
subsectionsReactiveContent: 'Basic reactive content:',
|
|
49
|
-
subsectionsInterpolation: 'Content with interpolation:',
|
|
50
|
-
subsectionsFallback: 'Fallback demonstration:',
|
|
51
|
-
subsectionsMixedContent: 'Static vs reactive content:',
|
|
52
|
-
subsectionsDynamicContent: 'Dynamically updating content:',
|
|
53
|
-
// Welcome content
|
|
54
|
-
welcomeTitle: 'Welcome to the application',
|
|
55
|
-
welcomeDescription: 'This is an example description',
|
|
56
|
-
welcomeUser: 'Hello, {{userName}}!',
|
|
57
|
-
// States and messages
|
|
58
|
-
statusOnline: 'Online',
|
|
59
|
-
counterCurrent: 'Counter: {{count}}',
|
|
60
|
-
dynamicContent: 'Clicks: {{count}}',
|
|
61
|
-
// Mixed content
|
|
62
|
-
mixedReactive: 'This content does change with language',
|
|
63
|
-
// Buttons
|
|
64
|
-
buttonsUpdateCounter: 'Update Counter',
|
|
65
|
-
// Analysis
|
|
66
|
-
analysisCurrentLanguage: 'Current language',
|
|
67
|
-
analysisAvailableLanguages: 'Available languages',
|
|
68
|
-
},
|
|
69
|
-
fr: {
|
|
70
|
-
// Page principale
|
|
71
|
-
pageTitle: 'Démonstration du Composant Display',
|
|
72
|
-
// Sections
|
|
73
|
-
sectionsStatic: 'Exemples Statiques',
|
|
74
|
-
sectionsReactive: 'Exemples Réactifs',
|
|
75
|
-
// Welcome content
|
|
76
|
-
welcomeTitle: "Bienvenue dans l'application",
|
|
77
|
-
welcomeUser: 'Bonjour, {{userName}}!',
|
|
78
|
-
// States and messages
|
|
79
|
-
statusOnline: 'En ligne',
|
|
80
|
-
counterCurrent: 'Compteur: {{count}}',
|
|
81
|
-
// Buttons
|
|
82
|
-
buttonsUpdateCounter: 'Mettre à jour le Compteur',
|
|
83
|
-
},
|
|
84
|
-
};
|
|
85
|
-
export default new TextContent(displayDemoContent);
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGxheS1kZW1vLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmFsdGVjaC1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZXMvbGFuZy1wcm92aWRlci9jb21wb25lbnRzL2Rpc3BsYXktZGVtby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUV6RDs7O0dBR0c7QUFDSCxNQUFNLGtCQUFrQixHQUFxQjtJQUMzQyxFQUFFLEVBQUU7UUFDRixtQkFBbUI7UUFDbkIsU0FBUyxFQUFFLHFDQUFxQztRQUVoRCxZQUFZO1FBQ1osY0FBYyxFQUFFLG9CQUFvQjtRQUNwQyxnQkFBZ0IsRUFBRSxvQkFBb0I7UUFDdEMsYUFBYSxFQUFFLGlCQUFpQjtRQUNoQyxlQUFlLEVBQUUsb0JBQW9CO1FBQ3JDLGdCQUFnQixFQUFFLG9CQUFvQjtRQUV0QyxlQUFlO1FBQ2YsMEJBQTBCLEVBQUUsNEJBQTRCO1FBQ3hELHdCQUF3QixFQUFFLDhCQUE4QjtRQUN4RCxtQkFBbUIsRUFBRSw0QkFBNEI7UUFDakQsdUJBQXVCLEVBQUUsaUNBQWlDO1FBQzFELHlCQUF5QixFQUFFLDJDQUEyQztRQUV0RSwwQkFBMEI7UUFDMUIsWUFBWSxFQUFFLDRCQUE0QjtRQUMxQyxrQkFBa0IsRUFBRSxvQ0FBb0M7UUFDeEQsV0FBVyxFQUFFLHFCQUFxQjtRQUVsQyxxQkFBcUI7UUFDckIsWUFBWSxFQUFFLFVBQVU7UUFDeEIsY0FBYyxFQUFFLHFCQUFxQjtRQUNyQyxjQUFjLEVBQUUsa0JBQWtCO1FBRWxDLGtCQUFrQjtRQUNsQixhQUFhLEVBQUUsd0NBQXdDO1FBRXZELFVBQVU7UUFDVixvQkFBb0IsRUFBRSxxQkFBcUI7UUFFM0MsV0FBVztRQUNYLHVCQUF1QixFQUFFLGVBQWU7UUFDeEMsMEJBQTBCLEVBQUUscUJBQXFCO0tBQ2xEO0lBQ0QsRUFBRSxFQUFFO1FBQ0YsWUFBWTtRQUNaLFNBQVMsRUFBRSx3QkFBd0I7UUFFbkMsV0FBVztRQUNYLGNBQWMsRUFBRSxpQkFBaUI7UUFDakMsZ0JBQWdCLEVBQUUsbUJBQW1CO1FBQ3JDLGFBQWEsRUFBRSxnQkFBZ0I7UUFDL0IsZUFBZSxFQUFFLGtCQUFrQjtRQUNuQyxnQkFBZ0IsRUFBRSxtQkFBbUI7UUFFckMsY0FBYztRQUNkLDBCQUEwQixFQUFFLHlCQUF5QjtRQUNyRCx3QkFBd0IsRUFBRSw2QkFBNkI7UUFDdkQsbUJBQW1CLEVBQUUseUJBQXlCO1FBQzlDLHVCQUF1QixFQUFFLDZCQUE2QjtRQUN0RCx5QkFBeUIsRUFBRSwrQkFBK0I7UUFFMUQsa0JBQWtCO1FBQ2xCLFlBQVksRUFBRSw0QkFBNEI7UUFDMUMsa0JBQWtCLEVBQUUsZ0NBQWdDO1FBQ3BELFdBQVcsRUFBRSxzQkFBc0I7UUFFbkMsc0JBQXNCO1FBQ3RCLFlBQVksRUFBRSxRQUFRO1FBQ3RCLGNBQWMsRUFBRSxvQkFBb0I7UUFDcEMsY0FBYyxFQUFFLG1CQUFtQjtRQUVuQyxnQkFBZ0I7UUFDaEIsYUFBYSxFQUFFLHdDQUF3QztRQUV2RCxVQUFVO1FBQ1Ysb0JBQW9CLEVBQUUsZ0JBQWdCO1FBRXRDLFdBQVc7UUFDWCx1QkFBdUIsRUFBRSxrQkFBa0I7UUFDM0MsMEJBQTBCLEVBQUUscUJBQXFCO0tBQ2xEO0lBQ0QsRUFBRSxFQUFFO1FBQ0Ysa0JBQWtCO1FBQ2xCLFNBQVMsRUFBRSxvQ0FBb0M7UUFFL0MsV0FBVztRQUNYLGNBQWMsRUFBRSxvQkFBb0I7UUFDcEMsZ0JBQWdCLEVBQUUsbUJBQW1CO1FBRXJDLGtCQUFrQjtRQUNsQixZQUFZLEVBQUUsOEJBQThCO1FBQzVDLFdBQVcsRUFBRSx3QkFBd0I7UUFFckMsc0JBQXNCO1FBQ3RCLFlBQVksRUFBRSxVQUFVO1FBQ3hCLGNBQWMsRUFBRSxxQkFBcUI7UUFFckMsVUFBVTtRQUNWLG9CQUFvQixFQUFFLDJCQUEyQjtLQUNsRDtDQUNGLENBQUM7QUFFRixlQUFlLElBQUksV0FBVyxDQUFDLGtCQUFrQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMYW5ndWFnZXNDb250ZW50LCBUZXh0Q29udGVudCB9IGZyb20gJy4uL3R5cGVzJztcblxuLyoqXG4gKiBDb250ZW5pZG8gZXNwZWPDrWZpY28gcGFyYSBlbCBjb21wb25lbnRlIGRlIGRlbW9zdHJhY2nDs24gZGUgRGlzcGxheS5cbiAqIFRvZGFzIGxhcyBjbGF2ZXMgc29uIHBsYW5hcyAoc2luIGFuaWRhY2nDs24pIHlhIHF1ZSBlbCBzaXN0ZW1hIG5vIHNvcG9ydGEgY2xhdmVzIGFuaWRhZGFzLlxuICovXG5jb25zdCBkaXNwbGF5RGVtb0NvbnRlbnQ6IExhbmd1YWdlc0NvbnRlbnQgPSB7XG4gIGVzOiB7XG4gICAgLy8gUMOhZ2luYSBwcmluY2lwYWxcbiAgICBwYWdlVGl0bGU6ICdEZW1vc3RyYWNpw7NuIGRlbCBDb21wb25lbnRlIERpc3BsYXknLFxuXG4gICAgLy8gU2VjY2lvbmVzXG4gICAgc2VjdGlvbnNTdGF0aWM6ICdFamVtcGxvcyBFc3TDoXRpY29zJyxcbiAgICBzZWN0aW9uc1JlYWN0aXZlOiAnRWplbXBsb3MgUmVhY3Rpdm9zJyxcbiAgICBzZWN0aW9uc01peGVkOiAnRWplbXBsb3MgTWl4dG9zJyxcbiAgICBzZWN0aW9uc0R5bmFtaWM6ICdFamVtcGxvcyBEaW7DoW1pY29zJyxcbiAgICBzZWN0aW9uc0FuYWx5c2lzOiAnQW7DoWxpc2lzIGRlIElkaW9tYScsXG5cbiAgICAvLyBTdWJzZWNjaW9uZXNcbiAgICBzdWJzZWN0aW9uc1JlYWN0aXZlQ29udGVudDogJ0NvbnRlbmlkbyByZWFjdGl2byBiw6FzaWNvOicsXG4gICAgc3Vic2VjdGlvbnNJbnRlcnBvbGF0aW9uOiAnQ29udGVuaWRvIGNvbiBpbnRlcnBvbGFjacOzbjonLFxuICAgIHN1YnNlY3Rpb25zRmFsbGJhY2s6ICdEZW1vc3RyYWNpw7NuIGRlIGZhbGxiYWNrczonLFxuICAgIHN1YnNlY3Rpb25zTWl4ZWRDb250ZW50OiAnQ29udGVuaWRvIGVzdMOhdGljbyB2cyByZWFjdGl2bzonLFxuICAgIHN1YnNlY3Rpb25zRHluYW1pY0NvbnRlbnQ6ICdDb250ZW5pZG8gcXVlIHNlIGFjdHVhbGl6YSBkaW7DoW1pY2FtZW50ZTonLFxuXG4gICAgLy8gQ29udGVuaWRvIGRlIGJpZW52ZW5pZGFcbiAgICB3ZWxjb21lVGl0bGU6ICdCaWVudmVuaWRvIGEgbGEgYXBsaWNhY2nDs24nLFxuICAgIHdlbGNvbWVEZXNjcmlwdGlvbjogJ0VzdGEgZXMgdW5hIGRlc2NyaXBjacOzbiBkZSBlamVtcGxvJyxcbiAgICB3ZWxjb21lVXNlcjogJ0hvbGEsIHt7dXNlck5hbWV9fSEnLFxuXG4gICAgLy8gRXN0YWRvcyB5IG1lbnNhamVzXG4gICAgc3RhdHVzT25saW5lOiAnRW4gbMOtbmVhJyxcbiAgICBjb3VudGVyQ3VycmVudDogJ0NvbnRhZG9yOiB7e2NvdW50fX0nLFxuICAgIGR5bmFtaWNDb250ZW50OiAnQ2xpY3M6IHt7Y291bnR9fScsXG5cbiAgICAvLyBDb250ZW5pZG8gbWl4dG9cbiAgICBtaXhlZFJlYWN0aXZlOiAnRXN0ZSBjb250ZW5pZG8gc8OtIGNhbWJpYSBjb24gZWwgaWRpb21hJyxcblxuICAgIC8vIEJvdG9uZXNcbiAgICBidXR0b25zVXBkYXRlQ291bnRlcjogJ0FjdHVhbGl6YXIgQ29udGFkb3InLFxuXG4gICAgLy8gQW7DoWxpc2lzXG4gICAgYW5hbHlzaXNDdXJyZW50TGFuZ3VhZ2U6ICdJZGlvbWEgYWN0dWFsJyxcbiAgICBhbmFseXNpc0F2YWlsYWJsZUxhbmd1YWdlczogJ0lkaW9tYXMgZGlzcG9uaWJsZXMnLFxuICB9LFxuICBlbjoge1xuICAgIC8vIE1haW4gcGFnZVxuICAgIHBhZ2VUaXRsZTogJ0Rpc3BsYXkgQ29tcG9uZW50IERlbW8nLFxuXG4gICAgLy8gU2VjdGlvbnNcbiAgICBzZWN0aW9uc1N0YXRpYzogJ1N0YXRpYyBFeGFtcGxlcycsXG4gICAgc2VjdGlvbnNSZWFjdGl2ZTogJ1JlYWN0aXZlIEV4YW1wbGVzJyxcbiAgICBzZWN0aW9uc01peGVkOiAnTWl4ZWQgRXhhbXBsZXMnLFxuICAgIHNlY3Rpb25zRHluYW1pYzogJ0R5bmFtaWMgRXhhbXBsZXMnLFxuICAgIHNlY3Rpb25zQW5hbHlzaXM6ICdMYW5ndWFnZSBBbmFseXNpcycsXG5cbiAgICAvLyBTdWJzZWN0aW9uc1xuICAgIHN1YnNlY3Rpb25zUmVhY3RpdmVDb250ZW50OiAnQmFzaWMgcmVhY3RpdmUgY29udGVudDonLFxuICAgIHN1YnNlY3Rpb25zSW50ZXJwb2xhdGlvbjogJ0NvbnRlbnQgd2l0aCBpbnRlcnBvbGF0aW9uOicsXG4gICAgc3Vic2VjdGlvbnNGYWxsYmFjazogJ0ZhbGxiYWNrIGRlbW9uc3RyYXRpb246JyxcbiAgICBzdWJzZWN0aW9uc01peGVkQ29udGVudDogJ1N0YXRpYyB2cyByZWFjdGl2ZSBjb250ZW50OicsXG4gICAgc3Vic2VjdGlvbnNEeW5hbWljQ29udGVudDogJ0R5bmFtaWNhbGx5IHVwZGF0aW5nIGNvbnRlbnQ6JyxcblxuICAgIC8vIFdlbGNvbWUgY29udGVudFxuICAgIHdlbGNvbWVUaXRsZTogJ1dlbGNvbWUgdG8gdGhlIGFwcGxpY2F0aW9uJyxcbiAgICB3ZWxjb21lRGVzY3JpcHRpb246ICdUaGlzIGlzIGFuIGV4YW1wbGUgZGVzY3JpcHRpb24nLFxuICAgIHdlbGNvbWVVc2VyOiAnSGVsbG8sIHt7dXNlck5hbWV9fSEnLFxuXG4gICAgLy8gU3RhdGVzIGFuZCBtZXNzYWdlc1xuICAgIHN0YXR1c09ubGluZTogJ09ubGluZScsXG4gICAgY291bnRlckN1cnJlbnQ6ICdDb3VudGVyOiB7e2NvdW50fX0nLFxuICAgIGR5bmFtaWNDb250ZW50OiAnQ2xpY2tzOiB7e2NvdW50fX0nLFxuXG4gICAgLy8gTWl4ZWQgY29udGVudFxuICAgIG1peGVkUmVhY3RpdmU6ICdUaGlzIGNvbnRlbnQgZG9lcyBjaGFuZ2Ugd2l0aCBsYW5ndWFnZScsXG5cbiAgICAvLyBCdXR0b25zXG4gICAgYnV0dG9uc1VwZGF0ZUNvdW50ZXI6ICdVcGRhdGUgQ291bnRlcicsXG5cbiAgICAvLyBBbmFseXNpc1xuICAgIGFuYWx5c2lzQ3VycmVudExhbmd1YWdlOiAnQ3VycmVudCBsYW5ndWFnZScsXG4gICAgYW5hbHlzaXNBdmFpbGFibGVMYW5ndWFnZXM6ICdBdmFpbGFibGUgbGFuZ3VhZ2VzJyxcbiAgfSxcbiAgZnI6IHtcbiAgICAvLyBQYWdlIHByaW5jaXBhbGVcbiAgICBwYWdlVGl0bGU6ICdEw6ltb25zdHJhdGlvbiBkdSBDb21wb3NhbnQgRGlzcGxheScsXG5cbiAgICAvLyBTZWN0aW9uc1xuICAgIHNlY3Rpb25zU3RhdGljOiAnRXhlbXBsZXMgU3RhdGlxdWVzJyxcbiAgICBzZWN0aW9uc1JlYWN0aXZlOiAnRXhlbXBsZXMgUsOpYWN0aWZzJyxcblxuICAgIC8vIFdlbGNvbWUgY29udGVudFxuICAgIHdlbGNvbWVUaXRsZTogXCJCaWVudmVudWUgZGFucyBsJ2FwcGxpY2F0aW9uXCIsXG4gICAgd2VsY29tZVVzZXI6ICdCb25qb3VyLCB7e3VzZXJOYW1lfX0hJyxcblxuICAgIC8vIFN0YXRlcyBhbmQgbWVzc2FnZXNcbiAgICBzdGF0dXNPbmxpbmU6ICdFbiBsaWduZScsXG4gICAgY291bnRlckN1cnJlbnQ6ICdDb21wdGV1cjoge3tjb3VudH19JyxcblxuICAgIC8vIEJ1dHRvbnNcbiAgICBidXR0b25zVXBkYXRlQ291bnRlcjogJ01ldHRyZSDDoCBqb3VyIGxlIENvbXB0ZXVyJyxcbiAgfSxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IG5ldyBUZXh0Q29udGVudChkaXNwbGF5RGVtb0NvbnRlbnQpO1xuIl19
|