valtech-components 2.0.933 → 2.0.935
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/page-links/page-links.component.mjs +4 -2
- package/esm2022/lib/components/organisms/change-password-modal/change-password-modal.component.mjs +4 -3
- package/esm2022/lib/components/organisms/landing-split/landing-split.component.mjs +4 -2
- package/esm2022/lib/components/organisms/landing-steps/landing-steps.component.mjs +4 -2
- package/esm2022/lib/components/organisms/login/login.component.mjs +6 -5
- package/esm2022/lib/components/organisms/skeleton-layout/skeleton-layout.component.mjs +4 -2
- package/esm2022/lib/services/i18n/default-content.mjs +3 -1
- package/esm2022/lib/shared/utils/validators.mjs +24 -0
- package/esm2022/lib/version.mjs +2 -2
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/valtech-components.mjs +46 -12
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/atoms/rights-footer/rights-footer.component.d.ts +1 -1
- package/lib/components/organisms/article/article.component.d.ts +2 -2
- package/lib/shared/utils/validators.d.ts +9 -0
- package/lib/version.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -30,7 +30,9 @@ export class PageLinksComponent {
|
|
|
30
30
|
return this._props();
|
|
31
31
|
}
|
|
32
32
|
constructor() {
|
|
33
|
-
this._props = signal({ links: [] }
|
|
33
|
+
this._props = signal({ links: [] }, {
|
|
34
|
+
equal: (a, b) => a === b || JSON.stringify(a) === JSON.stringify(b),
|
|
35
|
+
});
|
|
34
36
|
this.links = computed(() => this._props().links ?? []);
|
|
35
37
|
addIcons({ chevronForwardOutline, openOutline });
|
|
36
38
|
}
|
|
@@ -147,4 +149,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
147
149
|
type: Input,
|
|
148
150
|
args: [{ required: true }]
|
|
149
151
|
}] } });
|
|
150
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
152
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1saW5rcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL3BhZ2UtbGlua3MvcGFnZS1saW5rcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFHcEU7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBMERILE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsdUNBQXVDO0lBQ3ZDLElBQStCLEtBQUssQ0FBQyxLQUF3QjtRQUMzRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBQ0QsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQVdEO1FBVFEsV0FBTSxHQUFHLE1BQU0sQ0FDckIsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQ2I7WUFDRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7U0FDcEUsQ0FDRixDQUFDO1FBRVEsVUFBSyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRzFELFFBQVEsQ0FBQyxFQUFFLHFCQUFxQixFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVTLFVBQVUsQ0FBQyxJQUFjO1FBQ2pDLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxTQUFTO1lBQUUsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQ3RELE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEQsQ0FBQzsrR0F6QlUsa0JBQWtCO21HQUFsQixrQkFBa0Isc0dBckRuQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWlEVCxrK0NBbERTLFlBQVksK0JBQUUsVUFBVSxvT0FBRSxPQUFPOzs0RkFzRGhDLGtCQUFrQjtrQkF6RDlCLFNBQVM7K0JBQ0UsZ0JBQWdCLGNBQ2QsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsWUFDbEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpRFQsbUJBRWdCLHVCQUF1QixDQUFDLE1BQU07d0RBSWhCLEtBQUs7c0JBQW5DLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBjb21wdXRlZCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJMaW5rIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IElvbkljb24gfSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IGFkZEljb25zIH0gZnJvbSAnaW9uaWNvbnMnO1xuaW1wb3J0IHsgY2hldnJvbkZvcndhcmRPdXRsaW5lLCBvcGVuT3V0bGluZSB9IGZyb20gJ2lvbmljb25zL2ljb25zJztcbmltcG9ydCB7IFBhZ2VMaW5rLCBQYWdlTGlua3NNZXRhZGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIGB2YWwtcGFnZS1saW5rc2Ag4oCUIHN0YWNrZWQgbGlzdCBvZiBuYXZpZ2F0aW9uYWwgbGlua3Mgd2l0aCBvcHRpb25hbCBkaXZpZGVycy5cbiAqIFVzZWQgZm9yIGxlZ2FsL3BvbGljaWVzLCBmb290ZXIgbGluayBjb2x1bW5zLCBcImFib3V0XCIgc2VjdGlvbnMsIGV0Yy5cbiAqXG4gKiBFYWNoIGl0ZW0gY2FuIG5hdmlnYXRlIHZpYSBBbmd1bGFyIGByb3V0ZXJMaW5rYCAoU1BBKSBvciBleHRlcm5hbCBgaHJlZmAuXG4gKiBEZXRlY3RzIGFic29sdXRlIFVSTHMgKGBodHRwKHMpOi8vYCkgdG8gYXBwbHkgYHRhcmdldD1cIl9ibGFua1wiYCBieSBkZWZhdWx0LlxuICpcbiAqIEBleGFtcGxlXG4gKiA8dmFsLXBhZ2UtbGlua3MgW3Byb3BzXT1cIntcbiAqICAgbGlua3M6IFtcbiAqICAgICB7IGxhYmVsOiAnVGVybXMnLCByb3V0ZXJMaW5rOiAnL2xlZ2FsL3Rlcm1zJyB9LFxuICogICAgIHsgbGFiZWw6ICdQcml2YWN5Jywgcm91dGVyTGluazogJy9sZWdhbC9wcml2YWN5JyB9LFxuICogICAgIHsgbGFiZWw6ICdWaXNpdCBtYWluIHNpdGUnLCBocmVmOiAnaHR0cHM6Ly9teXZhbHRlY2guY29tJywgaWNvbjogJ29wZW4tb3V0bGluZScgfSxcbiAqICAgXSxcbiAqIH1cIj48L3ZhbC1wYWdlLWxpbmtzPlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtcGFnZS1saW5rcycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJvdXRlckxpbmssIElvbkljb25dLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuYXZcbiAgICAgIGNsYXNzPVwidmFsLXBhZ2UtbGlua3NcIlxuICAgICAgW2NsYXNzLm5vLWRpdmlkZXJzXT1cInByb3BzLnNob3dEaXZpZGVycyA9PT0gZmFsc2VcIlxuICAgICAgW2NsYXNzLnNpemUtc21hbGxdPVwicHJvcHMuc2l6ZSA9PT0gJ3NtYWxsJ1wiXG4gICAgICBbY2xhc3Muc2l6ZS1sYXJnZV09XCJwcm9wcy5zaXplID09PSAnbGFyZ2UnXCJcbiAgICA+XG4gICAgICBAZm9yIChsaW5rIG9mIGxpbmtzKCk7IHRyYWNrIGxpbmsubGFiZWw7IGxldCBsYXN0ID0gJGxhc3QpIHtcbiAgICAgICAgQGlmIChsaW5rLnJvdXRlckxpbmspIHtcbiAgICAgICAgICA8YVxuICAgICAgICAgICAgY2xhc3M9XCJ2YWwtcGFnZS1saW5rc19faXRlbVwiXG4gICAgICAgICAgICBbcm91dGVyTGlua109XCJsaW5rLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgW2NsYXNzLmlzLWxhc3RdPVwibGFzdFwiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImxpbmsuYXJpYUxhYmVsIHx8IGxpbmsubGFiZWxcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsLXBhZ2UtbGlua3NfX2xhYmVsXCI+e3sgbGluay5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICAgIEBpZiAobGluay5pY29uKSB7XG4gICAgICAgICAgICAgIDxpb24taWNvbiBjbGFzcz1cInZhbC1wYWdlLWxpbmtzX19pY29uXCIgW25hbWVdPVwibGluay5pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pb24taWNvbj5cbiAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICA8aW9uLWljb25cbiAgICAgICAgICAgICAgICBjbGFzcz1cInZhbC1wYWdlLWxpbmtzX19pY29uIHZhbC1wYWdlLWxpbmtzX19pY29uLS1kZWZhdWx0XCJcbiAgICAgICAgICAgICAgICBuYW1lPVwiY2hldnJvbi1mb3J3YXJkLW91dGxpbmVcIlxuICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICAgID48L2lvbi1pY29uPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvYT5cbiAgICAgICAgfSBAZWxzZSBpZiAobGluay5ocmVmKSB7XG4gICAgICAgICAgPGFcbiAgICAgICAgICAgIGNsYXNzPVwidmFsLXBhZ2UtbGlua3NfX2l0ZW1cIlxuICAgICAgICAgICAgW2hyZWZdPVwibGluay5ocmVmXCJcbiAgICAgICAgICAgIFtjbGFzcy5pcy1sYXN0XT1cImxhc3RcIlxuICAgICAgICAgICAgW2F0dHIudGFyZ2V0XT1cImlzRXh0ZXJuYWwobGluaykgPyAnX2JsYW5rJyA6IG51bGxcIlxuICAgICAgICAgICAgW2F0dHIucmVsXT1cImlzRXh0ZXJuYWwobGluaykgPyAnbm9vcGVuZXIgbm9yZWZlcnJlcicgOiBudWxsXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwibGluay5hcmlhTGFiZWwgfHwgbGluay5sYWJlbFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWwtcGFnZS1saW5rc19fbGFiZWxcIj57eyBsaW5rLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgQGlmIChsaW5rLmljb24pIHtcbiAgICAgICAgICAgICAgPGlvbi1pY29uIGNsYXNzPVwidmFsLXBhZ2UtbGlua3NfX2ljb25cIiBbbmFtZV09XCJsaW5rLmljb25cIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2lvbi1pY29uPlxuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgIDxpb24taWNvblxuICAgICAgICAgICAgICAgIGNsYXNzPVwidmFsLXBhZ2UtbGlua3NfX2ljb24gdmFsLXBhZ2UtbGlua3NfX2ljb24tLWRlZmF1bHRcIlxuICAgICAgICAgICAgICAgIFtuYW1lXT1cImlzRXh0ZXJuYWwobGluaykgPyAnb3Blbi1vdXRsaW5lJyA6ICdjaGV2cm9uLWZvcndhcmQtb3V0bGluZSdcIlxuICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICAgID48L2lvbi1pY29uPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvYT5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIDwvbmF2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9wYWdlLWxpbmtzLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBQYWdlTGlua3NDb21wb25lbnQge1xuICAvKiogUGFnZSBsaW5rcyBjb25maWd1cmF0aW9uIG9iamVjdC4gKi9cbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgc2V0IHByb3BzKHZhbHVlOiBQYWdlTGlua3NNZXRhZGF0YSkge1xuICAgIHRoaXMuX3Byb3BzLnNldCh2YWx1ZSk7XG4gIH1cbiAgZ2V0IHByb3BzKCk6IFBhZ2VMaW5rc01ldGFkYXRhIHtcbiAgICByZXR1cm4gdGhpcy5fcHJvcHMoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3Byb3BzID0gc2lnbmFsPFBhZ2VMaW5rc01ldGFkYXRhPihcbiAgICB7IGxpbmtzOiBbXSB9LFxuICAgIHtcbiAgICAgIGVxdWFsOiAoYSwgYikgPT4gYSA9PT0gYiB8fCBKU09OLnN0cmluZ2lmeShhKSA9PT0gSlNPTi5zdHJpbmdpZnkoYiksXG4gICAgfVxuICApO1xuXG4gIHByb3RlY3RlZCBsaW5rcyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuX3Byb3BzKCkubGlua3MgPz8gW10pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGFkZEljb25zKHsgY2hldnJvbkZvcndhcmRPdXRsaW5lLCBvcGVuT3V0bGluZSB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpc0V4dGVybmFsKGxpbms6IFBhZ2VMaW5rKTogYm9vbGVhbiB7XG4gICAgaWYgKGxpbmsuZXh0ZXJuYWwgIT09IHVuZGVmaW5lZCkgcmV0dXJuIGxpbmsuZXh0ZXJuYWw7XG4gICAgcmV0dXJuICEhbGluay5ocmVmICYmIC9eaHR0cHM/OlxcL1xcLy9pLnRlc3QobGluay5ocmVmKTtcbiAgfVxufVxuIl19
|
package/esm2022/lib/components/organisms/change-password-modal/change-password-modal.component.mjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Component, computed, EventEmitter, inject, Input, Output, signal } from '@angular/core';
|
|
2
2
|
import { Validators } from '@angular/forms';
|
|
3
|
+
import { authPasswordValidator } from '../../../shared/utils/validators';
|
|
3
4
|
import { IonButton, IonButtons, IonContent, IonHeader, IonModal, IonSpinner, IonToolbar, } from '@ionic/angular/standalone';
|
|
4
5
|
import { SolidDefaultBlock } from '../../atoms/button/factory';
|
|
5
6
|
import { ComponentStates, InputType } from '../../types';
|
|
@@ -134,9 +135,9 @@ export class ChangePasswordModalComponent {
|
|
|
134
135
|
placeholderKey: 'passwordPlaceholder',
|
|
135
136
|
errorKeys: {
|
|
136
137
|
required: 'passwordRequired',
|
|
137
|
-
|
|
138
|
+
authPassword: 'passwordStrength',
|
|
138
139
|
},
|
|
139
|
-
validators: [Validators.required,
|
|
140
|
+
validators: [Validators.required, authPasswordValidator()],
|
|
140
141
|
order,
|
|
141
142
|
state: ComponentStates.ENABLED,
|
|
142
143
|
};
|
|
@@ -248,4 +249,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
248
249
|
}], dismissed: [{
|
|
249
250
|
type: Output
|
|
250
251
|
}] } });
|
|
251
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvY2hhbmdlLXBhc3N3b3JkLW1vZGFsL2NoYW5nZS1wYXNzd29yZC1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2NoYW5nZS1wYXNzd29yZC1tb2RhbC9jaGFuZ2UtcGFzc3dvcmQtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFNBQVMsRUFDVCxRQUFRLEVBQ1IsVUFBVSxFQUNWLFVBQVUsR0FDWCxNQUFNLDJCQUEyQixDQUFDO0FBRW5DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBa0IsZUFBZSxFQUE0QixTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbkcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUM5RyxPQUFPLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7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LDJCQUEyQixDQUFDLENBQUM7WUFDN0MsS0FBSyxzQkFBc0I7Z0JBQ3pCLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBQ3JDLEtBQUssNkJBQTZCO2dCQUNoQyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMseUJBQXlCLENBQUMsQ0FBQztZQUMzQyxLQUFLLG9DQUFvQztnQkFDdkMsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLENBQUM7WUFDeEM7Z0JBQ0UsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2xDLENBQUM7SUFDSCxDQUFDO0lBRU8sU0FBUyxDQUFDLE9BQWU7UUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDL0MsQ0FBQzsrR0EvTlUsNEJBQTRCO21HQUE1Qiw0QkFBNEIsNEtDdkR6Qywrd0JBd0JBLDRPRDJCWSxTQUFTLG9QQUFFLFVBQVUsOEVBQUUsVUFBVSx3S0FBRSxTQUFTLG9HQUFFLFFBQVEsc0RBQUUsVUFBVSx5R0FBRSxVQUFVLG1GQUFFLGFBQWE7OzRGQUk1Riw0QkFBNEI7a0JBUHhDLFNBQVM7K0JBQ0UsMkJBQTJCLGNBQ3pCLElBQUksV0FDUCxDQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxhQUFhLENBQUM7OEJBWXBHLE1BQU07c0JBRFQsS0FBSztnQkFhSSxPQUFPO3NCQUFoQixNQUFNO2dCQUdHLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE91dHB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgSW9uQnV0dG9uLFxuICBJb25CdXR0b25zLFxuICBJb25Db250ZW50LFxuICBJb25IZWFkZXIsXG4gIElvbk1vZGFsLFxuICBJb25TcGlubmVyLFxuICBJb25Ub29sYmFyLFxufSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcblxuaW1wb3J0IHsgU29saWREZWZhdWx0QmxvY2sgfSBmcm9tICcuLi8uLi9hdG9tcy9idXR0b24vZmFjdG9yeSc7XG5pbXBvcnQgeyBDb21wb25lbnRTdGF0ZSwgQ29tcG9uZW50U3RhdGVzLCBGb3JtTWV0YWRhdGEsIEZvcm1TdWJtaXQsIElucHV0VHlwZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEZvcm1Db21wb25lbnQgfSBmcm9tICcuLi9mb3JtL2Zvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYXV0aCc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25EaWFsb2dTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvY29uZmlybWF0aW9uLWRpYWxvZy9jb25maXJtYXRpb24tZGlhbG9nLnNlcnZpY2UnO1xuaW1wb3J0IHsgSTE4blNlcnZpY2UsIElucHV0STE4bkhlbHBlciB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2kxOG4nO1xuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdG9hc3Quc2VydmljZSc7XG5cbi8qKiBNb2RvIGRlbCBtb2RhbCwgcmVzdWVsdG8gYWwgYWJyaXIgc2Vnw7puIHNpIGVsIHVzZXIgeWEgdGllbmUgY29udHJhc2XDsWEuICovXG50eXBlIFBhc3N3b3JkTW9kYWxNb2RlID0gJ2xvYWRpbmcnIHwgJ2NoYW5nZScgfCAnc2V0JztcblxuLyoqXG4gKiBgdmFsLWNoYW5nZS1wYXNzd29yZC1tb2RhbGAg4oCUIG1vZGFsIGRlIGdlc3Rpw7NuIGRlIGNvbnRyYXNlw7FhIHBhcmEgdW4gdXN1YXJpb1xuICogYXV0ZW50aWNhZG8uIEFuw6Fsb2dvIGFsIG1vZGFsIGRlIFwicmVjdXBlcmFyIGNvbnRyYXNlw7FhXCIgZGVsIGB2YWwtbG9naW5gLlxuICpcbiAqIEVzIGR1YWwtbW9kZTogYWwgYWJyaXJzZSBjb25zdWx0YSBgQXV0aFNlcnZpY2UuY2hlY2tIYXNQYXNzd29yZCgpYCB5IHNlIGFkYXB0YTpcbiAqICAtICoqY2hhbmdlKiog4oCUIGVsIHVzZXIgeWEgdGllbmUgY29udHJhc2XDsWEg4oaSIHBpZGUgYWN0dWFsICsgbnVldmEg4oaSXG4gKiAgICBgY2hhbmdlUGFzc3dvcmQoKWAuXG4gKiAgLSAqKnNldCoqIOKAlCBlbCB1c2VyIGVzIE9BdXRoLW9ubHkgKHNpbiBjb250cmFzZcOxYSkg4oaSIHBpZGUgc29sbyBsYSBudWV2YSxcbiAqICAgIHBpZGUgY29uZmlybWFjacOzbiBleHBsw61jaXRhIChubyBwaWVyZGUgZWwgYWNjZXNvIHNvY2lhbCwgZXMgYWRpdGl2bykg4oaSXG4gKiAgICBgc2V0UGFzc3dvcmRGb3JPQXV0aFVzZXIoKWAuXG4gKlxuICogU2VsZi1jb250YWluZWQ6IGlueWVjdGEgYEF1dGhTZXJ2aWNlYCB5IGxsYW1hIGVsIGVuZHBvaW50IGRpcmVjdG8g4oCUIGxhIGFwcFxuICogc29sbyBjb250cm9sYSBgW2lzT3Blbl1gIHkgcmVhY2Npb25hIGEgYChjaGFuZ2VkKWAgLyBgKGRpc21pc3NlZClgLlxuICpcbiAqIGkxOG46IHVzYSBlbCBuYW1lc3BhY2UgY29tcGFydGlkbyBgX2F1dGhgIChtaXNtYXMgY2xhdmVzIHF1ZSBgdmFsLWxvZ2luYCkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqIDx2YWwtY2hhbmdlLXBhc3N3b3JkLW1vZGFsXG4gKiAgIFtpc09wZW5dPVwiaXNNb2RhbE9wZW4oKVwiXG4gKiAgIChjaGFuZ2VkKT1cImlzTW9kYWxPcGVuLnNldChmYWxzZSlcIlxuICogICAoZGlzbWlzc2VkKT1cImlzTW9kYWxPcGVuLnNldChmYWxzZSlcIlxuICogLz5cbiAqIGBgYFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtY2hhbmdlLXBhc3N3b3JkLW1vZGFsJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0lvbkJ1dHRvbiwgSW9uQnV0dG9ucywgSW9uQ29udGVudCwgSW9uSGVhZGVyLCBJb25Nb2RhbCwgSW9uU3Bpbm5lciwgSW9uVG9vbGJhciwgRm9ybUNvbXBvbmVudF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGFuZ2UtcGFzc3dvcmQtbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jaGFuZ2UtcGFzc3dvcmQtbW9kYWwuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2hhbmdlUGFzc3dvcmRNb2RhbENvbXBvbmVudCB7XG4gIHByaXZhdGUgX2lzT3BlbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBDb250cm9sYSBsYSB2aXNpYmlsaWRhZCBkZWwgbW9kYWwuIExvIGRlY2lkZSBlbCBjb21wb25lbnRlIHBhZHJlLiBDYWRhIHZlelxuICAgKiBxdWUgcGFzYSBkZSBjZXJyYWRvIGEgYWJpZXJ0byBzZSByZXN1ZWx2ZSBlbCBtb2RvIChjaGFuZ2UgdnMgc2V0KS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBpc09wZW4odmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBvcGVuaW5nID0gdmFsdWUgJiYgIXRoaXMuX2lzT3BlbjtcbiAgICB0aGlzLl9pc09wZW4gPSB2YWx1ZTtcbiAgICBpZiAob3BlbmluZykge1xuICAgICAgdGhpcy5yZXNvbHZlTW9kZSgpO1xuICAgIH1cbiAgfVxuICBnZXQgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9pc09wZW47XG4gIH1cblxuICAvKiogRW1pdGUgYWwgY2FtYmlhci9jcmVhciBsYSBjb250cmFzZcOxYSBjb24gw6l4aXRvLiBFbCBwYWRyZSBjaWVycmEgZWwgbW9kYWwuICovXG4gIEBPdXRwdXQoKSBjaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIC8qKiBFbWl0ZSBjdWFuZG8gZWwgdXNlciBjaWVycmEgZWwgbW9kYWwgKGJvdMOzbiBYIG8gYmFja2Ryb3ApLiAqL1xuICBAT3V0cHV0KCkgZGlzbWlzc2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIHByaXZhdGUgYXV0aCA9IGluamVjdChBdXRoU2VydmljZSk7XG4gIHByaXZhdGUgdG9hc3QgPSBpbmplY3QoVG9hc3RTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBpMThuID0gaW5qZWN0KEkxOG5TZXJ2aWNlKTtcbiAgcHJpdmF0ZSBpMThuSGVscGVyID0gaW5qZWN0KElucHV0STE4bkhlbHBlcik7XG4gIHByaXZhdGUgY29uZmlybURpYWxvZyA9IGluamVjdChDb25maXJtYXRpb25EaWFsb2dTZXJ2aWNlKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9tb2RlID0gc2lnbmFsPFBhc3N3b3JkTW9kYWxNb2RlPignbG9hZGluZycpO1xuICAvKiogTW9kbyBhY3R1YWwg4oCUIGBsb2FkaW5nYCBtaWVudHJhcyBzZSBjb25zdWx0YSBgY2hlY2tIYXNQYXNzd29yZCgpYC4gKi9cbiAgcmVhZG9ubHkgbW9kZSA9IHRoaXMuX21vZGUuYXNSZWFkb25seSgpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2Zvcm1TdGF0ZSA9IHNpZ25hbDxDb21wb25lbnRTdGF0ZT4oQ29tcG9uZW50U3RhdGVzLkVOQUJMRUQpO1xuXG4gIC8qKiBUcmFkdWNlIHVuYSBjbGF2ZSBkZWwgbmFtZXNwYWNlIGBfYXV0aGAuICovXG4gIHQoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmkxOG4udChrZXksICdfYXV0aCcpO1xuICB9XG5cbiAgcmVhZG9ubHkgZm9ybVByb3BzID0gY29tcHV0ZWQ8Rm9ybU1ldGFkYXRhPigoKSA9PiB7XG4gICAgaWYgKHRoaXMuX21vZGUoKSA9PT0gJ3NldCcpIHtcbiAgICAgIHJldHVybiB0aGlzLmkxOG5IZWxwZXIucmVzb2x2ZUZvcm0oe1xuICAgICAgICBuYW1lS2V5OiAnc2V0UGFzc3dvcmRUaXRsZScsXG4gICAgICAgIGkxOG5OYW1lc3BhY2U6ICdfYXV0aCcsXG4gICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogdGhpcy50KCdzZXRQYXNzd29yZERlc2NyaXB0aW9uJyksXG4gICAgICAgICAgICBvcmRlcjogMCxcbiAgICAgICAgICAgIGZpZWxkczogW3RoaXMubmV3UGFzc3dvcmRGaWVsZCgwKV0sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgYWN0aW9uczoge1xuICAgICAgICAgIC4uLlNvbGlkRGVmYXVsdEJsb2NrKCcnLCAnc3VibWl0JyksXG4gICAgICAgICAgdG9rZW46ICdzZXQtc3VibWl0JyxcbiAgICAgICAgICB0ZXh0S2V5OiAnc2V0UGFzc3dvcmRTdWJtaXQnLFxuICAgICAgICB9LFxuICAgICAgICBzdGF0ZTogdGhpcy5fZm9ybVN0YXRlKCksXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5pMThuSGVscGVyLnJlc29sdmVGb3JtKHtcbiAgICAgIG5hbWVLZXk6ICdjaGFuZ2VQYXNzd29yZFRpdGxlJyxcbiAgICAgIGkxOG5OYW1lc3BhY2U6ICdfYXV0aCcsXG4gICAgICBzZWN0aW9uczogW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogdGhpcy50KCdjaGFuZ2VQYXNzd29yZERlc2NyaXB0aW9uJyksXG4gICAgICAgICAgb3JkZXI6IDAsXG4gICAgICAgICAgZmllbGRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHR5cGU6IElucHV0VHlwZS5QQVNTV09SRCxcbiAgICAgICAgICAgICAgbmFtZTogJ2N1cnJlbnRQYXNzd29yZCcsXG4gICAgICAgICAgICAgIHRva2VuOiAnY2hhbmdlLWN1cnJlbnQtcGFzc3dvcmQnLFxuICAgICAgICAgICAgICBsYWJlbEtleTogJ2N1cnJlbnRQYXNzd29yZCcsXG4gICAgICAgICAgICAgIGhpbnQ6ICcnLFxuICAgICAgICAgICAgICBwbGFjZWhvbGRlcktleTogJ3Bhc3N3b3JkUGxhY2Vob2xkZXInLFxuICAgICAgICAgICAgICBlcnJvcktleXM6IHtcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogJ2N1cnJlbnRQYXNzd29yZFJlcXVpcmVkJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgdmFsaWRhdG9yczogW1ZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgICAgICAgICBvcmRlcjogMCxcbiAgICAgICAgICAgICAgc3RhdGU6IENvbXBvbmVudFN0YXRlcy5FTkFCTEVELFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHRoaXMubmV3UGFzc3dvcmRGaWVsZCgxKSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIGFjdGlvbnM6IHtcbiAgICAgICAgLi4uU29saWREZWZhdWx0QmxvY2soJycsICdzdWJtaXQnKSxcbiAgICAgICAgdG9rZW46ICdjaGFuZ2Utc3VibWl0JyxcbiAgICAgICAgdGV4dEtleTogJ2NoYW5nZVBhc3N3b3JkU3VibWl0JyxcbiAgICAgIH0sXG4gICAgICBzdGF0ZTogdGhpcy5fZm9ybVN0YXRlKCksXG4gICAgfSk7XG4gIH0pO1xuXG4gIC8qKiBDYW1wbyBcIm51ZXZhIGNvbnRyYXNlw7FhXCIg4oCUIGNvbXBhcnRpZG8gcG9yIGFtYm9zIG1vZG9zLiAqL1xuICBwcml2YXRlIG5ld1Bhc3N3b3JkRmllbGQob3JkZXI6IG51bWJlcikge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiBJbnB1dFR5cGUuUEFTU1dPUkQsXG4gICAgICBuYW1lOiAnbmV3UGFzc3dvcmQnLFxuICAgICAgdG9rZW46ICdjaGFuZ2UtbmV3LXBhc3N3b3JkJyxcbiAgICAgIGxhYmVsS2V5OiAnbmV3UGFzc3dvcmQnLFxuICAgICAgaGludEtleTogJ25ld1Bhc3N3b3JkSGludCcsXG4gICAgICBwbGFjZWhvbGRlcktleTogJ3Bhc3N3b3JkUGxhY2Vob2xkZXInLFxuICAgICAgZXJyb3JLZXlzOiB7XG4gICAgICAgIHJlcXVpcmVkOiAncGFzc3dvcmRSZXF1aXJlZCcsXG4gICAgICAgIG1pbmxlbmd0aDogJ3Bhc3N3b3JkTWluTGVuZ3RoJyxcbiAgICAgIH0sXG4gICAgICB2YWxpZGF0b3JzOiBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgoOCldLFxuICAgICAgb3JkZXIsXG4gICAgICBzdGF0ZTogQ29tcG9uZW50U3RhdGVzLkVOQUJMRUQsXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBDaWVycmUgaW5pY2lhZG8gcG9yIGVsIHVzZXIgKFggLyBiYWNrZHJvcCkuICovXG4gIGNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMuZGlzbWlzc2VkLmVtaXQoKTtcbiAgfVxuXG4gIC8qKiBDb25zdWx0YSBzaSBlbCB1c2VyIHlhIHRpZW5lIGNvbnRyYXNlw7FhIHBhcmEgZWxlZ2lyIGVsIG1vZG8gZGVsIG1vZGFsLiAqL1xuICBwcml2YXRlIHJlc29sdmVNb2RlKCk6IHZvaWQge1xuICAgIHRoaXMuX21vZGUuc2V0KCdsb2FkaW5nJyk7XG4gICAgdGhpcy5fZm9ybVN0YXRlLnNldChDb21wb25lbnRTdGF0ZXMuRU5BQkxFRCk7XG4gICAgdGhpcy5hdXRoLmNoZWNrSGFzUGFzc3dvcmQoKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogcmVzID0+IHRoaXMuX21vZGUuc2V0KHJlcy5oYXNQYXNzd29yZCA/ICdjaGFuZ2UnIDogJ3NldCcpLFxuICAgICAgLy8gRmFsbGJhY2sgY29uc2VydmFkb3I6IGFudGUgdW4gZmFsbG8sIGFzdW1pciBmbHVqbyBkZSBjYW1iaW8gbm9ybWFsLlxuICAgICAgZXJyb3I6ICgpID0+IHRoaXMuX21vZGUuc2V0KCdjaGFuZ2UnKSxcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIHN1Ym1pdEhhbmRsZXIoZXZlbnQ6IEZvcm1TdWJtaXQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5fbW9kZSgpID09PSAnc2V0Jykge1xuICAgICAgYXdhaXQgdGhpcy5oYW5kbGVTZXRQYXNzd29yZChldmVudCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuaGFuZGxlQ2hhbmdlUGFzc3dvcmQoZXZlbnQpO1xuICB9XG5cbiAgLyoqIEZsdWpvIG5vcm1hbDogZWwgdXNlciB0aWVuZSBjb250cmFzZcOxYSB5IGxhIGNhbWJpYS4gKi9cbiAgcHJpdmF0ZSBoYW5kbGVDaGFuZ2VQYXNzd29yZChldmVudDogRm9ybVN1Ym1pdCk6IHZvaWQge1xuICAgIGNvbnN0IGN1cnJlbnRQYXNzd29yZCA9IGV2ZW50LmZpZWxkc1snY3VycmVudFBhc3N3b3JkJ107XG4gICAgY29uc3QgbmV3UGFzc3dvcmQgPSBldmVudC5maWVsZHNbJ25ld1Bhc3N3b3JkJ107XG5cbiAgICBpZiAoIWN1cnJlbnRQYXNzd29yZCB8fCAhbmV3UGFzc3dvcmQpIHtcbiAgICAgIHRoaXMuc2hvd1RvYXN0KHRoaXMudCgnY29tcGxldGVBbGxGaWVsZHMnKSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fZm9ybVN0YXRlLnNldChDb21wb25lbnRTdGF0ZXMuV09SS0lORyk7XG5cbiAgICB0aGlzLmF1dGguY2hhbmdlUGFzc3dvcmQoY3VycmVudFBhc3N3b3JkLCBuZXdQYXNzd29yZCkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6ICgpID0+IHtcbiAgICAgICAgdGhpcy5fZm9ybVN0YXRlLnNldChDb21wb25lbnRTdGF0ZXMuRU5BQkxFRCk7XG4gICAgICAgIHRoaXMuc2hvd1RvYXN0KHRoaXMudCgncGFzc3dvcmRDaGFuZ2VkU3VjY2VzcycpKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VkLmVtaXQoKTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogZXJyID0+IHtcbiAgICAgICAgdGhpcy5fZm9ybVN0YXRlLnNldChDb21wb25lbnRTdGF0ZXMuRU5BQkxFRCk7XG4gICAgICAgIHRoaXMuc2hvd1RvYXN0KHRoaXMucmVzb2x2ZUVycm9yKGVycikpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGbHVqbyBPQXV0aC1vbmx5OiBlbCB1c2VyIG5vIHRpZW5lIGNvbnRyYXNlw7FhLiBBbnRlcyBkZSBjcmVhcmxhIHBpZGVcbiAgICogY29uZmlybWFjacOzbiBleHBsw61jaXRhIOKAlCBlcyB1biBjYW1iaW8gZGUgY3VlbnRhLCBhdW5xdWUgYWRpdGl2byAoY29uc2VydmFcbiAgICogZWwgYWNjZXNvIHNvY2lhbCkuXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGhhbmRsZVNldFBhc3N3b3JkKGV2ZW50OiBGb3JtU3VibWl0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgbmV3UGFzc3dvcmQgPSBldmVudC5maWVsZHNbJ25ld1Bhc3N3b3JkJ107XG5cbiAgICBpZiAoIW5ld1Bhc3N3b3JkKSB7XG4gICAgICB0aGlzLnNob3dUb2FzdCh0aGlzLnQoJ2NvbXBsZXRlQWxsRmllbGRzJykpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuY29uZmlybURpYWxvZy5jb25maXJtKHtcbiAgICAgIHRpdGxlOiB0aGlzLnQoJ3NldFBhc3N3b3JkQ29uZmlybVRpdGxlJyksXG4gICAgICBtZXNzYWdlOiB0aGlzLnQoJ3NldFBhc3N3b3JkQ29uZmlybU1lc3NhZ2UnKSxcbiAgICAgIGNvbmZpcm1CdXR0b246IHsgdGV4dDogdGhpcy50KCdzZXRQYXNzd29yZENvbmZpcm1PaycpLCByb2xlOiAnY29uZmlybScgfSxcbiAgICAgIGNhbmNlbEJ1dHRvbjogeyB0ZXh0OiB0aGlzLnQoJ3NldFBhc3N3b3JkQ29uZmlybUNhbmNlbCcpLCByb2xlOiAnY2FuY2VsJyB9LFxuICAgIH0pO1xuICAgIGlmICghcmVzdWx0LmNvbmZpcm1lZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX2Zvcm1TdGF0ZS5zZXQoQ29tcG9uZW50U3RhdGVzLldPUktJTkcpO1xuXG4gICAgdGhpcy5hdXRoLnNldFBhc3N3b3JkRm9yT0F1dGhVc2VyKG5ld1Bhc3N3b3JkKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKCkgPT4ge1xuICAgICAgICB0aGlzLl9mb3JtU3RhdGUuc2V0KENvbXBvbmVudFN0YXRlcy5FTkFCTEVEKTtcbiAgICAgICAgdGhpcy5zaG93VG9hc3QodGhpcy50KCdwYXNzd29yZFNldFN1Y2Nlc3MnKSk7XG4gICAgICAgIHRoaXMuY2hhbmdlZC5lbWl0KCk7XG4gICAgICB9LFxuICAgICAgZXJyb3I6IGVyciA9PiB7XG4gICAgICAgIHRoaXMuX2Zvcm1TdGF0ZS5zZXQoQ29tcG9uZW50U3RhdGVzLkVOQUJMRUQpO1xuICAgICAgICB0aGlzLnNob3dUb2FzdCh0aGlzLnJlc29sdmVFcnJvcihlcnIpKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICAvKiogTWFwZWEgbG9zIGPDs2RpZ29zIGRlIGVycm9yIGRlbCBiYWNrZW5kIGEgbWVuc2FqZXMgZGVsIG5hbWVzcGFjZSBgX2F1dGhgLiAqL1xuICBwcml2YXRlIHJlc29sdmVFcnJvcihlcnI6IHVua25vd24pOiBzdHJpbmcge1xuICAgIGNvbnN0IGNvZGUgPSAoZXJyIGFzIHsgY29kZT86IHN0cmluZyB9KT8uY29kZTtcbiAgICBzd2l0Y2ggKGNvZGUpIHtcbiAgICAgIGNhc2UgJ0FVVEhWMl9JTlZBTElEX0NVUlJFTlRfUEFTU1dPUkQnOlxuICAgICAgICByZXR1cm4gdGhpcy50KCdlcnJvckN1cnJlbnRQYXNzd29yZFdyb25nJyk7XG4gICAgICBjYXNlICdBVVRIVjJfU0FNRV9QQVNTV09SRCc6XG4gICAgICAgIHJldHVybiB0aGlzLnQoJ2Vycm9yU2FtZVBhc3N3b3JkJyk7XG4gICAgICBjYXNlICdBVVRIVjJfUEFTU1dPUkRfQUxSRUFEWV9TRVQnOlxuICAgICAgICByZXR1cm4gdGhpcy50KCdlcnJvclBhc3N3b3JkQWxyZWFkeVNldCcpO1xuICAgICAgY2FzZSAnVkFMSURBVElPTl9NSVNTSU5HX1JFUVVJUkVEX0ZJRUxEUyc6XG4gICAgICAgIHJldHVybiB0aGlzLnQoJ2Vycm9yUGFzc3dvcmRUb29XZWFrJyk7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdGhpcy50KCdlcnJvckdlbmVyaWMnKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNob3dUb2FzdChtZXNzYWdlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnRvYXN0LnNob3coeyBtZXNzYWdlLCBkdXJhdGlvbjogMzUwMCB9KTtcbiAgfVxufVxuIiwiPGlvbi1tb2RhbCBbaXNPcGVuXT1cImlzT3BlblwiIChkaWREaXNtaXNzKT1cImNsb3NlKClcIj5cbiAgPG5nLXRlbXBsYXRlPlxuICAgIDxpb24taGVhZGVyPlxuICAgICAgPGlvbi10b29sYmFyPlxuICAgICAgICA8aW9uLWJ1dHRvbnMgc2xvdD1cImVuZFwiPlxuICAgICAgICAgIDxpb24tYnV0dG9uIGZpbGw9XCJjbGVhclwiIGNvbG9yPVwiZGFya1wiIChjbGljayk9XCJjbG9zZSgpXCI+XG4gICAgICAgICAgICA8c3Ryb25nPnt7IHQoJ2Nsb3NlJykgfX08L3N0cm9uZz5cbiAgICAgICAgICA8L2lvbi1idXR0b24+XG4gICAgICAgIDwvaW9uLWJ1dHRvbnM+XG4gICAgICA8L2lvbi10b29sYmFyPlxuICAgIDwvaW9uLWhlYWRlcj5cbiAgICA8aW9uLWNvbnRlbnQgY2xhc3M9XCJpb24tcGFkZGluZ1wiPlxuICAgICAgPHNlY3Rpb24gY2xhc3M9XCJtb2RhbC1mb3JtLXNlY3Rpb25cIj5cbiAgICAgICAgQGlmIChtb2RlKCkgPT09ICdsb2FkaW5nJykge1xuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtbG9hZGluZ1wiPlxuICAgICAgICAgIDxpb24tc3Bpbm5lciBuYW1lPVwiY3Jlc2NlbnRcIj48L2lvbi1zcGlubmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgIDx2YWwtZm9ybSBbcHJvcHNdPVwiZm9ybVByb3BzKClcIiAob25TdWJtaXQpPVwic3VibWl0SGFuZGxlcigkZXZlbnQpXCIgLz5cbiAgICAgICAgfVxuICAgICAgPC9zZWN0aW9uPlxuICAgIDwvaW9uLWNvbnRlbnQ+XG4gIDwvbmctdGVtcGxhdGU+XG48L2lvbi1tb2RhbD5cbiJdfQ==
|
|
252
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvY2hhbmdlLXBhc3N3b3JkLW1vZGFsL2NoYW5nZS1wYXNzd29yZC1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2NoYW5nZS1wYXNzd29yZC1tb2RhbC9jaGFuZ2UtcGFzc3dvcmQtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDekUsT0FBTyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFNBQVMsRUFDVCxRQUFRLEVBQ1IsVUFBVSxFQUNWLFVBQVUsR0FDWCxNQUFNLDJCQUEyQixDQUFDO0FBRW5DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBa0IsZUFBZSxFQUE0QixTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbkcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUM5RyxPQUFPLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFD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cEMsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLDJCQUEyQixDQUFDLENBQUM7WUFDN0MsS0FBSyxzQkFBc0I7Z0JBQ3pCLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBQ3JDLEtBQUssNkJBQTZCO2dCQUNoQyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMseUJBQXlCLENBQUMsQ0FBQztZQUMzQyxLQUFLLG9DQUFvQztnQkFDdkMsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLENBQUM7WUFDeEM7Z0JBQ0UsT0FBTyxJQUFJLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2xDLENBQUM7SUFDSCxDQUFDO0lBRU8sU0FBUyxDQUFDLE9BQWU7UUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDL0MsQ0FBQzsrR0EvTlUsNEJBQTRCO21HQUE1Qiw0QkFBNEIsNEtDeER6Qywrd0JBd0JBLDRPRDRCWSxTQUFTLG9QQUFFLFVBQVUsOEVBQUUsVUFBVSx3S0FBRSxTQUFTLG9HQUFFLFFBQVEsc0RBQUUsVUFBVSx5R0FBRSxVQUFVLG1GQUFFLGFBQWE7OzRGQUk1Riw0QkFBNEI7a0JBUHhDLFNBQVM7K0JBQ0UsMkJBQTJCLGNBQ3pCLElBQUksV0FDUCxDQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxhQUFhLENBQUM7OEJBWXBHLE1BQU07c0JBRFQsS0FBSztnQkFhSSxPQUFPO3NCQUFoQixNQUFNO2dCQUdHLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE91dHB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgYXV0aFBhc3N3b3JkVmFsaWRhdG9yIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL3V0aWxzL3ZhbGlkYXRvcnMnO1xuaW1wb3J0IHtcbiAgSW9uQnV0dG9uLFxuICBJb25CdXR0b25zLFxuICBJb25Db250ZW50LFxuICBJb25IZWFkZXIsXG4gIElvbk1vZGFsLFxuICBJb25TcGlubmVyLFxuICBJb25Ub29sYmFyLFxufSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcblxuaW1wb3J0IHsgU29saWREZWZhdWx0QmxvY2sgfSBmcm9tICcuLi8uLi9hdG9tcy9idXR0b24vZmFjdG9yeSc7XG5pbXBvcnQgeyBDb21wb25lbnRTdGF0ZSwgQ29tcG9uZW50U3RhdGVzLCBGb3JtTWV0YWRhdGEsIEZvcm1TdWJtaXQsIElucHV0VHlwZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEZvcm1Db21wb25lbnQgfSBmcm9tICcuLi9mb3JtL2Zvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvYXV0aCc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25EaWFsb2dTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvY29uZmlybWF0aW9uLWRpYWxvZy9jb25maXJtYXRpb24tZGlhbG9nLnNlcnZpY2UnO1xuaW1wb3J0IHsgSTE4blNlcnZpY2UsIElucHV0STE4bkhlbHBlciB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2kxOG4nO1xuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdG9hc3Quc2VydmljZSc7XG5cbi8qKiBNb2RvIGRlbCBtb2RhbCwgcmVzdWVsdG8gYWwgYWJyaXIgc2Vnw7puIHNpIGVsIHVzZXIgeWEgdGllbmUgY29udHJhc2XDsWEuICovXG50eXBlIFBhc3N3b3JkTW9kYWxNb2RlID0gJ2xvYWRpbmcnIHwgJ2NoYW5nZScgfCAnc2V0JztcblxuLyoqXG4gKiBgdmFsLWNoYW5nZS1wYXNzd29yZC1tb2RhbGAg4oCUIG1vZGFsIGRlIGdlc3Rpw7NuIGRlIGNvbnRyYXNlw7FhIHBhcmEgdW4gdXN1YXJpb1xuICogYXV0ZW50aWNhZG8uIEFuw6Fsb2dvIGFsIG1vZGFsIGRlIFwicmVjdXBlcmFyIGNvbnRyYXNlw7FhXCIgZGVsIGB2YWwtbG9naW5gLlxuICpcbiAqIEVzIGR1YWwtbW9kZTogYWwgYWJyaXJzZSBjb25zdWx0YSBgQXV0aFNlcnZpY2UuY2hlY2tIYXNQYXNzd29yZCgpYCB5IHNlIGFkYXB0YTpcbiAqICAtICoqY2hhbmdlKiog4oCUIGVsIHVzZXIgeWEgdGllbmUgY29udHJhc2XDsWEg4oaSIHBpZGUgYWN0dWFsICsgbnVldmEg4oaSXG4gKiAgICBgY2hhbmdlUGFzc3dvcmQoKWAuXG4gKiAgLSAqKnNldCoqIOKAlCBlbCB1c2VyIGVzIE9BdXRoLW9ubHkgKHNpbiBjb250cmFzZcOxYSkg4oaSIHBpZGUgc29sbyBsYSBudWV2YSxcbiAqICAgIHBpZGUgY29uZmlybWFjacOzbiBleHBsw61jaXRhIChubyBwaWVyZGUgZWwgYWNjZXNvIHNvY2lhbCwgZXMgYWRpdGl2bykg4oaSXG4gKiAgICBgc2V0UGFzc3dvcmRGb3JPQXV0aFVzZXIoKWAuXG4gKlxuICogU2VsZi1jb250YWluZWQ6IGlueWVjdGEgYEF1dGhTZXJ2aWNlYCB5IGxsYW1hIGVsIGVuZHBvaW50IGRpcmVjdG8g4oCUIGxhIGFwcFxuICogc29sbyBjb250cm9sYSBgW2lzT3Blbl1gIHkgcmVhY2Npb25hIGEgYChjaGFuZ2VkKWAgLyBgKGRpc21pc3NlZClgLlxuICpcbiAqIGkxOG46IHVzYSBlbCBuYW1lc3BhY2UgY29tcGFydGlkbyBgX2F1dGhgIChtaXNtYXMgY2xhdmVzIHF1ZSBgdmFsLWxvZ2luYCkuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYGh0bWxcbiAqIDx2YWwtY2hhbmdlLXBhc3N3b3JkLW1vZGFsXG4gKiAgIFtpc09wZW5dPVwiaXNNb2RhbE9wZW4oKVwiXG4gKiAgIChjaGFuZ2VkKT1cImlzTW9kYWxPcGVuLnNldChmYWxzZSlcIlxuICogICAoZGlzbWlzc2VkKT1cImlzTW9kYWxPcGVuLnNldChmYWxzZSlcIlxuICogLz5cbiAqIGBgYFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtY2hhbmdlLXBhc3N3b3JkLW1vZGFsJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0lvbkJ1dHRvbiwgSW9uQnV0dG9ucywgSW9uQ29udGVudCwgSW9uSGVhZGVyLCBJb25Nb2RhbCwgSW9uU3Bpbm5lciwgSW9uVG9vbGJhciwgRm9ybUNvbXBvbmVudF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGFuZ2UtcGFzc3dvcmQtbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jaGFuZ2UtcGFzc3dvcmQtbW9kYWwuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2hhbmdlUGFzc3dvcmRNb2RhbENvbXBvbmVudCB7XG4gIHByaXZhdGUgX2lzT3BlbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBDb250cm9sYSBsYSB2aXNpYmlsaWRhZCBkZWwgbW9kYWwuIExvIGRlY2lkZSBlbCBjb21wb25lbnRlIHBhZHJlLiBDYWRhIHZlelxuICAgKiBxdWUgcGFzYSBkZSBjZXJyYWRvIGEgYWJpZXJ0byBzZSByZXN1ZWx2ZSBlbCBtb2RvIChjaGFuZ2UgdnMgc2V0KS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBpc09wZW4odmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBvcGVuaW5nID0gdmFsdWUgJiYgIXRoaXMuX2lzT3BlbjtcbiAgICB0aGlzLl9pc09wZW4gPSB2YWx1ZTtcbiAgICBpZiAob3BlbmluZykge1xuICAgICAgdGhpcy5yZXNvbHZlTW9kZSgpO1xuICAgIH1cbiAgfVxuICBnZXQgaXNPcGVuKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9pc09wZW47XG4gIH1cblxuICAvKiogRW1pdGUgYWwgY2FtYmlhci9jcmVhciBsYSBjb250cmFzZcOxYSBjb24gw6l4aXRvLiBFbCBwYWRyZSBjaWVycmEgZWwgbW9kYWwuICovXG4gIEBPdXRwdXQoKSBjaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIC8qKiBFbWl0ZSBjdWFuZG8gZWwgdXNlciBjaWVycmEgZWwgbW9kYWwgKGJvdMOzbiBYIG8gYmFja2Ryb3ApLiAqL1xuICBAT3V0cHV0KCkgZGlzbWlzc2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIHByaXZhdGUgYXV0aCA9IGluamVjdChBdXRoU2VydmljZSk7XG4gIHByaXZhdGUgdG9hc3QgPSBpbmplY3QoVG9hc3RTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBpMThuID0gaW5qZWN0KEkxOG5TZXJ2aWNlKTtcbiAgcHJpdmF0ZSBpMThuSGVscGVyID0gaW5qZWN0KElucHV0STE4bkhlbHBlcik7XG4gIHByaXZhdGUgY29uZmlybURpYWxvZyA9IGluamVjdChDb25maXJtYXRpb25EaWFsb2dTZXJ2aWNlKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9tb2RlID0gc2lnbmFsPFBhc3N3b3JkTW9kYWxNb2RlPignbG9hZGluZycpO1xuICAvKiogTW9kbyBhY3R1YWwg4oCUIGBsb2FkaW5nYCBtaWVudHJhcyBzZSBjb25zdWx0YSBgY2hlY2tIYXNQYXNzd29yZCgpYC4gKi9cbiAgcmVhZG9ubHkgbW9kZSA9IHRoaXMuX21vZGUuYXNSZWFkb25seSgpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2Zvcm1TdGF0ZSA9IHNpZ25hbDxDb21wb25lbnRTdGF0ZT4oQ29tcG9uZW50U3RhdGVzLkVOQUJMRUQpO1xuXG4gIC8qKiBUcmFkdWNlIHVuYSBjbGF2ZSBkZWwgbmFtZXNwYWNlIGBfYXV0aGAuICovXG4gIHQoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmkxOG4udChrZXksICdfYXV0aCcpO1xuICB9XG5cbiAgcmVhZG9ubHkgZm9ybVByb3BzID0gY29tcHV0ZWQ8Rm9ybU1ldGFkYXRhPigoKSA9PiB7XG4gICAgaWYgKHRoaXMuX21vZGUoKSA9PT0gJ3NldCcpIHtcbiAgICAgIHJldHVybiB0aGlzLmkxOG5IZWxwZXIucmVzb2x2ZUZvcm0oe1xuICAgICAgICBuYW1lS2V5OiAnc2V0UGFzc3dvcmRUaXRsZScsXG4gICAgICAgIGkxOG5OYW1lc3BhY2U6ICdfYXV0aCcsXG4gICAgICAgIHNlY3Rpb25zOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogdGhpcy50KCdzZXRQYXNzd29yZERlc2NyaXB0aW9uJyksXG4gICAgICAgICAgICBvcmRlcjogMCxcbiAgICAgICAgICAgIGZpZWxkczogW3RoaXMubmV3UGFzc3dvcmRGaWVsZCgwKV0sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgYWN0aW9uczoge1xuICAgICAgICAgIC4uLlNvbGlkRGVmYXVsdEJsb2NrKCcnLCAnc3VibWl0JyksXG4gICAgICAgICAgdG9rZW46ICdzZXQtc3VibWl0JyxcbiAgICAgICAgICB0ZXh0S2V5OiAnc2V0UGFzc3dvcmRTdWJtaXQnLFxuICAgICAgICB9LFxuICAgICAgICBzdGF0ZTogdGhpcy5fZm9ybVN0YXRlKCksXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5pMThuSGVscGVyLnJlc29sdmVGb3JtKHtcbiAgICAgIG5hbWVLZXk6ICdjaGFuZ2VQYXNzd29yZFRpdGxlJyxcbiAgICAgIGkxOG5OYW1lc3BhY2U6ICdfYXV0aCcsXG4gICAgICBzZWN0aW9uczogW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogdGhpcy50KCdjaGFuZ2VQYXNzd29yZERlc2NyaXB0aW9uJyksXG4gICAgICAgICAgb3JkZXI6IDAsXG4gICAgICAgICAgZmllbGRzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHR5cGU6IElucHV0VHlwZS5QQVNTV09SRCxcbiAgICAgICAgICAgICAgbmFtZTogJ2N1cnJlbnRQYXNzd29yZCcsXG4gICAgICAgICAgICAgIHRva2VuOiAnY2hhbmdlLWN1cnJlbnQtcGFzc3dvcmQnLFxuICAgICAgICAgICAgICBsYWJlbEtleTogJ2N1cnJlbnRQYXNzd29yZCcsXG4gICAgICAgICAgICAgIGhpbnQ6ICcnLFxuICAgICAgICAgICAgICBwbGFjZWhvbGRlcktleTogJ3Bhc3N3b3JkUGxhY2Vob2xkZXInLFxuICAgICAgICAgICAgICBlcnJvcktleXM6IHtcbiAgICAgICAgICAgICAgICByZXF1aXJlZDogJ2N1cnJlbnRQYXNzd29yZFJlcXVpcmVkJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgdmFsaWRhdG9yczogW1ZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgICAgICAgICBvcmRlcjogMCxcbiAgICAgICAgICAgICAgc3RhdGU6IENvbXBvbmVudFN0YXRlcy5FTkFCTEVELFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHRoaXMubmV3UGFzc3dvcmRGaWVsZCgxKSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIGFjdGlvbnM6IHtcbiAgICAgICAgLi4uU29saWREZWZhdWx0QmxvY2soJycsICdzdWJtaXQnKSxcbiAgICAgICAgdG9rZW46ICdjaGFuZ2Utc3VibWl0JyxcbiAgICAgICAgdGV4dEtleTogJ2NoYW5nZVBhc3N3b3JkU3VibWl0JyxcbiAgICAgIH0sXG4gICAgICBzdGF0ZTogdGhpcy5fZm9ybVN0YXRlKCksXG4gICAgfSk7XG4gIH0pO1xuXG4gIC8qKiBDYW1wbyBcIm51ZXZhIGNvbnRyYXNlw7FhXCIg4oCUIGNvbXBhcnRpZG8gcG9yIGFtYm9zIG1vZG9zLiAqL1xuICBwcml2YXRlIG5ld1Bhc3N3b3JkRmllbGQob3JkZXI6IG51bWJlcikge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiBJbnB1dFR5cGUuUEFTU1dPUkQsXG4gICAgICBuYW1lOiAnbmV3UGFzc3dvcmQnLFxuICAgICAgdG9rZW46ICdjaGFuZ2UtbmV3LXBhc3N3b3JkJyxcbiAgICAgIGxhYmVsS2V5OiAnbmV3UGFzc3dvcmQnLFxuICAgICAgaGludEtleTogJ25ld1Bhc3N3b3JkSGludCcsXG4gICAgICBwbGFjZWhvbGRlcktleTogJ3Bhc3N3b3JkUGxhY2Vob2xkZXInLFxuICAgICAgZXJyb3JLZXlzOiB7XG4gICAgICAgIHJlcXVpcmVkOiAncGFzc3dvcmRSZXF1aXJlZCcsXG4gICAgICAgIGF1dGhQYXNzd29yZDogJ3Bhc3N3b3JkU3RyZW5ndGgnLFxuICAgICAgfSxcbiAgICAgIHZhbGlkYXRvcnM6IFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBhdXRoUGFzc3dvcmRWYWxpZGF0b3IoKV0sXG4gICAgICBvcmRlcixcbiAgICAgIHN0YXRlOiBDb21wb25lbnRTdGF0ZXMuRU5BQkxFRCxcbiAgICB9O1xuICB9XG5cbiAgLyoqIENpZXJyZSBpbmljaWFkbyBwb3IgZWwgdXNlciAoWCAvIGJhY2tkcm9wKS4gKi9cbiAgY2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5kaXNtaXNzZWQuZW1pdCgpO1xuICB9XG5cbiAgLyoqIENvbnN1bHRhIHNpIGVsIHVzZXIgeWEgdGllbmUgY29udHJhc2XDsWEgcGFyYSBlbGVnaXIgZWwgbW9kbyBkZWwgbW9kYWwuICovXG4gIHByaXZhdGUgcmVzb2x2ZU1vZGUoKTogdm9pZCB7XG4gICAgdGhpcy5fbW9kZS5zZXQoJ2xvYWRpbmcnKTtcbiAgICB0aGlzLl9mb3JtU3RhdGUuc2V0KENvbXBvbmVudFN0YXRlcy5FTkFCTEVEKTtcbiAgICB0aGlzLmF1dGguY2hlY2tIYXNQYXNzd29yZCgpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiByZXMgPT4gdGhpcy5fbW9kZS5zZXQocmVzLmhhc1Bhc3N3b3JkID8gJ2NoYW5nZScgOiAnc2V0JyksXG4gICAgICAvLyBGYWxsYmFjayBjb25zZXJ2YWRvcjogYW50ZSB1biBmYWxsbywgYXN1bWlyIGZsdWpvIGRlIGNhbWJpbyBub3JtYWwuXG4gICAgICBlcnJvcjogKCkgPT4gdGhpcy5fbW9kZS5zZXQoJ2NoYW5nZScpLFxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgc3VibWl0SGFuZGxlcihldmVudDogRm9ybVN1Ym1pdCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLl9tb2RlKCkgPT09ICdzZXQnKSB7XG4gICAgICBhd2FpdCB0aGlzLmhhbmRsZVNldFBhc3N3b3JkKGV2ZW50KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5oYW5kbGVDaGFuZ2VQYXNzd29yZChldmVudCk7XG4gIH1cblxuICAvKiogRmx1am8gbm9ybWFsOiBlbCB1c2VyIHRpZW5lIGNvbnRyYXNlw7FhIHkgbGEgY2FtYmlhLiAqL1xuICBwcml2YXRlIGhhbmRsZUNoYW5nZVBhc3N3b3JkKGV2ZW50OiBGb3JtU3VibWl0KTogdm9pZCB7XG4gICAgY29uc3QgY3VycmVudFBhc3N3b3JkID0gZXZlbnQuZmllbGRzWydjdXJyZW50UGFzc3dvcmQnXTtcbiAgICBjb25zdCBuZXdQYXNzd29yZCA9IGV2ZW50LmZpZWxkc1snbmV3UGFzc3dvcmQnXTtcblxuICAgIGlmICghY3VycmVudFBhc3N3b3JkIHx8ICFuZXdQYXNzd29yZCkge1xuICAgICAgdGhpcy5zaG93VG9hc3QodGhpcy50KCdjb21wbGV0ZUFsbEZpZWxkcycpKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9mb3JtU3RhdGUuc2V0KENvbXBvbmVudFN0YXRlcy5XT1JLSU5HKTtcblxuICAgIHRoaXMuYXV0aC5jaGFuZ2VQYXNzd29yZChjdXJyZW50UGFzc3dvcmQsIG5ld1Bhc3N3b3JkKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKCkgPT4ge1xuICAgICAgICB0aGlzLl9mb3JtU3RhdGUuc2V0KENvbXBvbmVudFN0YXRlcy5FTkFCTEVEKTtcbiAgICAgICAgdGhpcy5zaG93VG9hc3QodGhpcy50KCdwYXNzd29yZENoYW5nZWRTdWNjZXNzJykpO1xuICAgICAgICB0aGlzLmNoYW5nZWQuZW1pdCgpO1xuICAgICAgfSxcbiAgICAgIGVycm9yOiBlcnIgPT4ge1xuICAgICAgICB0aGlzLl9mb3JtU3RhdGUuc2V0KENvbXBvbmVudFN0YXRlcy5FTkFCTEVEKTtcbiAgICAgICAgdGhpcy5zaG93VG9hc3QodGhpcy5yZXNvbHZlRXJyb3IoZXJyKSk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEZsdWpvIE9BdXRoLW9ubHk6IGVsIHVzZXIgbm8gdGllbmUgY29udHJhc2XDsWEuIEFudGVzIGRlIGNyZWFybGEgcGlkZVxuICAgKiBjb25maXJtYWNpw7NuIGV4cGzDrWNpdGEg4oCUIGVzIHVuIGNhbWJpbyBkZSBjdWVudGEsIGF1bnF1ZSBhZGl0aXZvIChjb25zZXJ2YVxuICAgKiBlbCBhY2Nlc28gc29jaWFsKS5cbiAgICovXG4gIHByaXZhdGUgYXN5bmMgaGFuZGxlU2V0UGFzc3dvcmQoZXZlbnQ6IEZvcm1TdWJtaXQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBuZXdQYXNzd29yZCA9IGV2ZW50LmZpZWxkc1snbmV3UGFzc3dvcmQnXTtcblxuICAgIGlmICghbmV3UGFzc3dvcmQpIHtcbiAgICAgIHRoaXMuc2hvd1RvYXN0KHRoaXMudCgnY29tcGxldGVBbGxGaWVsZHMnKSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5jb25maXJtRGlhbG9nLmNvbmZpcm0oe1xuICAgICAgdGl0bGU6IHRoaXMudCgnc2V0UGFzc3dvcmRDb25maXJtVGl0bGUnKSxcbiAgICAgIG1lc3NhZ2U6IHRoaXMudCgnc2V0UGFzc3dvcmRDb25maXJtTWVzc2FnZScpLFxuICAgICAgY29uZmlybUJ1dHRvbjogeyB0ZXh0OiB0aGlzLnQoJ3NldFBhc3N3b3JkQ29uZmlybU9rJyksIHJvbGU6ICdjb25maXJtJyB9LFxuICAgICAgY2FuY2VsQnV0dG9uOiB7IHRleHQ6IHRoaXMudCgnc2V0UGFzc3dvcmRDb25maXJtQ2FuY2VsJyksIHJvbGU6ICdjYW5jZWwnIH0sXG4gICAgfSk7XG4gICAgaWYgKCFyZXN1bHQuY29uZmlybWVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fZm9ybVN0YXRlLnNldChDb21wb25lbnRTdGF0ZXMuV09SS0lORyk7XG5cbiAgICB0aGlzLmF1dGguc2V0UGFzc3dvcmRGb3JPQXV0aFVzZXIobmV3UGFzc3dvcmQpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAoKSA9PiB7XG4gICAgICAgIHRoaXMuX2Zvcm1TdGF0ZS5zZXQoQ29tcG9uZW50U3RhdGVzLkVOQUJMRUQpO1xuICAgICAgICB0aGlzLnNob3dUb2FzdCh0aGlzLnQoJ3Bhc3N3b3JkU2V0U3VjY2VzcycpKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VkLmVtaXQoKTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogZXJyID0+IHtcbiAgICAgICAgdGhpcy5fZm9ybVN0YXRlLnNldChDb21wb25lbnRTdGF0ZXMuRU5BQkxFRCk7XG4gICAgICAgIHRoaXMuc2hvd1RvYXN0KHRoaXMucmVzb2x2ZUVycm9yKGVycikpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKiBNYXBlYSBsb3MgY8OzZGlnb3MgZGUgZXJyb3IgZGVsIGJhY2tlbmQgYSBtZW5zYWplcyBkZWwgbmFtZXNwYWNlIGBfYXV0aGAuICovXG4gIHByaXZhdGUgcmVzb2x2ZUVycm9yKGVycjogdW5rbm93bik6IHN0cmluZyB7XG4gICAgY29uc3QgY29kZSA9IChlcnIgYXMgeyBjb2RlPzogc3RyaW5nIH0pPy5jb2RlO1xuICAgIHN3aXRjaCAoY29kZSkge1xuICAgICAgY2FzZSAnQVVUSFYyX0lOVkFMSURfQ1VSUkVOVF9QQVNTV09SRCc6XG4gICAgICAgIHJldHVybiB0aGlzLnQoJ2Vycm9yQ3VycmVudFBhc3N3b3JkV3JvbmcnKTtcbiAgICAgIGNhc2UgJ0FVVEhWMl9TQU1FX1BBU1NXT1JEJzpcbiAgICAgICAgcmV0dXJuIHRoaXMudCgnZXJyb3JTYW1lUGFzc3dvcmQnKTtcbiAgICAgIGNhc2UgJ0FVVEhWMl9QQVNTV09SRF9BTFJFQURZX1NFVCc6XG4gICAgICAgIHJldHVybiB0aGlzLnQoJ2Vycm9yUGFzc3dvcmRBbHJlYWR5U2V0Jyk7XG4gICAgICBjYXNlICdWQUxJREFUSU9OX01JU1NJTkdfUkVRVUlSRURfRklFTERTJzpcbiAgICAgICAgcmV0dXJuIHRoaXMudCgnZXJyb3JQYXNzd29yZFRvb1dlYWsnKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiB0aGlzLnQoJ2Vycm9yR2VuZXJpYycpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2hvd1RvYXN0KG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudG9hc3Quc2hvdyh7IG1lc3NhZ2UsIGR1cmF0aW9uOiAzNTAwIH0pO1xuICB9XG59XG4iLCI8aW9uLW1vZGFsIFtpc09wZW5dPVwiaXNPcGVuXCIgKGRpZERpc21pc3MpPVwiY2xvc2UoKVwiPlxuICA8bmctdGVtcGxhdGU+XG4gICAgPGlvbi1oZWFkZXI+XG4gICAgICA8aW9uLXRvb2xiYXI+XG4gICAgICAgIDxpb24tYnV0dG9ucyBzbG90PVwiZW5kXCI+XG4gICAgICAgICAgPGlvbi1idXR0b24gZmlsbD1cImNsZWFyXCIgY29sb3I9XCJkYXJrXCIgKGNsaWNrKT1cImNsb3NlKClcIj5cbiAgICAgICAgICAgIDxzdHJvbmc+e3sgdCgnY2xvc2UnKSB9fTwvc3Ryb25nPlxuICAgICAgICAgIDwvaW9uLWJ1dHRvbj5cbiAgICAgICAgPC9pb24tYnV0dG9ucz5cbiAgICAgIDwvaW9uLXRvb2xiYXI+XG4gICAgPC9pb24taGVhZGVyPlxuICAgIDxpb24tY29udGVudCBjbGFzcz1cImlvbi1wYWRkaW5nXCI+XG4gICAgICA8c2VjdGlvbiBjbGFzcz1cIm1vZGFsLWZvcm0tc2VjdGlvblwiPlxuICAgICAgICBAaWYgKG1vZGUoKSA9PT0gJ2xvYWRpbmcnKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1sb2FkaW5nXCI+XG4gICAgICAgICAgPGlvbi1zcGlubmVyIG5hbWU9XCJjcmVzY2VudFwiPjwvaW9uLXNwaW5uZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgPHZhbC1mb3JtIFtwcm9wc109XCJmb3JtUHJvcHMoKVwiIChvblN1Ym1pdCk9XCJzdWJtaXRIYW5kbGVyKCRldmVudClcIiAvPlxuICAgICAgICB9XG4gICAgICA8L3NlY3Rpb24+XG4gICAgPC9pb24tY29udGVudD5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvaW9uLW1vZGFsPlxuIl19
|
|
@@ -3,7 +3,9 @@ import { Component, computed, Input, signal } from '@angular/core';
|
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export class LandingSplitComponent {
|
|
5
5
|
constructor() {
|
|
6
|
-
this.props_ = signal({ title: '' }
|
|
6
|
+
this.props_ = signal({ title: '' }, {
|
|
7
|
+
equal: (a, b) => a === b || JSON.stringify(a) === JSON.stringify(b),
|
|
8
|
+
});
|
|
7
9
|
this.p = computed(() => this.props_());
|
|
8
10
|
}
|
|
9
11
|
set props(v) {
|
|
@@ -50,4 +52,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
50
52
|
}], propDecorators: { props: [{
|
|
51
53
|
type: Input
|
|
52
54
|
}] } });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZGluZy1zcGxpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2xhbmRpbmctc3BsaXQvbGFuZGluZy1zcGxpdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBbUhuRSxNQUFNLE9BQU8scUJBQXFCO0lBaEhsQztRQWlIbUIsV0FBTSxHQUFHLE1BQU0sQ0FDOUIsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQ2I7WUFDRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7U0FDcEUsQ0FDRixDQUFDO1FBTU8sTUFBQyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztLQUM1QztJQUxDLElBQWEsS0FBSyxDQUFDLENBQXVCO1FBQ3hDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7K0dBVlUscUJBQXFCO21HQUFyQixxQkFBcUIseUdBbEJ0Qjs7Ozs7Ozs7Ozs7Ozs7OztHQWdCVCxrdUNBM0dTLFlBQVk7OzRGQTZHWCxxQkFBcUI7a0JBaEhqQyxTQUFTOytCQUNFLG1CQUFtQixjQUNqQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLENBQUMsWUEyRmI7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQlQ7OEJBVVksS0FBSztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBJbnB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMYW5kaW5nU3BsaXRNZXRhZGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtbGFuZGluZy1zcGxpdCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICA6aG9zdCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAuc3BsaXQtd3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgZ2FwOiA2NHB4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICAuc3BsaXQtd3JhcC0tcmV2ZXJzZWQgLnNwbGl0LXRleHQge1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgIH1cbiAgICAgIC5zcGxpdC13cmFwLS1yZXZlcnNlZCAuc3BsaXQtdmlzdWFsIHtcbiAgICAgICAgb3JkZXI6IDA7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuc3BsaXQtd3JhcCB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgICAgZ2FwOiAzNnB4O1xuICAgICAgICB9XG4gICAgICAgIC5zcGxpdC13cmFwLS1yZXZlcnNlZCAuc3BsaXQtdGV4dCB7XG4gICAgICAgICAgb3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLnNwbGl0LXdyYXAtLXJldmVyc2VkIC5zcGxpdC12aXN1YWwge1xuICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zcGxpdC10ZXh0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAxNnB4O1xuICAgICAgfVxuXG4gICAgICAuc3BsaXQta2lja2VyIHtcbiAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItcHJpbWFyeSwgIzcwMjZkZik7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgLnNwbGl0LXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgyNnB4LCAzdncsIDM4cHgpO1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICBjb2xvcjogIzA5MGYxYjtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyNWVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG5cbiAgICAgIC5zcGxpdC1kZXNjIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS43NTtcbiAgICAgICAgY29sb3I6ICMzNTRjNjk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgLnNwbGl0LXZpc3VhbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgICAgIC5zcGxpdC10aXRsZSB7XG4gICAgICAgICAgY29sb3I6ICNmMGVhZmY7XG4gICAgICAgIH1cbiAgICAgICAgLnNwbGl0LWRlc2Mge1xuICAgICAgICAgIGNvbG9yOiAjYTBiNGM4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICA6aG9zdC1jb250ZXh0KGJvZHkuZGFyaykgLnNwbGl0LXRpdGxlLFxuICAgICAgOmhvc3QtY29udGV4dChodG1sLmlvbi1wYWxldHRlLWRhcmspIC5zcGxpdC10aXRsZSxcbiAgICAgIDpob3N0LWNvbnRleHQoW2RhdGEtdGhlbWU9J2RhcmsnXSkgLnNwbGl0LXRpdGxlIHtcbiAgICAgICAgY29sb3I6ICNmMGVhZmY7XG4gICAgICB9XG4gICAgICA6aG9zdC1jb250ZXh0KGJvZHkuZGFyaykgLnNwbGl0LWRlc2MsXG4gICAgICA6aG9zdC1jb250ZXh0KGh0bWwuaW9uLXBhbGV0dGUtZGFyaykgLnNwbGl0LWRlc2MsXG4gICAgICA6aG9zdC1jb250ZXh0KFtkYXRhLXRoZW1lPSdkYXJrJ10pIC5zcGxpdC1kZXNjIHtcbiAgICAgICAgY29sb3I6ICNhMGI0Yzg7XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwic3BsaXQtd3JhcFwiIFtjbGFzcy5zcGxpdC13cmFwLS1yZXZlcnNlZF09XCJwKCkucmV2ZXJzZWRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzcGxpdC10ZXh0XCI+XG4gICAgICAgIEBpZiAocCgpLmtpY2tlcikge1xuICAgICAgICAgIDxwIGNsYXNzPVwic3BsaXQta2lja2VyXCI+e3sgcCgpLmtpY2tlciB9fTwvcD5cbiAgICAgICAgfVxuICAgICAgICA8aDIgY2xhc3M9XCJzcGxpdC10aXRsZVwiPnt7IHAoKS50aXRsZSB9fTwvaDI+XG4gICAgICAgIEBpZiAocCgpLmRlc2NyaXB0aW9uKSB7XG4gICAgICAgICAgPHAgY2xhc3M9XCJzcGxpdC1kZXNjXCI+e3sgcCgpLmRlc2NyaXB0aW9uIH19PC9wPlxuICAgICAgICB9XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlthY3Rpb25zXVwiIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzcGxpdC12aXN1YWxcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3Zpc3VhbF1cIiAvPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIExhbmRpbmdTcGxpdENvbXBvbmVudCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJvcHNfID0gc2lnbmFsPExhbmRpbmdTcGxpdE1ldGFkYXRhPihcbiAgICB7IHRpdGxlOiAnJyB9LFxuICAgIHtcbiAgICAgIGVxdWFsOiAoYSwgYikgPT4gYSA9PT0gYiB8fCBKU09OLnN0cmluZ2lmeShhKSA9PT0gSlNPTi5zdHJpbmdpZnkoYiksXG4gICAgfVxuICApO1xuXG4gIEBJbnB1dCgpIHNldCBwcm9wcyh2OiBMYW5kaW5nU3BsaXRNZXRhZGF0YSkge1xuICAgIHRoaXMucHJvcHNfLnNldCh2KTtcbiAgfVxuXG4gIHJlYWRvbmx5IHAgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnByb3BzXygpKTtcbn1cbiJdfQ==
|
|
@@ -3,7 +3,9 @@ import { Component, computed, Input, signal } from '@angular/core';
|
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export class LandingStepsComponent {
|
|
5
5
|
constructor() {
|
|
6
|
-
this.props_ = signal({ steps: [] }
|
|
6
|
+
this.props_ = signal({ steps: [] }, {
|
|
7
|
+
equal: (a, b) => a === b || JSON.stringify(a) === JSON.stringify(b),
|
|
8
|
+
});
|
|
7
9
|
this.p = computed(() => this.props_());
|
|
8
10
|
this.cols = computed(() => this.p().columns ?? 3);
|
|
9
11
|
this.accentColor = computed(() => this.p().accentColor ?? '');
|
|
@@ -40,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
40
42
|
}], propDecorators: { props: [{
|
|
41
43
|
type: Input
|
|
42
44
|
}] } });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZGluZy1zdGVwcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2xhbmRpbmctc3RlcHMvbGFuZGluZy1zdGVwcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBaUduRSxNQUFNLE9BQU8scUJBQXFCO0lBOUZsQztRQStGbUIsV0FBTSxHQUFHLE1BQU0sQ0FDOUIsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQ2I7WUFDRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7U0FDcEUsQ0FDRixDQUFDO1FBTU8sTUFBQyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNsQyxTQUFJLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDN0MsZ0JBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUMsQ0FBQztLQUNuRTtJQVBDLElBQWEsS0FBSyxDQUFDLENBQXVCO1FBQ3hDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7K0dBVlUscUJBQXFCO21HQUFyQixxQkFBcUIseUdBWnRCOzs7Ozs7Ozs7O0dBVVQsbXVDQXpGUyxZQUFZOzs0RkEyRlgscUJBQXFCO2tCQTlGakMsU0FBUzsrQkFDRSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDLFlBK0ViOzs7Ozs7Ozs7O0dBVVQ7OEJBVVksS0FBSztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBJbnB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMYW5kaW5nU3RlcHNNZXRhZGF0YSB9IGZyb20gJy4vdHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtbGFuZGluZy1zdGVwcycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICA6aG9zdCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAuc3RlcHMtZ3JpZCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgIGdhcDogMzJweDtcbiAgICAgIH1cbiAgICAgIC5zdGVwcy1ncmlkLmNvbHMtMiB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICB9XG4gICAgICAuc3RlcHMtZ3JpZC5jb2xzLTQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLnN0ZXBzLWdyaWQsXG4gICAgICAgIC5zdGVwcy1ncmlkLmNvbHMtMixcbiAgICAgICAgLnN0ZXBzLWdyaWQuY29scy00IHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgICBnYXA6IDI0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnN0ZXAge1xuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWFjY2VudCwgdmFyKC0taW9uLWNvbG9yLXByaW1hcnksICM3MDI2ZGYpKTtcbiAgICAgIH1cblxuICAgICAgLnN0ZXBfX251bSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LWZhbWlseTogdWktbW9ub3NwYWNlLCAnSmV0QnJhaW5zIE1vbm8nLCBtb25vc3BhY2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6IHZhcigtLWFjY2VudCwgdmFyKC0taW9uLWNvbG9yLXByaW1hcnksICM3MDI2ZGYpKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTRweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgIH1cblxuICAgICAgLnN0ZXBfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogIzA5MGYxYjtcbiAgICAgICAgbWFyZ2luOiAwIDAgOHB4IDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICAgIH1cblxuICAgICAgLnN0ZXBfX2Rlc2Mge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY1O1xuICAgICAgICBjb2xvcjogIzM1NGM2OTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgICAgIC5zdGVwX190aXRsZSB7XG4gICAgICAgICAgY29sb3I6ICNmMGVhZmY7XG4gICAgICAgIH1cbiAgICAgICAgLnN0ZXBfX2Rlc2Mge1xuICAgICAgICAgIGNvbG9yOiAjYTBiNGM4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICA6aG9zdC1jb250ZXh0KGJvZHkuZGFyaykgLnN0ZXBfX3RpdGxlLFxuICAgICAgOmhvc3QtY29udGV4dChodG1sLmlvbi1wYWxldHRlLWRhcmspIC5zdGVwX190aXRsZSxcbiAgICAgIDpob3N0LWNvbnRleHQoW2RhdGEtdGhlbWU9J2RhcmsnXSkgLnN0ZXBfX3RpdGxlIHtcbiAgICAgICAgY29sb3I6ICNmMGVhZmY7XG4gICAgICB9XG4gICAgICA6aG9zdC1jb250ZXh0KGJvZHkuZGFyaykgLnN0ZXBfX2Rlc2MsXG4gICAgICA6aG9zdC1jb250ZXh0KGh0bWwuaW9uLXBhbGV0dGUtZGFyaykgLnN0ZXBfX2Rlc2MsXG4gICAgICA6aG9zdC1jb250ZXh0KFtkYXRhLXRoZW1lPSdkYXJrJ10pIC5zdGVwX19kZXNjIHtcbiAgICAgICAgY29sb3I6ICNhMGI0Yzg7XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwic3RlcHMtZ3JpZFwiIFtjbGFzcy5jb2xzLTJdPVwiY29scygpID09PSAyXCIgW2NsYXNzLmNvbHMtNF09XCJjb2xzKCkgPT09IDRcIj5cbiAgICAgIEBmb3IgKHN0ZXAgb2YgcCgpLnN0ZXBzOyB0cmFjayBzdGVwLnRpdGxlOyBsZXQgaSA9ICRpbmRleCkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwic3RlcFwiIFtzdHlsZS4tLWFjY2VudF09XCJhY2NlbnRDb2xvcigpXCI+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdGVwX19udW1cIj4we3sgaSArIDEgfX08L3NwYW4+XG4gICAgICAgICAgPGgzIGNsYXNzPVwic3RlcF9fdGl0bGVcIj57eyBzdGVwLnRpdGxlIH19PC9oMz5cbiAgICAgICAgICA8cCBjbGFzcz1cInN0ZXBfX2Rlc2NcIj57eyBzdGVwLmRlc2NyaXB0aW9uIH19PC9wPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgTGFuZGluZ1N0ZXBzQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSByZWFkb25seSBwcm9wc18gPSBzaWduYWw8TGFuZGluZ1N0ZXBzTWV0YWRhdGE+KFxuICAgIHsgc3RlcHM6IFtdIH0sXG4gICAge1xuICAgICAgZXF1YWw6IChhLCBiKSA9PiBhID09PSBiIHx8IEpTT04uc3RyaW5naWZ5KGEpID09PSBKU09OLnN0cmluZ2lmeShiKSxcbiAgICB9XG4gICk7XG5cbiAgQElucHV0KCkgc2V0IHByb3BzKHY6IExhbmRpbmdTdGVwc01ldGFkYXRhKSB7XG4gICAgdGhpcy5wcm9wc18uc2V0KHYpO1xuICB9XG5cbiAgcmVhZG9ubHkgcCA9IGNvbXB1dGVkKCgpID0+IHRoaXMucHJvcHNfKCkpO1xuICByZWFkb25seSBjb2xzID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5wKCkuY29sdW1ucyA/PyAzKTtcbiAgcmVhZG9ubHkgYWNjZW50Q29sb3IgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnAoKS5hY2NlbnRDb2xvciA/PyAnJyk7XG59XG4iXX0=
|