asksuite-citrus 0.0.12 → 0.2.1

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.
Files changed (26) hide show
  1. package/assets/citrus-i18n/en.json +11 -0
  2. package/assets/citrus-i18n/es.json +11 -0
  3. package/assets/citrus-i18n/pt.json +11 -0
  4. package/esm2022/lib/asksuite-citrus.module.mjs +12 -4
  5. package/esm2022/lib/components/autocomplete/autocomplete.component.mjs +64 -26
  6. package/esm2022/lib/components/avatar/avatar.component.mjs +2 -2
  7. package/esm2022/lib/components/box/box.component.mjs +2 -2
  8. package/esm2022/lib/components/button/button.component.mjs +14 -7
  9. package/esm2022/lib/components/checkbox/checkbox.component.mjs +2 -2
  10. package/esm2022/lib/components/chips/chips.component.mjs +2 -2
  11. package/esm2022/lib/components/date-picker/date-picker-calendar/date-picker-calendar.component.mjs +35 -18
  12. package/esm2022/lib/components/date-picker/date-picker.component.mjs +90 -46
  13. package/esm2022/lib/components/dropdown-container/dropdown-container.component.mjs +2 -2
  14. package/esm2022/lib/components/input/input.component.mjs +2 -2
  15. package/esm2022/lib/components/select/select.component.mjs +2 -2
  16. package/esm2022/lib/directives/ask-dropdown.directive.mjs +12 -6
  17. package/fesm2022/asksuite-citrus.mjs +266 -152
  18. package/fesm2022/asksuite-citrus.mjs.map +1 -1
  19. package/lib/asksuite-citrus.module.d.ts +3 -1
  20. package/lib/components/autocomplete/autocomplete.component.d.ts +12 -5
  21. package/lib/components/button/button.component.d.ts +6 -5
  22. package/lib/components/date-picker/date-picker-calendar/date-picker-calendar.component.d.ts +19 -5
  23. package/lib/components/date-picker/date-picker.component.d.ts +18 -9
  24. package/lib/directives/ask-dropdown.directive.d.ts +3 -2
  25. package/package.json +1 -1
  26. package/styles/styles.scss +4 -0
@@ -7,31 +7,38 @@ export class ButtonComponent {
7
7
  this.label = '';
8
8
  this.size = 'normal';
9
9
  this.type = 'primary';
10
+ this.rounded = false;
10
11
  this.disabled = false;
12
+ this.labelSide = 'left';
11
13
  // Event handlers
12
14
  this.onClick = new EventEmitter();
13
15
  this.onFocus = new EventEmitter();
14
16
  this.onBlur = new EventEmitter();
15
17
  }
16
- ngOnInit() {
17
- }
18
18
  get buttonClasses() {
19
- return `${this.type} ${this.size}`;
19
+ return `${this.type} ${this.size} ${this.rounded ? 'rounded' : ''}`;
20
+ }
21
+ get labelClass() {
22
+ return `-${this.labelSide}`;
20
23
  }
21
24
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: ButtonComponent, selector: "ask-button", inputs: { label: "label", size: "size", type: "type", disabled: "disabled" }, outputs: { onClick: "onClick", onFocus: "onFocus", onBlur: "onBlur" }, ngImport: i0, template: "<button\n type=\"button\"\n [ngClass]=\"buttonClasses\"\n [disabled]=\"disabled\"\n (click)=\"onClick.emit($event)\"\n (focus)=\"onFocus.emit($event)\"\n (blur)=\"onBlur.emit($event)\"\n>\n {{ label }}\n <ng-content></ng-content>\n</button>\n", styles: [":root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}button{position:relative;display:flex;padding:8px 24px;background:#FF5724;color:#fff;border-radius:6px;border:none;outline:none;line-height:2.286em;cursor:pointer;transition:background-color .1s,box-shadow .1s}button.small{font-size:.75rem}button.xsmall{font-size:.75rem;line-height:.75rem;padding:8px 16px}button.normal{font-size:.875rem}button.medium{font-size:1rem}button.large{font-size:1.125rem}button:hover:not(:disabled){box-shadow:0 0 6px #ff572466}button:active:not(:disabled){background-color:#f34915}button:disabled{cursor:not-allowed;background-color:#9aa5b1}button.secondary{background:none;color:#9aa5b1;box-shadow:0 1px 2px #2a304229}button.secondary:hover:not(:disabled){box-shadow:0 0 6px #2a304229}button.secondary:active:not(:disabled){background-color:#e4e7eb}button.secondary:disabled{cursor:not-allowed;background-color:#9aa5b1;color:#fff}button.outline{background:none;color:#ff5724}button.outline:after{content:\"\";position:absolute;width:100%;height:100%;top:0;left:0;border-radius:6px;box-shadow:0 0 0 2px inset #ff5724}button.outline:active:not(:disabled){background-color:#ff572419}button.outline:disabled{color:#9aa5b1}button.outline:disabled:after{box-shadow:0 0 0 2px inset #9aa5b1}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: ButtonComponent, selector: "ask-button", inputs: { label: "label", size: "size", type: "type", rounded: "rounded", disabled: "disabled", labelSide: "labelSide" }, outputs: { onClick: "onClick", onFocus: "onFocus", onBlur: "onBlur" }, ngImport: i0, template: "<button\n type=\"button\"\n data-testid=\"button\"\n [ngClass]=\"buttonClasses\"\n [disabled]=\"disabled\"\n (click)=\"onClick.emit($event)\"\n (focus)=\"onFocus.emit($event)\"\n (blur)=\"onBlur.emit($event)\"\n>\n <span data-testid=\"label\" *ngIf=\"label\" class=\"label\" [ngClass]=\"labelClass\">{{ label }}</span>\n <ng-content></ng-content>\n</button>\n", styles: [":root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}input{font-size:1rem}button{position:relative;display:flex;padding:8px 24px;background:#FF5724;color:#fff;border-radius:6px;border:none;outline:none;line-height:2.286em;cursor:pointer;gap:8px;transition:background-color .1s,box-shadow .1s;font-weight:500}button.small{font-size:.75rem}button.xsmall{font-size:.75rem;line-height:.75rem;padding:8px 16px}button.normal{font-size:.875rem}button.medium{font-size:1rem}button.large{font-size:1.125rem}button.rounded{border-radius:99999px}button>.label{order:1}button>.label.-left{order:0}button:hover:not(:disabled){box-shadow:0 0 6px #ff572466}button:active:not(:disabled){background-color:#f34915}button:disabled{cursor:not-allowed;background-color:#9aa5b1}button.secondary{background:none;color:#616e7c;box-shadow:0 1px 2px #2a304229}button.secondary:hover:not(:disabled){box-shadow:0 0 6px #2a304229}button.secondary:active:not(:disabled){background-color:#e4e7eb}button.secondary:disabled{cursor:not-allowed;background-color:#9aa5b1;color:#fff}button.outline{background:none;color:#ff5724}button.outline:after{content:\"\";position:absolute;width:100%;height:100%;top:0;left:0;border-radius:6px;box-shadow:0 0 0 2px inset #ff5724}button.outline:active:not(:disabled){background-color:#ff572419}button.outline:disabled{color:#9aa5b1}button.outline:disabled:after{box-shadow:0 0 0 2px inset #9aa5b1}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
23
26
  }
24
27
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: ButtonComponent, decorators: [{
25
28
  type: Component,
26
- args: [{ selector: 'ask-button', template: "<button\n type=\"button\"\n [ngClass]=\"buttonClasses\"\n [disabled]=\"disabled\"\n (click)=\"onClick.emit($event)\"\n (focus)=\"onFocus.emit($event)\"\n (blur)=\"onBlur.emit($event)\"\n>\n {{ label }}\n <ng-content></ng-content>\n</button>\n", styles: [":root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}button{position:relative;display:flex;padding:8px 24px;background:#FF5724;color:#fff;border-radius:6px;border:none;outline:none;line-height:2.286em;cursor:pointer;transition:background-color .1s,box-shadow .1s}button.small{font-size:.75rem}button.xsmall{font-size:.75rem;line-height:.75rem;padding:8px 16px}button.normal{font-size:.875rem}button.medium{font-size:1rem}button.large{font-size:1.125rem}button:hover:not(:disabled){box-shadow:0 0 6px #ff572466}button:active:not(:disabled){background-color:#f34915}button:disabled{cursor:not-allowed;background-color:#9aa5b1}button.secondary{background:none;color:#9aa5b1;box-shadow:0 1px 2px #2a304229}button.secondary:hover:not(:disabled){box-shadow:0 0 6px #2a304229}button.secondary:active:not(:disabled){background-color:#e4e7eb}button.secondary:disabled{cursor:not-allowed;background-color:#9aa5b1;color:#fff}button.outline{background:none;color:#ff5724}button.outline:after{content:\"\";position:absolute;width:100%;height:100%;top:0;left:0;border-radius:6px;box-shadow:0 0 0 2px inset #ff5724}button.outline:active:not(:disabled){background-color:#ff572419}button.outline:disabled{color:#9aa5b1}button.outline:disabled:after{box-shadow:0 0 0 2px inset #9aa5b1}\n"] }]
27
- }], ctorParameters: function () { return []; }, propDecorators: { label: [{
29
+ args: [{ selector: 'ask-button', template: "<button\n type=\"button\"\n data-testid=\"button\"\n [ngClass]=\"buttonClasses\"\n [disabled]=\"disabled\"\n (click)=\"onClick.emit($event)\"\n (focus)=\"onFocus.emit($event)\"\n (blur)=\"onBlur.emit($event)\"\n>\n <span data-testid=\"label\" *ngIf=\"label\" class=\"label\" [ngClass]=\"labelClass\">{{ label }}</span>\n <ng-content></ng-content>\n</button>\n", styles: [":root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}input{font-size:1rem}button{position:relative;display:flex;padding:8px 24px;background:#FF5724;color:#fff;border-radius:6px;border:none;outline:none;line-height:2.286em;cursor:pointer;gap:8px;transition:background-color .1s,box-shadow .1s;font-weight:500}button.small{font-size:.75rem}button.xsmall{font-size:.75rem;line-height:.75rem;padding:8px 16px}button.normal{font-size:.875rem}button.medium{font-size:1rem}button.large{font-size:1.125rem}button.rounded{border-radius:99999px}button>.label{order:1}button>.label.-left{order:0}button:hover:not(:disabled){box-shadow:0 0 6px #ff572466}button:active:not(:disabled){background-color:#f34915}button:disabled{cursor:not-allowed;background-color:#9aa5b1}button.secondary{background:none;color:#616e7c;box-shadow:0 1px 2px #2a304229}button.secondary:hover:not(:disabled){box-shadow:0 0 6px #2a304229}button.secondary:active:not(:disabled){background-color:#e4e7eb}button.secondary:disabled{cursor:not-allowed;background-color:#9aa5b1;color:#fff}button.outline{background:none;color:#ff5724}button.outline:after{content:\"\";position:absolute;width:100%;height:100%;top:0;left:0;border-radius:6px;box-shadow:0 0 0 2px inset #ff5724}button.outline:active:not(:disabled){background-color:#ff572419}button.outline:disabled{color:#9aa5b1}button.outline:disabled:after{box-shadow:0 0 0 2px inset #9aa5b1}\n"] }]
30
+ }], propDecorators: { label: [{
28
31
  type: Input
29
32
  }], size: [{
30
33
  type: Input
31
34
  }], type: [{
32
35
  type: Input
36
+ }], rounded: [{
37
+ type: Input
33
38
  }], disabled: [{
34
39
  type: Input
40
+ }], labelSide: [{
41
+ type: Input
35
42
  }], onClick: [{
36
43
  type: Output
37
44
  }], onFocus: [{
@@ -39,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
39
46
  }], onBlur: [{
40
47
  type: Output
41
48
  }] } });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fza3N1aXRlLWNpdHJ1cy9zcmMvbGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hc2tzdWl0ZS1jaXRydXMvc3JjL2xpYi9jb21wb25lbnRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQzs7O0FBTzdFLE1BQU0sT0FBTyxlQUFlO0lBYTFCO1FBWEEsYUFBYTtRQUNKLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDWCxTQUFJLEdBQXVELFFBQVEsQ0FBQztRQUNwRSxTQUFJLEdBQXdDLFNBQVMsQ0FBQztRQUN0RCxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRTFCLGlCQUFpQjtRQUNQLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBQ3pDLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO1FBQ3pDLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBYyxDQUFDO0lBRWxDLENBQUM7SUFFakIsUUFBUTtJQUNSLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDckMsQ0FBQzs4R0FwQlUsZUFBZTtrR0FBZixlQUFlLHVNQ1A1Qiw0UEFXQTs7MkZESmEsZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxZQUFZOzBFQU9iLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR0ksT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Fzay1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYnV0dG9uLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAvLyBQcm9wZXJ0aWVzXG4gIEBJbnB1dCgpIGxhYmVsID0gJyc7XG4gIEBJbnB1dCgpIHNpemU6ICd4c21hbGwnIHwgJ3NtYWxsJyB8ICdub3JtYWwnIHwgJ21lZGl1bScgfCAnbGFyZ2UnID0gJ25vcm1hbCc7XG4gIEBJbnB1dCgpIHR5cGU6ICdwcmltYXJ5JyB8ICdzZWNvbmRhcnknIHwgJ291dGxpbmUnID0gJ3ByaW1hcnknO1xuICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gIC8vIEV2ZW50IGhhbmRsZXJzXG4gIEBPdXRwdXQoKSBvbkNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xuICBAT3V0cHV0KCkgb25Gb2N1cyA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4oKTtcbiAgQE91dHB1dCgpIG9uQmx1ciA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbiAgZ2V0IGJ1dHRvbkNsYXNzZXMoKSB7XG4gICAgcmV0dXJuIGAke3RoaXMudHlwZX0gJHt0aGlzLnNpemV9YDtcbiAgfVxuXG59XG4iLCI8YnV0dG9uXG4gIHR5cGU9XCJidXR0b25cIlxuICBbbmdDbGFzc109XCJidXR0b25DbGFzc2VzXCJcbiAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgKGNsaWNrKT1cIm9uQ2xpY2suZW1pdCgkZXZlbnQpXCJcbiAgKGZvY3VzKT1cIm9uRm9jdXMuZW1pdCgkZXZlbnQpXCJcbiAgKGJsdXIpPVwib25CbHVyLmVtaXQoJGV2ZW50KVwiXG4+XG4gIHt7IGxhYmVsIH19XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvYnV0dG9uPlxuIl19
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fza3N1aXRlLWNpdHJ1cy9zcmMvbGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hc2tzdWl0ZS1jaXRydXMvc3JjL2xpYi9jb21wb25lbnRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBTy9FLE1BQU0sT0FBTyxlQUFlO0lBTDVCO1FBTUUsYUFBYTtRQUNKLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDWCxTQUFJLEdBQXVELFFBQVEsQ0FBQztRQUNwRSxTQUFJLEdBQXdDLFNBQVMsQ0FBQztRQUN0RCxZQUFPLEdBQVksS0FBSyxDQUFDO1FBQ3pCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsY0FBUyxHQUFxQixNQUFNLENBQUM7UUFFOUMsaUJBQWlCO1FBQ1AsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFjLENBQUM7UUFDekMsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFjLENBQUM7UUFDekMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFjLENBQUM7S0FTbkQ7SUFQQyxJQUFJLGFBQWE7UUFDZixPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7SUFDdEUsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7SUFDN0IsQ0FBQzs4R0FwQlUsZUFBZTtrR0FBZixlQUFlLG1QQ1A1QixrWEFZQTs7MkZETGEsZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxZQUFZOzhCQU1iLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBR0ksT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXNrLWJ1dHRvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9idXR0b24uY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQnV0dG9uQ29tcG9uZW50IHtcbiAgLy8gUHJvcGVydGllc1xuICBASW5wdXQoKSBsYWJlbCA9ICcnO1xuICBASW5wdXQoKSBzaXplOiAneHNtYWxsJyB8ICdzbWFsbCcgfCAnbm9ybWFsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJyA9ICdub3JtYWwnO1xuICBASW5wdXQoKSB0eXBlOiAncHJpbWFyeScgfCAnc2Vjb25kYXJ5JyB8ICdvdXRsaW5lJyA9ICdwcmltYXJ5JztcbiAgQElucHV0KCkgcm91bmRlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBsYWJlbFNpZGU6ICdsZWZ0JyB8ICdyaWdodCcgPSAnbGVmdCc7XG5cbiAgLy8gRXZlbnQgaGFuZGxlcnNcbiAgQE91dHB1dCgpIG9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG4gIEBPdXRwdXQoKSBvbkZvY3VzID0gbmV3IEV2ZW50RW1pdHRlcjxGb2N1c0V2ZW50PigpO1xuICBAT3V0cHV0KCkgb25CbHVyID0gbmV3IEV2ZW50RW1pdHRlcjxGb2N1c0V2ZW50PigpO1xuXG4gIGdldCBidXR0b25DbGFzc2VzKCkge1xuICAgIHJldHVybiBgJHt0aGlzLnR5cGV9ICR7dGhpcy5zaXplfSAke3RoaXMucm91bmRlZCA/ICdyb3VuZGVkJyA6ICcnfWA7XG4gIH1cblxuICBnZXQgbGFiZWxDbGFzcygpIHtcbiAgICByZXR1cm4gYC0ke3RoaXMubGFiZWxTaWRlfWBcbiAgfVxufVxuIiwiPGJ1dHRvblxuICB0eXBlPVwiYnV0dG9uXCJcbiAgZGF0YS10ZXN0aWQ9XCJidXR0b25cIlxuICBbbmdDbGFzc109XCJidXR0b25DbGFzc2VzXCJcbiAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgKGNsaWNrKT1cIm9uQ2xpY2suZW1pdCgkZXZlbnQpXCJcbiAgKGZvY3VzKT1cIm9uRm9jdXMuZW1pdCgkZXZlbnQpXCJcbiAgKGJsdXIpPVwib25CbHVyLmVtaXQoJGV2ZW50KVwiXG4+XG4gIDxzcGFuIGRhdGEtdGVzdGlkPVwibGFiZWxcIiAqbmdJZj1cImxhYmVsXCIgY2xhc3M9XCJsYWJlbFwiIFtuZ0NsYXNzXT1cImxhYmVsQ2xhc3NcIj57eyBsYWJlbCB9fTwvc3Bhbj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9idXR0b24+XG4iXX0=
@@ -47,11 +47,11 @@ export class CheckboxComponent {
47
47
  this.valueChange.emit(this.value);
48
48
  }
