valtech-components 2.0.523 → 2.0.525
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/atoms/rights-footer/rights-footer.component.mjs +29 -17
- package/esm2022/lib/components/organisms/company-footer/company-footer.component.mjs +18 -14
- package/esm2022/lib/components/templates/page-wrapper/page-wrapper.component.mjs +37 -42
- package/fesm2022/valtech-components.mjs +79 -68
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/atoms/rights-footer/rights-footer.component.d.ts +12 -3
- package/lib/components/organisms/company-footer/company-footer.component.d.ts +7 -2
- package/lib/components/templates/page-wrapper/page-wrapper.component.d.ts +8 -11
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { Component, computed, inject,
|
|
2
|
+
import { Component, computed, inject, input } from '@angular/core';
|
|
3
3
|
import { TextComponent } from '../text/text.component';
|
|
4
4
|
import { I18nService } from '../../../services/i18n';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
@@ -27,32 +27,46 @@ import * as i0 from "@angular/core";
|
|
|
27
27
|
export class RightsFooterComponent {
|
|
28
28
|
constructor() {
|
|
29
29
|
this.i18n = inject(I18nService);
|
|
30
|
+
/**
|
|
31
|
+
* Optional configuration for the rights footer.
|
|
32
|
+
* Signal-based input for full reactivity with computed().
|
|
33
|
+
*/
|
|
34
|
+
this.props = input();
|
|
30
35
|
/**
|
|
31
36
|
* Current year for copyright.
|
|
32
37
|
*/
|
|
33
38
|
this.currentYear = new Date().getFullYear();
|
|
34
39
|
/**
|
|
35
|
-
* Computed copyright text - reactive to language changes.
|
|
40
|
+
* Computed copyright text - reactive to both language AND props changes.
|
|
36
41
|
*/
|
|
37
42
|
this.copyrightText = computed(() => {
|
|
38
43
|
this.i18n.lang(); // Track language changes
|
|
39
|
-
const
|
|
40
|
-
const
|
|
44
|
+
const p = this.props(); // Track props changes (now it's a signal!)
|
|
45
|
+
const company = p?.companyName || 'Valtech';
|
|
46
|
+
const rights = p?.rightsText || this.i18n.t('allRightsReserved');
|
|
41
47
|
return `© ${this.currentYear} ${company}. ${rights}`;
|
|
42
48
|
});
|
|
49
|
+
/**
|
|
50
|
+
* Computed helper for align prop in template.
|
|
51
|
+
*/
|
|
52
|
+
this.propsAlign = computed(() => this.props()?.align);
|
|
53
|
+
/**
|
|
54
|
+
* Computed helper for color prop in template.
|
|
55
|
+
*/
|
|
56
|
+
this.propsColor = computed(() => this.props()?.color || 'dark');
|
|
43
57
|
}
|
|
44
58
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RightsFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
45
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
59
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: RightsFooterComponent, isStandalone: true, selector: "val-rights-footer", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
46
60
|
<div
|
|
47
61
|
class="rights-footer"
|
|
48
|
-
[class.rights-footer--left]="
|
|
49
|
-
[class.rights-footer--center]="
|
|
50
|
-
[class.rights-footer--right]="
|
|
62
|
+
[class.rights-footer--left]="propsAlign() === 'left'"
|
|
63
|
+
[class.rights-footer--center]="propsAlign() === 'center' || !propsAlign()"
|
|
64
|
+
[class.rights-footer--right]="propsAlign() === 'right'"
|
|
51
65
|
>
|
|
52
66
|
<val-text
|
|
53
67
|
[props]="{
|
|
54
68
|
content: copyrightText(),
|
|
55
|
-
color:
|
|
69
|
+
color: propsColor(),
|
|
56
70
|
bold: false,
|
|
57
71
|
size: 'small'
|
|
58
72
|
}"
|
|
@@ -65,21 +79,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
65
79
|
args: [{ selector: 'val-rights-footer', standalone: true, imports: [CommonModule, TextComponent], template: `
|
|
66
80
|
<div
|
|
67
81
|
class="rights-footer"
|
|
68
|
-
[class.rights-footer--left]="
|
|
69
|
-
[class.rights-footer--center]="
|
|
70
|
-
[class.rights-footer--right]="
|
|
82
|
+
[class.rights-footer--left]="propsAlign() === 'left'"
|
|
83
|
+
[class.rights-footer--center]="propsAlign() === 'center' || !propsAlign()"
|
|
84
|
+
[class.rights-footer--right]="propsAlign() === 'right'"
|
|
71
85
|
>
|
|
72
86
|
<val-text
|
|
73
87
|
[props]="{
|
|
74
88
|
content: copyrightText(),
|
|
75
|
-
color:
|
|
89
|
+
color: propsColor(),
|
|
76
90
|
bold: false,
|
|
77
91
|
size: 'small'
|
|
78
92
|
}"
|
|
79
93
|
/>
|
|
80
94
|
</div>
|
|
81
95
|
`, styles: [".rights-footer{display:block;margin-top:24px}.rights-footer--left{text-align:left}.rights-footer--center{text-align:center}.rights-footer--right{text-align:right}\n"] }]
|
|
82
|
-
}]
|
|
83
|
-
|
|
84
|
-
}] } });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmlnaHRzLWZvb3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvcmlnaHRzLWZvb3Rlci9yaWdodHMtZm9vdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQUVyRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUF3QkgsTUFBTSxPQUFPLHFCQUFxQjtJQXZCbEM7UUF3QlUsU0FBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQU9uQzs7V0FFRztRQUNILGdCQUFXLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUV2Qzs7V0FFRztRQUNILGtCQUFhLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMseUJBQXlCO1lBQzNDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsV0FBVyxJQUFJLFNBQVMsQ0FBQztZQUNyRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLFVBQVUsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBQzFFLE9BQU8sS0FBSyxJQUFJLENBQUMsV0FBVyxJQUFJLE9BQU8sS0FBSyxNQUFNLEVBQUUsQ0FBQztRQUN2RCxDQUFDLENBQUMsQ0FBQztLQUNKOytHQXRCWSxxQkFBcUI7bUdBQXJCLHFCQUFxQix5R0FuQnRCOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JULDZPQWpCUyxZQUFZLCtCQUFFLGFBQWE7OzRGQW9CMUIscUJBQXFCO2tCQXZCakMsU0FBUzsrQkFDRSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxZQUM1Qjs7Ozs7Ozs7Ozs7Ozs7OztHQWdCVDs4QkFTUSxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5qZWN0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGV4dENvbXBvbmVudCB9IGZyb20gJy4uL3RleHQvdGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmlnaHRzRm9vdGVyTWV0YWRhdGEgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IEkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaTE4bic7XG5cbi8qKlxuICogdmFsLXJpZ2h0cy1mb290ZXJcbiAqXG4gKiBBIHNpbXBsZSBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBjb3B5cmlnaHQgdGV4dCB3aXRoIGR5bmFtaWMgeWVhci5cbiAqIFVzZWZ1bCBmb3IgZm9vdGVycyB3aGVyZSB5b3UgbmVlZCB0byBzaG93IFwiwqkgMjAyNCBDb21wYW55LiBBbGwgcmlnaHRzIHJlc2VydmVkLlwiXG4gKlxuICogQGV4YW1wbGVcbiAqIDx2YWwtcmlnaHRzLWZvb3Rlcj48L3ZhbC1yaWdodHMtZm9vdGVyPlxuICpcbiAqIEBleGFtcGxlXG4gKiA8dmFsLXJpZ2h0cy1mb290ZXJcbiAqICAgW3Byb3BzXT1cIntcbiAqICAgICBjb21wYW55TmFtZTogJ015IENvbXBhbnknLFxuICogICAgIHJpZ2h0c1RleHQ6ICdBbGwgcmlnaHRzIHJlc2VydmVkLicsXG4gKiAgICAgY29sb3I6ICdtZWRpdW0nLFxuICogICAgIGFsaWduOiAnbGVmdCdcbiAqICAgfVwiXG4gKiA+PC92YWwtcmlnaHRzLWZvb3Rlcj5cbiAqXG4gKiBAaW5wdXQgcHJvcHMgLSBPcHRpb25hbCBjb25maWd1cmF0aW9uIChjb21wYW55TmFtZSwgcmlnaHRzVGV4dCwgY29sb3IsIGFsaWduKVxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtcmlnaHRzLWZvb3RlcicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRleHRDb21wb25lbnRdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwicmlnaHRzLWZvb3RlclwiXG4gICAgICBbY2xhc3MucmlnaHRzLWZvb3Rlci0tbGVmdF09XCJwcm9wcz8uYWxpZ24gPT09ICdsZWZ0J1wiXG4gICAgICBbY2xhc3MucmlnaHRzLWZvb3Rlci0tY2VudGVyXT1cInByb3BzPy5hbGlnbiA9PT0gJ2NlbnRlcicgfHwgIXByb3BzPy5hbGlnblwiXG4gICAgICBbY2xhc3MucmlnaHRzLWZvb3Rlci0tcmlnaHRdPVwicHJvcHM/LmFsaWduID09PSAncmlnaHQnXCJcbiAgICA+XG4gICAgICA8dmFsLXRleHRcbiAgICAgICAgW3Byb3BzXT1cIntcbiAgICAgICAgICBjb250ZW50OiBjb3B5cmlnaHRUZXh0KCksXG4gICAgICAgICAgY29sb3I6IHByb3BzPy5jb2xvciB8fCAnZGFyaycsXG4gICAgICAgICAgYm9sZDogZmFsc2UsXG4gICAgICAgICAgc2l6ZTogJ3NtYWxsJ1xuICAgICAgICB9XCJcbiAgICAgIC8+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL3JpZ2h0cy1mb290ZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUmlnaHRzRm9vdGVyQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSBpMThuID0gaW5qZWN0KEkxOG5TZXJ2aWNlKTtcblxuICAvKipcbiAgICogT3B0aW9uYWwgY29uZmlndXJhdGlvbiBmb3IgdGhlIHJpZ2h0cyBmb290ZXIuXG4gICAqL1xuICBASW5wdXQoKSBwcm9wcz86IFJpZ2h0c0Zvb3Rlck1ldGFkYXRhO1xuXG4gIC8qKlxuICAgKiBDdXJyZW50IHllYXIgZm9yIGNvcHlyaWdodC5cbiAgICovXG4gIGN1cnJlbnRZZWFyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xuXG4gIC8qKlxuICAgKiBDb21wdXRlZCBjb3B5cmlnaHQgdGV4dCAtIHJlYWN0aXZlIHRvIGxhbmd1YWdlIGNoYW5nZXMuXG4gICAqL1xuICBjb3B5cmlnaHRUZXh0ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHRoaXMuaTE4bi5sYW5nKCk7IC8vIFRyYWNrIGxhbmd1YWdlIGNoYW5nZXNcbiAgICBjb25zdCBjb21wYW55ID0gdGhpcy5wcm9wcz8uY29tcGFueU5hbWUgfHwgJ1ZhbHRlY2gnO1xuICAgIGNvbnN0IHJpZ2h0cyA9IHRoaXMucHJvcHM/LnJpZ2h0c1RleHQgfHwgdGhpcy5pMThuLnQoJ2FsbFJpZ2h0c1Jlc2VydmVkJyk7XG4gICAgcmV0dXJuIGDCqSAke3RoaXMuY3VycmVudFllYXJ9ICR7Y29tcGFueX0uICR7cmlnaHRzfWA7XG4gIH0pO1xufVxuIl19
|
|
96
|
+
}] });
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmlnaHRzLWZvb3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvcmlnaHRzLWZvb3Rlci9yaWdodHMtZm9vdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQUVyRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUF3QkgsTUFBTSxPQUFPLHFCQUFxQjtJQXZCbEM7UUF3QlUsU0FBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVuQzs7O1dBR0c7UUFDTSxVQUFLLEdBQUcsS0FBSyxFQUF3QixDQUFDO1FBRS9DOztXQUVHO1FBQ0gsZ0JBQVcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRXZDOztXQUVHO1FBQ0gsa0JBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyx5QkFBeUI7WUFDM0MsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsMkNBQTJDO1lBQ25FLE1BQU0sT0FBTyxHQUFHLENBQUMsRUFBRSxXQUFXLElBQUksU0FBUyxDQUFDO1lBQzVDLE1BQU0sTUFBTSxHQUFHLENBQUMsRUFBRSxVQUFVLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUNqRSxPQUFPLEtBQUssSUFBSSxDQUFDLFdBQVcsSUFBSSxPQUFPLEtBQUssTUFBTSxFQUFFLENBQUM7UUFDdkQsQ0FBQyxDQUFDLENBQUM7UUFFSDs7V0FFRztRQUNILGVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRWpEOztXQUVHO1FBQ0gsZUFBVSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsS0FBSyxJQUFJLE1BQU0sQ0FBQyxDQUFDO0tBQzVEOytHQWxDWSxxQkFBcUI7bUdBQXJCLHFCQUFxQixpTkFuQnRCOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JULDZPQWpCUyxZQUFZLCtCQUFFLGFBQWE7OzRGQW9CMUIscUJBQXFCO2tCQXZCakMsU0FBUzsrQkFDRSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxZQUM1Qjs7Ozs7Ozs7Ozs7Ozs7OztHQWdCVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUZXh0Q29tcG9uZW50IH0gZnJvbSAnLi4vdGV4dC90ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSaWdodHNGb290ZXJNZXRhZGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9pMThuJztcblxuLyoqXG4gKiB2YWwtcmlnaHRzLWZvb3RlclxuICpcbiAqIEEgc2ltcGxlIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGNvcHlyaWdodCB0ZXh0IHdpdGggZHluYW1pYyB5ZWFyLlxuICogVXNlZnVsIGZvciBmb290ZXJzIHdoZXJlIHlvdSBuZWVkIHRvIHNob3cgXCLCqSAyMDI0IENvbXBhbnkuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXCJcbiAqXG4gKiBAZXhhbXBsZVxuICogPHZhbC1yaWdodHMtZm9vdGVyPjwvdmFsLXJpZ2h0cy1mb290ZXI+XG4gKlxuICogQGV4YW1wbGVcbiAqIDx2YWwtcmlnaHRzLWZvb3RlclxuICogICBbcHJvcHNdPVwie1xuICogICAgIGNvbXBhbnlOYW1lOiAnTXkgQ29tcGFueScsXG4gKiAgICAgcmlnaHRzVGV4dDogJ0FsbCByaWdodHMgcmVzZXJ2ZWQuJyxcbiAqICAgICBjb2xvcjogJ21lZGl1bScsXG4gKiAgICAgYWxpZ246ICdsZWZ0J1xuICogICB9XCJcbiAqID48L3ZhbC1yaWdodHMtZm9vdGVyPlxuICpcbiAqIEBpbnB1dCBwcm9wcyAtIE9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gKGNvbXBhbnlOYW1lLCByaWdodHNUZXh0LCBjb2xvciwgYWxpZ24pXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1yaWdodHMtZm9vdGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVGV4dENvbXBvbmVudF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJyaWdodHMtZm9vdGVyXCJcbiAgICAgIFtjbGFzcy5yaWdodHMtZm9vdGVyLS1sZWZ0XT1cInByb3BzQWxpZ24oKSA9PT0gJ2xlZnQnXCJcbiAgICAgIFtjbGFzcy5yaWdodHMtZm9vdGVyLS1jZW50ZXJdPVwicHJvcHNBbGlnbigpID09PSAnY2VudGVyJyB8fCAhcHJvcHNBbGlnbigpXCJcbiAgICAgIFtjbGFzcy5yaWdodHMtZm9vdGVyLS1yaWdodF09XCJwcm9wc0FsaWduKCkgPT09ICdyaWdodCdcIlxuICAgID5cbiAgICAgIDx2YWwtdGV4dFxuICAgICAgICBbcHJvcHNdPVwie1xuICAgICAgICAgIGNvbnRlbnQ6IGNvcHlyaWdodFRleHQoKSxcbiAgICAgICAgICBjb2xvcjogcHJvcHNDb2xvcigpLFxuICAgICAgICAgIGJvbGQ6IGZhbHNlLFxuICAgICAgICAgIHNpemU6ICdzbWFsbCdcbiAgICAgICAgfVwiXG4gICAgICAvPlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9yaWdodHMtZm9vdGVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFJpZ2h0c0Zvb3RlckNvbXBvbmVudCB7XG4gIHByaXZhdGUgaTE4biA9IGluamVjdChJMThuU2VydmljZSk7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSByaWdodHMgZm9vdGVyLlxuICAgKiBTaWduYWwtYmFzZWQgaW5wdXQgZm9yIGZ1bGwgcmVhY3Rpdml0eSB3aXRoIGNvbXB1dGVkKCkuXG4gICAqL1xuICByZWFkb25seSBwcm9wcyA9IGlucHV0PFJpZ2h0c0Zvb3Rlck1ldGFkYXRhPigpO1xuXG4gIC8qKlxuICAgKiBDdXJyZW50IHllYXIgZm9yIGNvcHlyaWdodC5cbiAgICovXG4gIGN1cnJlbnRZZWFyID0gbmV3IERhdGUoKS5nZXRGdWxsWWVhcigpO1xuXG4gIC8qKlxuICAgKiBDb21wdXRlZCBjb3B5cmlnaHQgdGV4dCAtIHJlYWN0aXZlIHRvIGJvdGggbGFuZ3VhZ2UgQU5EIHByb3BzIGNoYW5nZXMuXG4gICAqL1xuICBjb3B5cmlnaHRUZXh0ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHRoaXMuaTE4bi5sYW5nKCk7IC8vIFRyYWNrIGxhbmd1YWdlIGNoYW5nZXNcbiAgICBjb25zdCBwID0gdGhpcy5wcm9wcygpOyAvLyBUcmFjayBwcm9wcyBjaGFuZ2VzIChub3cgaXQncyBhIHNpZ25hbCEpXG4gICAgY29uc3QgY29tcGFueSA9IHA/LmNvbXBhbnlOYW1lIHx8ICdWYWx0ZWNoJztcbiAgICBjb25zdCByaWdodHMgPSBwPy5yaWdodHNUZXh0IHx8IHRoaXMuaTE4bi50KCdhbGxSaWdodHNSZXNlcnZlZCcpO1xuICAgIHJldHVybiBgwqkgJHt0aGlzLmN1cnJlbnRZZWFyfSAke2NvbXBhbnl9LiAke3JpZ2h0c31gO1xuICB9KTtcblxuICAvKipcbiAgICogQ29tcHV0ZWQgaGVscGVyIGZvciBhbGlnbiBwcm9wIGluIHRlbXBsYXRlLlxuICAgKi9cbiAgcHJvcHNBbGlnbiA9IGNvbXB1dGVkKCgpID0+IHRoaXMucHJvcHMoKT8uYWxpZ24pO1xuXG4gIC8qKlxuICAgKiBDb21wdXRlZCBoZWxwZXIgZm9yIGNvbG9yIHByb3AgaW4gdGVtcGxhdGUuXG4gICAqL1xuICBwcm9wc0NvbG9yID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5wcm9wcygpPy5jb2xvciB8fCAnZGFyaycpO1xufVxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { Component,
|
|
2
|
+
import { Component, computed, input } from '@angular/core';
|
|
3
3
|
import { IonCol, IonGrid, IonRow } from '@ionic/angular/standalone';
|
|
4
4
|
import { FooterLinksComponent } from '../../molecules/footer-links/footer-links.component';
|
|
5
5
|
import { RightsFooterComponent } from '../../atoms/rights-footer/rights-footer.component';
|
|
@@ -30,22 +30,28 @@ export class CompanyFooterComponent {
|
|
|
30
30
|
constructor() {
|
|
31
31
|
/**
|
|
32
32
|
* Footer configuration.
|
|
33
|
+
* Signal-based input for full reactivity with computed().
|
|
33
34
|
*/
|
|
34
|
-
this.props = {
|
|
35
|
+
this.props = input({
|
|
35
36
|
links: {
|
|
36
37
|
leftLinks: { title: '', size: 'medium', links: [] },
|
|
37
38
|
rightLinks: { title: '', size: 'medium', links: [] },
|
|
38
39
|
},
|
|
39
|
-
};
|
|
40
|
+
});
|
|
41
|
+
// Computed helpers for template bindings
|
|
42
|
+
this.propsWithPadding = computed(() => this.props()?.withPadding);
|
|
43
|
+
this.propsWithBackground = computed(() => this.props()?.withBackground);
|
|
44
|
+
this.propsLinks = computed(() => this.props()?.links);
|
|
45
|
+
this.propsRights = computed(() => this.props()?.rights || {});
|
|
40
46
|
}
|
|
41
47
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CompanyFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
43
|
-
<footer [class.withPadding]="
|
|
48
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.14", type: CompanyFooterComponent, isStandalone: true, selector: "val-company-footer", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
49
|
+
<footer [class.withPadding]="propsWithPadding()" [class.withBackground]="propsWithBackground()">
|
|
44
50
|
<ion-grid>
|
|
45
|
-
<val-footer-links [props]="
|
|
51
|
+
<val-footer-links [props]="propsLinks()" />
|
|
46
52
|
<ion-row>
|
|
47
53
|
<ion-col size="12">
|
|
48
|
-
<val-rights-footer [props]="
|
|
54
|
+
<val-rights-footer [props]="propsRights()" />
|
|
49
55
|
</ion-col>
|
|
50
56
|
</ion-row>
|
|
51
57
|
</ion-grid>
|
|
@@ -55,18 +61,16 @@ export class CompanyFooterComponent {
|
|
|
55
61
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CompanyFooterComponent, decorators: [{
|
|
56
62
|
type: Component,
|
|
57
63
|
args: [{ selector: 'val-company-footer', standalone: true, imports: [CommonModule, IonGrid, IonRow, IonCol, RightsFooterComponent, FooterLinksComponent], template: `
|
|
58
|
-
<footer [class.withPadding]="
|
|
64
|
+
<footer [class.withPadding]="propsWithPadding()" [class.withBackground]="propsWithBackground()">
|
|
59
65
|
<ion-grid>
|
|
60
|
-
<val-footer-links [props]="
|
|
66
|
+
<val-footer-links [props]="propsLinks()" />
|
|
61
67
|
<ion-row>
|
|
62
68
|
<ion-col size="12">
|
|
63
|
-
<val-rights-footer [props]="
|
|
69
|
+
<val-rights-footer [props]="propsRights()" />
|
|
64
70
|
</ion-col>
|
|
65
71
|
</ion-row>
|
|
66
72
|
</ion-grid>
|
|
67
73
|
</footer>
|
|
68
74
|
`, styles: [".withPadding{padding:16px}.withBackground{background-color:var(--ion-background-color)}\n"] }]
|
|
69
|
-
}]
|
|
70
|
-
|
|
71
|
-
}] } });
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGFueS1mb290ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9jb21wYW55LWZvb3Rlci9jb21wYW55LWZvb3Rlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDOztBQUcxRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJHO0FBMkJILE1BQU0sT0FBTyxzQkFBc0I7SUExQm5DO1FBMkJFOztXQUVHO1FBQ00sVUFBSyxHQUEwQjtZQUN0QyxLQUFLLEVBQUU7Z0JBQ0wsU0FBUyxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7Z0JBQ25ELFVBQVUsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO2FBQ3JEO1NBQ0YsQ0FBQztLQUNIOytHQVZZLHNCQUFzQjttR0FBdEIsc0JBQXNCLDBHQXRCdkI7Ozs7Ozs7Ozs7O0dBV1Qsa0tBWlMsWUFBWSwrQkFBRSxPQUFPLHdFQUFFLE1BQU0sb0RBQUUsTUFBTSxrVEFBRSxxQkFBcUIsaUZBQUUsb0JBQW9COzs0RkF1QmpGLHNCQUFzQjtrQkExQmxDLFNBQVM7K0JBQ0Usb0JBQW9CLGNBQ2xCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxxQkFBcUIsRUFBRSxvQkFBb0IsQ0FBQyxZQUNuRjs7Ozs7Ozs7Ozs7R0FXVDs4QkFlUSxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW9uQ29sLCBJb25HcmlkLCBJb25Sb3cgfSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IEZvb3RlckxpbmtzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL2Zvb3Rlci1saW5rcy9mb290ZXItbGlua3MuY29tcG9uZW50JztcbmltcG9ydCB7IFJpZ2h0c0Zvb3RlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL3JpZ2h0cy1mb290ZXIvcmlnaHRzLWZvb3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tcGFueUZvb3Rlck1ldGFkYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogdmFsLWNvbXBhbnktZm9vdGVyXG4gKlxuICogQSBjb21wbGV0ZSBmb290ZXIgY29tcG9uZW50IGNvbWJpbmluZyBmb290ZXIgbGlua3MgKHdpdGggbG9nbyBhbmQgc29jaWFsIGljb25zKVxuICogYW5kIGEgcmlnaHRzL2NvcHlyaWdodCBmb290ZXIuIENvbmZpZ3VyYWJsZSBwYWRkaW5nIGFuZCBiYWNrZ3JvdW5kIG9wdGlvbnMuXG4gKlxuICogQGV4YW1wbGVcbiAqIDx2YWwtY29tcGFueS1mb290ZXJcbiAqICAgW3Byb3BzXT1cIntcbiAqICAgICBsaW5rczoge1xuICogICAgICAgbGVmdExpbmtzOiB7IHRpdGxlOiAnQ29tcGFueScsIHNpemU6ICdtZWRpdW0nLCBsaW5rczogWy4uLl0gfSxcbiAqICAgICAgIHJpZ2h0TGlua3M6IHsgdGl0bGU6ICdTdXBwb3J0Jywgc2l6ZTogJ21lZGl1bScsIGxpbmtzOiBbLi4uXSB9LFxuICogICAgICAgbG9nbzogJy9hc3NldHMvbG9nby5wbmcnLFxuICogICAgICAgc29jaWFsTGlua3M6IFsuLi5dXG4gKiAgICAgfSxcbiAqICAgICByaWdodHM6IHsgY29tcGFueU5hbWU6ICdBY21lIEluYycgfSxcbiAqICAgICB3aXRoUGFkZGluZzogdHJ1ZVxuICogICB9XCJcbiAqID48L3ZhbC1jb21wYW55LWZvb3Rlcj5cbiAqXG4gKiBAaW5wdXQgcHJvcHMgLSBGb290ZXIgY29uZmlndXJhdGlvblxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtY29tcGFueS1mb290ZXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBJb25HcmlkLCBJb25Sb3csIElvbkNvbCwgUmlnaHRzRm9vdGVyQ29tcG9uZW50LCBGb290ZXJMaW5rc0NvbXBvbmVudF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGZvb3RlciBbY2xhc3Mud2l0aFBhZGRpbmddPVwicHJvcHMud2l0aFBhZGRpbmdcIiBbY2xhc3Mud2l0aEJhY2tncm91bmRdPVwicHJvcHMud2l0aEJhY2tncm91bmRcIj5cbiAgICAgIDxpb24tZ3JpZD5cbiAgICAgICAgPHZhbC1mb290ZXItbGlua3MgW3Byb3BzXT1cInByb3BzLmxpbmtzXCIgLz5cbiAgICAgICAgPGlvbi1yb3c+XG4gICAgICAgICAgPGlvbi1jb2wgc2l6ZT1cIjEyXCI+XG4gICAgICAgICAgICA8dmFsLXJpZ2h0cy1mb290ZXIgW3Byb3BzXT1cInByb3BzLnJpZ2h0cyB8fCB7fVwiIC8+XG4gICAgICAgICAgPC9pb24tY29sPlxuICAgICAgICA8L2lvbi1yb3c+XG4gICAgICA8L2lvbi1ncmlkPlxuICAgIDwvZm9vdGVyPlxuICBgLFxuICBzdHlsZXM6IGBcbiAgICAud2l0aFBhZGRpbmcge1xuICAgICAgcGFkZGluZzogMTZweDtcbiAgICB9XG5cbiAgICAud2l0aEJhY2tncm91bmQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW9uLWJhY2tncm91bmQtY29sb3IpO1xuICAgIH1cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgQ29tcGFueUZvb3RlckNvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBGb290ZXIgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIEBJbnB1dCgpIHByb3BzOiBDb21wYW55Rm9vdGVyTWV0YWRhdGEgPSB7XG4gICAgbGlua3M6IHtcbiAgICAgIGxlZnRMaW5rczogeyB0aXRsZTogJycsIHNpemU6ICdtZWRpdW0nLCBsaW5rczogW10gfSxcbiAgICAgIHJpZ2h0TGlua3M6IHsgdGl0bGU6ICcnLCBzaXplOiAnbWVkaXVtJywgbGlua3M6IFtdIH0sXG4gICAgfSxcbiAgfTtcbn1cbiJdfQ==
|
|
75
|
+
}] });
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGFueS1mb290ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9jb21wYW55LWZvb3Rlci9jb21wYW55LWZvb3Rlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUMzRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQzs7QUFHMUY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFCRztBQTJCSCxNQUFNLE9BQU8sc0JBQXNCO0lBMUJuQztRQTJCRTs7O1dBR0c7UUFDTSxVQUFLLEdBQUcsS0FBSyxDQUF3QjtZQUM1QyxLQUFLLEVBQUU7Z0JBQ0wsU0FBUyxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7Z0JBQ25ELFVBQVUsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO2FBQ3JEO1NBQ0YsQ0FBQyxDQUFDO1FBRUgseUNBQXlDO1FBQ3pDLHFCQUFnQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDN0Qsd0JBQW1CLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxjQUFjLENBQUMsQ0FBQztRQUNuRSxlQUFVLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNqRCxnQkFBVyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0tBQzFEOytHQWpCWSxzQkFBc0I7bUdBQXRCLHNCQUFzQixrTkF0QnZCOzs7Ozs7Ozs7OztHQVdULGtLQVpTLFlBQVksK0JBQUUsT0FBTyx3RUFBRSxNQUFNLG9EQUFFLE1BQU0sa1RBQUUscUJBQXFCLGlGQUFFLG9CQUFvQjs7NEZBdUJqRixzQkFBc0I7a0JBMUJsQyxTQUFTOytCQUNFLG9CQUFvQixjQUNsQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUscUJBQXFCLEVBQUUsb0JBQW9CLENBQUMsWUFDbkY7Ozs7Ozs7Ozs7O0dBV1QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElvbkNvbCwgSW9uR3JpZCwgSW9uUm93IH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBGb290ZXJMaW5rc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9mb290ZXItbGlua3MvZm9vdGVyLWxpbmtzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSaWdodHNGb290ZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hdG9tcy9yaWdodHMtZm9vdGVyL3JpZ2h0cy1mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IENvbXBhbnlGb290ZXJNZXRhZGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIHZhbC1jb21wYW55LWZvb3RlclxuICpcbiAqIEEgY29tcGxldGUgZm9vdGVyIGNvbXBvbmVudCBjb21iaW5pbmcgZm9vdGVyIGxpbmtzICh3aXRoIGxvZ28gYW5kIHNvY2lhbCBpY29ucylcbiAqIGFuZCBhIHJpZ2h0cy9jb3B5cmlnaHQgZm9vdGVyLiBDb25maWd1cmFibGUgcGFkZGluZyBhbmQgYmFja2dyb3VuZCBvcHRpb25zLlxuICpcbiAqIEBleGFtcGxlXG4gKiA8dmFsLWNvbXBhbnktZm9vdGVyXG4gKiAgIFtwcm9wc109XCJ7XG4gKiAgICAgbGlua3M6IHtcbiAqICAgICAgIGxlZnRMaW5rczogeyB0aXRsZTogJ0NvbXBhbnknLCBzaXplOiAnbWVkaXVtJywgbGlua3M6IFsuLi5dIH0sXG4gKiAgICAgICByaWdodExpbmtzOiB7IHRpdGxlOiAnU3VwcG9ydCcsIHNpemU6ICdtZWRpdW0nLCBsaW5rczogWy4uLl0gfSxcbiAqICAgICAgIGxvZ286ICcvYXNzZXRzL2xvZ28ucG5nJyxcbiAqICAgICAgIHNvY2lhbExpbmtzOiBbLi4uXVxuICogICAgIH0sXG4gKiAgICAgcmlnaHRzOiB7IGNvbXBhbnlOYW1lOiAnQWNtZSBJbmMnIH0sXG4gKiAgICAgd2l0aFBhZGRpbmc6IHRydWVcbiAqICAgfVwiXG4gKiA+PC92YWwtY29tcGFueS1mb290ZXI+XG4gKlxuICogQGlucHV0IHByb3BzIC0gRm9vdGVyIGNvbmZpZ3VyYXRpb25cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWNvbXBhbnktZm9vdGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSW9uR3JpZCwgSW9uUm93LCBJb25Db2wsIFJpZ2h0c0Zvb3RlckNvbXBvbmVudCwgRm9vdGVyTGlua3NDb21wb25lbnRdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxmb290ZXIgW2NsYXNzLndpdGhQYWRkaW5nXT1cInByb3BzV2l0aFBhZGRpbmcoKVwiIFtjbGFzcy53aXRoQmFja2dyb3VuZF09XCJwcm9wc1dpdGhCYWNrZ3JvdW5kKClcIj5cbiAgICAgIDxpb24tZ3JpZD5cbiAgICAgICAgPHZhbC1mb290ZXItbGlua3MgW3Byb3BzXT1cInByb3BzTGlua3MoKVwiIC8+XG4gICAgICAgIDxpb24tcm93PlxuICAgICAgICAgIDxpb24tY29sIHNpemU9XCIxMlwiPlxuICAgICAgICAgICAgPHZhbC1yaWdodHMtZm9vdGVyIFtwcm9wc109XCJwcm9wc1JpZ2h0cygpXCIgLz5cbiAgICAgICAgICA8L2lvbi1jb2w+XG4gICAgICAgIDwvaW9uLXJvdz5cbiAgICAgIDwvaW9uLWdyaWQ+XG4gICAgPC9mb290ZXI+XG4gIGAsXG4gIHN0eWxlczogYFxuICAgIC53aXRoUGFkZGluZyB7XG4gICAgICBwYWRkaW5nOiAxNnB4O1xuICAgIH1cblxuICAgIC53aXRoQmFja2dyb3VuZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pb24tYmFja2dyb3VuZC1jb2xvcik7XG4gICAgfVxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBDb21wYW55Rm9vdGVyQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqIEZvb3RlciBjb25maWd1cmF0aW9uLlxuICAgKiBTaWduYWwtYmFzZWQgaW5wdXQgZm9yIGZ1bGwgcmVhY3Rpdml0eSB3aXRoIGNvbXB1dGVkKCkuXG4gICAqL1xuICByZWFkb25seSBwcm9wcyA9IGlucHV0PENvbXBhbnlGb290ZXJNZXRhZGF0YT4oe1xuICAgIGxpbmtzOiB7XG4gICAgICBsZWZ0TGlua3M6IHsgdGl0bGU6ICcnLCBzaXplOiAnbWVkaXVtJywgbGlua3M6IFtdIH0sXG4gICAgICByaWdodExpbmtzOiB7IHRpdGxlOiAnJywgc2l6ZTogJ21lZGl1bScsIGxpbmtzOiBbXSB9LFxuICAgIH0sXG4gIH0pO1xuXG4gIC8vIENvbXB1dGVkIGhlbHBlcnMgZm9yIHRlbXBsYXRlIGJpbmRpbmdzXG4gIHByb3BzV2l0aFBhZGRpbmcgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnByb3BzKCk/LndpdGhQYWRkaW5nKTtcbiAgcHJvcHNXaXRoQmFja2dyb3VuZCA9IGNvbXB1dGVkKCgpID0+IHRoaXMucHJvcHMoKT8ud2l0aEJhY2tncm91bmQpO1xuICBwcm9wc0xpbmtzID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5wcm9wcygpPy5saW5rcyk7XG4gIHByb3BzUmlnaHRzID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5wcm9wcygpPy5yaWdodHMgfHwge30pO1xufVxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { Component, EventEmitter, inject,
|
|
2
|
+
import { Component, computed, EventEmitter, inject, input, Output } from '@angular/core';
|
|
3
3
|
import { NavigationEnd, Router, RouterOutlet } from '@angular/router';
|
|
4
4
|
import { IonContent } from '@ionic/angular/standalone';
|
|
5
5
|
import { filter } from 'rxjs';
|
|
@@ -38,10 +38,11 @@ export class PageWrapperComponent {
|
|
|
38
38
|
this.router = inject(Router);
|
|
39
39
|
/**
|
|
40
40
|
* Page wrapper configuration.
|
|
41
|
+
* Signal-based input for full reactivity with computed().
|
|
41
42
|
*/
|
|
42
|
-
this.props = {
|
|
43
|
+
this.props = input({
|
|
43
44
|
scrollToTopOnNavigate: true,
|
|
44
|
-
};
|
|
45
|
+
});
|
|
45
46
|
/**
|
|
46
47
|
* Emits when a header action is clicked.
|
|
47
48
|
*/
|
|
@@ -79,15 +80,23 @@ export class PageWrapperComponent {
|
|
|
79
80
|
],
|
|
80
81
|
},
|
|
81
82
|
};
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
83
|
+
// Computed helpers for template bindings
|
|
84
|
+
this.headerProps = computed(() => this.props()?.header || this.defaultHeader);
|
|
85
|
+
this.contentId = computed(() => this.props()?.contentId || 'page-wrapper');
|
|
86
|
+
this.propsFooter = computed(() => this.props()?.footer);
|
|
87
|
+
this.background = computed(() => {
|
|
88
|
+
if (this.theme.IsDark) {
|
|
89
|
+
return 'var(--ion-background-color)';
|
|
90
|
+
}
|
|
91
|
+
const bg = this.props()?.background;
|
|
92
|
+
if (!bg) {
|
|
93
|
+
return 'var(--ion-background-color)';
|
|
94
|
+
}
|
|
95
|
+
return resolveColor(bg);
|
|
96
|
+
});
|
|
88
97
|
}
|
|
89
98
|
ngOnInit() {
|
|
90
|
-
if (this.props
|
|
99
|
+
if (this.props()?.scrollToTopOnNavigate !== false) {
|
|
91
100
|
this.routerSubscription = this.router.events
|
|
92
101
|
.pipe(filter((event) => event instanceof NavigationEnd))
|
|
93
102
|
.subscribe(() => {
|
|
@@ -106,25 +115,12 @@ export class PageWrapperComponent {
|
|
|
106
115
|
ionViewWillEnter() {
|
|
107
116
|
this.scrollToTop();
|
|
108
117
|
}
|
|
109
|
-
/**
|
|
110
|
-
* Gets the background color based on theme.
|
|
111
|
-
*/
|
|
112
|
-
getBackground() {
|
|
113
|
-
if (this.theme.IsDark) {
|
|
114
|
-
return 'var(--ion-background-color)';
|
|
115
|
-
}
|
|
116
|
-
const bg = this.props.background;
|
|
117
|
-
if (!bg) {
|
|
118
|
-
return 'var(--ion-background-color)';
|
|
119
|
-
}
|
|
120
|
-
return resolveColor(bg);
|
|
121
|
-
}
|
|
122
118
|
/**
|
|
123
119
|
* Scrolls the content to the top.
|
|
124
120
|
*/
|
|
125
121
|
scrollToTop() {
|
|
126
|
-
const
|
|
127
|
-
const ionContent = document.querySelector(`#${
|
|
122
|
+
const id = this.props()?.contentId || 'page-wrapper';
|
|
123
|
+
const ionContent = document.querySelector(`#${id}`);
|
|
128
124
|
if (ionContent && ionContent.scrollToTop) {
|
|
129
125
|
ionContent.scrollToTop(300);
|
|
130
126
|
}
|
|
@@ -137,30 +133,31 @@ export class PageWrapperComponent {
|
|
|
137
133
|
*/
|
|
138
134
|
onHeaderClickHandler(token) {
|
|
139
135
|
this.onHeaderClick.emit(token);
|
|
140
|
-
|
|
141
|
-
|
|
136
|
+
const homeRoute = this.props()?.homeRoute;
|
|
137
|
+
if (token === 'header-logo' && homeRoute) {
|
|
138
|
+
this.nav.navigateByUrl(homeRoute);
|
|
142
139
|
}
|
|
143
140
|
}
|
|
144
141
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PageWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
145
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: PageWrapperComponent, isStandalone: true, selector: "val-page-wrapper", inputs: { props: "props" }, outputs: { onHeaderClick: "onHeaderClick" }, ngImport: i0, template: `
|
|
142
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: PageWrapperComponent, isStandalone: true, selector: "val-page-wrapper", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onHeaderClick: "onHeaderClick" }, ngImport: i0, template: `
|
|
146
143
|
<div class="ion-page">
|
|
147
144
|
<val-header
|
|
148
|
-
[props]="headerProps"
|
|
145
|
+
[props]="headerProps()"
|
|
149
146
|
(onClick)="onHeaderClickHandler($event)"
|
|
150
147
|
/>
|
|
151
148
|
<ion-content
|
|
152
|
-
[id]="
|
|
149
|
+
[id]="contentId()"
|
|
153
150
|
class="ion-padding"
|
|
154
151
|
[fullscreen]="true"
|
|
155
152
|
[ngStyle]="{
|
|
156
|
-
'--background':
|
|
153
|
+
'--background': background()
|
|
157
154
|
}"
|
|
158
155
|
>
|
|
159
156
|
<main>
|
|
160
157
|
<router-outlet></router-outlet>
|
|
161
158
|
</main>
|
|
162
|
-
@if (
|
|
163
|
-
<val-company-footer [props]="
|
|
159
|
+
@if (propsFooter()) {
|
|
160
|
+
<val-company-footer [props]="propsFooter()" />
|
|
164
161
|
}
|
|
165
162
|
</ion-content>
|
|
166
163
|
</div>
|
|
@@ -171,29 +168,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
171
168
|
args: [{ selector: 'val-page-wrapper', standalone: true, imports: [CommonModule, HeaderComponent, CompanyFooterComponent, RouterOutlet, IonContent], template: `
|
|
172
169
|
<div class="ion-page">
|
|
173
170
|
<val-header
|
|
174
|
-
[props]="headerProps"
|
|
171
|
+
[props]="headerProps()"
|
|
175
172
|
(onClick)="onHeaderClickHandler($event)"
|
|
176
173
|
/>
|
|
177
174
|
<ion-content
|
|
178
|
-
[id]="
|
|
175
|
+
[id]="contentId()"
|
|
179
176
|
class="ion-padding"
|
|
180
177
|
[fullscreen]="true"
|
|
181
178
|
[ngStyle]="{
|
|
182
|
-
'--background':
|
|
179
|
+
'--background': background()
|
|
183
180
|
}"
|
|
184
181
|
>
|
|
185
182
|
<main>
|
|
186
183
|
<router-outlet></router-outlet>
|
|
187
184
|
</main>
|
|
188
|
-
@if (
|
|
189
|
-
<val-company-footer [props]="
|
|
185
|
+
@if (propsFooter()) {
|
|
186
|
+
<val-company-footer [props]="propsFooter()" />
|
|
190
187
|
}
|
|
191
188
|
</ion-content>
|
|
192
189
|
</div>
|
|
193
190
|
`, styles: ["main{min-height:60vh}\n"] }]
|
|
194
|
-
}], propDecorators: {
|
|
195
|
-
type: Input
|
|
196
|
-
}], onHeaderClick: [{
|
|
191
|
+
}], propDecorators: { onHeaderClick: [{
|
|
197
192
|
type: Output
|
|
198
193
|
}] } });
|
|
199
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy90ZW1wbGF0ZXMvcGFnZS13cmFwcGVyL3BhZ2Utd3JhcHBlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsVUFBVSxFQUFnQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxNQUFNLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5REFBeUQsQ0FBQztBQUNqRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFekUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFFNUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBa0NILE1BQU0sT0FBTyxvQkFBb0I7SUFqQ2pDO1FBa0NVLFVBQUssR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDN0IsUUFBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2hDLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFHaEM7O1dBRUc7UUFDTSxVQUFLLEdBQXdCO1lB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QUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ2xELENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxvQkFBb0IsQ0FBQyxLQUFhO1FBQ2hDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRS9CLElBQUksS0FBSyxLQUFLLGFBQWEsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3BELElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0MsQ0FBQztJQUNILENBQUM7K0dBekhVLG9CQUFvQjttR0FBcEIsb0JBQW9CLHFKQTdCckI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQlQsZ0dBdkJTLFlBQVksb0hBQUUsZUFBZSxnR0FBRSxzQkFBc0Isa0ZBQUUsWUFBWSwySkFBRSxVQUFVOzs0RkE4QjlFLG9CQUFvQjtrQkFqQ2hDLFNBQVM7K0JBQ0Usa0JBQWtCLGNBQ2hCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsc0JBQXNCLEVBQUUsWUFBWSxFQUFFLFVBQVUsQ0FBQyxZQUNoRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCVDs4QkFnQlEsS0FBSztzQkFBYixLQUFLO2dCQU9JLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlciwgUm91dGVyT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IElvbkNvbnRlbnQsIFZpZXdXaWxsRW50ZXIsIFZpZXdXaWxsTGVhdmUgfSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IGZpbHRlciwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi9vcmdhbmlzbXMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tcGFueUZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL29yZ2FuaXNtcy9jb21wYW55LWZvb3Rlci9jb21wYW55LWZvb3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdGhlbWUuc2VydmljZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL25hdmlnYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBQYWdlV3JhcHBlck1ldGFkYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyByZXNvbHZlQ29sb3IgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvdXRpbHMvc3R5bGVzJztcblxuLyoqXG4gKiB2YWwtcGFnZS13cmFwcGVyXG4gKlxuICogQSBjb21wbGV0ZSBwYWdlIHdyYXBwZXIgdGVtcGxhdGUgd2l0aCBoZWFkZXIsIHJvdXRlciBvdXRsZXQsIGZvb3RlcixcbiAqIGFuZCBhdXRvbWF0aWMgc2Nyb2xsLXRvLXRvcCBvbiBuYXZpZ2F0aW9uLlxuICpcbiAqIEBleGFtcGxlXG4gKiA8dmFsLXBhZ2Utd3JhcHBlclxuICogICBbcHJvcHNdPVwie1xuICogICAgIGhvbWVSb3V0ZTogJy8nLFxuICogICAgIHNjcm9sbFRvVG9wT25OYXZpZ2F0ZTogdHJ1ZSxcbiAqICAgICBmb290ZXI6IHtcbiAqICAgICAgIGxpbmtzOiB7IC4uLiB9LFxuICogICAgICAgcmlnaHRzOiB7IGNvbXBhbnlOYW1lOiAnQWNtZScgfVxuICogICAgIH1cbiAqICAgfVwiXG4gKiA+PC92YWwtcGFnZS13cmFwcGVyPlxuICpcbiAqIEBpbnB1dCBwcm9wcyAtIFBhZ2Ugd3JhcHBlciBjb25maWd1cmF0aW9uXG4gKiBAb3V0cHV0IG9uSGVhZGVyQ2xpY2sgLSBFbWl0cyB3aGVuIGEgaGVhZGVyIGFjdGlvbiBpcyBjbGlja2VkXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1wYWdlLXdyYXBwZXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBIZWFkZXJDb21wb25lbnQsIENvbXBhbnlGb290ZXJDb21wb25lbnQsIFJvdXRlck91dGxldCwgSW9uQ29udGVudF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImlvbi1wYWdlXCI+XG4gICAgICA8dmFsLWhlYWRlclxuICAgICAgICBbcHJvcHNdPVwiaGVhZGVyUHJvcHNcIlxuICAgICAgICAob25DbGljayk9XCJvbkhlYWRlckNsaWNrSGFuZGxlcigkZXZlbnQpXCJcbiAgICAgIC8+XG4gICAgICA8aW9uLWNvbnRlbnRcbiAgICAgICAgW2lkXT1cInByb3BzLmNvbnRlbnRJZCB8fCAncGFnZS13cmFwcGVyJ1wiXG4gICAgICAgIGNsYXNzPVwiaW9uLXBhZGRpbmdcIlxuICAgICAgICBbZnVsbHNjcmVlbl09XCJ0cnVlXCJcbiAgICAgICAgW25nU3R5bGVdPVwie1xuICAgICAgICAgICctLWJhY2tncm91bmQnOiBnZXRCYWNrZ3JvdW5kKClcbiAgICAgICAgfVwiXG4gICAgICA+XG4gICAgICAgIDxtYWluPlxuICAgICAgICAgIDxyb3V0ZXItb3V0bGV0Pjwvcm91dGVyLW91dGxldD5cbiAgICAgICAgPC9tYWluPlxuICAgICAgICBAaWYgKHByb3BzLmZvb3Rlcikge1xuICAgICAgICAgIDx2YWwtY29tcGFueS1mb290ZXIgW3Byb3BzXT1cInByb3BzLmZvb3RlclwiIC8+XG4gICAgICAgIH1cbiAgICAgIDwvaW9uLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlczogYFxuICAgIG1haW4ge1xuICAgICAgbWluLWhlaWdodDogNjB2aDtcbiAgICB9XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2VXcmFwcGVyQ29tcG9uZW50IGltcGxlbWVudHMgVmlld1dpbGxFbnRlciwgVmlld1dpbGxMZWF2ZSwgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHRoZW1lID0gaW5qZWN0KFRoZW1lU2VydmljZSk7XG4gIHByaXZhdGUgbmF2ID0gaW5qZWN0KE5hdmlnYXRpb25TZXJ2aWNlKTtcbiAgcHJpdmF0ZSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSByb3V0ZXJTdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb247XG5cbiAgLyoqXG4gICAqIFBhZ2Ugd3JhcHBlciBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgQElucHV0KCkgcHJvcHM6IFBhZ2VXcmFwcGVyTWV0YWRhdGEgPSB7XG4gICAgc2Nyb2xsVG9Ub3BPbk5hdmlnYXRlOiB0cnVlLFxuICB9O1xuXG4gIC8qKlxuICAgKiBFbWl0cyB3aGVuIGEgaGVhZGVyIGFjdGlvbiBpcyBjbGlja2VkLlxuICAgKi9cbiAgQE91dHB1dCgpIG9uSGVhZGVyQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAvKipcbiAgICogRGVmYXVsdCBoZWFkZXIgY29uZmlndXJhdGlvbiAoY2FjaGVkIHRvIGF2b2lkIGluZmluaXRlIGNoYW5nZSBkZXRlY3Rpb24pLlxuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBkZWZhdWx0SGVhZGVyID0ge1xuICAgIGJvcmRlcmVkOiB0cnVlLFxuICAgIHRyYW5zbHVjZW50OiB0cnVlLFxuICAgIHRvb2xiYXI6IHtcbiAgICAgIHdpdGhCYWNrOiBmYWxzZSxcbiAgICAgIHdpdGhBY3Rpb25zOiB0cnVlLFxuICAgICAgdGV4dENvbG9yOiAnZGFyaycgYXMgY29uc3QsXG4gICAgICB3aXRoTWVudTogdHJ1ZSxcbiAgICAgIHRpdGxlOiAnJyxcbiAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHRva2VuOiAnaGVhZGVyLWxvZ28nLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiAnJyxcbiAgICAgICAgICBwb3NpdGlvbjogJ2xlZnQnIGFzIGNvbnN0LFxuICAgICAgICAgIHR5cGU6ICdJTUFHRScgYXMgY29uc3QsXG4gICAgICAgICAgaW1hZ2U6IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMCxcbiAgICAgICAgICAgIHNyYzogJy0tbWFpbi1sb2dvJyxcbiAgICAgICAgICAgIGFsdDogJ2hlYWRlciBsb2dvJyxcbiAgICAgICAgICAgIG1vZGU6ICdib3gnIGFzIGNvbnN0LFxuICAgICAgICAgICAgc2hhZGVkOiBmYWxzZSxcbiAgICAgICAgICAgIGJvcmRlcmVkOiBmYWxzZSxcbiAgICAgICAgICAgIHNpemU6ICdzbWFsbCcgYXMgY29uc3QsXG4gICAgICAgICAgICBsaW1pdGVkOiBmYWxzZSxcbiAgICAgICAgICAgIGZsZXg6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgfTtcblxuICAvKipcbiAgICogR2V0cyBoZWFkZXIgcHJvcHMsIHVzaW5nIGNhY2hlZCBkZWZhdWx0IGlmIG5vdCBwcm92aWRlZC5cbiAgICovXG4gIGdldCBoZWFkZXJQcm9wcygpIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5oZWFkZXIgfHwgdGhpcy5kZWZhdWx0SGVhZGVyO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucHJvcHMuc2Nyb2xsVG9Ub3BPbk5hdmlnYXRlICE9PSBmYWxzZSkge1xuICAgICAgdGhpcy5yb3V0ZXJTdWJzY3JpcHRpb24gPSB0aGlzLnJvdXRlci5ldmVudHNcbiAgICAgICAgLnBpcGUoZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5zY3JvbGxUb1RvcCgpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yb3V0ZXJTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMucm91dGVyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgaW9uVmlld1dpbGxMZWF2ZSgpOiB2b2lkIHtcbiAgICAvLyBPcHRpb25hbDogY2FuIGFkZCBsb2dpYyBvbiB2aWV3IGxlYXZlXG4gIH1cblxuICBpb25WaWV3V2lsbEVudGVyKCk6IHZvaWQge1xuICAgIHRoaXMuc2Nyb2xsVG9Ub3AoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGJhc2VkIG9uIHRoZW1lLlxuICAgKi9cbiAgZ2V0QmFja2dyb3VuZCgpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLnRoZW1lLklzRGFyaykge1xuICAgICAgcmV0dXJuICd2YXIoLS1pb24tYmFja2dyb3VuZC1jb2xvciknO1xuICAgIH1cblxuICAgIGNvbnN0IGJnID0gdGhpcy5wcm9wcy5iYWNrZ3JvdW5kO1xuICAgIGlmICghYmcpIHtcbiAgICAgIHJldHVybiAndmFyKC0taW9uLWJhY2tncm91bmQtY29sb3IpJztcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzb2x2ZUNvbG9yKGJnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTY3JvbGxzIHRoZSBjb250ZW50IHRvIHRoZSB0b3AuXG4gICAqL1xuICBwcml2YXRlIHNjcm9sbFRvVG9wKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRlbnRJZCA9IHRoaXMucHJvcHMuY29udGVudElkIHx8ICdwYWdlLXdyYXBwZXInO1xuICAgIGNvbnN0IGlvbkNvbnRlbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGAjJHtjb250ZW50SWR9YCkgYXMgYW55O1xuICAgIGlmIChpb25Db250ZW50ICYmIGlvbkNvbnRlbnQuc2Nyb2xsVG9Ub3ApIHtcbiAgICAgIGlvbkNvbnRlbnQuc2Nyb2xsVG9Ub3AoMzAwKTtcbiAgICB9IGVsc2Uge1xuICAgICAgd2luZG93LnNjcm9sbFRvKHsgdG9wOiAwLCBiZWhhdmlvcjogJ3Ntb290aCcgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgaGVhZGVyIGFjdGlvbiBjbGlja3MuXG4gICAqL1xuICBvbkhlYWRlckNsaWNrSGFuZGxlcih0b2tlbjogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5vbkhlYWRlckNsaWNrLmVtaXQodG9rZW4pO1xuXG4gICAgaWYgKHRva2VuID09PSAnaGVhZGVyLWxvZ28nICYmIHRoaXMucHJvcHMuaG9tZVJvdXRlKSB7XG4gICAgICB0aGlzLm5hdi5uYXZpZ2F0ZUJ5VXJsKHRoaXMucHJvcHMuaG9tZVJvdXRlKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
194
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy90ZW1wbGF0ZXMvcGFnZS13cmFwcGVyL3BhZ2Utd3JhcHBlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdEUsT0FBTyxFQUFFLFVBQVUsRUFBZ0MsTUFBTSwyQkFBMkIsQ0FBQztBQUNyRixPQUFPLEVBQUUsTUFBTSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUM1QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDMUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDakcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRXpFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7O0FBRTVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRztBQWtDSCxNQUFNLE9BQU8sb0JBQW9CO0lBakNqQztRQWtDVSxVQUFLLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdCLFFBQUcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNoQyxXQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBR2hDOzs7V0FHRztRQUNNLFVB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QGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBpbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmF2aWdhdGlvbkVuZCwgUm91dGVyLCBSb3V0ZXJPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgSW9uQ29udGVudCwgVmlld1dpbGxFbnRlciwgVmlld1dpbGxMZWF2ZSB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuaW1wb3J0IHsgZmlsdGVyLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL29yZ2FuaXNtcy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21wYW55Rm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vb3JnYW5pc21zL2NvbXBhbnktZm9vdGVyL2NvbXBhbnktZm9vdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaGVtZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy90aGVtZS5zZXJ2aWNlJztcbmltcG9ydCB7IE5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvbmF2aWdhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFBhZ2VXcmFwcGVyTWV0YWRhdGEgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IHJlc29sdmVDb2xvciB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC91dGlscy9zdHlsZXMnO1xuXG4vKipcbiAqIHZhbC1wYWdlLXdyYXBwZXJcbiAqXG4gKiBBIGNvbXBsZXRlIHBhZ2Ugd3JhcHBlciB0ZW1wbGF0ZSB3aXRoIGhlYWRlciwgcm91dGVyIG91dGxldCwgZm9vdGVyLFxuICogYW5kIGF1dG9tYXRpYyBzY3JvbGwtdG8tdG9wIG9uIG5hdmlnYXRpb24uXG4gKlxuICogQGV4YW1wbGVcbiAqIDx2YWwtcGFnZS13cmFwcGVyXG4gKiAgIFtwcm9wc109XCJ7XG4gKiAgICAgaG9tZVJvdXRlOiAnLycsXG4gKiAgICAgc2Nyb2xsVG9Ub3BPbk5hdmlnYXRlOiB0cnVlLFxuICogICAgIGZvb3Rlcjoge1xuICogICAgICAgbGlua3M6IHsgLi4uIH0sXG4gKiAgICAgICByaWdodHM6IHsgY29tcGFueU5hbWU6ICdBY21lJyB9XG4gKiAgICAgfVxuICogICB9XCJcbiAqID48L3ZhbC1wYWdlLXdyYXBwZXI+XG4gKlxuICogQGlucHV0IHByb3BzIC0gUGFnZSB3cmFwcGVyIGNvbmZpZ3VyYXRpb25cbiAqIEBvdXRwdXQgb25IZWFkZXJDbGljayAtIEVtaXRzIHdoZW4gYSBoZWFkZXIgYWN0aW9uIGlzIGNsaWNrZWRcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLXBhZ2Utd3JhcHBlcicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEhlYWRlckNvbXBvbmVudCwgQ29tcGFueUZvb3RlckNvbXBvbmVudCwgUm91dGVyT3V0bGV0LCBJb25Db250ZW50XSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiaW9uLXBhZ2VcIj5cbiAgICAgIDx2YWwtaGVhZGVyXG4gICAgICAgIFtwcm9wc109XCJoZWFkZXJQcm9wcygpXCJcbiAgICAgICAgKG9uQ2xpY2spPVwib25IZWFkZXJDbGlja0hhbmRsZXIoJGV2ZW50KVwiXG4gICAgICAvPlxuICAgICAgPGlvbi1jb250ZW50XG4gICAgICAgIFtpZF09XCJjb250ZW50SWQoKVwiXG4gICAgICAgIGNsYXNzPVwiaW9uLXBhZGRpbmdcIlxuICAgICAgICBbZnVsbHNjcmVlbl09XCJ0cnVlXCJcbiAgICAgICAgW25nU3R5bGVdPVwie1xuICAgICAgICAgICctLWJhY2tncm91bmQnOiBiYWNrZ3JvdW5kKClcbiAgICAgICAgfVwiXG4gICAgICA+XG4gICAgICAgIDxtYWluPlxuICAgICAgICAgIDxyb3V0ZXItb3V0bGV0Pjwvcm91dGVyLW91dGxldD5cbiAgICAgICAgPC9tYWluPlxuICAgICAgICBAaWYgKHByb3BzRm9vdGVyKCkpIHtcbiAgICAgICAgICA8dmFsLWNvbXBhbnktZm9vdGVyIFtwcm9wc109XCJwcm9wc0Zvb3RlcigpXCIgLz5cbiAgICAgICAgfVxuICAgICAgPC9pb24tY29udGVudD5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgc3R5bGVzOiBgXG4gICAgbWFpbiB7XG4gICAgICBtaW4taGVpZ2h0OiA2MHZoO1xuICAgIH1cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgUGFnZVdyYXBwZXJDb21wb25lbnQgaW1wbGVtZW50cyBWaWV3V2lsbEVudGVyLCBWaWV3V2lsbExlYXZlLCBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgdGhlbWUgPSBpbmplY3QoVGhlbWVTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBuYXYgPSBpbmplY3QoTmF2aWdhdGlvblNlcnZpY2UpO1xuICBwcml2YXRlIHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBwcml2YXRlIHJvdXRlclN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcblxuICAvKipcbiAgICogUGFnZSB3cmFwcGVyIGNvbmZpZ3VyYXRpb24uXG4gICAqIFNpZ25hbC1iYXNlZCBpbnB1dCBmb3IgZnVsbCByZWFjdGl2aXR5IHdpdGggY29tcHV0ZWQoKS5cbiAgICovXG4gIHJlYWRvbmx5IHByb3BzID0gaW5wdXQ8UGFnZVdyYXBwZXJNZXRhZGF0YT4oe1xuICAgIHNjcm9sbFRvVG9wT25OYXZpZ2F0ZTogdHJ1ZSxcbiAgfSk7XG5cbiAgLyoqXG4gICAqIEVtaXRzIHdoZW4gYSBoZWFkZXIgYWN0aW9uIGlzIGNsaWNrZWQuXG4gICAqL1xuICBAT3V0cHV0KCkgb25IZWFkZXJDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IGhlYWRlciBjb25maWd1cmF0aW9uIChjYWNoZWQgdG8gYXZvaWQgaW5maW5pdGUgY2hhbmdlIGRldGVjdGlvbikuXG4gICAqL1xuICBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRIZWFkZXIgPSB7XG4gICAgYm9yZGVyZWQ6IHRydWUsXG4gICAgdHJhbnNsdWNlbnQ6IHRydWUsXG4gICAgdG9vbGJhcjoge1xuICAgICAgd2l0aEJhY2s6IGZhbHNlLFxuICAgICAgd2l0aEFjdGlvbnM6IHRydWUsXG4gICAgICB0ZXh0Q29sb3I6ICdkYXJrJyBhcyBjb25zdCxcbiAgICAgIHdpdGhNZW51OiB0cnVlLFxuICAgICAgdGl0bGU6ICcnLFxuICAgICAgYWN0aW9uczogW1xuICAgICAgICB7XG4gICAgICAgICAgdG9rZW46ICdoZWFkZXItbG9nbycsXG4gICAgICAgICAgZGVzY3JpcHRpb246ICcnLFxuICAgICAgICAgIHBvc2l0aW9uOiAnbGVmdCcgYXMgY29uc3QsXG4gICAgICAgICAgdHlwZTogJ0lNQUdFJyBhcyBjb25zdCxcbiAgICAgICAgICBpbWFnZToge1xuICAgICAgICAgICAgd2lkdGg6IDEwLFxuICAgICAgICAgICAgc3JjOiAnLS1tYWluLWxvZ28nLFxuICAgICAgICAgICAgYWx0OiAnaGVhZGVyIGxvZ28nLFxuICAgICAgICAgICAgbW9kZTogJ2JveCcgYXMgY29uc3QsXG4gICAgICAgICAgICBzaGFkZWQ6IGZhbHNlLFxuICAgICAgICAgICAgYm9yZGVyZWQ6IGZhbHNlLFxuICAgICAgICAgICAgc2l6ZTogJ3NtYWxsJyBhcyBjb25zdCxcbiAgICAgICAgICAgIGxpbWl0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZmxleDogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICB9O1xuXG4gIC8vIENvbXB1dGVkIGhlbHBlcnMgZm9yIHRlbXBsYXRlIGJpbmRpbmdzXG4gIGhlYWRlclByb3BzID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5wcm9wcygpPy5oZWFkZXIgfHwgdGhpcy5kZWZhdWx0SGVhZGVyKTtcbiAgY29udGVudElkID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5wcm9wcygpPy5jb250ZW50SWQgfHwgJ3BhZ2Utd3JhcHBlcicpO1xuICBwcm9wc0Zvb3RlciA9IGNvbXB1dGVkKCgpID0+IHRoaXMucHJvcHMoKT8uZm9vdGVyKTtcbiAgYmFja2dyb3VuZCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBpZiAodGhpcy50aGVtZS5Jc0RhcmspIHtcbiAgICAgIHJldHVybiAndmFyKC0taW9uLWJhY2tncm91bmQtY29sb3IpJztcbiAgICB9XG4gICAgY29uc3QgYmcgPSB0aGlzLnByb3BzKCk/LmJhY2tncm91bmQ7XG4gICAgaWYgKCFiZykge1xuICAgICAgcmV0dXJuICd2YXIoLS1pb24tYmFja2dyb3VuZC1jb2xvciknO1xuICAgIH1cbiAgICByZXR1cm4gcmVzb2x2ZUNvbG9yKGJnKTtcbiAgfSk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucHJvcHMoKT8uc2Nyb2xsVG9Ub3BPbk5hdmlnYXRlICE9PSBmYWxzZSkge1xuICAgICAgdGhpcy5yb3V0ZXJTdWJzY3JpcHRpb24gPSB0aGlzLnJvdXRlci5ldmVudHNcbiAgICAgICAgLnBpcGUoZmlsdGVyKChldmVudCkgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5zY3JvbGxUb1RvcCgpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yb3V0ZXJTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMucm91dGVyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgaW9uVmlld1dpbGxMZWF2ZSgpOiB2b2lkIHtcbiAgICAvLyBPcHRpb25hbDogY2FuIGFkZCBsb2dpYyBvbiB2aWV3IGxlYXZlXG4gIH1cblxuICBpb25WaWV3V2lsbEVudGVyKCk6IHZvaWQge1xuICAgIHRoaXMuc2Nyb2xsVG9Ub3AoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTY3JvbGxzIHRoZSBjb250ZW50IHRvIHRoZSB0b3AuXG4gICAqL1xuICBwcml2YXRlIHNjcm9sbFRvVG9wKCk6IHZvaWQge1xuICAgIGNvbnN0IGlkID0gdGhpcy5wcm9wcygpPy5jb250ZW50SWQgfHwgJ3BhZ2Utd3JhcHBlcic7XG4gICAgY29uc3QgaW9uQ29udGVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYCMke2lkfWApIGFzIGFueTtcbiAgICBpZiAoaW9uQ29udGVudCAmJiBpb25Db250ZW50LnNjcm9sbFRvVG9wKSB7XG4gICAgICBpb25Db250ZW50LnNjcm9sbFRvVG9wKDMwMCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHdpbmRvdy5zY3JvbGxUbyh7IHRvcDogMCwgYmVoYXZpb3I6ICdzbW9vdGgnIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGVzIGhlYWRlciBhY3Rpb24gY2xpY2tzLlxuICAgKi9cbiAgb25IZWFkZXJDbGlja0hhbmRsZXIodG9rZW46IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMub25IZWFkZXJDbGljay5lbWl0KHRva2VuKTtcblxuICAgIGNvbnN0IGhvbWVSb3V0ZSA9IHRoaXMucHJvcHMoKT8uaG9tZVJvdXRlO1xuICAgIGlmICh0b2tlbiA9PT0gJ2hlYWRlci1sb2dvJyAmJiBob21lUm91dGUpIHtcbiAgICAgIHRoaXMubmF2Lm5hdmlnYXRlQnlVcmwoaG9tZVJvdXRlKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|