@sarasanalytics-com/design-system 0.0.19 → 0.0.20
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/interfaces/card-carousel-interface.mjs +2 -0
- package/esm2022/interfaces/guide-card-interface.mjs +2 -0
- package/esm2022/interfaces/option-interface.mjs +2 -0
- package/esm2022/interfaces/toast-interface.mjs +2 -0
- package/esm2022/lib/avatar/avatar.component.mjs +2 -2
- package/esm2022/lib/card/card-body/card-body.component.mjs +11 -0
- package/esm2022/lib/card/card-custom-header/card-custom-header.component.mjs +11 -0
- package/esm2022/lib/card/card.component.mjs +27 -3
- package/esm2022/lib/card/guide-card/guide-card.component.mjs +19 -0
- package/esm2022/lib/card-carousel/card-carousel.component.mjs +87 -0
- package/esm2022/lib/form-input/form-input.component.mjs +9 -6
- package/esm2022/lib/icon/icon.component.mjs +7 -3
- package/esm2022/lib/left-nav/left-nav.component.mjs +5 -5
- package/esm2022/lib/progress-bar/progress-bar.component.mjs +29 -0
- package/esm2022/lib/radio-button/radio-button.component.mjs +37 -0
- package/esm2022/lib/toast/toast.component.mjs +9 -9
- package/esm2022/lib/tool-tip/tool-tip.component.mjs +3 -3
- package/esm2022/public-api.mjs +33 -16
- package/esm2022/utils/validators.mjs +19 -3
- package/fesm2022/sarasanalytics-com-design-system.mjs +1067 -844
- package/fesm2022/sarasanalytics-com-design-system.mjs.map +1 -1
- package/interfaces/card-carousel-interface.d.ts +8 -0
- package/interfaces/guide-card-interface.d.ts +4 -0
- package/interfaces/option-interface.d.ts +4 -0
- package/interfaces/toast-interface.d.ts +12 -0
- package/lib/card/card-body/card-body.component.d.ts +5 -0
- package/lib/card/card-custom-header/card-custom-header.component.d.ts +5 -0
- package/lib/card/card.component.d.ts +7 -1
- package/lib/card/guide-card/guide-card.component.d.ts +8 -0
- package/lib/card-carousel/card-carousel.component.d.ts +27 -0
- package/lib/icon/icon.component.d.ts +2 -1
- package/lib/progress-bar/progress-bar.component.d.ts +13 -0
- package/lib/radio-button/radio-button.component.d.ts +14 -0
- package/package.json +1 -1
- package/public-api.d.ts +28 -15
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1jYXJvdXNlbC1pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvaW50ZXJmYWNlcy9jYXJkLWNhcm91c2VsLWludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBDYXJkQ2Fyb3VzZWwge1xuICAgIGlkOiBudW1iZXI7XG4gICAgYXZhdGFySWNvbjogc3RyaW5nO1xuICAgIHRpdGxlOiBzdHJpbmc7XG4gICAgc3VidGl0bGU6IHN0cmluZztcbiAgICBsb2dvSWNvbjogc3RyaW5nO1xuICAgIGJvZHk6IHN0cmluZztcbn0iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZGUtY2FyZC1pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvaW50ZXJmYWNlcy9ndWlkZS1jYXJkLWludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBHdWlkZVN0ZXAge1xuICAgIHRpdGxlOiBzdHJpbmc7XG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG59XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uLWludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9pbnRlcmZhY2VzL29wdGlvbi1pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgT3B0aW9uSW50ZXJmYWNlIHtcbiAgICB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyO1xuICAgIGxhYmVsOiBzdHJpbmc7XG59XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50LWxpYnJhcnkvc3JjL2ludGVyZmFjZXMvdG9hc3QtaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElUb2FzdCB7XG4gICAgZmluaXNoUGVyY2VudGFnZT86IG51bWJlcjtcbiAgICBoZWFkaW5nPzogc3RyaW5nO1xuICAgIHN1YkhlYWRpbmc/OiBzdHJpbmc7XG4gICAgc3RhdHVzSWNvbj86IHN0cmluZztcbiAgICBzdGF0dXM/OiAnc3VjY2VzcycgfCAnZmFpbHVyZScgfCAnY2F1dGlvbicgfCAncG9zaXRpdmUnIHwgJ25lZ2F0aXZlJyB8ICd0ZW50YXRpdmUnO1xuICAgIGZpcnN0QnV0dG9uTmFtZT86IHN0cmluZztcbiAgICBzZWNvbmRCdXR0b25OYW1lPzogc3RyaW5nO1xuICAgIGNsb3NhYmxlPzogYm9vbGVhbjtcbiAgICBmaWxsZWQ/OiBib29sZWFuO1xuICAgIHdpZHRoPzogbnVtYmVyIHwgc3RyaW5nO1xufSJdfQ==
|
|
@@ -33,11 +33,11 @@ export class AvatarComponent {
|
|
|
33
33
|
});
|
|
34
34
|
}
|
|
35
35
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: AvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
36
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: AvatarComponent, isStandalone: true, selector: "sa-avatar", inputs: { id: "id", imagePath: "imagePath", altText: "altText", size: "size" }, outputs: { onClickEvent: "onClickEvent", onMouseInEvent: "onMouseInEvent", onMouseOutEvent: "onMouseOutEvent" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"avatar {{size}}\" (click)=\"avatarClicked($event)\" (mouseenter)=\"mouseEnter($event)\"\n (mouseleave)=\"mouseLeave($event)\">\n <img *ngIf=\"imagePath\" class=\"avatar-img\" alt=\"{{altText}}\" src=\"{{imagePath}}\">\n <p *ngIf=\"!imagePath\" class=\"avatar-img\">{{altText}}</p>\n</div>\n", styles: [".extra-small{--width: var(--medium-24px);--height: var(--medium-24px)}.small{--width: 28px;--height: 28px}.medium{--width: 32px;--height: 32px}.large{--width: 36px;--height: 36px}.extra-large{--width:
|
|
36
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: AvatarComponent, isStandalone: true, selector: "sa-avatar", inputs: { id: "id", imagePath: "imagePath", altText: "altText", size: "size" }, outputs: { onClickEvent: "onClickEvent", onMouseInEvent: "onMouseInEvent", onMouseOutEvent: "onMouseOutEvent" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"avatar {{size}}\" (click)=\"avatarClicked($event)\" (mouseenter)=\"mouseEnter($event)\"\n (mouseleave)=\"mouseLeave($event)\">\n <img *ngIf=\"imagePath\" class=\"avatar-img\" alt=\"{{altText}}\" src=\"{{imagePath}}\">\n <p *ngIf=\"!imagePath\" class=\"avatar-img\">{{altText}}</p>\n</div>\n", styles: [".extra-small{--width: var(--medium-24px);--height: var(--medium-24px)}.small{--width: 28px;--height: 28px}.medium{--width: 32px;--height: 32px}.large{--width: 36px;--height: 36px}.extra-large{--width: 52px;--height: 52px}.avatar{display:flex}.avatar-img{background-color:var(--primary-50);height:var(--height);width:var(--width);border-radius:var(--height);object-fit:cover;font-family:var(--font);font-size:11px;font-weight:500;line-height:var(--height);letter-spacing:.5px;text-align:center;overflow:none}.avatar:hover{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
37
37
|
}
|
|
38
38
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: AvatarComponent, decorators: [{
|
|
39
39
|
type: Component,
|
|
40
|
-
args: [{ selector: 'sa-avatar', standalone: true, imports: [NgIf], template: "<div class=\"avatar {{size}}\" (click)=\"avatarClicked($event)\" (mouseenter)=\"mouseEnter($event)\"\n (mouseleave)=\"mouseLeave($event)\">\n <img *ngIf=\"imagePath\" class=\"avatar-img\" alt=\"{{altText}}\" src=\"{{imagePath}}\">\n <p *ngIf=\"!imagePath\" class=\"avatar-img\">{{altText}}</p>\n</div>\n", styles: [".extra-small{--width: var(--medium-24px);--height: var(--medium-24px)}.small{--width: 28px;--height: 28px}.medium{--width: 32px;--height: 32px}.large{--width: 36px;--height: 36px}.extra-large{--width:
|
|
40
|
+
args: [{ selector: 'sa-avatar', standalone: true, imports: [NgIf], template: "<div class=\"avatar {{size}}\" (click)=\"avatarClicked($event)\" (mouseenter)=\"mouseEnter($event)\"\n (mouseleave)=\"mouseLeave($event)\">\n <img *ngIf=\"imagePath\" class=\"avatar-img\" alt=\"{{altText}}\" src=\"{{imagePath}}\">\n <p *ngIf=\"!imagePath\" class=\"avatar-img\">{{altText}}</p>\n</div>\n", styles: [".extra-small{--width: var(--medium-24px);--height: var(--medium-24px)}.small{--width: 28px;--height: 28px}.medium{--width: 32px;--height: 32px}.large{--width: 36px;--height: 36px}.extra-large{--width: 52px;--height: 52px}.avatar{display:flex}.avatar-img{background-color:var(--primary-50);height:var(--height);width:var(--width);border-radius:var(--height);object-fit:cover;font-family:var(--font);font-size:11px;font-weight:500;line-height:var(--height);letter-spacing:.5px;text-align:center;overflow:none}.avatar:hover{cursor:pointer}\n"] }]
|
|
41
41
|
}], propDecorators: { id: [{
|
|
42
42
|
type: Input
|
|
43
43
|
}], imagePath: [{
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class CardBodyComponent {
|
|
4
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CardBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: CardBodyComponent, isStandalone: true, selector: "lib-card-body", ngImport: i0, template: "<p>card-body works!</p>\n", styles: [""] }); }
|
|
6
|
+
}
|
|
7
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CardBodyComponent, decorators: [{
|
|
8
|
+
type: Component,
|
|
9
|
+
args: [{ selector: 'lib-card-body', standalone: true, imports: [], template: "<p>card-body works!</p>\n" }]
|
|
10
|
+
}] });
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1ib2R5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvY2FyZC9jYXJkLWJvZHkvY2FyZC1ib2R5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvY2FyZC9jYXJkLWJvZHkvY2FyZC1ib2R5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUzFDLE1BQU0sT0FBTyxpQkFBaUI7OEdBQWpCLGlCQUFpQjtrR0FBakIsaUJBQWlCLHlFQ1Q5QiwyQkFDQTs7MkZEUWEsaUJBQWlCO2tCQVA3QixTQUFTOytCQUNFLGVBQWUsY0FDYixJQUFJLFdBQ1AsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItY2FyZC1ib2R5JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW10sXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXJkLWJvZHkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vY2FyZC1ib2R5LmNvbXBvbmVudC5jc3MnXG59KVxuZXhwb3J0IGNsYXNzIENhcmRCb2R5Q29tcG9uZW50IHtcblxufVxuIiwiPHA+Y2FyZC1ib2R5IHdvcmtzITwvcD5cbiJdfQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Component, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class CardCustomHeaderComponent {
|
|
4
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CardCustomHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: CardCustomHeaderComponent, isStandalone: true, selector: "sa-card-title-header", ngImport: i0, template: "<div class=\"sa-card-title-header\"><ng-content></ng-content></div>", styles: [".sa-card-title-header{display:flex;flex-direction:column-reverse;gap:var(--medium-20px)}.sa-card-custom-header-container{display:flex;gap:.625rem;align-items:center}.sa-card-titleIcon{display:flex;align-items:center;margin-left:auto}.sa-card-title-subtitle-container{display:flex;flex-direction:column;gap:.188rem}.sa-card-subtitle{color:var(--text-mediumemphasis);font-family:var(--font);font-size:var(--small-14px);font-style:normal;font-weight:400;line-height:var(--medium-20px);letter-spacing:.25px}.sa-card-custom-title{color:var(--text-highemphasis);font-family:var(--font);font-size:var(--small-16px);font-style:normal;font-weight:600;line-height:var(--medium-24px);letter-spacing:.15px}\n"], encapsulation: i0.ViewEncapsulation.None }); }
|
|
6
|
+
}
|
|
7
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CardCustomHeaderComponent, decorators: [{
|
|
8
|
+
type: Component,
|
|
9
|
+
args: [{ selector: 'sa-card-title-header', standalone: true, imports: [], encapsulation: ViewEncapsulation.None, template: "<div class=\"sa-card-title-header\"><ng-content></ng-content></div>", styles: [".sa-card-title-header{display:flex;flex-direction:column-reverse;gap:var(--medium-20px)}.sa-card-custom-header-container{display:flex;gap:.625rem;align-items:center}.sa-card-titleIcon{display:flex;align-items:center;margin-left:auto}.sa-card-title-subtitle-container{display:flex;flex-direction:column;gap:.188rem}.sa-card-subtitle{color:var(--text-mediumemphasis);font-family:var(--font);font-size:var(--small-14px);font-style:normal;font-weight:400;line-height:var(--medium-20px);letter-spacing:.25px}.sa-card-custom-title{color:var(--text-highemphasis);font-family:var(--font);font-size:var(--small-16px);font-style:normal;font-weight:600;line-height:var(--medium-24px);letter-spacing:.15px}\n"] }]
|
|
10
|
+
}] });
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1jdXN0b20taGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvY2FyZC9jYXJkLWN1c3RvbS1oZWFkZXIvY2FyZC1jdXN0b20taGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvY2FyZC9jYXJkLWN1c3RvbS1oZWFkZXIvY2FyZC1jdXN0b20taGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVTdELE1BQU0sT0FBTyx5QkFBeUI7OEdBQXpCLHlCQUF5QjtrR0FBekIseUJBQXlCLGdGQ1Z0QyxxRUFBaUU7OzJGRFVwRCx5QkFBeUI7a0JBUnJDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBQ3BCLElBQUksV0FDUCxFQUFFLGlCQUdJLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NhLWNhcmQtdGl0bGUtaGVhZGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW10sXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXJkLWN1c3RvbS1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vY2FyZC1jdXN0b20taGVhZGVyLmNvbXBvbmVudC5jc3MnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBDYXJkQ3VzdG9tSGVhZGVyQ29tcG9uZW50IHtcblxufVxuIiwiPGRpdiBjbGFzcz1cInNhLWNhcmQtdGl0bGUtaGVhZGVyXCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvZGl2PiJdfQ==
|
|
@@ -2,15 +2,21 @@ import { CommonModule } from '@angular/common';
|
|
|
2
2
|
import { Component, Input } from '@angular/core';
|
|
3
3
|
import { ChipsComponent } from '../chips/chips.component';
|
|
4
4
|
import { IconComponent } from '../icon/icon.component';
|
|
5
|
+
import { AvatarComponent } from "../avatar/avatar.component";
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
import * as i1 from "@angular/common";
|
|
7
8
|
export class CardComponent {
|
|
8
9
|
constructor() {
|
|
9
10
|
this.title = '';
|
|
11
|
+
this.showCardHeader = false;
|
|
12
|
+
this.showCardBody = false;
|
|
13
|
+
this.customWrapperClass = '';
|
|
10
14
|
this.chip = null;
|
|
11
15
|
this.body = '';
|
|
12
16
|
this.avatar = '';
|
|
13
17
|
this.icon = '';
|
|
18
|
+
this.subtitle = '';
|
|
19
|
+
this.logoIcon = '';
|
|
14
20
|
this.column = false;
|
|
15
21
|
this.cardStyles = {};
|
|
16
22
|
}
|
|
@@ -20,14 +26,23 @@ export class CardComponent {
|
|
|
20
26
|
}
|
|
21
27
|
}
|
|
22
28
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.4", type: CardComponent, isStandalone: true, selector: "sa-card", inputs: { title: "title", chip: "chip", body: "body", avatar: "avatar", icon: "icon", iconSize: "iconSize", width: "width", column: "column" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"sa-card\" [ngStyle]=\"cardStyles\">\n <div class=\"sa-card-wrapper\" [ngClass]=\"column ? 'column' : ''\">\n <div class=\"\" [ngClass]=\"avatar ? 'sa-card-img' : 'sa-card-icon'\">\n @if(avatar){\n <
|
|
29
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.4", type: CardComponent, isStandalone: true, selector: "sa-card", inputs: { title: "title", showCardHeader: "showCardHeader", showCardBody: "showCardBody", customWrapperClass: "customWrapperClass", chip: "chip", body: "body", avatar: "avatar", avatarSize: "avatarSize", icon: "icon", iconSize: "iconSize", subtitle: "subtitle", logoIcon: "logoIcon", width: "width", column: "column" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"sa-card\" [ngStyle]=\"cardStyles\">\n <div class=\"sa-card-wrapper\" [ngClass]=\"[column ? 'column' : '', customWrapperClass]\">\n <div class=\"\" [ngClass]=\"avatar ? 'sa-card-img' : 'sa-card-icon'\">\n @if(avatar){\n <sa-avatar [imagePath]=\"avatar\" [size]=\"avatarSize\"></sa-avatar>\n }@else if(icon){\n <sa-icon [icon]=\"icon\" [size]=\"iconSize\"></sa-icon>\n }@else{\n <ng-content select=\"sa-card-icon\"></ng-content>\n }\n @if(column){\n <ng-content select=\"sa-card-title-actions\"></ng-content>\n }\n </div>\n <div class=\"sa-card-container\" [ngClass]=\"showCardHeader ? 'sa-card-custom-container' : ''\">\n @if(showCardHeader){\n <ng-content select=\"sa-card-title-header\"></ng-content>\n @if (showCardBody && body) {\n <div class=\"custom-divider\"></div>\n }\n }\n @else if(title){\n <div class=\"sa-card-title-container\">\n <div class=\"sa-card-title\">{{title}}</div>\n @if(chip){\n <sa-chip [text]=\"chip.text\" [type]=\"chip.type\" [state]=\"chip.state\"></sa-chip>\n }\n <ng-content select=\"sa-card-title-actions\"></ng-content>\n\n </div>\n }\n @if(showCardBody && body){\n <div class=\"sa-card-body\">\n {{body}}\n </div>\n }\n <ng-content select=\"sa-card-footer-actions\"></ng-content>\n </div>\n </div>\n</div>", styles: ["*{font-family:var(--font)}.sa-card-wrapper{display:flex;border:1px solid var(--grey-50);border-radius:6px;padding:12px;background:var(--structural-white);gap:var(--small-12px)}.sa-card-wrapper.column{flex-direction:column}.sa-card-wrapper.sa-card-secondary-wrapper{gap:var(--medium-20px, 20px)}.sa-card-wrapper.sa-card-custom-wrapper{gap:0}.column .sa-card-img,.column .sa-card-icon{display:flex;justify-content:space-between}.sa-card-img img{height:auto;width:200px}.sa-card-icon span{background-repeat:no-repeat;background-size:cover;background-position:center;display:block;height:24px;width:24px}.sa-card-container{display:flex;flex-direction:column;justify-content:space-between;width:-webkit-fill-available;gap:.188rem}.sa-card-title-container{display:flex;justify-content:space-between}.column .sa-card-title-container{flex-direction:column;margin-bottom:8px}.sa-card-title{font-size:16px;font-weight:600;line-height:24px;margin-bottom:4px}.sa-card-body{font-size:14px;font-weight:400;line-height:20px;letter-spacing:.25px;text-align:left;color:var(--grey-300);flex:1}.sa-card-container .custom-divider{width:100%;height:.063rem;background-color:#ccc}.sa-card-custom-container{gap:var(--medium-20px, 20px)}.sa-card-custom-wrapper{padding:1.25rem;border-radius:var(--small-8px, 8px);border:1px solid var(--grey-100, #EAECF0);background:#fff}.sa-card-secondary-wrapper .sa-card-icon{margin:0}.sa-card-secondary-wrapper{gap:var(--medium-20px, 20px);padding:var(--medium-20px, 20px);border-radius:var(--small-8px, 8px);border:1px solid var(--grey-100, #EAECF0);background:#fff}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: ChipsComponent, selector: "sa-chip", inputs: ["id", "iconPath", "text", "type", "state", "filling", "iconPosition", "largeStateIcon", "largeStateText"], outputs: ["onClickEvent"] }, { kind: "component", type: IconComponent, selector: "sa-icon", inputs: ["img", "icon", "size", "color", "iconPath", "iconUrl", "customClass"] }, { kind: "component", type: AvatarComponent, selector: "sa-avatar", inputs: ["id", "imagePath", "altText", "size"], outputs: ["onClickEvent", "onMouseInEvent", "onMouseOutEvent"] }] }); }
|
|
24
30
|
}
|
|
25
31
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CardComponent, decorators: [{
|
|
26
32
|
type: Component,
|
|
27
|
-
args: [{ selector: 'sa-card', standalone: true, imports: [CommonModule, ChipsComponent, IconComponent], template: "<div class=\"sa-card\" [ngStyle]=\"cardStyles\">\n <div class=\"sa-card-wrapper\" [ngClass]=\"column ? 'column' : ''\">\n <div class=\"\" [ngClass]=\"avatar ? 'sa-card-img' : 'sa-card-icon'\">\n @if(avatar){\n <
|
|
33
|
+
args: [{ selector: 'sa-card', standalone: true, imports: [CommonModule, ChipsComponent, IconComponent, AvatarComponent], template: "<div class=\"sa-card\" [ngStyle]=\"cardStyles\">\n <div class=\"sa-card-wrapper\" [ngClass]=\"[column ? 'column' : '', customWrapperClass]\">\n <div class=\"\" [ngClass]=\"avatar ? 'sa-card-img' : 'sa-card-icon'\">\n @if(avatar){\n <sa-avatar [imagePath]=\"avatar\" [size]=\"avatarSize\"></sa-avatar>\n }@else if(icon){\n <sa-icon [icon]=\"icon\" [size]=\"iconSize\"></sa-icon>\n }@else{\n <ng-content select=\"sa-card-icon\"></ng-content>\n }\n @if(column){\n <ng-content select=\"sa-card-title-actions\"></ng-content>\n }\n </div>\n <div class=\"sa-card-container\" [ngClass]=\"showCardHeader ? 'sa-card-custom-container' : ''\">\n @if(showCardHeader){\n <ng-content select=\"sa-card-title-header\"></ng-content>\n @if (showCardBody && body) {\n <div class=\"custom-divider\"></div>\n }\n }\n @else if(title){\n <div class=\"sa-card-title-container\">\n <div class=\"sa-card-title\">{{title}}</div>\n @if(chip){\n <sa-chip [text]=\"chip.text\" [type]=\"chip.type\" [state]=\"chip.state\"></sa-chip>\n }\n <ng-content select=\"sa-card-title-actions\"></ng-content>\n\n </div>\n }\n @if(showCardBody && body){\n <div class=\"sa-card-body\">\n {{body}}\n </div>\n }\n <ng-content select=\"sa-card-footer-actions\"></ng-content>\n </div>\n </div>\n</div>", styles: ["*{font-family:var(--font)}.sa-card-wrapper{display:flex;border:1px solid var(--grey-50);border-radius:6px;padding:12px;background:var(--structural-white);gap:var(--small-12px)}.sa-card-wrapper.column{flex-direction:column}.sa-card-wrapper.sa-card-secondary-wrapper{gap:var(--medium-20px, 20px)}.sa-card-wrapper.sa-card-custom-wrapper{gap:0}.column .sa-card-img,.column .sa-card-icon{display:flex;justify-content:space-between}.sa-card-img img{height:auto;width:200px}.sa-card-icon span{background-repeat:no-repeat;background-size:cover;background-position:center;display:block;height:24px;width:24px}.sa-card-container{display:flex;flex-direction:column;justify-content:space-between;width:-webkit-fill-available;gap:.188rem}.sa-card-title-container{display:flex;justify-content:space-between}.column .sa-card-title-container{flex-direction:column;margin-bottom:8px}.sa-card-title{font-size:16px;font-weight:600;line-height:24px;margin-bottom:4px}.sa-card-body{font-size:14px;font-weight:400;line-height:20px;letter-spacing:.25px;text-align:left;color:var(--grey-300);flex:1}.sa-card-container .custom-divider{width:100%;height:.063rem;background-color:#ccc}.sa-card-custom-container{gap:var(--medium-20px, 20px)}.sa-card-custom-wrapper{padding:1.25rem;border-radius:var(--small-8px, 8px);border:1px solid var(--grey-100, #EAECF0);background:#fff}.sa-card-secondary-wrapper .sa-card-icon{margin:0}.sa-card-secondary-wrapper{gap:var(--medium-20px, 20px);padding:var(--medium-20px, 20px);border-radius:var(--small-8px, 8px);border:1px solid var(--grey-100, #EAECF0);background:#fff}\n"] }]
|
|
28
34
|
}], propDecorators: { title: [{
|
|
29
35
|
type: Input,
|
|
30
36
|
args: ['title']
|
|
37
|
+
}], showCardHeader: [{
|
|
38
|
+
type: Input,
|
|
39
|
+
args: ['showCardHeader']
|
|
40
|
+
}], showCardBody: [{
|
|
41
|
+
type: Input,
|
|
42
|
+
args: ['showCardBody']
|
|
43
|
+
}], customWrapperClass: [{
|
|
44
|
+
type: Input,
|
|
45
|
+
args: ['customWrapperClass']
|
|
31
46
|
}], chip: [{
|
|
32
47
|
type: Input,
|
|
33
48
|
args: ['chip']
|
|
@@ -37,12 +52,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
|
|
|
37
52
|
}], avatar: [{
|
|
38
53
|
type: Input,
|
|
39
54
|
args: ['avatar']
|
|
55
|
+
}], avatarSize: [{
|
|
56
|
+
type: Input,
|
|
57
|
+
args: ['avatarSize']
|
|
40
58
|
}], icon: [{
|
|
41
59
|
type: Input,
|
|
42
60
|
args: ['icon']
|
|
43
61
|
}], iconSize: [{
|
|
44
62
|
type: Input,
|
|
45
63
|
args: ['iconSize']
|
|
64
|
+
}], subtitle: [{
|
|
65
|
+
type: Input,
|
|
66
|
+
args: ['subtitle']
|
|
67
|
+
}], logoIcon: [{
|
|
68
|
+
type: Input,
|
|
69
|
+
args: ['logoIcon']
|
|
46
70
|
}], width: [{
|
|
47
71
|
type: Input,
|
|
48
72
|
args: ['width']
|
|
@@ -50,4 +74,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
|
|
|
50
74
|
type: Input,
|
|
51
75
|
args: ['column']
|
|
52
76
|
}] } });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2NhcmQvY2FyZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2NhcmQvY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7QUFTN0QsTUFBTSxPQUFPLGFBQWE7SUFQMUI7UUFRa0IsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNWLG1CQUFjLEdBQVksS0FBSyxDQUFDO1FBQ2xDLGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBQ3hCLHVCQUFrQixHQUFXLEVBQUUsQ0FBQztRQUM5QyxTQUFJLEdBQXlCLElBQUksQ0FBQztRQUNsQyxTQUFJLEdBQVcsRUFBRSxDQUFDO1FBQ2hCLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFHdEIsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUdkLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUd4QixXQUFNLEdBQVksS0FBSyxDQUFDO1FBRXpDLGVBQVUsR0FBUSxFQUFFLENBQUM7S0FPdEI7SUFMQyxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUM7WUFDbkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxZQUFZLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsWUFBWSxHQUFHLEdBQUcsQ0FBQztRQUN4SixDQUFDO0lBQ0gsQ0FBQzs4R0F6QlUsYUFBYTtrR0FBYixhQUFhLHdaQ2QxQixxbkRBdUNNLHVtREQ3Qk0sWUFBWSxrTkFBRSxjQUFjLG1NQUFFLGFBQWEsb0lBQUUsZUFBZTs7MkZBSTNELGFBQWE7a0JBUHpCLFNBQVM7K0JBQ0UsU0FBUyxjQUNQLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLGVBQWUsQ0FBQzs4QkFLdkQsS0FBSztzQkFBcEIsS0FBSzt1QkFBQyxPQUFPO2dCQUNXLGNBQWM7c0JBQXRDLEtBQUs7dUJBQUMsZ0JBQWdCO2dCQUNBLFlBQVk7c0JBQWxDLEtBQUs7dUJBQUMsY0FBYztnQkFDUSxrQkFBa0I7c0JBQTlDLEtBQUs7dUJBQUMsb0JBQW9CO2dCQUNaLElBQUk7c0JBQWxCLEtBQUs7dUJBQUMsTUFBTTtnQkFDRSxJQUFJO3NCQUFsQixLQUFLO3VCQUFDLE1BQU07Z0JBQ0ksTUFBTTtzQkFBdEIsS0FBSzt1QkFBQyxRQUFRO2dCQUNNLFVBQVU7c0JBQTlCLEtBQUs7dUJBQUMsWUFBWTtnQkFFSixJQUFJO3NCQUFsQixLQUFLO3VCQUFDLE1BQU07Z0JBQ00sUUFBUTtzQkFBMUIsS0FBSzt1QkFBQyxVQUFVO2dCQUVFLFFBQVE7c0JBQTFCLEtBQUs7dUJBQUMsVUFBVTtnQkFDRSxRQUFRO3NCQUExQixLQUFLO3VCQUFDLFVBQVU7Z0JBRUQsS0FBSztzQkFBcEIsS0FBSzt1QkFBQyxPQUFPO2dCQUNHLE1BQU07c0JBQXRCLEtBQUs7dUJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDaGlwc0NvbXBvbmVudCB9IGZyb20gJy4uL2NoaXBzL2NoaXBzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDaGlwSW50ZXJmYWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9jaGlwLWludGVyZmFjZSc7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vaWNvbi9pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBdmF0YXJDb21wb25lbnQgfSBmcm9tIFwiLi4vYXZhdGFyL2F2YXRhci5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2EtY2FyZCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIENoaXBzQ29tcG9uZW50LCBJY29uQ29tcG9uZW50LCBBdmF0YXJDb21wb25lbnRdLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9jYXJkLmNvbXBvbmVudC5jc3MnXG59KVxuZXhwb3J0IGNsYXNzIENhcmRDb21wb25lbnQge1xuICBASW5wdXQoJ3RpdGxlJykgdGl0bGU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoJ3Nob3dDYXJkSGVhZGVyJykgc2hvd0NhcmRIZWFkZXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCdzaG93Q2FyZEJvZHknKSBzaG93Q2FyZEJvZHk6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCdjdXN0b21XcmFwcGVyQ2xhc3MnKSBjdXN0b21XcmFwcGVyQ2xhc3M6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoJ2NoaXAnKSBjaGlwOiBDaGlwSW50ZXJmYWNlIHwgbnVsbCA9IG51bGw7XG4gIEBJbnB1dCgnYm9keScpIGJvZHk6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoJ2F2YXRhcicpIGF2YXRhcjogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgnYXZhdGFyU2l6ZScpIGF2YXRhclNpemU6IHN0cmluZztcblxuICBASW5wdXQoJ2ljb24nKSBpY29uOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCdpY29uU2l6ZScpIGljb25TaXplOiBzdHJpbmc7XG5cbiAgQElucHV0KCdzdWJ0aXRsZScpIHN1YnRpdGxlOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCdsb2dvSWNvbicpIGxvZ29JY29uOiBzdHJpbmcgPSAnJztcblxuICBASW5wdXQoJ3dpZHRoJykgd2lkdGg6IHN0cmluZyB8IG51bWJlcjtcbiAgQElucHV0KCdjb2x1bW4nKSBjb2x1bW46IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjYXJkU3R5bGVzOiBhbnkgPSB7fTtcblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXNbJ3dpZHRoJ10/LmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy5jYXJkU3R5bGVzWyd3aWR0aCddID0gdHlwZW9mIGNoYW5nZXNbJ3dpZHRoJ10/LmN1cnJlbnRWYWx1ZSA9PT0gJ3N0cmluZycgPyBjaGFuZ2VzWyd3aWR0aCddPy5jdXJyZW50VmFsdWUgOiBjaGFuZ2VzWyd3aWR0aCddPy5jdXJyZW50VmFsdWUgKyAnJSc7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2EtY2FyZFwiIFtuZ1N0eWxlXT1cImNhcmRTdHlsZXNcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2EtY2FyZC13cmFwcGVyXCIgW25nQ2xhc3NdPVwiW2NvbHVtbiA/ICdjb2x1bW4nIDogJycsIGN1c3RvbVdyYXBwZXJDbGFzc11cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIlwiIFtuZ0NsYXNzXT1cImF2YXRhciA/ICdzYS1jYXJkLWltZycgOiAnc2EtY2FyZC1pY29uJ1wiPlxuICAgICAgICAgICAgQGlmKGF2YXRhcil7XG4gICAgICAgICAgICA8c2EtYXZhdGFyIFtpbWFnZVBhdGhdPVwiYXZhdGFyXCIgW3NpemVdPVwiYXZhdGFyU2l6ZVwiPjwvc2EtYXZhdGFyPlxuICAgICAgICAgICAgfUBlbHNlIGlmKGljb24pe1xuICAgICAgICAgICAgPHNhLWljb24gW2ljb25dPVwiaWNvblwiIFtzaXplXT1cImljb25TaXplXCI+PC9zYS1pY29uPlxuICAgICAgICAgICAgfUBlbHNle1xuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic2EtY2FyZC1pY29uXCI+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmKGNvbHVtbil7XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJzYS1jYXJkLXRpdGxlLWFjdGlvbnNcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2EtY2FyZC1jb250YWluZXJcIiBbbmdDbGFzc109XCJzaG93Q2FyZEhlYWRlciA/ICdzYS1jYXJkLWN1c3RvbS1jb250YWluZXInIDogJydcIj5cbiAgICAgICAgICAgIEBpZihzaG93Q2FyZEhlYWRlcil7XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJzYS1jYXJkLXRpdGxlLWhlYWRlclwiPjwvbmctY29udGVudD5cbiAgICAgICAgICAgIEBpZiAoc2hvd0NhcmRCb2R5ICYmIGJvZHkpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjdXN0b20tZGl2aWRlclwiPjwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGVsc2UgaWYodGl0bGUpe1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNhLWNhcmQtdGl0bGUtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNhLWNhcmQtdGl0bGVcIj57e3RpdGxlfX08L2Rpdj5cbiAgICAgICAgICAgICAgICBAaWYoY2hpcCl7XG4gICAgICAgICAgICAgICAgPHNhLWNoaXAgW3RleHRdPVwiY2hpcC50ZXh0XCIgW3R5cGVdPVwiY2hpcC50eXBlXCIgW3N0YXRlXT1cImNoaXAuc3RhdGVcIj48L3NhLWNoaXA+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNhLWNhcmQtdGl0bGUtYWN0aW9uc1wiPjwvbmctY29udGVudD5cblxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYoc2hvd0NhcmRCb2R5ICYmIGJvZHkpe1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNhLWNhcmQtYm9keVwiPlxuICAgICAgICAgICAgICAgIHt7Ym9keX19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNhLWNhcmQtZm9vdGVyLWFjdGlvbnNcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Component, Input, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class GuideCardComponent {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.title = '';
|
|
6
|
+
this.steps = [];
|
|
7
|
+
}
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: GuideCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.4", type: GuideCardComponent, isStandalone: true, selector: "sa-guide-card", inputs: { title: "title", steps: "steps" }, ngImport: i0, template: "<div class=\"guide-container\">\n <div class=\"guide-header\">\n <p class=\"guide-header-title\">{{ title }}</p>\n </div>\n <div class=\"guide-content\">\n @for (step of steps; track step; let last = $last) {\n <div class=\"step\">\n <div class=\"step-indicator\">\n <div class=\"step-circle\"></div>\n\n @if (!last) {\n <div class=\"step-line\"></div>\n }\n </div>\n <div class=\"step-content\">\n <p class=\"step-title\">{{ step.title }}</p>\n @if (step?.description) {\n <p class=\"step-description\">{{ step.description }}</p>\n }\n </div>\n </div>\n }\n </div>\n</div>", styles: [".guide-container{max-width:47.5rem;margin:0 auto;background-color:var(--structural-white);border:.0625rem solid var(--grey-100, #eaecf0);border-radius:.5rem;overflow:hidden;padding:1.75rem 1.875rem;display:flex;flex-direction:column;gap:2.25rem}.guide-header{border-bottom:.0625rem solid var(--grey-100, #eaecf0);position:relative}.guide-header h1{font-size:1.5rem;color:var(--text-highemphasis, #1C1B20);margin:0}.guide-content{display:flex;flex-direction:column;gap:2.625rem}.step{display:flex}.guide-header .guide-header-title,.step-content .step-title{color:var(--text-highemphasis, #1C1B20);font-family:var(--font-roboto, \"Roboto\");font-size:var(--small-16px);font-style:normal;font-weight:400;line-height:1.5rem;letter-spacing:.03125rem}.step-content .step-description{color:var(--text-lowemphasis, #98A2A3)}.step-indicator{margin-right:1.1575rem;margin-top:.125rem}.step-circle{width:.5rem;height:.5rem;border-radius:50%;border:.25rem solid var(--primary-500);margin:.125rem auto 0}.step-line{width:.125rem;height:calc(100% + 1.75rem);background-color:var(--primary-500);margin:0 auto}.step-content h2{font-size:1.125rem;color:var(--text-highemphasis, #1C1B20);margin:0 0 .625rem}.step-content p{font-size:.875rem;color:var(--text-highemphasis, #1C1B20);margin:0;line-height:1.5}\n"], encapsulation: i0.ViewEncapsulation.None }); }
|
|
10
|
+
}
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: GuideCardComponent, decorators: [{
|
|
12
|
+
type: Component,
|
|
13
|
+
args: [{ selector: 'sa-guide-card', standalone: true, imports: [], encapsulation: ViewEncapsulation.None, template: "<div class=\"guide-container\">\n <div class=\"guide-header\">\n <p class=\"guide-header-title\">{{ title }}</p>\n </div>\n <div class=\"guide-content\">\n @for (step of steps; track step; let last = $last) {\n <div class=\"step\">\n <div class=\"step-indicator\">\n <div class=\"step-circle\"></div>\n\n @if (!last) {\n <div class=\"step-line\"></div>\n }\n </div>\n <div class=\"step-content\">\n <p class=\"step-title\">{{ step.title }}</p>\n @if (step?.description) {\n <p class=\"step-description\">{{ step.description }}</p>\n }\n </div>\n </div>\n }\n </div>\n</div>", styles: [".guide-container{max-width:47.5rem;margin:0 auto;background-color:var(--structural-white);border:.0625rem solid var(--grey-100, #eaecf0);border-radius:.5rem;overflow:hidden;padding:1.75rem 1.875rem;display:flex;flex-direction:column;gap:2.25rem}.guide-header{border-bottom:.0625rem solid var(--grey-100, #eaecf0);position:relative}.guide-header h1{font-size:1.5rem;color:var(--text-highemphasis, #1C1B20);margin:0}.guide-content{display:flex;flex-direction:column;gap:2.625rem}.step{display:flex}.guide-header .guide-header-title,.step-content .step-title{color:var(--text-highemphasis, #1C1B20);font-family:var(--font-roboto, \"Roboto\");font-size:var(--small-16px);font-style:normal;font-weight:400;line-height:1.5rem;letter-spacing:.03125rem}.step-content .step-description{color:var(--text-lowemphasis, #98A2A3)}.step-indicator{margin-right:1.1575rem;margin-top:.125rem}.step-circle{width:.5rem;height:.5rem;border-radius:50%;border:.25rem solid var(--primary-500);margin:.125rem auto 0}.step-line{width:.125rem;height:calc(100% + 1.75rem);background-color:var(--primary-500);margin:0 auto}.step-content h2{font-size:1.125rem;color:var(--text-highemphasis, #1C1B20);margin:0 0 .625rem}.step-content p{font-size:.875rem;color:var(--text-highemphasis, #1C1B20);margin:0;line-height:1.5}\n"] }]
|
|
14
|
+
}], propDecorators: { title: [{
|
|
15
|
+
type: Input
|
|
16
|
+
}], steps: [{
|
|
17
|
+
type: Input
|
|
18
|
+
}] } });
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpZGUtY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2NhcmQvZ3VpZGUtY2FyZC9ndWlkZS1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudC1saWJyYXJ5L3NyYy9saWIvY2FyZC9ndWlkZS1jYXJkL2d1aWRlLWNhcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBYXBFLE1BQU0sT0FBTyxrQkFBa0I7SUFSL0I7UUFTVyxVQUFLLEdBQVcsRUFBRSxDQUFDO1FBQ25CLFVBQUssR0FBZ0IsRUFBRSxDQUFBO0tBR2pDOzhHQUxZLGtCQUFrQjtrR0FBbEIsa0JBQWtCLHFIQ2IvQixreEJBdUJNOzsyRkRWTyxrQkFBa0I7a0JBUjlCLFNBQVM7K0JBQ0UsZUFBZSxjQUNiLElBQUksV0FDUCxFQUFFLGlCQUdJLGlCQUFpQixDQUFDLElBQUk7OEJBRzVCLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR3VpZGVTdGVwIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9ndWlkZS1jYXJkLWludGVyZmFjZSc7XG5cblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzYS1ndWlkZS1jYXJkJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW10sXG4gIHRlbXBsYXRlVXJsOiAnLi9ndWlkZS1jYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2d1aWRlLWNhcmQuY29tcG9uZW50LmNzcycsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgR3VpZGVDYXJkQ29tcG9uZW50IHtcbiAgQElucHV0KCkgdGl0bGU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBzdGVwczogR3VpZGVTdGVwW10gPSBbXVxuXG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJndWlkZS1jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZ3VpZGUtaGVhZGVyXCI+XG4gICAgICAgIDxwIGNsYXNzPVwiZ3VpZGUtaGVhZGVyLXRpdGxlXCI+e3sgdGl0bGUgfX08L3A+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImd1aWRlLWNvbnRlbnRcIj5cbiAgICAgICAgQGZvciAoc3RlcCBvZiBzdGVwczsgdHJhY2sgc3RlcDsgbGV0IGxhc3QgPSAkbGFzdCkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwic3RlcFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0ZXAtaW5kaWNhdG9yXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0ZXAtY2lyY2xlXCI+PC9kaXY+XG5cbiAgICAgICAgICAgICAgICBAaWYgKCFsYXN0KSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0ZXAtbGluZVwiPjwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0ZXAtY29udGVudFwiPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwic3RlcC10aXRsZVwiPnt7IHN0ZXAudGl0bGUgfX08L3A+XG4gICAgICAgICAgICAgICAgQGlmIChzdGVwPy5kZXNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwic3RlcC1kZXNjcmlwdGlvblwiPnt7IHN0ZXAuZGVzY3JpcHRpb24gfX08L3A+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { Component, Input, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { CardComponent } from '../card/card.component';
|
|
3
|
+
import { IconComponent } from '../icon/icon.component';
|
|
4
|
+
import { CardCustomHeaderComponent } from '../card/card-custom-header/card-custom-header.component';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class CardCarouselComponent {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.cards = [];
|
|
9
|
+
this.interval = 5000;
|
|
10
|
+
this.autoPlay = true;
|
|
11
|
+
this.showNavigationArrows = true;
|
|
12
|
+
this.showIndicators = true;
|
|
13
|
+
this.showBrandFooter = true;
|
|
14
|
+
this.visibleLogos = [];
|
|
15
|
+
this.currentIndex = 0;
|
|
16
|
+
}
|
|
17
|
+
ngOnInit() {
|
|
18
|
+
this.updateVisibleLogos();
|
|
19
|
+
if (this.autoPlay) {
|
|
20
|
+
this.startTimer();
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
ngOnDestroy() {
|
|
24
|
+
this.stopTimer();
|
|
25
|
+
}
|
|
26
|
+
startTimer() {
|
|
27
|
+
this.stopTimer();
|
|
28
|
+
this.timer = setInterval(() => {
|
|
29
|
+
this.next();
|
|
30
|
+
}, this.interval);
|
|
31
|
+
}
|
|
32
|
+
stopTimer() {
|
|
33
|
+
if (this.timer) {
|
|
34
|
+
clearInterval(this.timer);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
resetTimer() {
|
|
38
|
+
clearInterval(this.timer);
|
|
39
|
+
if (this.autoPlay) {
|
|
40
|
+
this.startTimer();
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
selectCard(index) {
|
|
44
|
+
this.currentIndex = index;
|
|
45
|
+
this.resetTimer();
|
|
46
|
+
this.updateVisibleLogos();
|
|
47
|
+
}
|
|
48
|
+
next() {
|
|
49
|
+
this.currentIndex = (this.currentIndex + 1) % this.cards.length;
|
|
50
|
+
this.resetTimer();
|
|
51
|
+
this.updateVisibleLogos();
|
|
52
|
+
}
|
|
53
|
+
prev() {
|
|
54
|
+
this.currentIndex = (this.currentIndex - 1 + this.cards.length) % this.cards.length;
|
|
55
|
+
this.resetTimer();
|
|
56
|
+
this.updateVisibleLogos();
|
|
57
|
+
}
|
|
58
|
+
updateVisibleLogos() {
|
|
59
|
+
this.visibleLogos = [];
|
|
60
|
+
for (let i = -1; i <= 4; i++) {
|
|
61
|
+
const index = (this.currentIndex + i + this.cards.length) % this.cards.length;
|
|
62
|
+
this.visibleLogos.push({
|
|
63
|
+
...this.cards[index],
|
|
64
|
+
index: index
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CardCarouselComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
69
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.4", type: CardCarouselComponent, isStandalone: true, selector: "sa-card-carousel", inputs: { cards: "cards", interval: "interval", autoPlay: "autoPlay", showNavigationArrows: "showNavigationArrows", showIndicators: "showIndicators", showBrandFooter: "showBrandFooter" }, ngImport: i0, template: "<!-- card-carousel.component.html -->\n<div class=\"carousel-container\">\n <div class=\"carousel-top-wrapper\">\n <div class=\"controls\">\n @if (showIndicators) {\n <div class=\"dots\">\n @for (card of cards; track card.id; let i = $index) {\n <span class=\"dot\" [class.active]=\"i === currentIndex\" (click)=\"selectCard(i)\"></span>\n }\n </div>\n }\n @if (showNavigationArrows) {\n <div class=\"arrow-controls\">\n <sa-icon [icon]=\"'leftChevronCircle'\" size=\"24\" (click)=\"prev()\"></sa-icon>\n <sa-icon [icon]=\"'rightChevronCircle'\" size=\"24\" (click)=\"next()\"></sa-icon>\n </div>\n }\n </div>\n\n <div class=\"card-container\">\n <sa-card [customWrapperClass]=\"'sa-card-custom-wrapper'\" [width]=\"'24.063rem'\" [column]=\"false\"\n [showCardHeader]=\"true\" [showCardBody]=\"true\" [body]=\"cards[currentIndex].body\">\n <sa-card-title-header>\n <div class=\"sa-card-custom-header-container\">\n <sa-icon [icon]=\"cards[currentIndex].avatarIcon\" size=\"50\"></sa-icon>\n <div class=\"sa-card-title-subtitle-container\">\n <div class=\"sa-card-custom-title\">{{ cards[currentIndex].title }}</div>\n <div class=\"sa-card-subtitle\">{{ cards[currentIndex].subtitle }}</div>\n </div>\n <div class=\"sa-card-titleIcon\">\n <sa-icon [icon]=\"cards[currentIndex].logoIcon\" customClass=\"logo-style\"></sa-icon>\n </div>\n </div>\n </sa-card-title-header>\n </sa-card>\n </div>\n </div>\n\n @if (showBrandFooter) {\n <div class=\"brand-logos-container\">\n <div class=\"brand-logos\">\n @for (logo of visibleLogos; track $index) {\n <sa-icon [icon]=\"logo.logoIcon\" [class.active]=\"$index === 1\" (click)=\"selectCard(logo.index)\"\n [customClass]=\"'logo-style'\">\n </sa-icon>\n }\n </div>\n </div>\n }\n\n\n\n</div>", styles: [".carousel-container{display:flex;flex-direction:column;align-items:center}.controls{display:flex;align-items:center;margin:0 0 20px;width:100%;min-height:32px}.dots{display:inline-flex;gap:4px;align-items:center;max-width:15rem}.arrow-controls{display:flex;align-items:center;margin-top:4px;gap:12px;margin-left:auto}.arrow-controls sa-icon{cursor:pointer}.dot{width:6px;height:6px;border-radius:50%;background-color:var(--grey-200);margin:0 5px;cursor:pointer}.dot.active{background-color:var(--primary-500);width:8px;height:8px}.brand-logos-container{width:500px;margin-top:2rem;overflow:hidden;max-width:500px}.brand-logos{display:flex;gap:1.5rem;transition:transform .3s ease;justify-content:center;align-items:center}.brand-logos sa-icon{flex:0 0 60px;opacity:.5;cursor:pointer;transition:transform .3s ease,opacity .3s ease;display:flex;align-items:center;justify-content:center;height:2rem;max-height:2rem;min-height:2rem}.brand-logos sa-icon.active{opacity:1}.sa-icon.logo-style>svg{width:fit-content;height:fit-content}\n"], dependencies: [{ kind: "component", type: CardComponent, selector: "sa-card", inputs: ["title", "showCardHeader", "showCardBody", "customWrapperClass", "chip", "body", "avatar", "avatarSize", "icon", "iconSize", "subtitle", "logoIcon", "width", "column"] }, { kind: "component", type: IconComponent, selector: "sa-icon", inputs: ["img", "icon", "size", "color", "iconPath", "iconUrl", "customClass"] }, { kind: "component", type: CardCustomHeaderComponent, selector: "sa-card-title-header" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
70
|
+
}
|
|
71
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: CardCarouselComponent, decorators: [{
|
|
72
|
+
type: Component,
|
|
73
|
+
args: [{ selector: 'sa-card-carousel', standalone: true, imports: [CardComponent, IconComponent, CardCustomHeaderComponent], encapsulation: ViewEncapsulation.None, template: "<!-- card-carousel.component.html -->\n<div class=\"carousel-container\">\n <div class=\"carousel-top-wrapper\">\n <div class=\"controls\">\n @if (showIndicators) {\n <div class=\"dots\">\n @for (card of cards; track card.id; let i = $index) {\n <span class=\"dot\" [class.active]=\"i === currentIndex\" (click)=\"selectCard(i)\"></span>\n }\n </div>\n }\n @if (showNavigationArrows) {\n <div class=\"arrow-controls\">\n <sa-icon [icon]=\"'leftChevronCircle'\" size=\"24\" (click)=\"prev()\"></sa-icon>\n <sa-icon [icon]=\"'rightChevronCircle'\" size=\"24\" (click)=\"next()\"></sa-icon>\n </div>\n }\n </div>\n\n <div class=\"card-container\">\n <sa-card [customWrapperClass]=\"'sa-card-custom-wrapper'\" [width]=\"'24.063rem'\" [column]=\"false\"\n [showCardHeader]=\"true\" [showCardBody]=\"true\" [body]=\"cards[currentIndex].body\">\n <sa-card-title-header>\n <div class=\"sa-card-custom-header-container\">\n <sa-icon [icon]=\"cards[currentIndex].avatarIcon\" size=\"50\"></sa-icon>\n <div class=\"sa-card-title-subtitle-container\">\n <div class=\"sa-card-custom-title\">{{ cards[currentIndex].title }}</div>\n <div class=\"sa-card-subtitle\">{{ cards[currentIndex].subtitle }}</div>\n </div>\n <div class=\"sa-card-titleIcon\">\n <sa-icon [icon]=\"cards[currentIndex].logoIcon\" customClass=\"logo-style\"></sa-icon>\n </div>\n </div>\n </sa-card-title-header>\n </sa-card>\n </div>\n </div>\n\n @if (showBrandFooter) {\n <div class=\"brand-logos-container\">\n <div class=\"brand-logos\">\n @for (logo of visibleLogos; track $index) {\n <sa-icon [icon]=\"logo.logoIcon\" [class.active]=\"$index === 1\" (click)=\"selectCard(logo.index)\"\n [customClass]=\"'logo-style'\">\n </sa-icon>\n }\n </div>\n </div>\n }\n\n\n\n</div>", styles: [".carousel-container{display:flex;flex-direction:column;align-items:center}.controls{display:flex;align-items:center;margin:0 0 20px;width:100%;min-height:32px}.dots{display:inline-flex;gap:4px;align-items:center;max-width:15rem}.arrow-controls{display:flex;align-items:center;margin-top:4px;gap:12px;margin-left:auto}.arrow-controls sa-icon{cursor:pointer}.dot{width:6px;height:6px;border-radius:50%;background-color:var(--grey-200);margin:0 5px;cursor:pointer}.dot.active{background-color:var(--primary-500);width:8px;height:8px}.brand-logos-container{width:500px;margin-top:2rem;overflow:hidden;max-width:500px}.brand-logos{display:flex;gap:1.5rem;transition:transform .3s ease;justify-content:center;align-items:center}.brand-logos sa-icon{flex:0 0 60px;opacity:.5;cursor:pointer;transition:transform .3s ease,opacity .3s ease;display:flex;align-items:center;justify-content:center;height:2rem;max-height:2rem;min-height:2rem}.brand-logos sa-icon.active{opacity:1}.sa-icon.logo-style>svg{width:fit-content;height:fit-content}\n"] }]
|
|
74
|
+
}], propDecorators: { cards: [{
|
|
75
|
+
type: Input
|
|
76
|
+
}], interval: [{
|
|
77
|
+
type: Input
|
|
78
|
+
}], autoPlay: [{
|
|
79
|
+
type: Input
|
|
80
|
+
}], showNavigationArrows: [{
|
|
81
|
+
type: Input
|
|
82
|
+
}], showIndicators: [{
|
|
83
|
+
type: Input
|
|
84
|
+
}], showBrandFooter: [{
|
|
85
|
+
type: Input
|
|
86
|
+
}] } });
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1jYXJvdXNlbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2NhcmQtY2Fyb3VzZWwvY2FyZC1jYXJvdXNlbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2NhcmQtY2Fyb3VzZWwvY2FyZC1jYXJvdXNlbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBYSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDOztBQVlwRyxNQUFNLE9BQU8scUJBQXFCO0lBUmxDO1FBU1csVUFBSyxHQUFtQixFQUFFLENBQUM7UUFDM0IsYUFBUSxHQUFXLElBQUksQ0FBQztRQUN4QixhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3pCLHlCQUFvQixHQUFZLElBQUksQ0FBQztRQUNyQyxtQkFBYyxHQUFZLElBQUksQ0FBQztRQUMvQixvQkFBZSxHQUFZLElBQUksQ0FBQztRQUV6QyxpQkFBWSxHQUF5QyxFQUFFLENBQUM7UUFFeEQsaUJBQVksR0FBVyxDQUFDLENBQUM7S0ErRDFCO0lBNURDLFFBQVE7UUFDTixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDcEIsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFHRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsV0FBVyxDQUFDLEdBQUcsRUFBRTtZQUM1QixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDZCxDQUFDLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZixhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVCLENBQUM7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQWE7UUFDdEIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDMUIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDaEUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDcEYsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUM7UUFDdkIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDN0IsTUFBTSxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQzlFLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO2dCQUNyQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO2dCQUNwQixLQUFLLEVBQUUsS0FBSzthQUNiLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDOzhHQXhFVSxxQkFBcUI7a0dBQXJCLHFCQUFxQix3UUNmbEMsOHdFQW9ETSxna0NEMUNNLGFBQWEsc09BQUUsYUFBYSxvSUFBRSx5QkFBeUI7OzJGQUt0RCxxQkFBcUI7a0JBUmpDLFNBQVM7K0JBQ0Usa0JBQWtCLGNBQ2hCLElBQUksV0FDUCxDQUFDLGFBQWEsRUFBRSxhQUFhLEVBQUUseUJBQXlCLENBQUMsaUJBR25ELGlCQUFpQixDQUFDLElBQUk7OEJBRzVCLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT25EZXN0cm95LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FyZENvbXBvbmVudCB9IGZyb20gJy4uL2NhcmQvY2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uL2ljb24vaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FyZEN1c3RvbUhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4uL2NhcmQvY2FyZC1jdXN0b20taGVhZGVyL2NhcmQtY3VzdG9tLWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FyZENhcm91c2VsIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9jYXJkLWNhcm91c2VsLWludGVyZmFjZSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2EtY2FyZC1jYXJvdXNlbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDYXJkQ29tcG9uZW50LCBJY29uQ29tcG9uZW50LCBDYXJkQ3VzdG9tSGVhZGVyQ29tcG9uZW50XSxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhcmQtY2Fyb3VzZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vY2FyZC1jYXJvdXNlbC5jb21wb25lbnQuY3NzJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBDYXJkQ2Fyb3VzZWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIGNhcmRzOiBDYXJkQ2Fyb3VzZWxbXSA9IFtdO1xuICBASW5wdXQoKSBpbnRlcnZhbDogbnVtYmVyID0gNTAwMDtcbiAgQElucHV0KCkgYXV0b1BsYXk6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBzaG93TmF2aWdhdGlvbkFycm93czogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIHNob3dJbmRpY2F0b3JzOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgc2hvd0JyYW5kRm9vdGVyOiBib29sZWFuID0gdHJ1ZTtcblxuICB2aXNpYmxlTG9nb3M6IChDYXJkQ2Fyb3VzZWwgJiB7IGluZGV4OiBudW1iZXIgfSlbXSA9IFtdO1xuXG4gIGN1cnJlbnRJbmRleDogbnVtYmVyID0gMDtcbiAgcHJpdmF0ZSB0aW1lcjogYW55O1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudXBkYXRlVmlzaWJsZUxvZ29zKCk7XG4gICAgaWYgKHRoaXMuYXV0b1BsYXkpIHtcbiAgICAgIHRoaXMuc3RhcnRUaW1lcigpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc3RvcFRpbWVyKCk7XG4gIH1cblxuXG4gIHN0YXJ0VGltZXIoKSB7XG4gICAgdGhpcy5zdG9wVGltZXIoKTtcbiAgICB0aGlzLnRpbWVyID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgdGhpcy5uZXh0KCk7XG4gICAgfSwgdGhpcy5pbnRlcnZhbCk7XG4gIH1cblxuICBzdG9wVGltZXIoKSB7XG4gICAgaWYgKHRoaXMudGltZXIpIHtcbiAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy50aW1lcik7XG4gICAgfVxuICB9XG5cbiAgcmVzZXRUaW1lcigpIHtcbiAgICBjbGVhckludGVydmFsKHRoaXMudGltZXIpO1xuICAgIGlmICh0aGlzLmF1dG9QbGF5KSB7XG4gICAgICB0aGlzLnN0YXJ0VGltZXIoKTtcbiAgICB9XG4gIH1cblxuICBzZWxlY3RDYXJkKGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLmN1cnJlbnRJbmRleCA9IGluZGV4O1xuICAgIHRoaXMucmVzZXRUaW1lcigpO1xuICAgIHRoaXMudXBkYXRlVmlzaWJsZUxvZ29zKCk7XG4gIH1cblxuICBuZXh0KCkge1xuICAgIHRoaXMuY3VycmVudEluZGV4ID0gKHRoaXMuY3VycmVudEluZGV4ICsgMSkgJSB0aGlzLmNhcmRzLmxlbmd0aDtcbiAgICB0aGlzLnJlc2V0VGltZXIoKTtcbiAgICB0aGlzLnVwZGF0ZVZpc2libGVMb2dvcygpO1xuICB9XG5cbiAgcHJldigpIHtcbiAgICB0aGlzLmN1cnJlbnRJbmRleCA9ICh0aGlzLmN1cnJlbnRJbmRleCAtIDEgKyB0aGlzLmNhcmRzLmxlbmd0aCkgJSB0aGlzLmNhcmRzLmxlbmd0aDtcbiAgICB0aGlzLnJlc2V0VGltZXIoKTtcbiAgICB0aGlzLnVwZGF0ZVZpc2libGVMb2dvcygpO1xuICB9XG5cbiAgdXBkYXRlVmlzaWJsZUxvZ29zKCkge1xuICAgIHRoaXMudmlzaWJsZUxvZ29zID0gW107XG4gICAgZm9yIChsZXQgaSA9IC0xOyBpIDw9IDQ7IGkrKykge1xuICAgICAgY29uc3QgaW5kZXggPSAodGhpcy5jdXJyZW50SW5kZXggKyBpICsgdGhpcy5jYXJkcy5sZW5ndGgpICUgdGhpcy5jYXJkcy5sZW5ndGg7XG4gICAgICB0aGlzLnZpc2libGVMb2dvcy5wdXNoKHtcbiAgICAgICAgLi4udGhpcy5jYXJkc1tpbmRleF0sXG4gICAgICAgIGluZGV4OiBpbmRleFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iLCI8IS0tIGNhcmQtY2Fyb3VzZWwuY29tcG9uZW50Lmh0bWwgLS0+XG48ZGl2IGNsYXNzPVwiY2Fyb3VzZWwtY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImNhcm91c2VsLXRvcC13cmFwcGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb250cm9sc1wiPlxuICAgICAgICAgICAgQGlmIChzaG93SW5kaWNhdG9ycykge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRvdHNcIj5cbiAgICAgICAgICAgICAgICBAZm9yIChjYXJkIG9mIGNhcmRzOyB0cmFjayBjYXJkLmlkOyBsZXQgaSA9ICRpbmRleCkge1xuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZG90XCIgW2NsYXNzLmFjdGl2ZV09XCJpID09PSBjdXJyZW50SW5kZXhcIiAoY2xpY2spPVwic2VsZWN0Q2FyZChpKVwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAoc2hvd05hdmlnYXRpb25BcnJvd3MpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhcnJvdy1jb250cm9sc1wiPlxuICAgICAgICAgICAgICAgIDxzYS1pY29uIFtpY29uXT1cIidsZWZ0Q2hldnJvbkNpcmNsZSdcIiBzaXplPVwiMjRcIiAoY2xpY2spPVwicHJldigpXCI+PC9zYS1pY29uPlxuICAgICAgICAgICAgICAgIDxzYS1pY29uIFtpY29uXT1cIidyaWdodENoZXZyb25DaXJjbGUnXCIgc2l6ZT1cIjI0XCIgKGNsaWNrKT1cIm5leHQoKVwiPjwvc2EtaWNvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxzYS1jYXJkIFtjdXN0b21XcmFwcGVyQ2xhc3NdPVwiJ3NhLWNhcmQtY3VzdG9tLXdyYXBwZXInXCIgW3dpZHRoXT1cIicyNC4wNjNyZW0nXCIgW2NvbHVtbl09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgW3Nob3dDYXJkSGVhZGVyXT1cInRydWVcIiBbc2hvd0NhcmRCb2R5XT1cInRydWVcIiBbYm9keV09XCJjYXJkc1tjdXJyZW50SW5kZXhdLmJvZHlcIj5cbiAgICAgICAgICAgICAgICA8c2EtY2FyZC10aXRsZS1oZWFkZXI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYS1jYXJkLWN1c3RvbS1oZWFkZXItY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c2EtaWNvbiBbaWNvbl09XCJjYXJkc1tjdXJyZW50SW5kZXhdLmF2YXRhckljb25cIiBzaXplPVwiNTBcIj48L3NhLWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2EtY2FyZC10aXRsZS1zdWJ0aXRsZS1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2EtY2FyZC1jdXN0b20tdGl0bGVcIj57eyBjYXJkc1tjdXJyZW50SW5kZXhdLnRpdGxlIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNhLWNhcmQtc3VidGl0bGVcIj57eyBjYXJkc1tjdXJyZW50SW5kZXhdLnN1YnRpdGxlIH19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYS1jYXJkLXRpdGxlSWNvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzYS1pY29uIFtpY29uXT1cImNhcmRzW2N1cnJlbnRJbmRleF0ubG9nb0ljb25cIiBjdXN0b21DbGFzcz1cImxvZ28tc3R5bGVcIj48L3NhLWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9zYS1jYXJkLXRpdGxlLWhlYWRlcj5cbiAgICAgICAgICAgIDwvc2EtY2FyZD5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICBAaWYgKHNob3dCcmFuZEZvb3Rlcikge1xuICAgIDxkaXYgY2xhc3M9XCJicmFuZC1sb2dvcy1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJyYW5kLWxvZ29zXCI+XG4gICAgICAgICAgICBAZm9yIChsb2dvIG9mIHZpc2libGVMb2dvczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICA8c2EtaWNvbiBbaWNvbl09XCJsb2dvLmxvZ29JY29uXCIgW2NsYXNzLmFjdGl2ZV09XCIkaW5kZXggPT09IDFcIiAoY2xpY2spPVwic2VsZWN0Q2FyZChsb2dvLmluZGV4KVwiXG4gICAgICAgICAgICAgICAgW2N1c3RvbUNsYXNzXT1cIidsb2dvLXN0eWxlJ1wiPlxuICAgICAgICAgICAgPC9zYS1pY29uPlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICB9XG5cblxuXG48L2Rpdj4iXX0=
|
|
@@ -39,7 +39,10 @@ export class FormInputComponent extends FieldType {
|
|
|
39
39
|
this.setDependents();
|
|
40
40
|
this.formControl.statusChanges.subscribe((state) => {
|
|
41
41
|
if (this.type === 'email') {
|
|
42
|
-
|
|
42
|
+
if (!!this.inputVal && !this.formControl.touched) {
|
|
43
|
+
this.formControl.markAsTouched();
|
|
44
|
+
}
|
|
45
|
+
this.showEmailIcon = ((state === 'VALID') || (state === 'INVALID' && this.formControl.hasError('invalid') && !!this.formControl.value));
|
|
43
46
|
}
|
|
44
47
|
});
|
|
45
48
|
this.formControl.valueChanges.subscribe((val) => {
|
|
@@ -133,11 +136,11 @@ export class FormInputComponent extends FieldType {
|
|
|
133
136
|
this.suppressOnBlur = true;
|
|
134
137
|
if (this.type === 'password') {
|
|
135
138
|
this.type = 'text';
|
|
136
|
-
this.icon.name = '
|
|
139
|
+
this.icon.name = 'eyeFilled';
|
|
137
140
|
}
|
|
138
141
|
else {
|
|
139
142
|
this.type = 'password';
|
|
140
|
-
this.icon.name = '
|
|
143
|
+
this.icon.name = 'eyeOutlined';
|
|
141
144
|
}
|
|
142
145
|
this.onInputFieldClick();
|
|
143
146
|
}
|
|
@@ -155,7 +158,7 @@ export class FormInputComponent extends FieldType {
|
|
|
155
158
|
}
|
|
156
159
|
}
|
|
157
160
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: FormInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
158
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.4", type: FormInputComponent, isStandalone: true, selector: "sa-input", inputs: { icon: "icon" }, viewQueries: [{ propertyName: "formInput", first: true, predicate: ["formInput"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"sa-input\" [ngClass]=\"disabled ? 'disabled' : '' \">\n @if(pretext || (!!inputVal.length && !!params?.placeholder)){\n <span class=\"sa-input-tag\">{{params?.placeholder}}</span>\n }\n <div class=\"sa-input-field\" [ngClass]=\"formControl.invalid && formControl.touched ? 'invalid' : 'idle' \"\n (click)=\"onInputFieldClick($event)\">\n @if(pretext){\n <div class=\"sa-input-pretext\">\n {{pretext}}\n </div>\n }\n <input matInput [type]=\"type\" value=\"\" [pattern]=\"type==='tel' ? '[0-9]' : '' \"\n [disabled]=\"field.props.disabled || false\" [placeholder]=\"!pretext && params?.placeholder || '' \"\n (focus)=\"onFocus()\" (blur)=\"onBlur()\" (input)=\"onInput($event)\" [(ngModel)]=\"inputVal\" #formInput />\n\n @if(params?.type === 'password'){\n <sa-icon class=\"flex\" icon=\"
|
|
161
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.2.4", type: FormInputComponent, isStandalone: true, selector: "sa-input", inputs: { icon: "icon" }, viewQueries: [{ propertyName: "formInput", first: true, predicate: ["formInput"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"sa-input\" [ngClass]=\"disabled ? 'disabled' : '' \">\n @if(pretext || (!!inputVal.length && !!params?.placeholder)){\n <span class=\"sa-input-tag\">{{params?.placeholder}}</span>\n }\n <div class=\"sa-input-field\" [ngClass]=\"formControl.invalid && formControl.touched ? 'invalid' : 'idle' \"\n (click)=\"onInputFieldClick($event)\">\n @if(pretext){\n <div class=\"sa-input-pretext\">\n {{pretext}}\n </div>\n }\n <input matInput [type]=\"type\" value=\"\" [pattern]=\"type==='tel' ? '[0-9]' : '' \"\n [disabled]=\"field.props.disabled || false\" [placeholder]=\"!pretext && params?.placeholder || '' \"\n (focus)=\"onFocus()\" (blur)=\"onBlur()\" (input)=\"onInput($event)\" [(ngModel)]=\"inputVal\" #formInput />\n\n @if(params?.type === 'password'){\n <sa-icon class=\"flex\" icon=\"eyeOutlined\" [size]=\"icon.size || '24'\" (click)=\"inputIconClick()\"\n [ngClass]=\"!icon.name || icon.name === 'eyeOutlined' ? '' : 'hide'\"></sa-icon>\n <sa-icon class=\"flex\" icon=\"eyeFilled\" [size]=\"icon.size || '24'\" (click)=\"inputIconClick()\"\n [ngClass]=\"icon.name === 'eyeFilled' ? '' : 'hide'\"></sa-icon>\n }@else if(params?.type === 'email' && icon.show){\n <sa-icon class=\"flex\" [icon]=\"icon.name || 'checkCircleOutlined'\" [size]=\"icon.size || '24'\"\n (click)=\"inputIconClick()\" [ngClass]=\"showEmailIcon ? '' : 'hide'\"></sa-icon>\n }\n @else if(icon.name){\n <sa-icon class=\"flex\" [icon]=\"icon.name\" [size]=\"icon.size || '24'\" [color]=\"icon.color || ''\"\n [ngClass]=\"icon.show ? '' : 'hide'\"></sa-icon>\n }\n\n\n <!-- <sa-icon [icon]=\"icon\" size=\"24\" (click)=\"inputIconClick()\"></sa-icon> -->\n </div>\n @if((!formControl.valid) || (params && params.supportText)){\n <div class=\"support-label\" [ngClass]=\"formControl.invalid && formControl.touched ? 'invalid' : 'idle'\">\n <!-- {{!formControl.valid ? inputErrorText : params.supportText}} -->\n {{getFormSupportText()}}\n </div>\n }\n</div>", styles: ["*{--error-red: #e25c61 }.idle{--border: 1px solid var(--grey-50)}.focus{--border: 1px solid var(--primary-300)}.disabled .sa-input-field,[disabled]{background-color:#efefef4d}.sa-input-field>input,.sa-input-field>input:focus-visible{--border: 1px solid var(--primary-300);border:none;outline:none}.sa-input-field:hover{--border: 1px solid var(--primary-300);--font-color: var(--text-highemphasis)}.sa-input-field>input:focus-visible~sa-icon,.sa-input-field:hover sa-icon{color:var(--primary-300)}.sa-input-field.invalid>input,.sa-input-field.invalid sa-icon,.sa-input-field.invalid .sa-input-pretext{color:#e25c61!important}.sa-input-field.invalid{--border: 1px solid #e25c61}.sa-input-field.invalid sa-icon{--form-email-icon-color: #e25c61}.sa-input-field.idle sa-icon{--form-email-icon-color: #33961F}.sa-input{position:relative;padding:8px 0}.sa-input-field{width:100%;box-sizing:border-box;position:relative;display:inline-flex;padding:0px var(--small-12px);height:40px;justify-content:center;align-items:center;border:var(--border);border-radius:var(--small-4px);font-size:14px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.25px;--font-color: var(--text-lowemphasis)}.sa-input-field input{width:inherit}.sa-input-tag{position:absolute;background:#fff;padding:2px 6px;top:-1px;left:12px;z-index:2;font-size:11px;font-weight:500;line-height:16px;letter-spacing:.5px;text-align:left;color:var(--text-lowemphasis)}.support-label{font-family:var(--font);font-size:11px;font-style:normal;font-weight:400;line-height:16px;letter-spacing:.5px;color:var(--text-lowemphasis);padding:var(--small-4px) var(--small-16px) 0px var(--small-16px)}.support-label.invalid{color:var(--error-red)}.hide{display:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: FormlyModule }, { kind: "component", type: IconComponent, selector: "sa-icon", inputs: ["img", "icon", "size", "color", "iconPath", "iconUrl", "customClass"] }] }); }
|
|
159
162
|
}
|
|
160
163
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: FormInputComponent, decorators: [{
|
|
161
164
|
type: Component,
|
|
@@ -165,7 +168,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
|
|
|
165
168
|
ReactiveFormsModule,
|
|
166
169
|
FormlyModule,
|
|
167
170
|
IconComponent
|
|
168
|
-
], template: "<div class=\"sa-input\" [ngClass]=\"disabled ? 'disabled' : '' \">\n @if(pretext || (!!inputVal.length && !!params?.placeholder)){\n <span class=\"sa-input-tag\">{{params?.placeholder}}</span>\n }\n <div class=\"sa-input-field\" [ngClass]=\"formControl.invalid && formControl.touched ? 'invalid' : 'idle' \"\n (click)=\"onInputFieldClick($event)\">\n @if(pretext){\n <div class=\"sa-input-pretext\">\n {{pretext}}\n </div>\n }\n <input matInput [type]=\"type\" value=\"\" [pattern]=\"type==='tel' ? '[0-9]' : '' \"\n [disabled]=\"field.props.disabled || false\" [placeholder]=\"!pretext && params?.placeholder || '' \"\n (focus)=\"onFocus()\" (blur)=\"onBlur()\" (input)=\"onInput($event)\" [(ngModel)]=\"inputVal\" #formInput />\n\n @if(params?.type === 'password'){\n <sa-icon class=\"flex\" icon=\"
|
|
171
|
+
], template: "<div class=\"sa-input\" [ngClass]=\"disabled ? 'disabled' : '' \">\n @if(pretext || (!!inputVal.length && !!params?.placeholder)){\n <span class=\"sa-input-tag\">{{params?.placeholder}}</span>\n }\n <div class=\"sa-input-field\" [ngClass]=\"formControl.invalid && formControl.touched ? 'invalid' : 'idle' \"\n (click)=\"onInputFieldClick($event)\">\n @if(pretext){\n <div class=\"sa-input-pretext\">\n {{pretext}}\n </div>\n }\n <input matInput [type]=\"type\" value=\"\" [pattern]=\"type==='tel' ? '[0-9]' : '' \"\n [disabled]=\"field.props.disabled || false\" [placeholder]=\"!pretext && params?.placeholder || '' \"\n (focus)=\"onFocus()\" (blur)=\"onBlur()\" (input)=\"onInput($event)\" [(ngModel)]=\"inputVal\" #formInput />\n\n @if(params?.type === 'password'){\n <sa-icon class=\"flex\" icon=\"eyeOutlined\" [size]=\"icon.size || '24'\" (click)=\"inputIconClick()\"\n [ngClass]=\"!icon.name || icon.name === 'eyeOutlined' ? '' : 'hide'\"></sa-icon>\n <sa-icon class=\"flex\" icon=\"eyeFilled\" [size]=\"icon.size || '24'\" (click)=\"inputIconClick()\"\n [ngClass]=\"icon.name === 'eyeFilled' ? '' : 'hide'\"></sa-icon>\n }@else if(params?.type === 'email' && icon.show){\n <sa-icon class=\"flex\" [icon]=\"icon.name || 'checkCircleOutlined'\" [size]=\"icon.size || '24'\"\n (click)=\"inputIconClick()\" [ngClass]=\"showEmailIcon ? '' : 'hide'\"></sa-icon>\n }\n @else if(icon.name){\n <sa-icon class=\"flex\" [icon]=\"icon.name\" [size]=\"icon.size || '24'\" [color]=\"icon.color || ''\"\n [ngClass]=\"icon.show ? '' : 'hide'\"></sa-icon>\n }\n\n\n <!-- <sa-icon [icon]=\"icon\" size=\"24\" (click)=\"inputIconClick()\"></sa-icon> -->\n </div>\n @if((!formControl.valid) || (params && params.supportText)){\n <div class=\"support-label\" [ngClass]=\"formControl.invalid && formControl.touched ? 'invalid' : 'idle'\">\n <!-- {{!formControl.valid ? inputErrorText : params.supportText}} -->\n {{getFormSupportText()}}\n </div>\n }\n</div>", styles: ["*{--error-red: #e25c61 }.idle{--border: 1px solid var(--grey-50)}.focus{--border: 1px solid var(--primary-300)}.disabled .sa-input-field,[disabled]{background-color:#efefef4d}.sa-input-field>input,.sa-input-field>input:focus-visible{--border: 1px solid var(--primary-300);border:none;outline:none}.sa-input-field:hover{--border: 1px solid var(--primary-300);--font-color: var(--text-highemphasis)}.sa-input-field>input:focus-visible~sa-icon,.sa-input-field:hover sa-icon{color:var(--primary-300)}.sa-input-field.invalid>input,.sa-input-field.invalid sa-icon,.sa-input-field.invalid .sa-input-pretext{color:#e25c61!important}.sa-input-field.invalid{--border: 1px solid #e25c61}.sa-input-field.invalid sa-icon{--form-email-icon-color: #e25c61}.sa-input-field.idle sa-icon{--form-email-icon-color: #33961F}.sa-input{position:relative;padding:8px 0}.sa-input-field{width:100%;box-sizing:border-box;position:relative;display:inline-flex;padding:0px var(--small-12px);height:40px;justify-content:center;align-items:center;border:var(--border);border-radius:var(--small-4px);font-size:14px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.25px;--font-color: var(--text-lowemphasis)}.sa-input-field input{width:inherit}.sa-input-tag{position:absolute;background:#fff;padding:2px 6px;top:-1px;left:12px;z-index:2;font-size:11px;font-weight:500;line-height:16px;letter-spacing:.5px;text-align:left;color:var(--text-lowemphasis)}.support-label{font-family:var(--font);font-size:11px;font-style:normal;font-weight:400;line-height:16px;letter-spacing:.5px;color:var(--text-lowemphasis);padding:var(--small-4px) var(--small-16px) 0px var(--small-16px)}.support-label.invalid{color:var(--error-red)}.hide{display:none}\n"] }]
|
|
169
172
|
}], ctorParameters: () => [], propDecorators: { formInput: [{
|
|
170
173
|
type: ViewChild,
|
|
171
174
|
args: ['formInput']
|
|
@@ -179,4 +182,4 @@ export var IInputEventType;
|
|
|
179
182
|
IInputEventType["STATE_CHANGE"] = "STATE_CHANGE";
|
|
180
183
|
IInputEventType["ICON_CLICK"] = "ICON_CLICK";
|
|
181
184
|
})(IInputEventType || (IInputEventType = {}));
|
|
182
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2Zvcm0taW5wdXQvZm9ybS1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2Zvcm0taW5wdXQvZm9ybS1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFnQyxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQW1CLE1BQU0sa0JBQWtCLENBQUM7QUFFOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBd0IsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFldkQsTUFBTSxPQUFPLGtCQUFtQixTQUFRLFNBQTBCO0lBMkJoRTtRQUNFLEtBQUssRUFBRSxDQUFDO1FBcEJWLGVBQVUsR0FBRyxNQUFNLENBQUM7UUFDcEIsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUdkLGlCQUFZLEdBQVEsSUFBSSxDQUFDO1FBQ3pCLG1DQUFtQztRQUNuQywyQkFBMkI7UUFFM0IsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUlsQixtQkFBYyxHQUFXLGVBQWUsQ0FBQztRQUV6QyxrQkFBYSxHQUFZLEtBQUssQ0FBQztRQUMvQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRWxCLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBaUovQix5QkFBb0IsR0FBUTtZQUMxQixLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDOUMsUUFBUSxFQUFFLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3hELEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQztTQUM3QyxDQUFBO0lBaEpELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUM7UUFDbkQsSUFBSSxDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTFDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDM0MsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksSUFBSSxFQUFFLENBQUM7UUFFcEMsc0RBQXNEO1FBQ3RELElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFckIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDakQsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUMxQixJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQyxLQUFLLEtBQUssT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNuSSxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7UUFDRixJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUM5QyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDO1FBQzNDLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsVUFBVSxJQUFJLEVBQUUsQ0FBQztRQUNoRCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsZUFBZSxJQUFJLEVBQUUsQ0FBQztRQUMxRCxJQUFJLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUN4SCxJQUFJLElBQUksQ0FBQyxlQUFlO1lBQ3RCLElBQUksQ0FBQyxXQUFXLEVBQUUsa0JBQWtCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRDs7TUFFRTtJQUNGLGFBQWE7UUFDWCxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztZQUV6RCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMvRCxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSyxFQUFFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxTQUFTLENBQUM7WUFDOUMsQ0FBQztZQUVELElBQUksQ0FBQyxTQUFTLEVBQUUsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUM3QyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzlDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDekMsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEtBQUssRUFBRSxDQUFDO29CQUN4QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsU0FBUyxDQUFDO2dCQUM5QyxDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUNELGVBQWUsQ0FBQyxLQUFVO1FBQ3hCLElBQUksY0FBbUIsQ0FBQztRQUN4QixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN6QixjQUFjLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDbEQsQ0FBQzthQUFNLENBQUM7WUFDTixjQUFjLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLENBQUM7UUFDRCxPQUFPLGNBQWMsQ0FBQztJQUN4QixDQUFDO0lBRUQsYUFBYSxDQUFDLGlCQUFpQixHQUFHLE9BQU87UUFDdkMsSUFBSSxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3pHLElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO1lBQzVCLElBQUksQ0FBQyxjQUFjLEdBQUcsb0JBQW9CLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxlQUFlLENBQUM7UUFDekYsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsVUFBVSxHQUFHLGlCQUFpQixDQUFDO1FBQ3RDLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLO1lBQ3hCLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFBO0lBQzdCLENBQUM7SUFDRCxNQUFNO1FBQ0osVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQ2pDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDN0IsQ0FBQztZQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1FBQzlCLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQTtJQUNULENBQUM7SUFFRCxPQUFPLENBQUMsS0FBVTtRQUNoQixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxLQUFLLEtBQUssRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzdELENBQUM7UUFFRCxJQUFJLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCOzs7Ozs7V0FNRztJQUNMLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxRQUFhLE9BQU87UUFDcEMsSUFBSSxLQUFLLEtBQUssT0FBTyxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7WUFDM0UsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDckMsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksS0FBSyxPQUFPO2dCQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUU7b0JBQ2pELElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUE7Z0JBQzVGLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUNSLENBQUM7SUFDSCxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLEtBQUssVUFBVSxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7WUFDM0IsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsRUFBRSxDQUFDO2dCQUM3QixJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQztnQkFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsWUFBWSxDQUFDO1lBQ2hDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQztnQkFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1lBQ3pCLENBQUM7WUFDRCxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUMzQixDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUVILGtCQUFrQjtRQUNoQixJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDekQsT0FBTyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxJQUFJLGVBQWUsQ0FBQztRQUMxRSxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDO1FBQ3ZDLENBQUM7SUFDSCxDQUFDOzhHQXhLVSxrQkFBa0I7a0dBQWxCLGtCQUFrQiw2TkN2Qi9CLHVtRUFzQ00sb3ZERHhCRixZQUFZLDRIQUNaLFdBQVcsdXdCQUNYLG1CQUFtQiw4QkFDbkIsWUFBWSwrQkFDWixhQUFhOzsyRkFLSixrQkFBa0I7a0JBYjlCLFNBQVM7K0JBQ0UsVUFBVSxjQUNSLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLGFBQWE7cUJBQ2Q7d0RBTXVCLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVztnQkFFUCxJQUFJO3NCQUFsQixLQUFLO3VCQUFDLE1BQU07O0FBcU1mLE1BQU0sQ0FBTixJQUFZLGVBSVg7QUFKRCxXQUFZLGVBQWU7SUFDekIsZ0RBQTZCLENBQUE7SUFDN0IsZ0RBQTZCLENBQUE7SUFDN0IsNENBQXlCLENBQUE7QUFDM0IsQ0FBQyxFQUpXLGVBQWUsS0FBZixlQUFlLFFBSTFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1Db250cm9sLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1seU1vZHVsZSB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHsgRmllbGRUeXBlLCBGaWVsZFR5cGVDb25maWcgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7IE5nU2VsZWN0TW9kdWxlIH0gZnJvbSAnQG5nLXNlbGVjdC9uZy1zZWxlY3QnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJyb3dzZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IGdldFZhbGlkYXRpb25NZXNzYWdlLCBwaG9uZU51bWJlclZhbGlkYXRvciB9IGZyb20gJy4uLy4uL3V0aWxzL3ZhbGlkYXRvcnMnO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uL2ljb24vaWNvbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzYS1pbnB1dCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBGb3JtbHlNb2R1bGUsXG4gICAgSWNvbkNvbXBvbmVudFxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9mb3JtLWlucHV0LmNvbXBvbmVudC5jc3MnXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1JbnB1dENvbXBvbmVudCBleHRlbmRzIEZpZWxkVHlwZTxGaWVsZFR5cGVDb25maWc+IHtcblxuICBAVmlld0NoaWxkKCdmb3JtSW5wdXQnKSBmb3JtSW5wdXQhOiBFbGVtZW50UmVmO1xuXG4gIEBJbnB1dCgnaWNvbicpIGljb246IElJbnB1dEljb247XG5cbiAgcHJldGV4dDogc3RyaW5nO1xuXG4gIGlucHV0U3RhdGUgPSAnaWRsZSc7XG4gIGlucHV0VmFsID0gJyc7XG4gIHBhcmFtczogSUlucHV0UGFyYW0gfCBudWxsO1xuICBkZXBlbmRlbnQ6IEFic3RyYWN0Q29udHJvbDxhbnksIGFueT4gfCBudWxsO1xuICBkZXBlbmRlbnRWYWw6IGFueSA9IG51bGw7XG4gIC8vIGR5bmFtaWNJY29uOiBEeW5hbWljSWNvbiB8IG51bGw7XG4gIC8vIGljb246IElJbnB1dEljb24gfCBudWxsO1xuXG4gIHR5cGU6IHN0cmluZyA9ICcnO1xuICB2YWxpZGF0b3JzOiBhbnlbXTtcbiAgYXN5bmNWYWxpZGF0b3JzOiBhbnlbXTtcblxuICBpbnB1dEVycm9yVGV4dDogc3RyaW5nID0gJ2ludmFsaWQgaW5wdXQnO1xuXG4gIHNob3dFbWFpbEljb246IGJvb2xlYW4gPSBmYWxzZTtcbiAgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwcml2YXRlIHN1cHByZXNzT25CbHVyID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5pbnB1dFZhbCA9IHRoaXMuZmllbGQucHJvcHNbJ3ZhbHVlJ107XG4gICAgdGhpcy5kaXNhYmxlZCA9IHRoaXMuZmllbGQucHJvcHMuZGlzYWJsZWQgfHwgZmFsc2U7XG4gICAgdGhpcy5mb3JtQ29udHJvbD8uc2V0VmFsdWUodGhpcy5pbnB1dFZhbCk7XG5cbiAgICB0aGlzLnBhcmFtcyA9IHRoaXMuZmllbGQucHJvcHNbJ3BhcmFtcyddO1xuICAgIHRoaXMuaWNvbiA9IHRoaXMuZmllbGQucHJvcHNbJ2ljb24nXSB8fCB7fTtcbiAgICB0aGlzLnR5cGUgPSB0aGlzLnBhcmFtcz8udHlwZSB8fCAnJztcblxuICAgIC8vIHRoaXMuZHluYW1pY0ljb24gPSB0aGlzLmZpZWxkLnByb3BzWydkeW5hbWljSWNvbiddO1xuICAgIHRoaXMuc2V0VmFsaWRhdG9ycygpO1xuICAgIHRoaXMuc2V0RGVwZW5kZW50cygpO1xuXG4gICAgdGhpcy5mb3JtQ29udHJvbC5zdGF0dXNDaGFuZ2VzLnN1YnNjcmliZSgoc3RhdGUpID0+IHtcbiAgICAgIGlmICh0aGlzLnR5cGUgPT09ICdlbWFpbCcpIHtcbiAgICAgICAgdGhpcy5zaG93RW1haWxJY29uID0gKChzdGF0ZSA9PT0gJ1ZBTElEJykgfHwgKHN0YXRlID09PSAnSU5WQUxJRCcgJiYgdGhpcy5mb3JtQ29udHJvbC5oYXNFcnJvcignaW52YWxpZCcpKSAmJiB0aGlzLmZvcm0udG91Y2hlZCk7XG4gICAgICB9XG4gICAgfSlcbiAgICB0aGlzLmZvcm1Db250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbCkgPT4ge1xuICAgICAgdGhpcy5mb3JtSW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSA9IHZhbDtcbiAgICB9KVxuICB9XG5cbiAgc2V0VmFsaWRhdG9ycygpIHtcbiAgICB0aGlzLnZhbGlkYXRvcnMgPSB0aGlzLnBhcmFtcz8udmFsaWRhdG9ycyB8fCBbXTtcbiAgICB0aGlzLmFzeW5jVmFsaWRhdG9ycyA9IHRoaXMucGFyYW1zPy5hc3luY1ZhbGlkYXRvcnMgfHwgW107XG4gICAgdGhpcy5mb3JtQ29udHJvbD8uc2V0VmFsaWRhdG9ycyhbLi4uKHRoaXMudHlwZSA/IHRoaXMucHJlZGVmaW5lZFZhbGlkYXRvcnNbdGhpcy50eXBlXSB8fCBbXSA6IFtdKSwgLi4udGhpcy52YWxpZGF0b3JzXSk7XG4gICAgaWYgKHRoaXMuYXN5bmNWYWxpZGF0b3JzKVxuICAgICAgdGhpcy5mb3JtQ29udHJvbD8uc2V0QXN5bmNWYWxpZGF0b3JzKHRoaXMuYXN5bmNWYWxpZGF0b3JzKTtcbiAgfVxuXG4gIC8qXG4gICAgQXNzdW1pbmcgZGVwZW5kZW50IGZpZWxkIGlzIGEgc2luZ2xlIHNlbGVjdCBkcm9wZG93blxuICAqL1xuICBzZXREZXBlbmRlbnRzKCkge1xuICAgIGlmICh0aGlzLnBhcmFtcz8uZGVwZW5kZW50KSB7XG4gICAgICB0aGlzLmRlcGVuZGVudCA9IHRoaXMuZm9ybS5nZXQoW3RoaXMucGFyYW1zPy5kZXBlbmRlbnRdKTtcblxuICAgICAgdGhpcy5kZXBlbmRlbnRWYWwgPSB0aGlzLmdldERlcGVuZGVudFZhbCh0aGlzLmRlcGVuZGVudC52YWx1ZSk7XG4gICAgICBpZiAodGhpcy50eXBlID09PSAndGVsJykge1xuICAgICAgICB0aGlzLnByZXRleHQgPSB0aGlzLmRlcGVuZGVudFZhbD8uZGlhbF9jb2RlO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmRlcGVuZGVudD8udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsKSA9PiB7XG4gICAgICAgIHRoaXMuZGVwZW5kZW50VmFsID0gdGhpcy5nZXREZXBlbmRlbnRWYWwodmFsKTtcbiAgICAgICAgdGhpcy5mb3JtQ29udHJvbC5yZXNldCgpO1xuICAgICAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKHRoaXMuaW5wdXRWYWwpO1xuICAgICAgICBpZiAodGhpcy50eXBlID09PSAndGVsJykge1xuICAgICAgICAgIHRoaXMucHJldGV4dCA9IHRoaXMuZGVwZW5kZW50VmFsPy5kaWFsX2NvZGU7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuICB9XG4gIGdldERlcGVuZGVudFZhbCh2YWx1ZTogYW55KSB7XG4gICAgbGV0IGRlcGVuZGVudFZhbHVlOiBhbnk7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICBkZXBlbmRlbnRWYWx1ZSA9IHZhbHVlLmxlbmd0aCA/IHZhbHVlWzBdIDogbnVsbDtcbiAgICB9IGVsc2Uge1xuICAgICAgZGVwZW5kZW50VmFsdWUgPSB2YWx1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGRlcGVuZGVudFZhbHVlO1xuICB9XG5cbiAgY2hlY2tWYWxpZGl0eShkZWZhdWx0SW5wdXRTdGF0ZSA9ICdmb2N1cycpIHtcbiAgICBpZiAodGhpcy5mb3JtQ29udHJvbCAmJiAhdGhpcy5mb3JtQ29udHJvbC52YWxpZCAmJiB0aGlzLmZvcm1Db250cm9sLnRvdWNoZWQgJiYgIXRoaXMuZm9ybUNvbnRyb2wucGVuZGluZykge1xuICAgICAgdGhpcy5pbnB1dFN0YXRlID0gJ2ludmFsaWQnO1xuICAgICAgdGhpcy5pbnB1dEVycm9yVGV4dCA9IGdldFZhbGlkYXRpb25NZXNzYWdlKHRoaXMuZm9ybUNvbnRyb2wuZXJyb3JzKSB8fCAnaW52YWxpZCBpbnB1dCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5wdXRTdGF0ZSA9IGRlZmF1bHRJbnB1dFN0YXRlO1xuICAgIH1cbiAgfVxuXG4gIG9uRm9jdXMoKSB7XG4gICAgaWYgKHRoaXMuZm9ybUNvbnRyb2wudmFsaWQpXG4gICAgICB0aGlzLmlucHV0U3RhdGUgPSAnZm9jdXMnXG4gIH1cbiAgb25CbHVyKCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLnN1cHByZXNzT25CbHVyKSB7XG4gICAgICAgIHRoaXMuZm9ybUNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xuICAgICAgICB0aGlzLmNoZWNrVmFsaWRpdHkoJ2lkbGUnKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuc3VwcHJlc3NPbkJsdXIgPSBmYWxzZTtcbiAgICB9LCAyMDApXG4gIH1cblxuICBvbklucHV0KGV2ZW50OiBhbnkpIHtcbiAgICBpZiAodGhpcy5wYXJhbXM/LnR5cGUgPT09ICd0ZWwnKSB7XG4gICAgICB0aGlzLmlucHV0VmFsID0gdGhpcy5pbnB1dFZhbC5yZXBsYWNlKC9bXjAtOSgpK1xcLSBdL2csICcnKTtcbiAgICB9XG5cbiAgICB0aGlzLmZvcm1Db250cm9sPy5zZXRWYWx1ZSh0aGlzLmlucHV0VmFsKTtcbiAgICB0aGlzLmNoZWNrVmFsaWRpdHkoKTtcbiAgICAvKmlmICh0aGlzLnBhcmFtcz8uZXZlbnRMaXN0ZW5lcikge1xuICAgICAgdGhpcy5wYXJhbXM/LmV2ZW50TGlzdGVuZXIoe1xuICAgICAgICB0eXBlOiBJSW5wdXRFdmVudFR5cGUuSU5QVVRfQ0hBTkdFLFxuICAgICAgICB2YWx1ZTogdGhpcy5pbnB1dFZhbCxcbiAgICAgICAgZm9ybUNvbnRyb2w6IHRoaXMuZm9ybUNvbnRyb2xcbiAgICAgIH0gYXMgSUlucHV0RXZlbnQpLnRoZW4odGhpcy5vbkZpZWxkQ2FsbGJhY2suYmluZCh0aGlzKSk7XG4gICAgfSovXG4gIH1cblxuICBvbklucHV0RmllbGRDbGljayhldmVudDogYW55ID0gJ2lucHV0Jykge1xuICAgIGlmIChldmVudCA9PT0gJ2lucHV0JyB8fCBldmVudC50YXJnZXQuY2xhc3NMaXN0LmNvbnRhaW5zKCdzYS1pbnB1dC1maWVsZCcpKSB7XG4gICAgICB0aGlzLmZvcm1JbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICBpZiAodGhpcy5wYXJhbXM/LnR5cGUgIT09ICdlbWFpbCcpIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmZvcm1JbnB1dC5uYXRpdmVFbGVtZW50LnNldFNlbGVjdGlvblJhbmdlKHRoaXMuaW5wdXRWYWwubGVuZ3RoLCB0aGlzLmlucHV0VmFsLmxlbmd0aClcbiAgICAgIH0sIDEwKVxuICAgIH1cbiAgfVxuXG4gIGlucHV0SWNvbkNsaWNrKCkge1xuICAgIGlmICh0aGlzLnBhcmFtcz8udHlwZSA9PT0gJ3Bhc3N3b3JkJykge1xuICAgICAgdGhpcy5zdXBwcmVzc09uQmx1ciA9IHRydWU7XG4gICAgICBpZiAodGhpcy50eXBlID09PSAncGFzc3dvcmQnKSB7XG4gICAgICAgIHRoaXMudHlwZSA9ICd0ZXh0JztcbiAgICAgICAgdGhpcy5pY29uLm5hbWUgPSAnZXllX2ZpbGxlZCc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnR5cGUgPSAncGFzc3dvcmQnO1xuICAgICAgICB0aGlzLmljb24ubmFtZSA9ICdleWUnO1xuICAgICAgfVxuICAgICAgdGhpcy5vbklucHV0RmllbGRDbGljaygpO1xuICAgIH1cbiAgfVxuXG4gIC8qb25GaWVsZENhbGxiYWNrKHBhcmFtOiBJSW5wdXRQYXJhbSkge1xuICAgIHRoaXMuaWNvbiA9IHBhcmFtLmljb24gfHwgdGhpcy5pY29uO1xuICAgIHRoaXMuY2hlY2tWYWxpZGl0eSgpO1xuICB9Ki9cblxuICBnZXRGb3JtU3VwcG9ydFRleHQoKSB7XG4gICAgaWYgKHRoaXMuZm9ybUNvbnRyb2wuaW52YWxpZCAmJiB0aGlzLmZvcm1Db250cm9sLnRvdWNoZWQpIHtcbiAgICAgIHJldHVybiBnZXRWYWxpZGF0aW9uTWVzc2FnZSh0aGlzLmZvcm1Db250cm9sLmVycm9ycykgfHwgJ2ludmFsaWQgaW5wdXQnO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5wYXJhbXMuc3VwcG9ydFRleHQgfHwgJyc7XG4gICAgfVxuICB9XG5cbiAgcHJlZGVmaW5lZFZhbGlkYXRvcnM6IGFueSA9IHtcbiAgICBlbWFpbDogW1ZhbGlkYXRvcnMuZW1haWwsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgIHBhc3N3b3JkOiBbVmFsaWRhdG9ycy5taW5MZW5ndGgoOCksIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgIHRlbDogW1ZhbGlkYXRvcnMucGF0dGVybignXlswLTkgK1xcXFwtKCldKiQnKV1cbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElJbnB1dEljb24ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHNob3c/OiBib29sZWFuO1xuICBjb2xvcj86IHN0cmluZztcbiAgc2l6ZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJSW5wdXRQYXJhbSB7XG4gIHZhbGlkYXRvcnM/OiBhbnlbXTtcbiAgYXN5bmNWYWxpZGF0b3JzPzogYW55W107XG4gIHN1cHBvcnRUZXh0Pzogc3RyaW5nLFxuICBwbGFjZWhvbGRlcj86IHN0cmluZyxcbiAgdHlwZT86IHN0cmluZyxcbiAgZGVwZW5kZW50Pzogc3RyaW5nLFxuICBldmVudExpc3RlbmVyPzogRnVuY3Rpb24sXG4gIGljb24/OiBJSW5wdXRJY29uXG4gIGVycm9ycz86IHsgW2tleTogc3RyaW5nXTogYW55IH1cbn1cbmV4cG9ydCBpbnRlcmZhY2UgSUlucHV0RXZlbnQge1xuICB0eXBlOiBJSW5wdXRFdmVudFR5cGU7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGNhbGxCYWNrOiBhbnk7XG4gIGZvcm1Db250cm9sOiBGb3JtQ29udHJvbFxufVxuZXhwb3J0IGVudW0gSUlucHV0RXZlbnRUeXBlIHtcbiAgSU5QVVRfQ0hBTkdFID0gJ0lOUFVUX0NIQU5HRScsXG4gIFNUQVRFX0NIQU5HRSA9ICdTVEFURV9DSEFOR0UnLFxuICBJQ09OX0NMSUNLID0gJ0lDT05fQ0xJQ0snXG59IiwiPGRpdiBjbGFzcz1cInNhLWlucHV0XCIgW25nQ2xhc3NdPVwiZGlzYWJsZWQgPyAnZGlzYWJsZWQnIDogJycgXCI+XG4gICAgQGlmKHByZXRleHQgfHwgKCEhaW5wdXRWYWwubGVuZ3RoICYmICEhcGFyYW1zPy5wbGFjZWhvbGRlcikpe1xuICAgIDxzcGFuIGNsYXNzPVwic2EtaW5wdXQtdGFnXCI+e3twYXJhbXM/LnBsYWNlaG9sZGVyfX08L3NwYW4+XG4gICAgfVxuICAgIDxkaXYgY2xhc3M9XCJzYS1pbnB1dC1maWVsZFwiIFtuZ0NsYXNzXT1cImZvcm1Db250cm9sLmludmFsaWQgJiYgZm9ybUNvbnRyb2wudG91Y2hlZCA/ICdpbnZhbGlkJyA6ICdpZGxlJyBcIlxuICAgICAgICAoY2xpY2spPVwib25JbnB1dEZpZWxkQ2xpY2soJGV2ZW50KVwiPlxuICAgICAgICBAaWYocHJldGV4dCl7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYS1pbnB1dC1wcmV0ZXh0XCI+XG4gICAgICAgICAgICB7e3ByZXRleHR9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgICA8aW5wdXQgbWF0SW5wdXQgW3R5cGVdPVwidHlwZVwiIHZhbHVlPVwiXCIgW3BhdHRlcm5dPVwidHlwZT09PSd0ZWwnID8gJ1swLTldJyA6ICcnIFwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGQucHJvcHMuZGlzYWJsZWQgfHwgZmFsc2VcIiBbcGxhY2Vob2xkZXJdPVwiIXByZXRleHQgJiYgcGFyYW1zPy5wbGFjZWhvbGRlciB8fCAnJyBcIlxuICAgICAgICAgICAgKGZvY3VzKT1cIm9uRm9jdXMoKVwiIChibHVyKT1cIm9uQmx1cigpXCIgKGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50KVwiIFsobmdNb2RlbCldPVwiaW5wdXRWYWxcIiAjZm9ybUlucHV0IC8+XG5cbiAgICAgICAgQGlmKHBhcmFtcz8udHlwZSA9PT0gJ3Bhc3N3b3JkJyl7XG4gICAgICAgIDxzYS1pY29uIGNsYXNzPVwiZmxleFwiIGljb249XCJleWVcIiBbc2l6ZV09XCJpY29uLnNpemUgfHwgJzI0J1wiIChjbGljayk9XCJpbnB1dEljb25DbGljaygpXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIiFpY29uLm5hbWUgfHwgaWNvbi5uYW1lID09PSAnZXllJyA/ICcnIDogJ2hpZGUnXCI+PC9zYS1pY29uPlxuICAgICAgICA8c2EtaWNvbiBjbGFzcz1cImZsZXhcIiBpY29uPVwiZXllX2ZpbGxlZFwiIFtzaXplXT1cImljb24uc2l6ZSB8fCAnMjQnXCIgKGNsaWNrKT1cImlucHV0SWNvbkNsaWNrKClcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwiaWNvbi5uYW1lID09PSAnZXllX2ZpbGxlZCcgPyAnJyA6ICdoaWRlJ1wiPjwvc2EtaWNvbj5cbiAgICAgICAgfUBlbHNlIGlmKHBhcmFtcz8udHlwZSA9PT0gJ2VtYWlsJyAmJiBpY29uLnNob3cpe1xuICAgICAgICA8c2EtaWNvbiBjbGFzcz1cImZsZXhcIiBbaWNvbl09XCJpY29uLm5hbWUgfHwgJ2NoZWNrbWFyaydcIiBbc2l6ZV09XCJpY29uLnNpemUgfHwgJzI0J1wiIChjbGljayk9XCJpbnB1dEljb25DbGljaygpXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNob3dFbWFpbEljb24gPyAnJyA6ICdoaWRlJ1wiPjwvc2EtaWNvbj5cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSBpZihpY29uLm5hbWUpe1xuICAgICAgICA8c2EtaWNvbiBjbGFzcz1cImZsZXhcIiBbaWNvbl09XCJpY29uLm5hbWVcIiBbc2l6ZV09XCJpY29uLnNpemUgfHwgJzI0J1wiIFtjb2xvcl09XCJpY29uLmNvbG9yIHx8ICcnXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cImljb24uc2hvdyA/ICcnIDogJ2hpZGUnXCI+PC9zYS1pY29uPlxuICAgICAgICB9XG5cblxuICAgICAgICA8IS0tIDxzYS1pY29uIFtpY29uXT1cImljb25cIiBzaXplPVwiMjRcIiAoY2xpY2spPVwiaW5wdXRJY29uQ2xpY2soKVwiPjwvc2EtaWNvbj4gLS0+XG4gICAgPC9kaXY+XG4gICAgQGlmKCghZm9ybUNvbnRyb2wudmFsaWQpIHx8IChwYXJhbXMgJiYgcGFyYW1zLnN1cHBvcnRUZXh0KSl7XG4gICAgPGRpdiBjbGFzcz1cInN1cHBvcnQtbGFiZWxcIiBbbmdDbGFzc109XCJmb3JtQ29udHJvbC5pbnZhbGlkICYmIGZvcm1Db250cm9sLnRvdWNoZWQgPyAnaW52YWxpZCcgOiAnaWRsZSdcIj5cbiAgICAgICAgPCEtLSB7eyFmb3JtQ29udHJvbC52YWxpZCA/IGlucHV0RXJyb3JUZXh0IDogcGFyYW1zLnN1cHBvcnRUZXh0fX0gLS0+XG4gICAgICAgIHt7Z2V0Rm9ybVN1cHBvcnRUZXh0KCl9fVxuICAgIDwvZGl2PlxuICAgIH1cbjwvZGl2PiJdfQ==
|
|
185
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2Zvcm0taW5wdXQvZm9ybS1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnQtbGlicmFyeS9zcmMvbGliL2Zvcm0taW5wdXQvZm9ybS1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFnQyxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxTQUFTLEVBQW1CLE1BQU0sa0JBQWtCLENBQUM7QUFFOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBd0IsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFldkQsTUFBTSxPQUFPLGtCQUFtQixTQUFRLFNBQTBCO0lBMkJoRTtRQUNFLEtBQUssRUFBRSxDQUFDO1FBcEJWLGVBQVUsR0FBRyxNQUFNLENBQUM7UUFDcEIsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUdkLGlCQUFZLEdBQVEsSUFBSSxDQUFDO1FBQ3pCLG1DQUFtQztRQUNuQywyQkFBMkI7UUFFM0IsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUlsQixtQkFBYyxHQUFXLGVBQWUsQ0FBQztRQUV6QyxrQkFBYSxHQUFZLEtBQUssQ0FBQztRQUMvQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRWxCLG1C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QUFDLElBQUksR0FBRyxVQUFVLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLGFBQWEsQ0FBQztZQUNqQyxDQUFDO1lBQ0QsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDM0IsQ0FBQztJQUNILENBQUM7SUFFRDs7O09BR0c7SUFFSCxrQkFBa0I7UUFDaEIsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3pELE9BQU8sb0JBQW9CLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxlQUFlLENBQUM7UUFDMUUsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztRQUN2QyxDQUFDO0lBQ0gsQ0FBQzs4R0EzS1Usa0JBQWtCO2tHQUFsQixrQkFBa0IsNk5DdEIvQiwrbkVBc0NNLG92RER6QkYsWUFBWSw0SEFDWixXQUFXLHV3QkFDWCxtQkFBbUIsOEJBQ25CLFlBQVksK0JBQ1osYUFBYTs7MkZBS0osa0JBQWtCO2tCQWI5QixTQUFTOytCQUNFLFVBQVUsY0FDUixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsWUFBWTt3QkFDWixhQUFhO3FCQUNkO3dEQU11QixTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVc7Z0JBRVAsSUFBSTtzQkFBbEIsS0FBSzt1QkFBQyxNQUFNOztBQXdNZixNQUFNLENBQU4sSUFBWSxlQUlYO0FBSkQsV0FBWSxlQUFlO0lBQ3pCLGdEQUE2QixDQUFBO0lBQzdCLGdEQUE2QixDQUFBO0lBQzdCLDRDQUF5QixDQUFBO0FBQzNCLENBQUMsRUFKVyxlQUFlLEtBQWYsZUFBZSxRQUkxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtQ29udHJvbCwgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGb3JtbHlNb2R1bGUgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7IEZpZWxkVHlwZSwgRmllbGRUeXBlQ29uZmlnIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBnZXRWYWxpZGF0aW9uTWVzc2FnZSwgcGhvbmVOdW1iZXJWYWxpZGF0b3IgfSBmcm9tICcuLi8uLi91dGlscy92YWxpZGF0b3JzJztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICcuLi9pY29uL2ljb24uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2EtaW5wdXQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgRm9ybWx5TW9kdWxlLFxuICAgIEljb25Db21wb25lbnRcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0taW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZm9ybS1pbnB1dC5jb21wb25lbnQuY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBGb3JtSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBGaWVsZFR5cGU8RmllbGRUeXBlQ29uZmlnPiB7XG5cbiAgQFZpZXdDaGlsZCgnZm9ybUlucHV0JykgZm9ybUlucHV0ITogRWxlbWVudFJlZjtcblxuICBASW5wdXQoJ2ljb24nKSBpY29uOiBJSW5wdXRJY29uO1xuXG4gIHByZXRleHQ6IHN0cmluZztcblxuICBpbnB1dFN0YXRlID0gJ2lkbGUnO1xuICBpbnB1dFZhbCA9ICcnO1xuICBwYXJhbXM6IElJbnB1dFBhcmFtIHwgbnVsbDtcbiAgZGVwZW5kZW50OiBBYnN0cmFjdENvbnRyb2w8YW55LCBhbnk+IHwgbnVsbDtcbiAgZGVwZW5kZW50VmFsOiBhbnkgPSBudWxsO1xuICAvLyBkeW5hbWljSWNvbjogRHluYW1pY0ljb24gfCBudWxsO1xuICAvLyBpY29uOiBJSW5wdXRJY29uIHwgbnVsbDtcblxuICB0eXBlOiBzdHJpbmcgPSAnJztcbiAgdmFsaWRhdG9yczogYW55W107XG4gIGFzeW5jVmFsaWRhdG9yczogYW55W107XG5cbiAgaW5wdXRFcnJvclRleHQ6IHN0cmluZyA9ICdpbnZhbGlkIGlucHV0JztcblxuICBzaG93RW1haWxJY29uOiBib29sZWFuID0gZmFsc2U7XG4gIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBzdXBwcmVzc09uQmx1ciA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG5cbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaW5wdXRWYWwgPSB0aGlzLmZpZWxkLnByb3BzWyd2YWx1ZSddO1xuICAgIHRoaXMuZGlzYWJsZWQgPSB0aGlzLmZpZWxkLnByb3BzLmRpc2FibGVkIHx8IGZhbHNlO1xuICAgIHRoaXMuZm9ybUNvbnRyb2w/LnNldFZhbHVlKHRoaXMuaW5wdXRWYWwpO1xuXG4gICAgdGhpcy5wYXJhbXMgPSB0aGlzLmZpZWxkLnByb3BzWydwYXJhbXMnXTtcbiAgICB0aGlzLmljb24gPSB0aGlzLmZpZWxkLnByb3BzWydpY29uJ10gfHwge307XG4gICAgdGhpcy50eXBlID0gdGhpcy5wYXJhbXM/LnR5cGUgfHwgJyc7XG5cbiAgICAvLyB0aGlzLmR5bmFtaWNJY29uID0gdGhpcy5maWVsZC5wcm9wc1snZHluYW1pY0ljb24nXTtcbiAgICB0aGlzLnNldFZhbGlkYXRvcnMoKTtcbiAgICB0aGlzLnNldERlcGVuZGVudHMoKTtcblxuICAgIHRoaXMuZm9ybUNvbnRyb2wuc3RhdHVzQ2hhbmdlcy5zdWJzY3JpYmUoKHN0YXRlKSA9PiB7XG4gICAgICBpZiAodGhpcy50eXBlID09PSAnZW1haWwnKSB7XG4gICAgICAgIGlmKCEhdGhpcy5pbnB1dFZhbCAmJiAhdGhpcy5mb3JtQ29udHJvbC50b3VjaGVkKXtcbiAgICAgICAgICB0aGlzLmZvcm1Db250cm9sLm1hcmtBc1RvdWNoZWQoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNob3dFbWFpbEljb24gPSAoKHN0YXRlID09PSAnVkFMSUQnKSB8fCAoc3RhdGUgPT09ICdJTlZBTElEJyAmJiB0aGlzLmZvcm1Db250cm9sLmhhc0Vycm9yKCdpbnZhbGlkJykgJiYgISF0aGlzLmZvcm1Db250cm9sLnZhbHVlKSk7XG4gICAgICB9XG4gICAgfSlcbiAgICB0aGlzLmZvcm1Db250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbCkgPT4ge1xuICAgICAgdGhpcy5mb3JtSW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSA9IHZhbDtcbiAgICB9KVxuICB9XG5cbiAgc2V0VmFsaWRhdG9ycygpIHtcbiAgICB0aGlzLnZhbGlkYXRvcnMgPSB0aGlzLnBhcmFtcz8udmFsaWRhdG9ycyB8fCBbXTtcbiAgICB0aGlzLmFzeW5jVmFsaWRhdG9ycyA9IHRoaXMucGFyYW1zPy5hc3luY1ZhbGlkYXRvcnMgfHwgW107XG4gICAgdGhpcy5mb3JtQ29udHJvbD8uc2V0VmFsaWRhdG9ycyhbLi4uKHRoaXMudHlwZSA/IHRoaXMucHJlZGVmaW5lZFZhbGlkYXRvcnNbdGhpcy50eXBlXSB8fCBbXSA6IFtdKSwgLi4udGhpcy52YWxpZGF0b3JzXSk7XG4gICAgaWYgKHRoaXMuYXN5bmNWYWxpZGF0b3JzKVxuICAgICAgdGhpcy5mb3JtQ29udHJvbD8uc2V0QXN5bmNWYWxpZGF0b3JzKHRoaXMuYXN5bmNWYWxpZGF0b3JzKTtcbiAgfVxuXG4gIC8qXG4gICAgQXNzdW1pbmcgZGVwZW5kZW50IGZpZWxkIGlzIGEgc2luZ2xlIHNlbGVjdCBkcm9wZG93blxuICAqL1xuICBzZXREZXBlbmRlbnRzKCkge1xuICAgIGlmICh0aGlzLnBhcmFtcz8uZGVwZW5kZW50KSB7XG4gICAgICB0aGlzLmRlcGVuZGVudCA9IHRoaXMuZm9ybS5nZXQoW3RoaXMucGFyYW1zPy5kZXBlbmRlbnRdKTtcblxuICAgICAgdGhpcy5kZXBlbmRlbnRWYWwgPSB0aGlzLmdldERlcGVuZGVudFZhbCh0aGlzLmRlcGVuZGVudC52YWx1ZSk7XG4gICAgICBpZiAodGhpcy50eXBlID09PSAndGVsJykge1xuICAgICAgICB0aGlzLnByZXRleHQgPSB0aGlzLmRlcGVuZGVudFZhbD8uZGlhbF9jb2RlO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmRlcGVuZGVudD8udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsKSA9PiB7XG4gICAgICAgIHRoaXMuZGVwZW5kZW50VmFsID0gdGhpcy5nZXREZXBlbmRlbnRWYWwodmFsKTtcbiAgICAgICAgdGhpcy5mb3JtQ29udHJvbC5yZXNldCgpO1xuICAgICAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKHRoaXMuaW5wdXRWYWwpO1xuICAgICAgICBpZiAodGhpcy50eXBlID09PSAndGVsJykge1xuICAgICAgICAgIHRoaXMucHJldGV4dCA9IHRoaXMuZGVwZW5kZW50VmFsPy5kaWFsX2NvZGU7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuICB9XG4gIGdldERlcGVuZGVudFZhbCh2YWx1ZTogYW55KSB7XG4gICAgbGV0IGRlcGVuZGVudFZhbHVlOiBhbnk7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICBkZXBlbmRlbnRWYWx1ZSA9IHZhbHVlLmxlbmd0aCA/IHZhbHVlWzBdIDogbnVsbDtcbiAgICB9IGVsc2Uge1xuICAgICAgZGVwZW5kZW50VmFsdWUgPSB2YWx1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGRlcGVuZGVudFZhbHVlO1xuICB9XG5cbiAgY2hlY2tWYWxpZGl0eShkZWZhdWx0SW5wdXRTdGF0ZSA9ICdmb2N1cycpIHtcbiAgICBpZiAodGhpcy5mb3JtQ29udHJvbCAmJiAhdGhpcy5mb3JtQ29udHJvbC52YWxpZCAmJiB0aGlzLmZvcm1Db250cm9sLnRvdWNoZWQgJiYgIXRoaXMuZm9ybUNvbnRyb2wucGVuZGluZykge1xuICAgICAgdGhpcy5pbnB1dFN0YXRlID0gJ2ludmFsaWQnO1xuICAgICAgdGhpcy5pbnB1dEVycm9yVGV4dCA9IGdldFZhbGlkYXRpb25NZXNzYWdlKHRoaXMuZm9ybUNvbnRyb2wuZXJyb3JzKSB8fCAnaW52YWxpZCBpbnB1dCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5wdXRTdGF0ZSA9IGRlZmF1bHRJbnB1dFN0YXRlO1xuICAgIH1cbiAgfVxuXG4gIG9uRm9jdXMoKSB7XG4gICAgaWYgKHRoaXMuZm9ybUNvbnRyb2wudmFsaWQpXG4gICAgICB0aGlzLmlucHV0U3RhdGUgPSAnZm9jdXMnXG4gIH1cbiAgb25CbHVyKCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLnN1cHByZXNzT25CbHVyKSB7XG4gICAgICAgIHRoaXMuZm9ybUNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xuICAgICAgICB0aGlzLmNoZWNrVmFsaWRpdHkoJ2lkbGUnKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuc3VwcHJlc3NPbkJsdXIgPSBmYWxzZTtcbiAgICB9LCAyMDApXG4gIH1cblxuICBvbklucHV0KGV2ZW50OiBhbnkpIHtcbiAgICBpZiAodGhpcy5wYXJhbXM/LnR5cGUgPT09ICd0ZWwnKSB7XG4gICAgICB0aGlzLmlucHV0VmFsID0gdGhpcy5pbnB1dFZhbC5yZXBsYWNlKC9bXjAtOSgpK1xcLSBdL2csICcnKTtcbiAgICB9XG5cbiAgICB0aGlzLmZvcm1Db250cm9sPy5zZXRWYWx1ZSh0aGlzLmlucHV0VmFsKTtcbiAgICB0aGlzLmNoZWNrVmFsaWRpdHkoKTtcbiAgICAvKmlmICh0aGlzLnBhcmFtcz8uZXZlbnRMaXN0ZW5lcikge1xuICAgICAgdGhpcy5wYXJhbXM/LmV2ZW50TGlzdGVuZXIoe1xuICAgICAgICB0eXBlOiBJSW5wdXRFdmVudFR5cGUuSU5QVVRfQ0hBTkdFLFxuICAgICAgICB2YWx1ZTogdGhpcy5pbnB1dFZhbCxcbiAgICAgICAgZm9ybUNvbnRyb2w6IHRoaXMuZm9ybUNvbnRyb2xcbiAgICAgIH0gYXMgSUlucHV0RXZlbnQpLnRoZW4odGhpcy5vbkZpZWxkQ2FsbGJhY2suYmluZCh0aGlzKSk7XG4gICAgfSovXG4gIH1cblxuICBvbklucHV0RmllbGRDbGljayhldmVudDogYW55ID0gJ2lucHV0Jykge1xuICAgIGlmIChldmVudCA9PT0gJ2lucHV0JyB8fCBldmVudC50YXJnZXQuY2xhc3NMaXN0LmNvbnRhaW5zKCdzYS1pbnB1dC1maWVsZCcpKSB7XG4gICAgICB0aGlzLmZvcm1JbnB1dC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICBpZiAodGhpcy5wYXJhbXM/LnR5cGUgIT09ICdlbWFpbCcpIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmZvcm1JbnB1dC5uYXRpdmVFbGVtZW50LnNldFNlbGVjdGlvblJhbmdlKHRoaXMuaW5wdXRWYWwubGVuZ3RoLCB0aGlzLmlucHV0VmFsLmxlbmd0aClcbiAgICAgIH0sIDEwKVxuICAgIH1cbiAgfVxuXG4gIGlucHV0SWNvbkNsaWNrKCkge1xuICAgIGlmICh0aGlzLnBhcmFtcz8udHlwZSA9PT0gJ3Bhc3N3b3JkJykge1xuICAgICAgdGhpcy5zdXBwcmVzc09uQmx1ciA9IHRydWU7XG4gICAgICBpZiAodGhpcy50eXBlID09PSAncGFzc3dvcmQnKSB7XG4gICAgICAgIHRoaXMudHlwZSA9ICd0ZXh0JztcbiAgICAgICAgdGhpcy5pY29uLm5hbWUgPSAnZXllRmlsbGVkJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudHlwZSA9ICdwYXNzd29yZCc7XG4gICAgICAgIHRoaXMuaWNvbi5uYW1lID0gJ2V5ZU91dGxpbmVkJztcbiAgICAgIH1cbiAgICAgIHRoaXMub25JbnB1dEZpZWxkQ2xpY2soKTtcbiAgICB9XG4gIH1cblxuICAvKm9uRmllbGRDYWxsYmFjayhwYXJhbTogSUlucHV0UGFyYW0pIHtcbiAgICB0aGlzLmljb24gPSBwYXJhbS5pY29uIHx8IHRoaXMuaWNvbjtcbiAgICB0aGlzLmNoZWNrVmFsaWRpdHkoKTtcbiAgfSovXG5cbiAgZ2V0Rm9ybVN1cHBvcnRUZXh0KCkge1xuICAgIGlmICh0aGlzLmZvcm1Db250cm9sLmludmFsaWQgJiYgdGhpcy5mb3JtQ29udHJvbC50b3VjaGVkKSB7XG4gICAgICByZXR1cm4gZ2V0VmFsaWRhdGlvbk1lc3NhZ2UodGhpcy5mb3JtQ29udHJvbC5lcnJvcnMpIHx8ICdpbnZhbGlkIGlucHV0JztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMucGFyYW1zLnN1cHBvcnRUZXh0IHx8ICcnO1xuICAgIH1cbiAgfVxuXG4gIHByZWRlZmluZWRWYWxpZGF0b3JzOiBhbnkgPSB7XG4gICAgZW1haWw6IFtWYWxpZGF0b3JzLmVtYWlsLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICBwYXNzd29yZDogW1ZhbGlkYXRvcnMubWluTGVuZ3RoKDgpLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICB0ZWw6IFtWYWxpZGF0b3JzLnBhdHRlcm4oJ15bMC05ICtcXFxcLSgpXSokJyldXG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJSW5wdXRJY29uIHtcbiAgbmFtZTogc3RyaW5nO1xuICBzaG93PzogYm9vbGVhbjtcbiAgY29sb3I/OiBzdHJpbmc7XG4gIHNpemU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUlucHV0UGFyYW0ge1xuICB2YWxpZGF0b3JzPzogYW55W107XG4gIGFzeW5jVmFsaWRhdG9ycz86IGFueVtdO1xuICBzdXBwb3J0VGV4dD86IHN0cmluZyxcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmcsXG4gIHR5cGU/OiBzdHJpbmcsXG4gIGRlcGVuZGVudD86IHN0cmluZyxcbiAgZXZlbnRMaXN0ZW5lcj86IEZ1bmN0aW9uLFxuICBpY29uPzogSUlucHV0SWNvblxuICBlcnJvcnM/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9XG59XG5leHBvcnQgaW50ZXJmYWNlIElJbnB1dEV2ZW50IHtcbiAgdHlwZTogSUlucHV0RXZlbnRUeXBlO1xuICB2YWx1ZTogc3RyaW5nO1xuICBjYWxsQmFjazogYW55O1xuICBmb3JtQ29udHJvbDogRm9ybUNvbnRyb2xcbn1cbmV4cG9ydCBlbnVtIElJbnB1dEV2ZW50VHlwZSB7XG4gIElOUFVUX0NIQU5HRSA9ICdJTlBVVF9DSEFOR0UnLFxuICBTVEFURV9DSEFOR0UgPSAnU1RBVEVfQ0hBTkdFJyxcbiAgSUNPTl9DTElDSyA9ICdJQ09OX0NMSUNLJ1xufSIsIjxkaXYgY2xhc3M9XCJzYS1pbnB1dFwiIFtuZ0NsYXNzXT1cImRpc2FibGVkID8gJ2Rpc2FibGVkJyA6ICcnIFwiPlxuICAgIEBpZihwcmV0ZXh0IHx8ICghIWlucHV0VmFsLmxlbmd0aCAmJiAhIXBhcmFtcz8ucGxhY2Vob2xkZXIpKXtcbiAgICA8c3BhbiBjbGFzcz1cInNhLWlucHV0LXRhZ1wiPnt7cGFyYW1zPy5wbGFjZWhvbGRlcn19PC9zcGFuPlxuICAgIH1cbiAgICA8ZGl2IGNsYXNzPVwic2EtaW5wdXQtZmllbGRcIiBbbmdDbGFzc109XCJmb3JtQ29udHJvbC5pbnZhbGlkICYmIGZvcm1Db250cm9sLnRvdWNoZWQgPyAnaW52YWxpZCcgOiAnaWRsZScgXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uSW5wdXRGaWVsZENsaWNrKCRldmVudClcIj5cbiAgICAgICAgQGlmKHByZXRleHQpe1xuICAgICAgICA8ZGl2IGNsYXNzPVwic2EtaW5wdXQtcHJldGV4dFwiPlxuICAgICAgICAgICAge3twcmV0ZXh0fX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgPGlucHV0IG1hdElucHV0IFt0eXBlXT1cInR5cGVcIiB2YWx1ZT1cIlwiIFtwYXR0ZXJuXT1cInR5cGU9PT0ndGVsJyA/ICdbMC05XScgOiAnJyBcIlxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZpZWxkLnByb3BzLmRpc2FibGVkIHx8IGZhbHNlXCIgW3BsYWNlaG9sZGVyXT1cIiFwcmV0ZXh0ICYmIHBhcmFtcz8ucGxhY2Vob2xkZXIgfHwgJycgXCJcbiAgICAgICAgICAgIChmb2N1cyk9XCJvbkZvY3VzKClcIiAoYmx1cik9XCJvbkJsdXIoKVwiIChpbnB1dCk9XCJvbklucHV0KCRldmVudClcIiBbKG5nTW9kZWwpXT1cImlucHV0VmFsXCIgI2Zvcm1JbnB1dCAvPlxuXG4gICAgICAgIEBpZihwYXJhbXM/LnR5cGUgPT09ICdwYXNzd29yZCcpe1xuICAgICAgICA8c2EtaWNvbiBjbGFzcz1cImZsZXhcIiBpY29uPVwiZXllT3V0bGluZWRcIiBbc2l6ZV09XCJpY29uLnNpemUgfHwgJzI0J1wiIChjbGljayk9XCJpbnB1dEljb25DbGljaygpXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIiFpY29uLm5hbWUgfHwgaWNvbi5uYW1lID09PSAnZXllT3V0bGluZWQnID8gJycgOiAnaGlkZSdcIj48L3NhLWljb24+XG4gICAgICAgIDxzYS1pY29uIGNsYXNzPVwiZmxleFwiIGljb249XCJleWVGaWxsZWRcIiBbc2l6ZV09XCJpY29uLnNpemUgfHwgJzI0J1wiIChjbGljayk9XCJpbnB1dEljb25DbGljaygpXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cImljb24ubmFtZSA9PT0gJ2V5ZUZpbGxlZCcgPyAnJyA6ICdoaWRlJ1wiPjwvc2EtaWNvbj5cbiAgICAgICAgfUBlbHNlIGlmKHBhcmFtcz8udHlwZSA9PT0gJ2VtYWlsJyAmJiBpY29uLnNob3cpe1xuICAgICAgICA8c2EtaWNvbiBjbGFzcz1cImZsZXhcIiBbaWNvbl09XCJpY29uLm5hbWUgfHwgJ2NoZWNrQ2lyY2xlT3V0bGluZWQnXCIgW3NpemVdPVwiaWNvbi5zaXplIHx8ICcyNCdcIlxuICAgICAgICAgICAgKGNsaWNrKT1cImlucHV0SWNvbkNsaWNrKClcIiBbbmdDbGFzc109XCJzaG93RW1haWxJY29uID8gJycgOiAnaGlkZSdcIj48L3NhLWljb24+XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2UgaWYoaWNvbi5uYW1lKXtcbiAgICAgICAgPHNhLWljb24gY2xhc3M9XCJmbGV4XCIgW2ljb25dPVwiaWNvbi5uYW1lXCIgW3NpemVdPVwiaWNvbi5zaXplIHx8ICcyNCdcIiBbY29sb3JdPVwiaWNvbi5jb2xvciB8fCAnJ1wiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJpY29uLnNob3cgPyAnJyA6ICdoaWRlJ1wiPjwvc2EtaWNvbj5cbiAgICAgICAgfVxuXG5cbiAgICAgICAgPCEtLSA8c2EtaWNvbiBbaWNvbl09XCJpY29uXCIgc2l6ZT1cIjI0XCIgKGNsaWNrKT1cImlucHV0SWNvbkNsaWNrKClcIj48L3NhLWljb24+IC0tPlxuICAgIDwvZGl2PlxuICAgIEBpZigoIWZvcm1Db250cm9sLnZhbGlkKSB8fCAocGFyYW1zICYmIHBhcmFtcy5zdXBwb3J0VGV4dCkpe1xuICAgIDxkaXYgY2xhc3M9XCJzdXBwb3J0LWxhYmVsXCIgW25nQ2xhc3NdPVwiZm9ybUNvbnRyb2wuaW52YWxpZCAmJiBmb3JtQ29udHJvbC50b3VjaGVkID8gJ2ludmFsaWQnIDogJ2lkbGUnXCI+XG4gICAgICAgIDwhLS0ge3shZm9ybUNvbnRyb2wudmFsaWQgPyBpbnB1dEVycm9yVGV4dCA6IHBhcmFtcy5zdXBwb3J0VGV4dH19IC0tPlxuICAgICAgICB7e2dldEZvcm1TdXBwb3J0VGV4dCgpfX1cbiAgICA8L2Rpdj5cbiAgICB9XG48L2Rpdj4iXX0=
|