49
49
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
50
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: CheckboxComponent, selector: "ask-checkbox", inputs: { value: "value", disabled: "disabled" }, outputs: { valueChange: "valueChange", change: "change", click: "click", focus: "focus" }, providers: [valueAccessor], ngImport: i0, template: "<label class=\"ask-checkbox\">\n <input type=\"checkbox\"\n (click)=\"click.emit($event)\"\n (focus)=\"handleFocus($event)\"\n (change)=\"handleChange($event)\"\n (touchend)=\"onTouch()\"\n [disabled]=\"disabled\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onModelChange($event)\"\n />\n <span #text [title]=\"text.innerText\"><ng-content></ng-content></span>\n</label>\n", styles: ["@import\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css\";:root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}:host{max-width:100%}.ask-checkbox{display:flex;align-items:center;gap:10px;cursor:pointer;width:100%}.ask-checkbox>input{-webkit-appearance:none;appearance:none;width:18px;height:18px;border:2px solid #FF5724;border-radius:3px;outline:none;transition:border-color .3s;position:relative;flex-shrink:0;cursor:pointer;color:transparent}.ask-checkbox>input:checked{background-color:#ff5724;color:#fff}.ask-checkbox>input:after{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ask-checkbox>input:after{content:\"\\f00c\";font-family:\"Font Awesome 5 Free\",serif;font-weight:900;font-size:12px}.ask-checkbox>input:disabled{border-color:#7b8794}.ask-checkbox>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n"], dependencies: [{ kind: "directive", type: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
50
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: CheckboxComponent, selector: "ask-checkbox", inputs: { value: "value", disabled: "disabled" }, outputs: { valueChange: "valueChange", change: "change", click: "click", focus: "focus" }, providers: [valueAccessor], ngImport: i0, template: "<label class=\"ask-checkbox\">\n <input type=\"checkbox\"\n (click)=\"click.emit($event)\"\n (focus)=\"handleFocus($event)\"\n (change)=\"handleChange($event)\"\n (touchend)=\"onTouch()\"\n [disabled]=\"disabled\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onModelChange($event)\"\n />\n <span #text [title]=\"text.innerText\"><ng-content></ng-content></span>\n</label>\n", styles: ["@import\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css\";:root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}input{font-size:1rem}:host{max-width:100%}.ask-checkbox{display:flex;align-items:center;gap:10px;cursor:pointer;width:100%}.ask-checkbox>input{-webkit-appearance:none;appearance:none;width:18px;height:18px;border:2px solid #FF5724;border-radius:3px;outline:none;transition:border-color .3s;position:relative;flex-shrink:0;cursor:pointer;color:transparent}.ask-checkbox>input:checked{background-color:#ff5724;color:#fff}.ask-checkbox>input:after{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ask-checkbox>input:after{content:\"\\f00c\";font-family:\"Font Awesome 5 Free\",serif;font-weight:900;font-size:12px}.ask-checkbox>input:disabled{border-color:#7b8794}.ask-checkbox>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n"], dependencies: [{ kind: "directive", type: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
51
51
  }
52
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: CheckboxComponent, decorators: [{
53
53
  type: Component,
54
- args: [{ selector: 'ask-checkbox', providers: [valueAccessor], template: "<label class=\"ask-checkbox\">\n <input type=\"checkbox\"\n (click)=\"click.emit($event)\"\n (focus)=\"handleFocus($event)\"\n (change)=\"handleChange($event)\"\n (touchend)=\"onTouch()\"\n [disabled]=\"disabled\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onModelChange($event)\"\n />\n <span #text [title]=\"text.innerText\"><ng-content></ng-content></span>\n</label>\n", styles: ["@import\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css\";:root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}:host{max-width:100%}.ask-checkbox{display:flex;align-items:center;gap:10px;cursor:pointer;width:100%}.ask-checkbox>input{-webkit-appearance:none;appearance:none;width:18px;height:18px;border:2px solid #FF5724;border-radius:3px;outline:none;transition:border-color .3s;position:relative;flex-shrink:0;cursor:pointer;color:transparent}.ask-checkbox>input:checked{background-color:#ff5724;color:#fff}.ask-checkbox>input:after{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ask-checkbox>input:after{content:\"\\f00c\";font-family:\"Font Awesome 5 Free\",serif;font-weight:900;font-size:12px}.ask-checkbox>input:disabled{border-color:#7b8794}.ask-checkbox>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n"] }]
54
+ args: [{ selector: 'ask-checkbox', providers: [valueAccessor], template: "<label class=\"ask-checkbox\">\n <input type=\"checkbox\"\n (click)=\"click.emit($event)\"\n (focus)=\"handleFocus($event)\"\n (change)=\"handleChange($event)\"\n (touchend)=\"onTouch()\"\n [disabled]=\"disabled\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onModelChange($event)\"\n />\n <span #text [title]=\"text.innerText\"><ng-content></ng-content></span>\n</label>\n", styles: ["@import\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css\";:root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}input{font-size:1rem}:host{max-width:100%}.ask-checkbox{display:flex;align-items:center;gap:10px;cursor:pointer;width:100%}.ask-checkbox>input{-webkit-appearance:none;appearance:none;width:18px;height:18px;border:2px solid #FF5724;border-radius:3px;outline:none;transition:border-color .3s;position:relative;flex-shrink:0;cursor:pointer;color:transparent}.ask-checkbox>input:checked{background-color:#ff5724;color:#fff}.ask-checkbox>input:after{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ask-checkbox>input:after{content:\"\\f00c\";font-family:\"Font Awesome 5 Free\",serif;font-weight:900;font-size:12px}.ask-checkbox>input:disabled{border-color:#7b8794}.ask-checkbox>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n"] }]
55
55
  }], propDecorators: { value: [{
56
56
  type: Input
57
57
  }], disabled: [{
@@ -6,11 +6,11 @@ export class ChipsComponent {
6
6
  this.action = new EventEmitter();
7
7
  }
8
8
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: ChipsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: ChipsComponent, selector: "ask-chips", inputs: { color: "color" }, outputs: { action: "action" }, ngImport: i0, template: "<div class=\"chip-container\" [style.background]=\"color\">\n <span class=\"body\" #body [title]=\"body.innerText\"><ng-content></ng-content></span>\n <div class=\"action\">\n <span class=\"material-icons\" data-testid=\"icon\" (click)=\"action.emit()\">cancel</span>\n </div>\n</div>\n", styles: [":root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis,.chip-container>.body{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}.chip-container{max-width:100%;display:flex;flex-direction:row;gap:.5rem;background:#7B8794;align-items:center;padding-left:.5rem;width:-moz-fit-content;width:fit-content;border-radius:12px;color:#fff}.chip-container>.body{color:inherit}.chip-container>.action{width:24px;height:24px;border-radius:50%;color:#fff}.chip-container>.action:hover{cursor:pointer}\n"] }); }
9
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: ChipsComponent, selector: "ask-chips", inputs: { color: "color" }, outputs: { action: "action" }, ngImport: i0, template: "<div class=\"chip-container\" [style.background]=\"color\">\n <span class=\"body\" #body [title]=\"body.innerText\"><ng-content></ng-content></span>\n <div class=\"action\">\n <span class=\"material-icons\" data-testid=\"icon\" (click)=\"action.emit()\">cancel</span>\n </div>\n</div>\n", styles: [":root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis,.chip-container>.body{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}input{font-size:1rem}.chip-container{max-width:100%;display:flex;flex-direction:row;gap:.5rem;background:#7B8794;align-items:center;padding-left:.5rem;width:-moz-fit-content;width:fit-content;border-radius:12px;color:#fff}.chip-container>.body{color:inherit}.chip-container>.action{width:24px;height:24px;border-radius:50%;color:#fff}.chip-container>.action:hover{cursor:pointer}\n"] }); }
10
10
  }
11
11
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: ChipsComponent, decorators: [{
12
12
  type: Component,
13
- args: [{ selector: 'ask-chips', template: "<div class=\"chip-container\" [style.background]=\"color\">\n <span class=\"body\" #body [title]=\"body.innerText\"><ng-content></ng-content></span>\n <div class=\"action\">\n <span class=\"material-icons\" data-testid=\"icon\" (click)=\"action.emit()\">cancel</span>\n </div>\n</div>\n", styles: [":root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis,.chip-container>.body{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}.chip-container{max-width:100%;display:flex;flex-direction:row;gap:.5rem;background:#7B8794;align-items:center;padding-left:.5rem;width:-moz-fit-content;width:fit-content;border-radius:12px;color:#fff}.chip-container>.body{color:inherit}.chip-container>.action{width:24px;height:24px;border-radius:50%;color:#fff}.chip-container>.action:hover{cursor:pointer}\n"] }]
13
+ args: [{ selector: 'ask-chips', template: "<div class=\"chip-container\" [style.background]=\"color\">\n <span class=\"body\" #body [title]=\"body.innerText\"><ng-content></ng-content></span>\n <div class=\"action\">\n <span class=\"material-icons\" data-testid=\"icon\" (click)=\"action.emit()\">cancel</span>\n </div>\n</div>\n", styles: [":root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis,.chip-container>.body{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}input{font-size:1rem}.chip-container{max-width:100%;display:flex;flex-direction:row;gap:.5rem;background:#7B8794;align-items:center;padding-left:.5rem;width:-moz-fit-content;width:fit-content;border-radius:12px;color:#fff}.chip-container>.body{color:inherit}.chip-container>.action{width:24px;height:24px;border-radius:50%;color:#fff}.chip-container>.action:hover{cursor:pointer}\n"] }]
14
14
  }], propDecorators: { color: [{
15
15
  type: Input
16
16
  }], action: [{
@@ -1,8 +1,20 @@
1
1
  import { Component, EventEmitter, Input, Output } from '@angular/core';
2
2
  import moment from 'moment';
3
- import { asDate } from "../date-picker.component";
4
3
  import * as i0 from "@angular/core";
5
4
  import * as i1 from "@angular/common";
5
+ export var PeriodLabel;
6
+ (function (PeriodLabel) {
7
+ PeriodLabel["TODAY"] = "TODAY";
8
+ PeriodLabel["YESTERDAY"] = "YESTERDAY";
9
+ PeriodLabel["LAST_7_DAYS"] = "LAST_7_DAYS";
10
+ PeriodLabel["LAST_30_DAYS"] = "LAST_30_DAYS";
11
+ PeriodLabel["THIS_MONTH"] = "THIS_MONTH";
12
+ PeriodLabel["LAST_QUARTER"] = "LAST_QUARTER";
13
+ PeriodLabel["CUSTOM_PERIOD"] = "CUSTOM_PERIOD";
14
+ })(PeriodLabel || (PeriodLabel = {}));
15
+ export const DEFAULT_DATE_FORMAT = 'YYYY-MM-DDTHH:mm:ssZ';
16
+ export const formatFrom = (from) => from.startOf('day').format(DEFAULT_DATE_FORMAT);
17
+ export const formatTo = (from) => from.endOf('day').format(DEFAULT_DATE_FORMAT);
6
18
  export class DatePickerCalendarComponent {
7
19
  constructor() {
8
20
  this.isRange = false;
@@ -41,15 +53,15 @@ export class DatePickerCalendarComponent {
41
53
  }
42
54
  isFirstSelectedDay(day) {
43
55
  if (this.isRange) {
44
- return day.timestamp === this.innerDate.from?.timestamp;
56
+ return day.formatted === this.innerDate.from?.formatted;
45
57
  }
46
- return this.innerDate.timestamp === day.timestamp;
58
+ return this.innerDate.formatted === day.formatted;
47
59
  }
48
60
  isLastSelectedDay(day) {
49
61
  if (this.isRange) {
50
- return day.timestamp === (this.innerDate.to?.timestamp || this.innerDate.from?.timestamp);
62
+ return day.formatted === (this.innerDate.to?.formatted || this.innerDate.from?.formatted);
51
63
  }
52
- return this.innerDate.timestamp === day.timestamp;
64
+ return this.innerDate.formatted === day.formatted;
53
65
  }
54
66
  ngOnInit() {
55
67
  this.assignInitialValues();
@@ -60,17 +72,20 @@ export class DatePickerCalendarComponent {
60
72
  const receivedDate = this.date;
61
73
  if (receivedDate.from && receivedDate.to) {
62
74
  this.innerDate = {
63
- from: this.getDayFromDate(receivedDate.from),
64
- to: this.getDayFromDate(receivedDate.to),
75
+ from: this.getDayFromString(receivedDate.from),
76
+ to: this.getDayFromString(receivedDate.to),
77
+ label: PeriodLabel[receivedDate.label || 'CUSTOM_PERIOD'].toString()
65
78
  };
66
79
  }
67
80
  else {
68
- this.innerDate = {};
81
+ this.innerDate = {
82
+ label: 'CUSTOM_PERIOD'
83
+ };
69
84
  }
70
85
  this.displayDate = moment.unix(this.innerDate.from?.timestamp || (Date.now() / 1000));
71
86
  }
72
87
  else {
73
- this.innerDate = this.getDayFromDate(this.date);
88
+ this.innerDate = this.getDayFromString(this.date);
74
89
  this.displayDate = moment.unix(this.innerDate.timestamp);
75
90
  }
76
91
  this.firstDayOfWeek = this.displayDate.clone().startOf('week').day();
@@ -139,14 +154,15 @@ export class DatePickerCalendarComponent {
139
154
  timestamp: day.unix(),
140
155
  day: day.format('D'),
141
156
  month: day.month(),
142
- weekDay: day.day()
157
+ weekDay: day.day(),
158
+ formatted: day.format(DEFAULT_DATE_FORMAT),
143
159
  };
144
160
  }
145
- getDayFromDate(date) {
146
- return this.getDayFromMoment(moment(date).utc(false));
161
+ getDayFromString(date) {
162
+ return this.getDayFromMoment(moment(date));
147
163
  }
148
164
  getDateFromDay(day) {
149
- return moment.unix(day.timestamp).startOf('day').toDate();
165
+ return moment.unix(day.timestamp).startOf('day').format(DEFAULT_DATE_FORMAT);
150
166
  }
151
167
  incrementMonth(amount) {
152
168
  this.displayDate.add(amount, 'month');
@@ -189,23 +205,24 @@ export class DatePickerCalendarComponent {
189
205
  }
190
206
  emitRange(range) {
191
207
  const newRange = {};
208
+ newRange.label = PeriodLabel.CUSTOM_PERIOD;
192
209
  if (range.from) {
193
210
  newRange.from = this.getDateFromDay(range.from);
194
211
  if (range.to)
195
- newRange.to = asDate(moment.unix(range.to.timestamp).endOf('day'));
212
+ newRange.to = formatTo(moment.unix(range.to.timestamp));
196
213
  }
197
214
  this.dateChange.emit(newRange);
198
215
  }
199
216
  handleSingleSelect(momentDate) {
200
217
  this.innerDate = this.getDayFromMoment(momentDate);
201
- this.dateChange.emit(asDate(momentDate));
218
+ this.dateChange.emit(momentDate.format(DEFAULT_DATE_FORMAT));
202
219
  }
203
220
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: DatePickerCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
204
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: DatePickerCalendarComponent, selector: "ask-date-picker-calendar", inputs: { isRange: "isRange", date: "date" }, outputs: { dateChange: "dateChange" }, ngImport: i0, template: "<div class=\"date-picker-calendar-container\">\n <header class=\"month-selector\">\n <button type=\"button\" class=\"selector-button\" (click)=\"incrementMonth(-1)\">\n <span class=\"material-icons icon\">chevron_left</span>\n </button>\n\n <span class=\"month-year-display\" data-testid=\"month-year-display\">{{ month }} {{ year }}</span>\n\n <button type=\"button\" class=\"selector-button\" (click)=\"incrementMonth(1)\">\n <span class=\"material-icons icon\">chevron_right</span>\n </button>\n </header>\n\n <main class=\"calendar\">\n <div class=\"week-days-header\">\n <span class=\"week-day\" *ngFor=\"let weekDay of weekDays\">{{ weekDay.name }}</span>\n </div>\n\n <div class=\"days-block\" data-testid=\"days-block\">\n <span\n *ngFor=\"let day of days\"\n (click)=\"selectDate(day.timestamp)\"\n [ngClass]=\"{\n 'day': true,\n 'another-month': monthNumber != day.month,\n 'selected': isDaySelected(day),\n 'first': isFirstSelectedDay(day),\n 'last': isLastSelectedDay(day),\n }\"\n >\n {{ day.day }}\n </span>\n </div>\n </main>\n</div>\n", styles: [":root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}.date-picker-calendar-container{display:flex;flex-direction:column;padding:16px;width:320px;-webkit-user-select:none;user-select:none}.month-selector{display:flex;align-items:center;justify-content:space-between;padding:4px;background-color:var(--secondary-background);border-radius:4px;text-transform:capitalize}.month-selector>.month-year-display{font-size:.75rem;color:var(--font-color-100);font-weight:500}.selector-button{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background-color:var(--primary-background);box-shadow:0 1px 2px #2a304229;outline:none;border:none;border-radius:4px;cursor:pointer}.selector-button>.icon{color:var(--font-color-100);font-size:18px}.calendar{display:flex;flex-direction:column;padding:16px 32px}.week-days-header{display:grid;grid-template-rows:auto;grid-template-columns:repeat(7,auto);place-items:center;padding-bottom:8px;border-bottom:1px solid #E4E7EB}.week-days-header>.week-day{display:flex;align-items:center;justify-content:center;font-size:.75rem;line-height:1rem;width:100%;color:var(--font-color-100)}.days-block{display:grid;grid-template-rows:repeat(6,auto);grid-template-columns:repeat(7,auto);place-items:center;row-gap:4px;color:var(--font-color-200);padding-top:4px}.days-block>.day{display:flex;align-items:center;justify-content:center;text-align:center;font-size:.75rem;line-height:1rem;width:100%;height:31px;border-radius:99999px;transition:.2s background-color,.2s color,.2s font-weight}.days-block>.day.another-month{color:var(--font-color-300)}.days-block>.day.selected,.days-block>.day:hover{color:#ff5724;background-color:#ff57241a;cursor:pointer}.days-block>.day.selected{border-radius:0;font-weight:500}.days-block>.day.selected.first{border-top-left-radius:99999px;border-bottom-left-radius:99999px}.days-block>.day.selected.last{border-top-right-radius:99999px;border-bottom-right-radius:99999px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
221
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.6", type: DatePickerCalendarComponent, selector: "ask-date-picker-calendar", inputs: { isRange: "isRange", date: "date" }, outputs: { dateChange: "dateChange" }, ngImport: i0, template: "<div class=\"date-picker-calendar-container\">\n <header class=\"month-selector\">\n <button type=\"button\" class=\"selector-button\" (click)=\"incrementMonth(-1)\">\n <span class=\"material-icons icon\">chevron_left</span>\n </button>\n\n <span class=\"month-year-display\" data-testid=\"month-year-display\">{{ month }} {{ year }}</span>\n\n <button type=\"button\" class=\"selector-button\" (click)=\"incrementMonth(1)\">\n <span class=\"material-icons icon\">chevron_right</span>\n </button>\n </header>\n\n <main class=\"calendar\">\n <div class=\"week-days-header\">\n <span class=\"week-day\" *ngFor=\"let weekDay of weekDays\">{{ weekDay.name }}</span>\n </div>\n\n <div class=\"days-block\" data-testid=\"days-block\">\n <span\n *ngFor=\"let day of days\"\n (click)=\"selectDate(day.timestamp)\"\n [ngClass]=\"{\n 'day': true,\n 'another-month': monthNumber != day.month,\n 'selected': isDaySelected(day),\n 'first': isFirstSelectedDay(day),\n 'last': isLastSelectedDay(day),\n }\"\n >\n {{ day.day }}\n </span>\n </div>\n </main>\n</div>\n", styles: [":root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}input{font-size:1rem}.date-picker-calendar-container{display:flex;flex-direction:column;padding:16px;width:320px;-webkit-user-select:none;user-select:none}.month-selector{display:flex;align-items:center;justify-content:space-between;padding:4px;background-color:var(--secondary-background);border-radius:4px;text-transform:capitalize}.month-selector>.month-year-display{font-size:.75rem;color:var(--font-color-100);font-weight:500}.selector-button{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background-color:var(--primary-background);box-shadow:0 1px 2px #2a304229;outline:none;border:none;border-radius:4px;cursor:pointer}.selector-button>.icon{color:var(--font-color-100);font-size:18px}.calendar{display:flex;flex-direction:column;padding:16px 32px}.week-days-header{display:grid;grid-template-rows:auto;grid-template-columns:repeat(7,auto);place-items:center;padding-bottom:8px;border-bottom:1px solid #E4E7EB}.week-days-header>.week-day{display:flex;align-items:center;justify-content:center;font-size:.75rem;line-height:1rem;width:100%;color:var(--font-color-100)}.days-block{display:grid;grid-template-rows:repeat(6,auto);grid-template-columns:repeat(7,auto);place-items:center;row-gap:4px;color:var(--font-color-200);padding-top:4px}.days-block>.day{display:flex;align-items:center;justify-content:center;text-align:center;font-size:.75rem;line-height:1rem;width:100%;height:31px;border-radius:99999px;transition:.2s background-color,.2s color,.2s font-weight}.days-block>.day.another-month{color:var(--font-color-300)}.days-block>.day.selected,.days-block>.day:hover{color:#ff5724;background-color:#ff57241a;cursor:pointer}.days-block>.day.selected{border-radius:0;font-weight:500}.days-block>.day.selected.first{border-top-left-radius:99999px;border-bottom-left-radius:99999px}.days-block>.day.selected.last{border-top-right-radius:99999px;border-bottom-right-radius:99999px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
205
222
  }
206
223
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImport: i0, type: DatePickerCalendarComponent, decorators: [{
207
224
  type: Component,
208
- args: [{ selector: 'ask-date-picker-calendar', template: "<div class=\"date-picker-calendar-container\">\n <header class=\"month-selector\">\n <button type=\"button\" class=\"selector-button\" (click)=\"incrementMonth(-1)\">\n <span class=\"material-icons icon\">chevron_left</span>\n </button>\n\n <span class=\"month-year-display\" data-testid=\"month-year-display\">{{ month }} {{ year }}</span>\n\n <button type=\"button\" class=\"selector-button\" (click)=\"incrementMonth(1)\">\n <span class=\"material-icons icon\">chevron_right</span>\n </button>\n </header>\n\n <main class=\"calendar\">\n <div class=\"week-days-header\">\n <span class=\"week-day\" *ngFor=\"let weekDay of weekDays\">{{ weekDay.name }}</span>\n </div>\n\n <div class=\"days-block\" data-testid=\"days-block\">\n <span\n *ngFor=\"let day of days\"\n (click)=\"selectDate(day.timestamp)\"\n [ngClass]=\"{\n 'day': true,\n 'another-month': monthNumber != day.month,\n 'selected': isDaySelected(day),\n 'first': isFirstSelectedDay(day),\n 'last': isLastSelectedDay(day),\n }\"\n >\n {{ day.day }}\n </span>\n </div>\n </main>\n</div>\n", styles: [":root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}.date-picker-calendar-container{display:flex;flex-direction:column;padding:16px;width:320px;-webkit-user-select:none;user-select:none}.month-selector{display:flex;align-items:center;justify-content:space-between;padding:4px;background-color:var(--secondary-background);border-radius:4px;text-transform:capitalize}.month-selector>.month-year-display{font-size:.75rem;color:var(--font-color-100);font-weight:500}.selector-button{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background-color:var(--primary-background);box-shadow:0 1px 2px #2a304229;outline:none;border:none;border-radius:4px;cursor:pointer}.selector-button>.icon{color:var(--font-color-100);font-size:18px}.calendar{display:flex;flex-direction:column;padding:16px 32px}.week-days-header{display:grid;grid-template-rows:auto;grid-template-columns:repeat(7,auto);place-items:center;padding-bottom:8px;border-bottom:1px solid #E4E7EB}.week-days-header>.week-day{display:flex;align-items:center;justify-content:center;font-size:.75rem;line-height:1rem;width:100%;color:var(--font-color-100)}.days-block{display:grid;grid-template-rows:repeat(6,auto);grid-template-columns:repeat(7,auto);place-items:center;row-gap:4px;color:var(--font-color-200);padding-top:4px}.days-block>.day{display:flex;align-items:center;justify-content:center;text-align:center;font-size:.75rem;line-height:1rem;width:100%;height:31px;border-radius:99999px;transition:.2s background-color,.2s color,.2s font-weight}.days-block>.day.another-month{color:var(--font-color-300)}.days-block>.day.selected,.days-block>.day:hover{color:#ff5724;background-color:#ff57241a;cursor:pointer}.days-block>.day.selected{border-radius:0;font-weight:500}.days-block>.day.selected.first{border-top-left-radius:99999px;border-bottom-left-radius:99999px}.days-block>.day.selected.last{border-top-right-radius:99999px;border-bottom-right-radius:99999px}\n"] }]
225
+ args: [{ selector: 'ask-date-picker-calendar', template: "<div class=\"date-picker-calendar-container\">\n <header class=\"month-selector\">\n <button type=\"button\" class=\"selector-button\" (click)=\"incrementMonth(-1)\">\n <span class=\"material-icons icon\">chevron_left</span>\n </button>\n\n <span class=\"month-year-display\" data-testid=\"month-year-display\">{{ month }} {{ year }}</span>\n\n <button type=\"button\" class=\"selector-button\" (click)=\"incrementMonth(1)\">\n <span class=\"material-icons icon\">chevron_right</span>\n </button>\n </header>\n\n <main class=\"calendar\">\n <div class=\"week-days-header\">\n <span class=\"week-day\" *ngFor=\"let weekDay of weekDays\">{{ weekDay.name }}</span>\n </div>\n\n <div class=\"days-block\" data-testid=\"days-block\">\n <span\n *ngFor=\"let day of days\"\n (click)=\"selectDate(day.timestamp)\"\n [ngClass]=\"{\n 'day': true,\n 'another-month': monthNumber != day.month,\n 'selected': isDaySelected(day),\n 'first': isFirstSelectedDay(day),\n 'last': isLastSelectedDay(day),\n }\"\n >\n {{ day.day }}\n </span>\n </div>\n </main>\n</div>\n", styles: [":root{--asksuite-orange: #FF5724;--white: #FFF;--grey-50: #F5F7FA;--grey-100: #E4E7EB;--grey-200: #CBD2D9;--grey-300: #9AA5B1;--grey-400: #7B8794;--grey-500: #616E7C;--grey-600: #52606D;--grey-700: #3E4C59;--grey-800: #2A3042;--grey-900: #1F2933;--yellow-50: #FFF8E2;--yellow-200: #FFECB3;--success-green: #4BAF50;--warning-yellow: #FFC107;--error-red: #E8453E;--shadow: rgba(42, 48, 66, .1607843137);--lightblue-tag: #CDF9F3;--lavender-tag: #D4DAF3;--green-tag: #CEEEAA;--pink-tag: #FBC5FF;--orange-tag: #FED5C9;--purple-tag: #DDBFE5;--yellow-tag: #FFE0B2;--blue-tag: #B2E5FD;--brown-tag: #EFC89C;--whatsapp-green: #68B35D;--facebook-blue: #0084FF;--instagram-pink: #D53E91;--google-blue: #345DC8;--telegram-blue: #34AADF;--telephone-yellow: #FECB00;--primary-background: #FFF;--secondary-background: #EFF3F8;--hover-background: #F5F7FA;--divider-background: #E4E7EB;--font-color-100: #2A3042;--font-color-200: #616E7C;--font-color-300: #9AA5B1}:root{--font-default: $font-default;--font-code: $font-code}:root{--font-xs: $font-xs;--font-sm: $font-sm;--font-md: $font-md;--font-lg: $font-lg;--font-xl: $font-xl;--font-xxl: $font-xxl}:root{--font-weight-regular: $font-weight-regular;--font-weight-medium: $font-weight-medium}:root{--radii-px: $radii-px;--radii-xs: $radii-xs;--radii-sm: $radii-sm;--radii-md: $radii-md;--radii-lg: $radii-lg;--radii-full: $radii-full}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:\"liga\";-webkit-font-smoothing:antialiased}*{box-sizing:border-box}*,button,select,textarea{font-family:Inter,sans-serif;font-weight:400}input{font-size:1rem}.date-picker-calendar-container{display:flex;flex-direction:column;padding:16px;width:320px;-webkit-user-select:none;user-select:none}.month-selector{display:flex;align-items:center;justify-content:space-between;padding:4px;background-color:var(--secondary-background);border-radius:4px;text-transform:capitalize}.month-selector>.month-year-display{font-size:.75rem;color:var(--font-color-100);font-weight:500}.selector-button{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background-color:var(--primary-background);box-shadow:0 1px 2px #2a304229;outline:none;border:none;border-radius:4px;cursor:pointer}.selector-button>.icon{color:var(--font-color-100);font-size:18px}.calendar{display:flex;flex-direction:column;padding:16px 32px}.week-days-header{display:grid;grid-template-rows:auto;grid-template-columns:repeat(7,auto);place-items:center;padding-bottom:8px;border-bottom:1px solid #E4E7EB}.week-days-header>.week-day{display:flex;align-items:center;justify-content:center;font-size:.75rem;line-height:1rem;width:100%;color:var(--font-color-100)}.days-block{display:grid;grid-template-rows:repeat(6,auto);grid-template-columns:repeat(7,auto);place-items:center;row-gap:4px;color:var(--font-color-200);padding-top:4px}.days-block>.day{display:flex;align-items:center;justify-content:center;text-align:center;font-size:.75rem;line-height:1rem;width:100%;height:31px;border-radius:99999px;transition:.2s background-color,.2s color,.2s font-weight}.days-block>.day.another-month{color:var(--font-color-300)}.days-block>.day.selected,.days-block>.day:hover{color:#ff5724;background-color:#ff57241a;cursor:pointer}.days-block>.day.selected{border-radius:0;font-weight:500}.days-block>.day.selected.first{border-top-left-radius:99999px;border-bottom-left-radius:99999px}.days-block>.day.selected.last{border-top-right-radius:99999px;border-bottom-right-radius:99999px}\n"] }]
209
226
  }], propDecorators: { isRange: [{
210
227
  type: Input
211
228
  }], date: [{
@@ -213,4 +230,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.6", ngImpor
213
230
  }], dateChange: [{
214
231
  type: Output
215
232
  }] } });
216
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waWNrZXItY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXNrc3VpdGUtY2l0cnVzL3NyYy9saWIvY29tcG9uZW50cy9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci1jYWxlbmRhci9kYXRlLXBpY2tlci1jYWxlbmRhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hc2tzdWl0ZS1jaXRydXMvc3JjL2xpYi9jb21wb25lbnRzL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLWNhbGVuZGFyL2RhdGUtcGlja2VyLWNhbGVuZGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBMEJoRCxNQUFNLE9BQU8sMkJBQTJCO0lBTHhDO1FBTVcsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUV4QixlQUFVLEdBQWtDLElBQUksWUFBWSxFQUFtQixDQUFDO1FBS2xGLGNBQVMsR0FBbUIsRUFBRSxDQUFDO1FBQy9CLFVBQUssR0FBZSxFQUFFLENBQUM7S0FtUGhDO0lBalBDLElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQTtJQUNuQixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLElBQUk7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Q0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUMzQyxDQUFDOzhHQTNQVSwyQkFBMkI7a0dBQTNCLDJCQUEyQixxSkM1QnhDLHlxQ0FtQ0E7OzJGRFBhLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSwwQkFBMEI7OEJBSzNCLE9BQU87c0JBQWYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0ksVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQge2FzRGF0ZX0gZnJvbSBcIi4uL2RhdGUtcGlja2VyLmNvbXBvbmVudFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIERheSB7XG4gIHRpbWVzdGFtcDogbnVtYmVyO1xuICBkYXk6IHN0cmluZztcbiAgbW9udGg6IG51bWJlcjtcbiAgd2Vla0RheTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdlZWtEYXkge1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIERhdGVSYW5nZSA9IHsgZnJvbT86IERhdGU7IHRvPzogRGF0ZTsgfTtcblxuZXhwb3J0IHR5cGUgRGF0ZVBpY2tlclZhbHVlID0gRGF0ZSB8IERhdGVSYW5nZTtcblxudHlwZSBEYXlSYW5nZSA9IHsgZnJvbT86IERheTsgdG8/OiBEYXk7IH07XG5cbnR5cGUgRGF0ZVBpY2tlcklubmVyVmFsdWUgPSBEYXkgfCBEYXlSYW5nZTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXNrLWRhdGUtcGlja2VyLWNhbGVuZGFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGUtcGlja2VyLWNhbGVuZGFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0ZS1waWNrZXItY2FsZW5kYXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBEYXRlUGlja2VyQ2FsZW5kYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBpc1JhbmdlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGRhdGUhOiBEYXRlUGlja2VyVmFsdWU7XG4gIEBPdXRwdXQoKSBkYXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8RGF0ZVBpY2tlclZhbHVlPiA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZVBpY2tlclZhbHVlPigpO1xuXG4gIHByaXZhdGUgaW5uZXJEYXRlITogRGF0ZVBpY2tlcklubmVyVmFsdWU7XG4gIHByaXZhdGUgZGlzcGxheURhdGUhOiBtb21lbnQuTW9tZW50O1xuICBwcml2YXRlIGZpcnN0RGF5T2ZXZWVrITogbnVtYmVyO1xuICBwcml2YXRlIF93ZWVrRGF5czogQXJyYXk8V2Vla0RheT4gPSBbXTtcbiAgcHJpdmF0ZSBfZGF5czogQXJyYXk8RGF5PiA9IFtdO1xuXG4gIGdldCBkYXlzKCk6IEFycmF5PERheT4ge1xuICAgIHJldHVybiB0aGlzLl9kYXlzXG4gIH1cblxuICBnZXQgbW9udGgoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5kaXNwbGF5RGF0ZS5mb3JtYXQoJ01NTU0nKTtcbiAgfVxuXG4gIGdldCBtb250aE51bWJlcigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmRpc3BsYXlEYXRlLm1vbnRoKCk7XG4gIH1cblxuICBnZXQgeWVhcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmRpc3BsYXlEYXRlLmZvcm1hdCgnWVlZWScpO1xuICB9XG5cbiAgZ2V0IHdlZWtEYXlzKCk6IEFycmF5PFdlZWtEYXk+IHtcbiAgICByZXR1cm4gdGhpcy5fd2Vla0RheXM7XG4gIH1cblxuICBpc0RheVNlbGVjdGVkKGRheTogRGF5KTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuaXNSYW5nZSkge1xuXG4gICAgICBjb25zdCBmcm9tID0gKHRoaXMuaW5uZXJEYXRlIGFzIERheVJhbmdlKS5mcm9tPy50aW1lc3RhbXA7XG4gICAgICBjb25zdCB0byA9ICh0aGlzLmlubmVyRGF0ZSBhcyBEYXlSYW5nZSkudG8/LnRpbWVzdGFtcDtcblxuICAgICAgaWYgKCFmcm9tKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICAgIGVsc2UgaWYgKCF0bykge1xuICAgICAgICByZXR1cm4gZGF5LnRpbWVzdGFtcCA9PT0gZnJvbTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGRheS50aW1lc3RhbXAgPj0gZnJvbSAmJiBkYXkudGltZXN0YW1wIDw9IHRvO1xuICAgIH1cblxuICAgIHJldHVybiAodGhpcy5pbm5lckRhdGUgYXMgRGF5KT8udGltZXN0YW1wID09PSBkYXkudGltZXN0YW1wO1xuICB9XG5cbiAgaXNGaXJzdFNlbGVjdGVkRGF5KGRheTogRGF5KSB7XG4gICAgaWYgKHRoaXMuaXNSYW5nZSkge1xuICAgICAgcmV0dXJuIGRheS50aW1lc3RhbXAgPT09ICh0aGlzLmlubmVyRGF0ZSBhcyBEYXlSYW5nZSkuZnJvbT8udGltZXN0YW1wO1xuICAgIH1cblxuICAgIHJldHVybiAodGhpcy5pbm5lckRhdGUgYXMgRGF5KS50aW1lc3RhbXAgPT09IGRheS50aW1lc3RhbXA7XG4gIH1cblxuICBpc0xhc3RTZWxlY3RlZERheShkYXk6IERheSkge1xuICAgIGlmICh0aGlzLmlzUmFuZ2UpIHtcbiAgICAgIHJldHVybiBkYXkudGltZXN0YW1wID09PSAoKHRoaXMuaW5uZXJEYXRlIGFzIERheVJhbmdlKS50bz8udGltZXN0YW1wIHx8ICh0aGlzLmlubmVyRGF0ZSBhcyBEYXlSYW5nZSkuZnJvbT8udGltZXN0YW1wKTtcbiAgICB9XG5cbiAgICByZXR1cm4gKHRoaXMuaW5uZXJEYXRlIGFzIERheSkudGltZXN0YW1wID09PSBkYXkudGltZXN0YW1wO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5hc3NpZ25Jbml0aWFsVmFsdWVzKCk7XG4gICAgdGhpcy5yZWZyZXNoRGlzcGxheSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3NpZ25Jbml0aWFsVmFsdWVzKCkge1xuICAgIGlmICh0aGlzLmlzUmFuZ2UpIHtcbiAgICAgIGNvbnN0IHJlY2VpdmVkRGF0ZSA9IHRoaXMuZGF0ZSBhcyBEYXRlUmFuZ2U7XG4gICAgICBpZiAocmVjZWl2ZWREYXRlLmZyb20gJiYgcmVjZWl2ZWREYXRlLnRvKSB7XG4gICAgICAgICh0aGlzLmlubmVyRGF0ZSBhcyBEYXlSYW5nZSkgPSB7XG4gICAgICAgICAgZnJvbTogdGhpcy5nZXREYXlGcm9tRGF0ZShyZWNlaXZlZERhdGUuZnJvbSksXG4gICAgICAgICAgdG86IHRoaXMuZ2V0RGF5RnJvbURhdGUocmVjZWl2ZWREYXRlLnRvKSxcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgZWxzZSB7XG4gICAgICAgICh0aGlzLmlubmVyRGF0ZSBhcyBEYXlSYW5nZSkgPSB7fTtcbiAgICAgIH1cbiAgICAgIHRoaXMuZGlzcGxheURhdGUgPSBtb21lbnQudW5peCgodGhpcy5pbm5lckRhdGUgYXMgRGF5UmFuZ2UpLmZyb20/LnRpbWVzdGFtcCB8fCAoRGF0ZS5ub3coKSAvIDEwMDApKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICB0aGlzLmlubmVyRGF0ZSA9IHRoaXMuZ2V0RGF5RnJvbURhdGUodGhpcy5kYXRlIGFzIERhdGUpO1xuICAgICAgdGhpcy5kaXNwbGF5RGF0ZSA9IG1vbWVudC51bml4KHRoaXMuaW5uZXJEYXRlLnRpbWVzdGFtcCk7XG4gICAgfVxuXG4gICAgdGhpcy5maXJzdERheU9mV2VlayA9IHRoaXMuZGlzcGxheURhdGUuY2xvbmUoKS5zdGFydE9mKCd3ZWVrJykuZGF5KCk7XG4gIH1cblxuICBwcml2YXRlIHJlZnJlc2hEaXNwbGF5KCkge1xuICAgIHRoaXMuYnVpbGRXZWVrRGF5cygpO1xuICAgIHRoaXMuYnVpbGREYXlzKCk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkV2Vla0RheXMoKSB7XG4gICAgY29uc3Qgc3RhcnRPZldlZWsgPSB0aGlzLmRpc3BsYXlEYXRlLmNsb25lKCkuc3RhcnRPZignd2VlaycpO1xuICAgIGNvbnN0IGVuZE9mV2VlayA9IHRoaXMuZGlzcGxheURhdGUuY2xvbmUoKS5lbmRPZignd2VlaycpO1xuICAgIHRoaXMuX3dlZWtEYXlzID0gW107XG5cbiAgICBkbyB7XG4gICAgICB0aGlzLl93ZWVrRGF5cy5wdXNoKHtcbiAgICAgICAgbmFtZTogc3RhcnRPZldlZWsuZm9ybWF0KCdkZGQnKVxuICAgICAgfSk7XG5cbiAgICAgIHN0YXJ0T2ZXZWVrLmFkZCgxLCAnZGF5Jyk7XG4gICAgfVxuICAgIHdoaWxlIChzdGFydE9mV2Vlay5pc0JlZm9yZShlbmRPZldlZWspKTtcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGREYXlzKCkge1xuICAgIGxldCBzdGFydERheSA9IHRoaXMuZGlzcGxheURhdGUuY2xvbmUoKS5zdGFydE9mKCdtb250aCcpO1xuICAgIGxldCBlbmREYXkgPSB0aGlzLmRpc3BsYXlEYXRlLmNsb25lKCkuZW5kT2YoJ21vbnRoJyk7XG5cbiAgICBsZXQgZGF5c09mUGFzdE1vbnRoOiBBcnJheTxEYXk+ID0gW107XG4gICAgbGV0IGRheXNPZlRoaXNNb250aDogQXJyYXk8RGF5PiA9IFtdO1xuICAgIGxldCBkYXlzT2ZOZXh0TW9udGg6IEFycmF5PERheT4gPSBbXTtcblxuICAgIC8vIEJ1aWxkcyB0aGlzIG1vbnRoIGRheXNcbiAgICBkYXlzT2ZUaGlzTW9udGggPSB0aGlzLmdldERheXNCZXR3ZWVuKHN0YXJ0RGF5LCBlbmREYXkpO1xuXG4gICAgLy8gQnVpbGRzIHBhc3QgbW9udGggZGF5c1xuICAgIGlmIChkYXlzT2ZUaGlzTW9udGhbMF0ud2Vla0RheSAhPT0gdGhpcy5maXJzdERheU9mV2Vlaykge1xuICAgICAgc3RhcnREYXkgPSB0aGlzLmRpc3BsYXlEYXRlLmNsb25lKCkuc3RhcnRPZignbW9udGgnKS5zdGFydE9mKCd3ZWVrJyk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgc3RhcnREYXkgPSB0aGlzLmRpc3BsYXlEYXRlLmNsb25lKCkuc3VidHJhY3QoMSwgJ21vbnRoJykuZW5kT2YoJ21vbnRoJykuc3RhcnRPZignd2VlaycpO1xuICAgIH1cbiAgICBlbmREYXkgPSBzdGFydERheS5jbG9uZSgpLmVuZE9mKCdtb250aCcpO1xuICAgIGRheXNPZlBhc3RNb250aCA9IHRoaXMuZ2V0RGF5c0JldHdlZW4oc3RhcnREYXksIGVuZERheSk7XG5cbiAgICAvLyBCdWlsZHMgbmV4dCBtb250aCBkYXlzXG4gICAgc3RhcnREYXkgPSB0aGlzLmRpc3BsYXlEYXRlLmNsb25lKCkuYWRkKDEsICdtb250aCcpLnN0YXJ0T2YoJ21vbnRoJyk7XG4gICAgZW5kRGF5ID0gc3RhcnREYXkuY2xvbmUoKS5lbmRPZignd2VlaycpO1xuICAgIGRheXNPZk5leHRNb250aCA9IHRoaXMuZ2V0RGF5c0JldHdlZW4oc3RhcnREYXksIGVuZERheSk7XG5cbiAgICB0aGlzLl9kYXlzID0gW1xuICAgICAgLi4uZGF5c09mUGFzdE1vbnRoLFxuICAgICAgLi4uZGF5c09mVGhpc01vbnRoLFxuICAgICAgLi4uZGF5c09mTmV4dE1vbnRoLFxuICAgIF07XG5cbiAgICAvLyBJZiBjYWxlbmRhciBpc24ndCBjb21wbGV0ZSB5ZXQgKGFsbCA3IGNvbHVtbnMgYW5kIDYgcm93cyBhcmUgZnVsbCksIGFkZHMgYW5vdGhlciB3ZWVrIHRvIGNvbXBsZXRlIHRoZSBjYWxlbmRhclxuICAgIGlmICh0aGlzLl9kYXlzLmxlbmd0aCA8IDQyKSB7XG4gICAgICBlbmREYXkgPSBlbmREYXkuY2xvbmUoKS5hZGQoMSwgJ2RheScpLmVuZE9mKCd3ZWVrJyk7XG4gICAgICBzdGFydERheSA9IGVuZERheS5jbG9uZSgpLnN0YXJ0T2YoJ3dlZWsnKTtcbiAgICAgIHRoaXMuX2RheXMucHVzaCguLi50aGlzLmdldERheXNCZXR3ZWVuKHN0YXJ0RGF5LCBlbmREYXkpKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldERheXNCZXR3ZWVuKHN0YXJ0OiBtb21lbnQuTW9tZW50LCBlbmQ6IG1vbWVudC5Nb21lbnQpOiBBcnJheTxEYXk+IHtcbiAgICBzdGFydCA9IHN0YXJ0LmNsb25lKCk7XG4gICAgZW5kID0gZW5kLmNsb25lKCk7XG5cbiAgICBjb25zdCBkYXlzID0gW107XG4gICAgZG8ge1xuICAgICAgZGF5cy5wdXNoKHRoaXMuZ2V0RGF5RnJvbU1vbWVudChzdGFydCkpO1xuXG4gICAgICBzdGFydC5hZGQoMSwgJ2RheScpO1xuICAgIH1cbiAgICB3aGlsZSAoc3RhcnQuaXNCZWZvcmUoZW5kKSk7XG5cbiAgICByZXR1cm4gZGF5cztcbiAgfVxuXG4gIGdldERheUZyb21Nb21lbnQoZGF5OiBtb21lbnQuTW9tZW50KTogRGF5IHtcbiAgICBkYXkgPSBkYXkuY2xvbmUoKS5zdGFydE9mKCdkYXknKTtcblxuICAgIHJldHVybiB7XG4gICAgICB0aW1lc3RhbXA6IGRheS51bml4KCksXG4gICAgICBkYXk6IGRheS5mb3JtYXQoJ0QnKSxcbiAgICAgIG1vbnRoOiBkYXkubW9udGgoKSxcbiAgICAgIHdlZWtEYXk6IGRheS5kYXkoKVxuICAgIH1cbiAgfVxuXG4gIGdldERheUZyb21EYXRlKGRhdGU6IERhdGUpOiBEYXkge1xuICAgIHJldHVybiB0aGlzLmdldERheUZyb21Nb21lbnQobW9tZW50KGRhdGUpLnV0YyhmYWxzZSkpO1xuICB9XG5cbiAgZ2V0RGF0ZUZyb21EYXkoZGF5OiBEYXkpOiBEYXRlIHtcbiAgICByZXR1cm4gbW9tZW50LnVuaXgoZGF5LnRpbWVzdGFtcCkuc3RhcnRPZignZGF5JykudG9EYXRlKCk7XG4gIH1cblxuICBpbmNyZW1lbnRNb250aChhbW91bnQ6IG51bWJlcikge1xuICAgIHRoaXMuZGlzcGxheURhdGUuYWRkKGFtb3VudCwgJ21vbnRoJyk7XG4gICAgdGhpcy5yZWZyZXNoRGlzcGxheSgpO1xuICB9XG5cbiAgc2VsZWN0RGF0ZSh0aW1lc3RhbXA6IG51bWJlcikge1xuICAgIGNvbnN0IG1vbWVudERhdGUgPSBtb21lbnQudW5peCh0aW1lc3RhbXApO1xuXG4gICAgaWYgKHRoaXMuaXNSYW5nZSkge1xuICAgICAgdGhpcy5oYW5kbGVSYW5nZVNlbGVjdChtb21lbnREYXRlKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICB0aGlzLmhhbmRsZVNpbmdsZVNlbGVjdChtb21lbnREYXRlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZVJhbmdlU2VsZWN0KHNlbGVjdGVkRGF0ZTogbW9tZW50Lk1vbWVudCkge1xuICAgIGNvbnN0IGlubmVyRGF0ZSA9ICh0aGlzLmlubmVyRGF0ZSBhcyBEYXlSYW5nZSk7XG5cbiAgICAvLyBGaXJzdCBzZWxlY3Rpb25cbiAgICBpZiAoIWlubmVyRGF0ZS5mcm9tKSB7XG4gICAgICBpbm5lckRhdGUuZnJvbSA9IHRoaXMuZ2V0RGF5RnJvbU1vbWVudChzZWxlY3RlZERhdGUpO1xuICAgIH1cblxuICAgIC8vIFNlY29uZCBzZWxlY3Rpb25cbiAgICBlbHNlIGlmICghaW5uZXJEYXRlLnRvKSB7XG4gICAgICBjb25zdCBhY3R1YWxGcm9tID0gbW9tZW50LnVuaXgoaW5uZXJEYXRlLmZyb20udGltZXN0YW1wKTtcblxuICAgICAgLy8gU2VsZWN0ZWQgZGF0ZSBpcyBwYXN0IHRoZSBwcmV2aW91cyBzZWxlY3RlZCBkYXRlXG4gICAgICBpZiAoc2VsZWN0ZWREYXRlLmlzQmVmb3JlKGFjdHVhbEZyb20sICdkYXknKSkge1xuICAgICAgICBpbm5lckRhdGUudG8gPSBpbm5lckRhdGUuZnJvbTtcbiAgICAgICAgaW5uZXJEYXRlLmZyb20gPSB0aGlzLmdldERheUZyb21Nb21lbnQoc2VsZWN0ZWREYXRlKTtcbiAgICAgIH1cblxuICAgICAgLy8gU2VsZWN0ZWQgZGF0ZSBpcyBmdXR1cmUgb2YgdGhlIHByZXZpb3VzIHNlbGVjdGVkIGRhdGVcbiAgICAgIGVsc2Uge1xuICAgICAgICBpbm5lckRhdGUudG8gPSB0aGlzLmdldERheUZyb21Nb21lbnQoc2VsZWN0ZWREYXRlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZWxlY3Rpb24gd2hlbiBib3RoIGZyb20gYW5kIHRvIGFyZSBhbHJlYWR5IHNlbGVjdGVkXG4gICAgZWxzZSB7XG4gICAgICBpbm5lckRhdGUuZnJvbSA9IHRoaXMuZ2V0RGF5RnJvbU1vbWVudChzZWxlY3RlZERhdGUpO1xuICAgICAgaW5uZXJEYXRlLnRvID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHRoaXMuZW1pdFJhbmdlKGlubmVyRGF0ZSk7XG4gIH1cblxuICBwcml2YXRlIGVtaXRSYW5nZShyYW5nZTogRGF5UmFuZ2UpIHtcbiAgICBjb25zdCBuZXdSYW5nZTogRGF0ZVJhbmdlID0ge307XG5cbiAgICBpZiAocmFuZ2UuZnJvbSkge1xuICAgICAgbmV3UmFuZ2UuZnJvbSA9IHRoaXMuZ2V0RGF0ZUZyb21EYXkocmFuZ2UuZnJvbSk7XG5cbiAgICAgIGlmIChyYW5nZS50bykgbmV3UmFuZ2UudG8gPSBhc0RhdGUobW9tZW50LnVuaXgocmFuZ2UudG8udGltZXN0YW1wKS5lbmRPZignZGF5JykpO1xuICAgIH1cblxuICAgIHRoaXMuZGF0ZUNoYW5nZS5lbWl0KG5ld1JhbmdlKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlU2luZ2xlU2VsZWN0KG1vbWVudERhdGU6IG1vbWVudC5Nb21lbnQpIHtcbiAgICB0aGlzLmlubmVyRGF0ZSA9IHRoaXMuZ2V0RGF5RnJvbU1vbWVudChtb21lbnREYXRlKTtcbiAgICB0aGlzLmRhdGVDaGFuZ2UuZW1pdChhc0RhdGUobW9tZW50RGF0ZSkpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZGF0ZS1waWNrZXItY2FsZW5kYXItY29udGFpbmVyXCI+XG4gIDxoZWFkZXIgY2xhc3M9XCJtb250aC1zZWxlY3RvclwiPlxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwic2VsZWN0b3ItYnV0dG9uXCIgKGNsaWNrKT1cImluY3JlbWVudE1vbnRoKC0xKVwiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1pY29ucyBpY29uXCI+Y2hldnJvbl9sZWZ0PC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuXG4gICAgPHNwYW4gY2xhc3M9XCJtb250aC15ZWFyLWRpc3BsYXlcIiBkYXRhLXRlc3RpZD1cIm1vbnRoLXllYXItZGlzcGxheVwiPnt7IG1vbnRoIH19IHt7IHllYXIgfX08L3NwYW4+XG5cbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cInNlbGVjdG9yLWJ1dHRvblwiIChjbGljayk9XCJpbmNyZW1lbnRNb250aCgxKVwiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJtYXRlcmlhbC1pY29ucyBpY29uXCI+Y2hldnJvbl9yaWdodDwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9oZWFkZXI+XG5cbiAgPG1haW4gY2xhc3M9XCJjYWxlbmRhclwiPlxuICAgIDxkaXYgY2xhc3M9XCJ3ZWVrLWRheXMtaGVhZGVyXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cIndlZWstZGF5XCIgKm5nRm9yPVwibGV0IHdlZWtEYXkgb2Ygd2Vla0RheXNcIj57eyB3ZWVrRGF5Lm5hbWUgfX08L3NwYW4+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZGF5cy1ibG9ja1wiIGRhdGEtdGVzdGlkPVwiZGF5cy1ibG9ja1wiPlxuICAgICAgPHNwYW5cbiAgICAgICAgKm5nRm9yPVwibGV0IGRheSBvZiBkYXlzXCJcbiAgICAgICAgKGNsaWNrKT1cInNlbGVjdERhdGUoZGF5LnRpbWVzdGFtcClcIlxuICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgJ2RheSc6IHRydWUsXG4gICAgICAgICAgJ2Fub3RoZXItbW9udGgnOiBtb250aE51bWJlciAhPSBkYXkubW9udGgsXG4gICAgICAgICAgJ3NlbGVjdGVkJzogaXNEYXlTZWxlY3RlZChkYXkpLFxuICAgICAgICAgICdmaXJzdCc6IGlzRmlyc3RTZWxlY3RlZERheShkYXkpLFxuICAgICAgICAgICdsYXN0JzogaXNMYXN0U2VsZWN0ZWREYXkoZGF5KSxcbiAgICAgICAgfVwiXG4gICAgICA+XG4gICAgICAgIHt7IGRheS5kYXkgfX1cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgPC9tYWluPlxuPC9kaXY+XG4iXX0=
233
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waWNrZXItY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXNrc3VpdGUtY2l0cnVzL3NyYy9saWIvY29tcG9uZW50cy9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci1jYWxlbmRhci9kYXRlLXBpY2tlci1jYWxlbmRhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hc2tzdWl0ZS1jaXRydXMvc3JjL2xpYi9jb21wb25lbnRzL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLWNhbGVuZGFyL2RhdGUtcGlja2VyLWNhbGVuZGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDOzs7QUFFNUIsTUFBTSxDQUFOLElBQVksV0FRWDtBQVJELFdBQVksV0FBVztJQUNyQiw4QkFBZSxDQUFBO0lBQ2Ysc0NBQXVCLENBQUE7SUFDdkIsMENBQTJCLENBQUE7SUFDM0IsNENBQTZCLENBQUE7SUFDN0Isd0NBQXlCLENBQUE7SUFDekIsNENBQTZCLENBQUE7SUFDN0IsOENBQStCLENBQUE7QUFDakMsQ0FBQyxFQVJXLFdBQVcsS0FBWCxXQUFXLFFBUXRCO0FBc0JELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLHNCQUFzQixDQUFDO0FBQzFELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLElBQW1CLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUE7QUFDbEcsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLENBQUMsSUFBbUIsRUFBRSxFQUFFLENB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QUM7WUFDckQsU0FBUyxDQUFDLEVBQUUsR0FBRyxTQUFTLENBQUM7U0FDMUI7UUFFRCxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFTyxTQUFTLENBQUMsS0FBZTtRQUMvQixNQUFNLFFBQVEsR0FBYyxFQUFFLENBQUM7UUFDL0IsUUFBUSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUMsYUFBYSxDQUFDO1FBRTNDLElBQUksS0FBSyxDQUFDLElBQUksRUFBRTtZQUNkLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFaEQsSUFBSSxLQUFLLENBQUMsRUFBRTtnQkFBRSxRQUFRLENBQUMsRUFBRSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztTQUN2RTtRQUVELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxVQUF5QjtRQUNsRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQztJQUMvRCxDQUFDOzhHQWhRVSwyQkFBMkI7a0dBQTNCLDJCQUEyQixxSkMxQ3hDLHlxQ0FtQ0E7OzJGRE9hLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSwwQkFBMEI7OEJBSzNCLE9BQU87c0JBQWYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0ksVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5cbmV4cG9ydCBlbnVtIFBlcmlvZExhYmVsIHtcbiAgVE9EQVkgPSAnVE9EQVknLFxuICBZRVNURVJEQVkgPSAnWUVTVEVSREFZJyxcbiAgTEFTVF83X0RBWVMgPSAnTEFTVF83X0RBWVMnLFxuICBMQVNUXzMwX0RBWVMgPSAnTEFTVF8zMF9EQVlTJyxcbiAgVEhJU19NT05USCA9ICdUSElTX01PTlRIJyxcbiAgTEFTVF9RVUFSVEVSID0gJ0xBU1RfUVVBUlRFUicsXG4gIENVU1RPTV9QRVJJT0QgPSAnQ1VTVE9NX1BFUklPRCcsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF5IHtcbiAgdGltZXN0YW1wOiBudW1iZXI7XG4gIGRheTogc3RyaW5nO1xuICBtb250aDogbnVtYmVyO1xuICB3ZWVrRGF5OiBudW1iZXI7XG4gIGZvcm1hdHRlZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdlZWtEYXkge1xuICBuYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIERhdGVSYW5nZSA9IHsgZnJvbT86IHN0cmluZzsgdG8/OiBzdHJpbmc7IGxhYmVsPzogUGVyaW9kTGFiZWw7IH07XG5cbmV4cG9ydCB0eXBlIERhdGVQaWNrZXJWYWx1ZSA9IHN0cmluZyB8IERhdGVSYW5nZTtcblxudHlwZSBEYXlSYW5nZSA9IHsgZnJvbT86IERheTsgdG8/OiBEYXk7IGxhYmVsPzogc3RyaW5nOyB9O1xuXG50eXBlIERhdGVQaWNrZXJJbm5lclZhbHVlID0gRGF5IHwgRGF5UmFuZ2U7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0RBVEVfRk9STUFUID0gJ1lZWVktTU0tRERUSEg6bW06c3NaJztcbmV4cG9ydCBjb25zdCBmb3JtYXRGcm9tID0gKGZyb206IG1vbWVudC5Nb21lbnQpID0+IGZyb20uc3RhcnRPZignZGF5JykuZm9ybWF0KERFRkFVTFRfREFURV9GT1JNQVQpXG5leHBvcnQgY29uc3QgZm9ybWF0VG8gPSAoZnJvbTogbW9tZW50Lk1vbWVudCkgPT4gZnJvbS5lbmRPZignZGF5JykuZm9ybWF0KERFRkFVTFRfREFURV9GT1JNQVQpXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Fzay1kYXRlLXBpY2tlci1jYWxlbmRhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlLXBpY2tlci1jYWxlbmRhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RhdGUtcGlja2VyLWNhbGVuZGFyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRGF0ZVBpY2tlckNhbGVuZGFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgaXNSYW5nZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBkYXRlITogRGF0ZVBpY2tlclZhbHVlO1xuICBAT3V0cHV0KCkgZGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPERhdGVQaWNrZXJWYWx1ZT4gPSBuZXcgRXZlbnRFbWl0dGVyPERhdGVQaWNrZXJWYWx1ZT4oKTtcblxuICBwcml2YXRlIGlubmVyRGF0ZSE6IERhdGVQaWNrZXJJbm5lclZhbHVlO1xuICBwcml2YXRlIGRpc3BsYXlEYXRlITogbW9tZW50Lk1vbWVudDtcbiAgcHJpdmF0ZSBmaXJzdERheU9mV2VlayE6IG51bWJlcjtcbiAgcHJpdmF0ZSBfd2Vla0RheXM6IEFycmF5PFdlZWtEYXk+ID0gW107XG4gIHByaXZhdGUgX2RheXM6IEFycmF5PERheT4gPSBbXTtcblxuICBnZXQgZGF5cygpOiBBcnJheTxEYXk+IHtcbiAgICByZXR1cm4gdGhpcy5fZGF5c1xuICB9XG5cbiAgZ2V0IG1vbnRoKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZGlzcGxheURhdGUuZm9ybWF0KCdNTU1NJyk7XG4gIH1cblxuICBnZXQgbW9udGhOdW1iZXIoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5kaXNwbGF5RGF0ZS5tb250aCgpO1xuICB9XG5cbiAgZ2V0IHllYXIoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5kaXNwbGF5RGF0ZS5mb3JtYXQoJ1lZWVknKTtcbiAgfVxuXG4gIGdldCB3ZWVrRGF5cygpOiBBcnJheTxXZWVrRGF5PiB7XG4gICAgcmV0dXJuIHRoaXMuX3dlZWtEYXlzO1xuICB9XG5cbiAgaXNEYXlTZWxlY3RlZChkYXk6IERheSk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLmlzUmFuZ2UpIHtcblxuICAgICAgY29uc3QgZnJvbSA9ICh0aGlzLmlubmVyRGF0ZSBhcyBEYXlSYW5nZSkuZnJvbT8udGltZXN0YW1wO1xuICAgICAgY29uc3QgdG8gPSAodGhpcy5pbm5lckRhdGUgYXMgRGF5UmFuZ2UpLnRvPy50aW1lc3RhbXA7XG5cbiAgICAgIGlmICghZnJvbSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgICBlbHNlIGlmICghdG8pIHtcbiAgICAgICAgcmV0dXJuIGRheS50aW1lc3RhbXAgPT09IGZyb207XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBkYXkudGltZXN0YW1wID49IGZyb20gJiYgZGF5LnRpbWVzdGFtcCA8PSB0bztcbiAgICB9XG5cbiAgICByZXR1cm4gKHRoaXMuaW5uZXJEYXRlIGFzIERheSk/LnRpbWVzdGFtcCA9PT0gZGF5LnRpbWVzdGFtcDtcbiAgfVxuXG4gIGlzRmlyc3RTZWxlY3RlZERheShkYXk6IERheSkge1xuICAgIGlmICh0aGlzLmlzUmFuZ2UpIHtcbiAgICAgIHJldHVybiBkYXkuZm9ybWF0dGVkID09PSAodGhpcy5pbm5lckRhdGUgYXMgRGF5UmFuZ2UpLmZyb20/LmZvcm1hdHRlZDtcbiAgICB9XG5cbiAgICByZXR1cm4gKHRoaXMuaW5uZXJEYXRlIGFzIERheSkuZm9ybWF0dGVkID09PSBkYXkuZm9ybWF0dGVkO1xuICB9XG5cbiAgaXNMYXN0U2VsZWN0ZWREYXkoZGF5OiBEYXkpIHtcbiAgICBpZiAodGhpcy5pc1JhbmdlKSB7XG4gICAgICByZXR1cm4gZGF5LmZvcm1hdHRlZCA9PT0gKCh0aGlzLmlubmVyRGF0ZSBhcyBEYXlSYW5nZSkudG8/LmZvcm1hdHRlZCB8fCAodGhpcy5pbm5lckRhdGUgYXMgRGF5UmFuZ2UpLmZyb20/LmZvcm1hdHRlZCk7XG4gICAgfVxuXG4gICAgcmV0dXJuICh0aGlzLmlubmVyRGF0ZSBhcyBEYXkpLmZvcm1hdHRlZCA9PT0gZGF5LmZvcm1hdHRlZDtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuYXNzaWduSW5pdGlhbFZhbHVlcygpO1xuICAgIHRoaXMucmVmcmVzaERpc3BsYXkoKTtcbiAgfVxuXG4gIHByaXZhdGUgYXNzaWduSW5pdGlhbFZhbHVlcygpIHtcbiAgICBpZiAodGhpcy5pc1JhbmdlKSB7XG4gICAgICBjb25zdCByZWNlaXZlZERhdGUgPSB0aGlzLmRhdGUgYXMgRGF0ZVJhbmdlO1xuICAgICAgaWYgKHJlY2VpdmVkRGF0ZS5mcm9tICYmIHJlY2VpdmVkRGF0ZS50bykge1xuICAgICAgICAodGhpcy5pbm5lckRhdGUgYXMgRGF5UmFuZ2UpID0ge1xuICAgICAgICAgIGZyb206IHRoaXMuZ2V0RGF5RnJvbVN0cmluZyhyZWNlaXZlZERhdGUuZnJvbSksXG4gICAgICAgICAgdG86IHRoaXMuZ2V0RGF5RnJvbVN0cmluZyhyZWNlaXZlZERhdGUudG8pLFxuICAgICAgICAgIGxhYmVsOiBQZXJpb2RMYWJlbFtyZWNlaXZlZERhdGUubGFiZWwgfHwgJ0NVU1RPTV9QRVJJT0QnXS50b1N0cmluZygpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGVsc2Uge1xuICAgICAgICAodGhpcy5pbm5lckRhdGUgYXMgRGF5UmFuZ2UpID0ge1xuICAgICAgICAgIGxhYmVsOiAnQ1VTVE9NX1BFUklPRCdcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIHRoaXMuZGlzcGxheURhdGUgPSBtb21lbnQudW5peCgodGhpcy5pbm5lckRhdGUgYXMgRGF5UmFuZ2UpLmZyb20/LnRpbWVzdGFtcCB8fCAoRGF0ZS5ub3coKSAvIDEwMDApKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICB0aGlzLmlubmVyRGF0ZSA9IHRoaXMuZ2V0RGF5RnJvbVN0cmluZyh0aGlzLmRhdGUgYXMgc3RyaW5nKTtcbiAgICAgIHRoaXMuZGlzcGxheURhdGUgPSBtb21lbnQudW5peCh0aGlzLmlubmVyRGF0ZS50aW1lc3RhbXApO1xuICAgIH1cblxuICAgIHRoaXMuZmlyc3REYXlPZldlZWsgPSB0aGlzLmRpc3BsYXlEYXRlLmNsb25lKCkuc3RhcnRPZignd2VlaycpLmRheSgpO1xuICB9XG5cbiAgcHJpdmF0ZSByZWZyZXNoRGlzcGxheSgpIHtcbiAgICB0aGlzLmJ1aWxkV2Vla0RheXMoKTtcbiAgICB0aGlzLmJ1aWxkRGF5cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFdlZWtEYXlzKCkge1xuICAgIGNvbnN0IHN0YXJ0T2ZXZWVrID0gdGhpcy5kaXNwbGF5RGF0ZS5jbG9uZSgpLnN0YXJ0T2YoJ3dlZWsnKTtcbiAgICBjb25zdCBlbmRPZldlZWsgPSB0aGlzLmRpc3BsYXlEYXRlLmNsb25lKCkuZW5kT2YoJ3dlZWsnKTtcbiAgICB0aGlzLl93ZWVrRGF5cyA9IFtdO1xuXG4gICAgZG8ge1xuICAgICAgdGhpcy5fd2Vla0RheXMucHVzaCh7XG4gICAgICAgIG5hbWU6IHN0YXJ0T2ZXZWVrLmZvcm1hdCgnZGRkJylcbiAgICAgIH0pO1xuXG4gICAgICBzdGFydE9mV2Vlay5hZGQoMSwgJ2RheScpO1xuICAgIH1cbiAgICB3aGlsZSAoc3RhcnRPZldlZWsuaXNCZWZvcmUoZW5kT2ZXZWVrKSk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkRGF5cygpIHtcbiAgICBsZXQgc3RhcnREYXkgPSB0aGlzLmRpc3BsYXlEYXRlLmNsb25lKCkuc3RhcnRPZignbW9udGgnKTtcbiAgICBsZXQgZW5kRGF5ID0gdGhpcy5kaXNwbGF5RGF0ZS5jbG9uZSgpLmVuZE9mKCdtb250aCcpO1xuXG4gICAgbGV0IGRheXNPZlBhc3RNb250aDogQXJyYXk8RGF5PiA9IFtdO1xuICAgIGxldCBkYXlzT2ZUaGlzTW9udGg6IEFycmF5PERheT4gPSBbXTtcbiAgICBsZXQgZGF5c09mTmV4dE1vbnRoOiBBcnJheTxEYXk+ID0gW107XG5cbiAgICAvLyBCdWlsZHMgdGhpcyBtb250aCBkYXlzXG4gICAgZGF5c09mVGhpc01vbnRoID0gdGhpcy5nZXREYXlzQmV0d2VlbihzdGFydERheSwgZW5kRGF5KTtcblxuICAgIC8vIEJ1aWxkcyBwYXN0IG1vbnRoIGRheXNcbiAgICBpZiAoZGF5c09mVGhpc01vbnRoWzBdLndlZWtEYXkgIT09IHRoaXMuZmlyc3REYXlPZldlZWspIHtcbiAgICAgIHN0YXJ0RGF5ID0gdGhpcy5kaXNwbGF5RGF0ZS5jbG9uZSgpLnN0YXJ0T2YoJ21vbnRoJykuc3RhcnRPZignd2VlaycpO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIHN0YXJ0RGF5ID0gdGhpcy5kaXNwbGF5RGF0ZS5jbG9uZSgpLnN1YnRyYWN0KDEsICdtb250aCcpLmVuZE9mKCdtb250aCcpLnN0YXJ0T2YoJ3dlZWsnKTtcbiAgICB9XG4gICAgZW5kRGF5ID0gc3RhcnREYXkuY2xvbmUoKS5lbmRPZignbW9udGgnKTtcbiAgICBkYXlzT2ZQYXN0TW9udGggPSB0aGlzLmdldERheXNCZXR3ZWVuKHN0YXJ0RGF5LCBlbmREYXkpO1xuXG4gICAgLy8gQnVpbGRzIG5leHQgbW9udGggZGF5c1xuICAgIHN0YXJ0RGF5ID0gdGhpcy5kaXNwbGF5RGF0ZS5jbG9uZSgpLmFkZCgxLCAnbW9udGgnKS5zdGFydE9mKCdtb250aCcpO1xuICAgIGVuZERheSA9IHN0YXJ0RGF5LmNsb25lKCkuZW5kT2YoJ3dlZWsnKTtcbiAgICBkYXlzT2ZOZXh0TW9udGggPSB0aGlzLmdldERheXNCZXR3ZWVuKHN0YXJ0RGF5LCBlbmREYXkpO1xuXG4gICAgdGhpcy5fZGF5cyA9IFtcbiAgICAgIC4uLmRheXNPZlBhc3RNb250aCxcbiAgICAgIC4uLmRheXNPZlRoaXNNb250aCxcbiAgICAgIC4uLmRheXNPZk5leHRNb250aCxcbiAgICBdO1xuXG4gICAgLy8gSWYgY2FsZW5kYXIgaXNuJ3QgY29tcGxldGUgeWV0IChhbGwgNyBjb2x1bW5zIGFuZCA2IHJvd3MgYXJlIGZ1bGwpLCBhZGRzIGFub3RoZXIgd2VlayB0byBjb21wbGV0ZSB0aGUgY2FsZW5kYXJcbiAgICBpZiAodGhpcy5fZGF5cy5sZW5ndGggPCA0Mikge1xuICAgICAgZW5kRGF5ID0gZW5kRGF5LmNsb25lKCkuYWRkKDEsICdkYXknKS5lbmRPZignd2VlaycpO1xuICAgICAgc3RhcnREYXkgPSBlbmREYXkuY2xvbmUoKS5zdGFydE9mKCd3ZWVrJyk7XG4gICAgICB0aGlzLl9kYXlzLnB1c2goLi4udGhpcy5nZXREYXlzQmV0d2VlbihzdGFydERheSwgZW5kRGF5KSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXREYXlzQmV0d2VlbihzdGFydDogbW9tZW50Lk1vbWVudCwgZW5kOiBtb21lbnQuTW9tZW50KTogQXJyYXk8RGF5PiB7XG4gICAgc3RhcnQgPSBzdGFydC5jbG9uZSgpO1xuICAgIGVuZCA9IGVuZC5jbG9uZSgpO1xuXG4gICAgY29uc3QgZGF5cyA9IFtdO1xuICAgIGRvIHtcbiAgICAgIGRheXMucHVzaCh0aGlzLmdldERheUZyb21Nb21lbnQoc3RhcnQpKTtcblxuICAgICAgc3RhcnQuYWRkKDEsICdkYXknKTtcbiAgICB9XG4gICAgd2hpbGUgKHN0YXJ0LmlzQmVmb3JlKGVuZCkpO1xuXG4gICAgcmV0dXJuIGRheXM7XG4gIH1cblxuICBnZXREYXlGcm9tTW9tZW50KGRheTogbW9tZW50Lk1vbWVudCk6IERheSB7XG4gICAgZGF5ID0gZGF5LmNsb25lKCkuc3RhcnRPZignZGF5Jyk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgdGltZXN0YW1wOiBkYXkudW5peCgpLFxuICAgICAgZGF5OiBkYXkuZm9ybWF0KCdEJyksXG4gICAgICBtb250aDogZGF5Lm1vbnRoKCksXG4gICAgICB3ZWVrRGF5OiBkYXkuZGF5KCksXG4gICAgICBmb3JtYXR0ZWQ6IGRheS5mb3JtYXQoREVGQVVMVF9EQVRFX0ZPUk1BVCksXG4gICAgfVxuICB9XG5cbiAgZ2V0RGF5RnJvbVN0cmluZyhkYXRlOiBzdHJpbmcpOiBEYXkge1xuICAgIHJldHVybiB0aGlzLmdldERheUZyb21Nb21lbnQobW9tZW50KGRhdGUpKTtcbiAgfVxuXG4gIGdldERhdGVGcm9tRGF5KGRheTogRGF5KTogc3RyaW5nIHtcbiAgICByZXR1cm4gbW9tZW50LnVuaXgoZGF5LnRpbWVzdGFtcCkuc3RhcnRPZignZGF5JykuZm9ybWF0KERFRkFVTFRfREFURV9GT1JNQVQpO1xuICB9XG5cbiAgaW5jcmVtZW50TW9udGgoYW1vdW50OiBudW1iZXIpIHtcbiAgICB0aGlzLmRpc3BsYXlEYXRlLmFkZChhbW91bnQsICdtb250aCcpO1xuICAgIHRoaXMucmVmcmVzaERpc3BsYXkoKTtcbiAgfVxuXG4gIHNlbGVjdERhdGUodGltZXN0YW1wOiBudW1iZXIpIHtcbiAgICBjb25zdCBtb21lbnREYXRlID0gbW9tZW50LnVuaXgodGltZXN0YW1wKTtcblxuICAgIGlmICh0aGlzLmlzUmFuZ2UpIHtcbiAgICAgIHRoaXMuaGFuZGxlUmFuZ2VTZWxlY3QobW9tZW50RGF0ZSk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5oYW5kbGVTaW5nbGVTZWxlY3QobW9tZW50RGF0ZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVSYW5nZVNlbGVjdChzZWxlY3RlZERhdGU6IG1vbWVudC5Nb21lbnQpIHtcbiAgICBjb25zdCBpbm5lckRhdGUgPSAodGhpcy5pbm5lckRhdGUgYXMgRGF5UmFuZ2UpO1xuXG4gICAgLy8gRmlyc3Qgc2VsZWN0aW9uXG4gICAgaWYgKCFpbm5lckRhdGUuZnJvbSkge1xuICAgICAgaW5uZXJEYXRlLmZyb20gPSB0aGlzLmdldERheUZyb21Nb21lbnQoc2VsZWN0ZWREYXRlKTtcbiAgICB9XG5cbiAgICAvLyBTZWNvbmQgc2VsZWN0aW9uXG4gICAgZWxzZSBpZiAoIWlubmVyRGF0ZS50bykge1xuICAgICAgY29uc3QgYWN0dWFsRnJvbSA9IG1vbWVudC51bml4KGlubmVyRGF0ZS5mcm9tLnRpbWVzdGFtcCk7XG5cbiAgICAgIC8vIFNlbGVjdGVkIGRhdGUgaXMgcGFzdCB0aGUgcHJldmlvdXMgc2VsZWN0ZWQgZGF0ZVxuICAgICAgaWYgKHNlbGVjdGVkRGF0ZS5pc0JlZm9yZShhY3R1YWxGcm9tLCAnZGF5JykpIHtcbiAgICAgICAgaW5uZXJEYXRlLnRvID0gaW5uZXJEYXRlLmZyb207XG4gICAgICAgIGlubmVyRGF0ZS5mcm9tID0gdGhpcy5nZXREYXlGcm9tTW9tZW50KHNlbGVjdGVkRGF0ZSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFNlbGVjdGVkIGRhdGUgaXMgZnV0dXJlIG9mIHRoZSBwcmV2aW91cyBzZWxlY3RlZCBkYXRlXG4gICAgICBlbHNlIHtcbiAgICAgICAgaW5uZXJEYXRlLnRvID0gdGhpcy5nZXREYXlGcm9tTW9tZW50KHNlbGVjdGVkRGF0ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2VsZWN0aW9uIHdoZW4gYm90aCBmcm9tIGFuZCB0byBhcmUgYWxyZWFkeSBzZWxlY3RlZFxuICAgIGVsc2Uge1xuICAgICAgaW5uZXJEYXRlLmZyb20gPSB0aGlzLmdldERheUZyb21Nb21lbnQoc2VsZWN0ZWREYXRlKTtcbiAgICAgIGlubmVyRGF0ZS50byA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICB0aGlzLmVtaXRSYW5nZShpbm5lckRhdGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBlbWl0UmFuZ2UocmFuZ2U6IERheVJhbmdlKSB7XG4gICAgY29uc3QgbmV3UmFuZ2U6IERhdGVSYW5nZSA9IHt9O1xuICAgIG5ld1JhbmdlLmxhYmVsID0gUGVyaW9kTGFiZWwuQ1VTVE9NX1BFUklPRDtcblxuICAgIGlmIChyYW5nZS5mcm9tKSB7XG4gICAgICBuZXdSYW5nZS5mcm9tID0gdGhpcy5nZXREYXRlRnJvbURheShyYW5nZS5mcm9tKTtcblxuICAgICAgaWYgKHJhbmdlLnRvKSBuZXdSYW5nZS50byA9IGZvcm1hdFRvKG1vbWVudC51bml4KHJhbmdlLnRvLnRpbWVzdGFtcCkpO1xuICAgIH1cblxuICAgIHRoaXMuZGF0ZUNoYW5nZS5lbWl0KG5ld1JhbmdlKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlU2luZ2xlU2VsZWN0KG1vbWVudERhdGU6IG1vbWVudC5Nb21lbnQpIHtcbiAgICB0aGlzLmlubmVyRGF0ZSA9IHRoaXMuZ2V0RGF5RnJvbU1vbWVudChtb21lbnREYXRlKTtcbiAgICB0aGlzLmRhdGVDaGFuZ2UuZW1pdChtb21lbnREYXRlLmZvcm1hdChERUZBVUxUX0RBVEVfRk9STUFUKSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkYXRlLXBpY2tlci1jYWxlbmRhci1jb250YWluZXJcIj5cbiAgPGhlYWRlciBjbGFzcz1cIm1vbnRoLXNlbGVjdG9yXCI+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJzZWxlY3Rvci1idXR0b25cIiAoY2xpY2spPVwiaW5jcmVtZW50TW9udGgoLTEpXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLWljb25zIGljb25cIj5jaGV2cm9uX2xlZnQ8L3NwYW4+XG4gICAgPC9idXR0b24+XG5cbiAgICA8c3BhbiBjbGFzcz1cIm1vbnRoLXllYXItZGlzcGxheVwiIGRhdGEtdGVzdGlkPVwibW9udGgteWVhci1kaXNwbGF5XCI+e3sgbW9udGggfX0ge3sgeWVhciB9fTwvc3Bhbj5cblxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwic2VsZWN0b3ItYnV0dG9uXCIgKGNsaWNrKT1cImluY3JlbWVudE1vbnRoKDEpXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLWljb25zIGljb25cIj5jaGV2cm9uX3JpZ2h0PC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuICA8L2hlYWRlcj5cblxuICA8bWFpbiBjbGFzcz1cImNhbGVuZGFyXCI+XG4gICAgPGRpdiBjbGFzcz1cIndlZWstZGF5cy1oZWFkZXJcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwid2Vlay1kYXlcIiAqbmdGb3I9XCJsZXQgd2Vla0RheSBvZiB3ZWVrRGF5c1wiPnt7IHdlZWtEYXkubmFtZSB9fTwvc3Bhbj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJkYXlzLWJsb2NrXCIgZGF0YS10ZXN0aWQ9XCJkYXlzLWJsb2NrXCI+XG4gICAgICA8c3BhblxuICAgICAgICAqbmdGb3I9XCJsZXQgZGF5IG9mIGRheXNcIlxuICAgICAgICAoY2xpY2spPVwic2VsZWN0RGF0ZShkYXkudGltZXN0YW1wKVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAnZGF5JzogdHJ1ZSxcbiAgICAgICAgICAnYW5vdGhlci1tb250aCc6IG1vbnRoTnVtYmVyICE9IGRheS5tb250aCxcbiAgICAgICAgICAnc2VsZWN0ZWQnOiBpc0RheVNlbGVjdGVkKGRheSksXG4gICAgICAgICAgJ2ZpcnN0JzogaXNGaXJzdFNlbGVjdGVkRGF5KGRheSksXG4gICAgICAgICAgJ2xhc3QnOiBpc0xhc3RTZWxlY3RlZERheShkYXkpLFxuICAgICAgICB9XCJcbiAgICAgID5cbiAgICAgICAge3sgZGF5LmRheSB9fVxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L21haW4+XG48L2Rpdj5cbiJdfQ==