@progressio_resources/gravity-design-system 2.6.12 → 2.6.14

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 (28) hide show
  1. package/esm2022/lib/components/gravity-checkbox/gravity-checkbox.component.mjs +12 -9
  2. package/esm2022/lib/components/gravity-dropdown-list/gravity-dropdown-list.component.mjs +1 -1
  3. package/esm2022/lib/components/gravity-radio-button/gravity-radio-button.component.mjs +10 -8
  4. package/esm2022/lib/components/gravity-switch/gravity-switch.component.mjs +22 -23
  5. package/esm2022/lib/components/gravity-tree-view/models/node-item.mjs +1 -1
  6. package/esm2022/lib/components/gravity-tree-view/models/node-state.mjs +1 -1
  7. package/esm2022/lib/components/gravity-tree-view/node/node.component.mjs +3 -3
  8. package/esm2022/lib/components/gravity-tree-view/service/tree-service.mjs +3 -2
  9. package/esm2022/lib/gravity-design-system.module.mjs +1 -5
  10. package/fesm2022/progressio_resources-gravity-design-system.mjs +46 -45
  11. package/fesm2022/progressio_resources-gravity-design-system.mjs.map +1 -1
  12. package/lib/components/gravity-checkbox/gravity-checkbox.component.d.ts +3 -2
  13. package/lib/components/gravity-radio-button/gravity-radio-button.component.d.ts +4 -4
  14. package/lib/components/gravity-switch/gravity-switch.component.d.ts +14 -10
  15. package/lib/components/gravity-tree-view/models/node-item.d.ts +1 -0
  16. package/lib/components/gravity-tree-view/models/node-state.d.ts +1 -0
  17. package/lib/gravity-design-system.module.d.ts +1 -2
  18. package/package.json +2 -4
  19. package/src/lib/styles/_shared.scss +0 -2
  20. package/src/lib/styles/foundations/colors/themes/_hero.theme.scss +4 -4
  21. package/src/lib/styles/gravity-design-system.scss +0 -1
  22. package/src/lib/styles/overwrite/pretty-checkbox/_core.scss +0 -119
  23. package/src/lib/styles/overwrite/pretty-checkbox/_variables.scss +0 -37
  24. package/src/lib/styles/overwrite/pretty-checkbox/elements/default/_outline.scss +0 -35
  25. package/src/lib/styles/overwrite/pretty-checkbox/elements/switch/_fill.scss +0 -7
  26. package/src/lib/styles/overwrite/pretty-checkbox/elements/switch/_general.scss +0 -49
  27. package/src/lib/styles/overwrite/pretty-checkbox/elements/switch/_mixin.scss +0 -15
  28. package/src/lib/styles/overwrite/pretty-checkbox/pretty-checkbox.scss +0 -29
@@ -6,39 +6,42 @@ export class GravityCheckboxComponent {
6
6
  constructor() {
7
7
  this.checked = false;
8
8
  this.disabled = false;
9
+ this.size = 'sm';
9
10
  this.change = new EventEmitter();
10
- this.isCheckboxActive = false;
11
+ this.isCheckboxChecked = false;
11
12
  }
12
13
  ngAfterViewInit() {
13
- this.isCheckboxActive = this.checked;
14
- this.change.emit({ value: this.value, checked: this.isCheckboxActive });
14
+ this.isCheckboxChecked = this.checked;
15
+ this.change.emit({ value: this.value, checked: this.isCheckboxChecked });
15
16
  }
16
17
  ngOnChanges(changes) {
17
18
  if (changes['checked']) {
18
- this.isCheckboxActive = changes['checked'].currentValue;
19
+ this.isCheckboxChecked = changes['checked'].currentValue;
19
20
  }
20
21
  }
21
22
  toggleCheckbox() {
22
23
  if (!this.disabled) {
23
- this.isCheckboxActive = !this.isCheckboxActive;
24
- this.change.emit({ value: this.value, checked: this.isCheckboxActive });
24
+ this.isCheckboxChecked = !this.isCheckboxChecked;
25
+ this.change.emit({ value: this.value, checked: this.isCheckboxChecked });
25
26
  }
26
27
  }
27
28
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityCheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityCheckboxComponent, selector: "gravity-checkbox", inputs: { checked: "checked", disabled: "disabled", name: "name", value: "value" }, outputs: { change: "change" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"gravity-checkbox-field\" [class.disabled]=\"disabled\">\n <input [checked]=\"isCheckboxActive\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [value]=\"value\"\n\n type=\"checkbox\">\n <span class=\"checkmark\" (click)=\"toggleCheckbox()\">\n <gravity-icon [iconName]=\"'check'\" [iconSize]=\"'sm-12'\" *ngIf=\"isCheckboxActive\"></gravity-icon>\n </span>\n <ng-content></ng-content>\n</div>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}:host{display:block}.gravity-checkbox-field{-moz-user-select:none;-ms-user-select:none;padding-left:1.5rem;position:relative;user-select:none;-webkit-user-select:none}.gravity-checkbox-field input{position:absolute;opacity:0;height:0;width:0}.gravity-checkbox-field .checkmark{align-items:center;background-color:transparent;border:1px solid var(--outline-checkbox-off-primary);border-radius:.3125rem;bottom:0;cursor:pointer;display:flex;left:0;height:1.25rem;justify-content:center;margin:auto 0;min-height:1.25rem;min-width:1.25rem;position:absolute;top:0;width:1.25rem}.gravity-checkbox-field .checkmark gravity-icon{--icon-color: var(--on-bg-checkbox-on-primary)}.gravity-checkbox-field input:checked~.checkmark{background-color:var(--bg-checkbox-on-primary);border-color:var(--bg-checkbox-on-primary)}.gravity-checkbox-field.disabled .checkmark{background-color:var(--bg-disabled)!important;border-color:var(--bg-disabled)!important;cursor:initial}.gravity-checkbox-field.disabled .checkmark gravity-icon{--icon-color: var(--on-bg-disabled)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.GravityIconComponent, selector: "gravity-icon", inputs: ["customIconColorVariable", "iconName", "iconSize", "hoverIcon", "size"] }] }); }
29
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityCheckboxComponent, selector: "gravity-checkbox", inputs: { checked: "checked", disabled: "disabled", name: "name", size: "size", value: "value" }, outputs: { change: "change" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"gravity-checkbox-field size-{{size}}\" [class.disabled]=\"disabled\">\n <input [checked]=\"isCheckboxChecked\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [value]=\"value\"\n\n type=\"checkbox\">\n <span class=\"checkmark\" (click)=\"toggleCheckbox()\">\n <gravity-icon [iconName]=\"'check'\" [iconSize]=\"'sm-12'\" *ngIf=\"isCheckboxChecked\"></gravity-icon>\n </span>\n <label>\n <ng-content></ng-content>\n </label>\n</div>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}:host{display:block}.gravity-checkbox-field{align-items:center;display:flex;-moz-user-select:none;-ms-user-select:none;position:relative;user-select:none;-webkit-user-select:none}.gravity-checkbox-field input{align-items:center;display:flex;position:absolute;opacity:0;height:0;width:0}.gravity-checkbox-field .checkmark{align-items:center;border:var(--checkbox-border-width) solid var(--outline-checkbox-off-primary);border-radius:.0625rem;cursor:pointer;display:flex;height:var(--checkbox-size);justify-content:center;min-height:var(--checkbox-size);min-width:var(--checkbox-size);padding:2px 1px;width:var(--checkbox-size)}.gravity-checkbox-field .checkmark gravity-icon{--icon-color: var(--on-bg-checkbox-on-primary);--icon-height: 100%;--icon-width: 100%}.gravity-checkbox-field input:checked~.checkmark{background-color:var(--bg-checkbox-on-primary);border-color:var(--bg-checkbox-on-primary)}.gravity-checkbox-field.disabled .checkmark{background-color:var(--bg-disabled)!important;border-color:var(--bg-disabled)!important;cursor:initial}.gravity-checkbox-field.disabled .checkmark gravity-icon{--icon-color: var(--on-bg-disabled)}.gravity-checkbox-field.size-sm{--checkbox-border-width: 1.4px;--checkbox-size: 16px}.gravity-checkbox-field.size-md{--checkbox-border-width: 1.5px;--checkbox-size: 20px}label:not(:empty){margin-left:10px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.GravityIconComponent, selector: "gravity-icon", inputs: ["customIconColorVariable", "iconName", "iconSize", "hoverIcon", "size"] }] }); }
29
30
  }
30
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityCheckboxComponent, decorators: [{
31
32
  type: Component,
32
- args: [{ selector: 'gravity-checkbox', template: "<div class=\"gravity-checkbox-field\" [class.disabled]=\"disabled\">\n <input [checked]=\"isCheckboxActive\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [value]=\"value\"\n\n type=\"checkbox\">\n <span class=\"checkmark\" (click)=\"toggleCheckbox()\">\n <gravity-icon [iconName]=\"'check'\" [iconSize]=\"'sm-12'\" *ngIf=\"isCheckboxActive\"></gravity-icon>\n </span>\n <ng-content></ng-content>\n</div>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}:host{display:block}.gravity-checkbox-field{-moz-user-select:none;-ms-user-select:none;padding-left:1.5rem;position:relative;user-select:none;-webkit-user-select:none}.gravity-checkbox-field input{position:absolute;opacity:0;height:0;width:0}.gravity-checkbox-field .checkmark{align-items:center;background-color:transparent;border:1px solid var(--outline-checkbox-off-primary);border-radius:.3125rem;bottom:0;cursor:pointer;display:flex;left:0;height:1.25rem;justify-content:center;margin:auto 0;min-height:1.25rem;min-width:1.25rem;position:absolute;top:0;width:1.25rem}.gravity-checkbox-field .checkmark gravity-icon{--icon-color: var(--on-bg-checkbox-on-primary)}.gravity-checkbox-field input:checked~.checkmark{background-color:var(--bg-checkbox-on-primary);border-color:var(--bg-checkbox-on-primary)}.gravity-checkbox-field.disabled .checkmark{background-color:var(--bg-disabled)!important;border-color:var(--bg-disabled)!important;cursor:initial}.gravity-checkbox-field.disabled .checkmark gravity-icon{--icon-color: var(--on-bg-disabled)}\n"] }]
33
+ args: [{ selector: 'gravity-checkbox', template: "<div class=\"gravity-checkbox-field size-{{size}}\" [class.disabled]=\"disabled\">\n <input [checked]=\"isCheckboxChecked\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [value]=\"value\"\n\n type=\"checkbox\">\n <span class=\"checkmark\" (click)=\"toggleCheckbox()\">\n <gravity-icon [iconName]=\"'check'\" [iconSize]=\"'sm-12'\" *ngIf=\"isCheckboxChecked\"></gravity-icon>\n </span>\n <label>\n <ng-content></ng-content>\n </label>\n</div>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}:host{display:block}.gravity-checkbox-field{align-items:center;display:flex;-moz-user-select:none;-ms-user-select:none;position:relative;user-select:none;-webkit-user-select:none}.gravity-checkbox-field input{align-items:center;display:flex;position:absolute;opacity:0;height:0;width:0}.gravity-checkbox-field .checkmark{align-items:center;border:var(--checkbox-border-width) solid var(--outline-checkbox-off-primary);border-radius:.0625rem;cursor:pointer;display:flex;height:var(--checkbox-size);justify-content:center;min-height:var(--checkbox-size);min-width:var(--checkbox-size);padding:2px 1px;width:var(--checkbox-size)}.gravity-checkbox-field .checkmark gravity-icon{--icon-color: var(--on-bg-checkbox-on-primary);--icon-height: 100%;--icon-width: 100%}.gravity-checkbox-field input:checked~.checkmark{background-color:var(--bg-checkbox-on-primary);border-color:var(--bg-checkbox-on-primary)}.gravity-checkbox-field.disabled .checkmark{background-color:var(--bg-disabled)!important;border-color:var(--bg-disabled)!important;cursor:initial}.gravity-checkbox-field.disabled .checkmark gravity-icon{--icon-color: var(--on-bg-disabled)}.gravity-checkbox-field.size-sm{--checkbox-border-width: 1.4px;--checkbox-size: 16px}.gravity-checkbox-field.size-md{--checkbox-border-width: 1.5px;--checkbox-size: 20px}label:not(:empty){margin-left:10px}\n"] }]
33
34
  }], propDecorators: { checked: [{
34
35
  type: Input
35
36
  }], disabled: [{
36
37
  type: Input
37
38
  }], name: [{
38
39
  type: Input
40
+ }], size: [{
41
+ type: Input
39
42
  }], value: [{
40
43
  type: Input
41
44
  }], change: [{
42
45
  type: Output
43
46
  }] } });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1jaGVja2JveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktY2hlY2tib3gvZ3Jhdml0eS1jaGVja2JveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktY2hlY2tib3gvZ3Jhdml0eS1jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBZ0IsTUFBTSxlQUFlLENBQUM7Ozs7QUFPOUcsTUFBTSxPQUFPLHdCQUF3QjtJQUxyQztRQU1rQixZQUFPLEdBQVksS0FBSyxDQUFDO1FBQ3pCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFHekIsV0FBTSxHQUFzRCxJQUFJLFlBQVksRUFBdUMsQ0FBQztRQUU5SCxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7S0FtQjFDO0lBakJDLGVBQWU7UUFDYixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNyQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDdEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxZQUFZLENBQUM7U0FDekQ7SUFDSCxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztZQUMvQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUMsQ0FBQyxDQUFDO1NBQ3ZFO0lBQ0gsQ0FBQzsrR0F6QlUsd0JBQXdCO21HQUF4Qix3QkFBd0IsZ01DUHJDLCtiQVlBOzs0RkRMYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0Usa0JBQWtCOzhCQUtaLE9BQU87c0JBQXRCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxJQUFJO3NCQUFuQixLQUFLO2dCQUNVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1csTUFBTTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE91dHB1dCwgU2ltcGxlQ2hhbmdlc30gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dyYXZpdHktY2hlY2tib3gnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3Jhdml0eS1jaGVja2JveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyYXZpdHktY2hlY2tib3guY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBHcmF2aXR5Q2hlY2tib3hDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBwdWJsaWMgY2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIG5hbWU6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHZhbHVlOiBzdHJpbmc7XG4gIEBPdXRwdXQoKSBwdWJsaWMgY2hhbmdlOiBFdmVudEVtaXR0ZXI8eyB2YWx1ZTogc3RyaW5nLCBjaGVja2VkOiBib29sZWFuIH0+ID0gbmV3IEV2ZW50RW1pdHRlcjx7IHZhbHVlOiBzdHJpbmcsIGNoZWNrZWQ6IGJvb2xlYW4gfT4oKTtcblxuICBwdWJsaWMgaXNDaGVja2JveEFjdGl2ZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmlzQ2hlY2tib3hBY3RpdmUgPSB0aGlzLmNoZWNrZWQ7XG4gICAgdGhpcy5jaGFuZ2UuZW1pdCh7dmFsdWU6IHRoaXMudmFsdWUsIGNoZWNrZWQ6IHRoaXMuaXNDaGVja2JveEFjdGl2ZX0pO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzWydjaGVja2VkJ10pIHtcbiAgICAgIHRoaXMuaXNDaGVja2JveEFjdGl2ZSA9IGNoYW5nZXNbJ2NoZWNrZWQnXS5jdXJyZW50VmFsdWU7XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlQ2hlY2tib3goKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmlzQ2hlY2tib3hBY3RpdmUgPSAhdGhpcy5pc0NoZWNrYm94QWN0aXZlO1xuICAgICAgdGhpcy5jaGFuZ2UuZW1pdCh7dmFsdWU6IHRoaXMudmFsdWUsIGNoZWNrZWQ6IHRoaXMuaXNDaGVja2JveEFjdGl2ZX0pO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImdyYXZpdHktY2hlY2tib3gtZmllbGRcIiBbY2xhc3MuZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj5cbiAgPGlucHV0IFtjaGVja2VkXT1cImlzQ2hlY2tib3hBY3RpdmVcIlxuICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcblxuICAgICAgICAgdHlwZT1cImNoZWNrYm94XCI+XG4gIDxzcGFuIGNsYXNzPVwiY2hlY2ttYXJrXCIgKGNsaWNrKT1cInRvZ2dsZUNoZWNrYm94KClcIj5cbiAgICA8Z3Jhdml0eS1pY29uIFtpY29uTmFtZV09XCInY2hlY2snXCIgW2ljb25TaXplXT1cIidzbS0xMidcIiAqbmdJZj1cImlzQ2hlY2tib3hBY3RpdmVcIj48L2dyYXZpdHktaWNvbj5cbiAgPC9zcGFuPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbiJdfQ==
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1jaGVja2JveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktY2hlY2tib3gvZ3Jhdml0eS1jaGVja2JveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktY2hlY2tib3gvZ3Jhdml0eS1jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBZ0IsTUFBTSxlQUFlLENBQUM7Ozs7QUFPOUcsTUFBTSxPQUFPLHdCQUF3QjtJQUxyQztRQU1rQixZQUFPLEdBQVksS0FBSyxDQUFDO1FBQ3pCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsU0FBSSxHQUFnQixJQUFJLENBQUM7UUFFeEIsV0FBTSxHQUFzRCxJQUFJLFlBQVksRUFHekYsQ0FBQztRQUVFLHNCQUFpQixHQUFZLEtBQUssQ0FBQztLQW1CM0M7SUFqQkMsZUFBZTtRQUNiLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBQyxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUN0QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQVksQ0FBQztTQUMxRDtJQUNILENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1lBQ2pELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBQyxDQUFDLENBQUM7U0FDeEU7SUFDSCxDQUFDOytHQTdCVSx3QkFBd0I7bUdBQXhCLHdCQUF3Qiw4TUNQckMsd2VBY0E7OzRGRFBhLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDRSxrQkFBa0I7OEJBS1osT0FBTztzQkFBdEIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNXLE1BQU07c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQsIFNpbXBsZUNoYW5nZXN9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdncmF2aXR5LWNoZWNrYm94JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dyYXZpdHktY2hlY2tib3guY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ncmF2aXR5LWNoZWNrYm94LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgR3Jhdml0eUNoZWNrYm94Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgcHVibGljIGNoZWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBuYW1lOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzaXplOiAnbWQnIHwgJ3NtJyA9ICdzbSc7XG4gIEBJbnB1dCgpIHB1YmxpYyB2YWx1ZTogc3RyaW5nO1xuICBAT3V0cHV0KCkgcHVibGljIGNoYW5nZTogRXZlbnRFbWl0dGVyPHsgdmFsdWU6IHN0cmluZywgY2hlY2tlZDogYm9vbGVhbiB9PiA9IG5ldyBFdmVudEVtaXR0ZXI8e1xuICAgIHZhbHVlOiBzdHJpbmcsXG4gICAgY2hlY2tlZDogYm9vbGVhblxuICB9PigpO1xuXG4gIHB1YmxpYyBpc0NoZWNrYm94Q2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmlzQ2hlY2tib3hDaGVja2VkID0gdGhpcy5jaGVja2VkO1xuICAgIHRoaXMuY2hhbmdlLmVtaXQoe3ZhbHVlOiB0aGlzLnZhbHVlLCBjaGVja2VkOiB0aGlzLmlzQ2hlY2tib3hDaGVja2VkfSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXNbJ2NoZWNrZWQnXSkge1xuICAgICAgdGhpcy5pc0NoZWNrYm94Q2hlY2tlZCA9IGNoYW5nZXNbJ2NoZWNrZWQnXS5jdXJyZW50VmFsdWU7XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlQ2hlY2tib3goKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmlzQ2hlY2tib3hDaGVja2VkID0gIXRoaXMuaXNDaGVja2JveENoZWNrZWQ7XG4gICAgICB0aGlzLmNoYW5nZS5lbWl0KHt2YWx1ZTogdGhpcy52YWx1ZSwgY2hlY2tlZDogdGhpcy5pc0NoZWNrYm94Q2hlY2tlZH0pO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImdyYXZpdHktY2hlY2tib3gtZmllbGQgc2l6ZS17e3NpemV9fVwiIFtjbGFzcy5kaXNhYmxlZF09XCJkaXNhYmxlZFwiPlxuICA8aW5wdXQgW2NoZWNrZWRdPVwiaXNDaGVja2JveENoZWNrZWRcIlxuICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcblxuICAgICAgICAgdHlwZT1cImNoZWNrYm94XCI+XG4gIDxzcGFuIGNsYXNzPVwiY2hlY2ttYXJrXCIgKGNsaWNrKT1cInRvZ2dsZUNoZWNrYm94KClcIj5cbiAgICA8Z3Jhdml0eS1pY29uIFtpY29uTmFtZV09XCInY2hlY2snXCIgW2ljb25TaXplXT1cIidzbS0xMidcIiAqbmdJZj1cImlzQ2hlY2tib3hDaGVja2VkXCI+PC9ncmF2aXR5LWljb24+XG4gIDwvc3Bhbj5cbiAgPGxhYmVsPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9sYWJlbD5cbjwvZGl2PlxuIl19
@@ -156,7 +156,7 @@ export class GravityDropdownListComponent {
156
156
  }
157
157
  }
158
158
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityDropdownListComponent, deps: [{ token: i1.FilterByPipe }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
159
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityDropdownListComponent, selector: "gravity-dropdown-list", inputs: { clearable: "clearable", config: "config", currentLang: "currentLang", customValues: "customValues", cypressTag: "cypressTag", hasError: "hasError", iconLeft: "iconLeft", isDisabled: "isDisabled", isReadonly: "isReadonly", items: "items", label: "label", multiple: "multiple", placeholder: "placeholder", required: "required", supportText: "supportText", size: "size", width: "width" }, outputs: { selectedItemsResponse: "response" }, host: { listeners: { "document:click": "onDocumentClick($event)" } }, providers: [FilterByPipe], usesOnChanges: true, ngImport: i0, template: "<label class=\"hr-label sm-bold {{getStatus()}}\" *ngIf=\"label\">\n {{label}} <span *ngIf=\"required || hasError\">*</span>\n</label>\n<div [attr.data-cy]=\"cypressTag\" class=\"gravity-input-field {{size}} {{width}}-width {{getStatus()}}\"\n (click)=\"toggleDropdown()\">\n <gravity-icon class=\"left\" [iconName]=\"iconLeft\" [iconSize]=\"isIconLeftNew() ? 'md-16' : null\"\n *ngIf=\"iconLeft\"></gravity-icon>\n <p class=\"hr-label {{size}}-regular value\">\n <ng-container *ngIf=\"selectedItems.length == 0\">\n {{placeholder ? placeholder : label}}\n </ng-container>\n <ng-container *ngIf=\"selectedItems.length > 0\">\n <ng-container *ngFor=\"let item of selectedItems; let i = index\">\n {{config ? item[config.label] : item}}{{i != selectedItems.length - 1 ? ',' : ''}}\n </ng-container>\n </ng-container>\n </p>\n <gravity-icon class=\"right\" [iconName]=\"dropdownOpened ? 'arrow-up': 'arrow-down'\" [iconSize]=\"'md-16'\"\n *ngIf=\"!isReadonly\"></gravity-icon>\n <div class=\"dropdown-panel\" (click)=\"$event.stopPropagation()\" *ngIf=\"dropdownOpened\"\n [attr.data-cy]=\"cypressTag + '_panel'\">\n <div class=\"search-input\">\n <gravity-icon class=\"search-icon\" [iconName]=\"'search'\" [iconSize]=\"'sm-12'\"></gravity-icon>\n <input autocomplete=\"off\" class=\"hr-label {{size}}-regular\" (input)=\"filterItems()\"\n [attr.data-cy]=\"cypressTag + '_search_input'\" autofocus\n [(ngModel)]=\"searchText\" placeholder=\"{{currentLang == 'es' ? 'Limpiar' : 'Search input'}}\">\n <gravity-icon class=\"pointer reset-icon\" (click)=\"searchText = ''; filterItems()\" [iconName]=\"'unsuccess'\"\n [iconSize]=\"'sm-12'\" *ngIf=\"searchText?.length > 0\"></gravity-icon>\n </div>\n <div class=\"items\">\n <div class=\"hr-label item {{size}}-regular pointer\" [class.selected]=\"checkIfSelected(item)\"\n (click)=\"selectItem(item)\" *ngFor=\"let item of availableOptions\">\n <gravity-checkbox [checked]=\"checkIfSelected(item)\" *ngIf=\"multiple\">\n {{config ? item[config.label] : item}}\n </gravity-checkbox>\n <ng-container *ngIf=\"!multiple\">{{config ? item[config.label] : item}}</ng-container>\n </div>\n <div class=\"hr-label item {{size}}-bold no-results\" *ngIf=\"availableOptions.length === 0\">\n {{currentLang == 'es' ? 'Sin resultados' : 'No results'}}\n </div>\n </div>\n <div class=\"dropdown-footer\" *ngIf=\"selectedItems.length > 0\" [class.not-clearable]=\"!clearable\">\n <p class=\"hr-label pointer sm-regular\" (click)=\"clearSelection()\" *ngIf=\"clearable\"\n [attr.data-cy]=\"cypressTag + '_clear'\">\n {{currentLang == 'es' ? 'Limpiar' : 'Clear selection'}}\n </p>\n <p class=\"hr-label pointer sm-bold\" (click)=\"$event.stopPropagation(); toggleDropdown()\"\n *ngIf=\"availableOptions.length != 0\" [attr.data-cy]=\"cypressTag + '_apply'\">\n {{currentLang == 'es' ? 'Aplicar' : 'Apply'}}\n </p>\n </div>\n </div>\n</div>\n<p class=\"hr-label sm-regular supporting-text {{getStatus()}} {{size}}\" *ngIf=\"supportText\">\n <gravity-icon [iconName]=\"'question-circle'\" *ngIf=\"hasError\" [iconSize]=\"'md-16'\"></gravity-icon>\n {{supportText}}\n</p>\n<p class=\"hr-label sm-regular supporting-text {{getStatus()}} {{size}}\"\n *ngIf=\"!supportText && getStatus() == 'active' && selectedItems.length == 0 && required\">\n {{currentLang == 'es' ? 'Requerido' : 'Required'}}\n</p>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}.gravity-padding-none{padding:0!important}.gravity-padding-top-none{padding-top:0!important}.gravity-padding-bottom-none{padding-bottom:0!important}.gravity-padding-left-none{padding-left:0!important}.gravity-padding-right-none{padding-right:0!important}.gravity-padding-block-none{padding-block:0!important}.gravity-padding-inline-none{padding-inline:0!important}.gravity-padding-xs{padding:.5rem!important}.gravity-padding-top-xs{padding-top:.5rem!important}.gravity-padding-bottom-xs{padding-bottom:.5rem!important}.gravity-padding-left-xs{padding-left:.5rem!important}.gravity-padding-right-xs{padding-right:.5rem!important}.gravity-padding-block-xs{padding-block:.5rem!important}.gravity-padding-inline-xs{padding-inline:.5rem!important}.gravity-padding-sm{padding:1rem!important}.gravity-padding-top-sm{padding-top:1rem!important}.gravity-padding-bottom-sm{padding-bottom:1rem!important}.gravity-padding-left-sm{padding-left:1rem!important}.gravity-padding-right-sm{padding-right:1rem!important}.gravity-padding-block-sm{padding-block:1rem!important}.gravity-padding-inline-sm{padding-inline:1rem!important}.gravity-padding-md{padding:1.5rem!important}.gravity-padding-top-md{padding-top:1.5rem!important}.gravity-padding-bottom-md{padding-bottom:1.5rem!important}.gravity-padding-left-md{padding-left:1.5rem!important}.gravity-padding-right-md{padding-right:1.5rem!important}.gravity-padding-block-md{padding-block:1.5rem!important}.gravity-padding-inline-md{padding-inline:1.5rem!important}.gravity-padding-lg{padding:2rem!important}.gravity-padding-top-lg{padding-top:2rem!important}.gravity-padding-bottom-lg{padding-bottom:2rem!important}.gravity-padding-left-lg{padding-left:2rem!important}.gravity-padding-right-lg{padding-right:2rem!important}.gravity-padding-block-lg{padding-block:2rem!important}.gravity-padding-inline-lg{padding-inline:2rem!important}.gravity-padding-xl{padding:3rem!important}.gravity-padding-top-xl{padding-top:3rem!important}.gravity-padding-bottom-xl{padding-bottom:3rem!important}.gravity-padding-left-xl{padding-left:3rem!important}.gravity-padding-right-xl{padding-right:3rem!important}.gravity-padding-block-xl{padding-block:3rem!important}.gravity-padding-inline-xl{padding-inline:3rem!important}.gravity-padding-xxl{padding:4rem!important}.gravity-padding-top-xxl{padding-top:4rem!important}.gravity-padding-bottom-xxl{padding-bottom:4rem!important}.gravity-padding-left-xxl{padding-left:4rem!important}.gravity-padding-right-xxl{padding-right:4rem!important}.gravity-padding-block-xxl{padding-block:4rem!important}.gravity-padding-inline-xxl{padding-inline:4rem!important}.gravity-padding-xxxl{padding:6rem!important}.gravity-padding-top-xxxl{padding-top:6rem!important}.gravity-padding-bottom-xxxl{padding-bottom:6rem!important}.gravity-padding-left-xxxl{padding-left:6rem!important}.gravity-padding-right-xxxl{padding-right:6rem!important}.gravity-padding-block-xxxl{padding-block:6rem!important}.gravity-padding-inline-xxxl{padding-inline:6rem!important}.gravity-padding-xxxxl{padding:12rem!important}.gravity-padding-top-xxxxl{padding-top:12rem!important}.gravity-padding-bottom-xxxxl{padding-bottom:12rem!important}.gravity-padding-left-xxxxl{padding-left:12rem!important}.gravity-padding-right-xxxxl{padding-right:12rem!important}.gravity-padding-block-xxxxl{padding-block:12rem!important}.gravity-padding-inline-xxxxl{padding-inline:12rem!important}.gravity-margin-none{margin:0!important}.gravity-margin-top-none{margin-top:0!important}.gravity-margin-bottom-none{margin-bottom:0!important}.gravity-margin-left-none{margin-left:0!important}.gravity-margin-right-none{margin-right:0!important}.gravity-margin-block-none{margin-block:0!important}.gravity-margin-inline-none{margin-inline:0!important}.gravity-margin-xs{margin:.5rem!important}.gravity-margin-top-xs{margin-top:.5rem!important}.gravity-margin-bottom-xs{margin-bottom:.5rem!important}.gravity-margin-left-xs{margin-left:.5rem!important}.gravity-margin-right-xs{margin-right:.5rem!important}.gravity-margin-block-xs{margin-block:.5rem!important}.gravity-margin-inline-xs{margin-inline:.5rem!important}.gravity-margin-sm{margin:1rem!important}.gravity-margin-top-sm{margin-top:1rem!important}.gravity-margin-bottom-sm{margin-bottom:1rem!important}.gravity-margin-left-sm{margin-left:1rem!important}.gravity-margin-right-sm{margin-right:1rem!important}.gravity-margin-block-sm{margin-block:1rem!important}.gravity-margin-inline-sm{margin-inline:1rem!important}.gravity-margin-md{margin:1.5rem!important}.gravity-margin-top-md{margin-top:1.5rem!important}.gravity-margin-bottom-md{margin-bottom:1.5rem!important}.gravity-margin-left-md{margin-left:1.5rem!important}.gravity-margin-right-md{margin-right:1.5rem!important}.gravity-margin-block-md{margin-block:1.5rem!important}.gravity-margin-inline-md{margin-inline:1.5rem!important}.gravity-margin-lg{margin:2rem!important}.gravity-margin-top-lg{margin-top:2rem!important}.gravity-margin-bottom-lg{margin-bottom:2rem!important}.gravity-margin-left-lg{margin-left:2rem!important}.gravity-margin-right-lg{margin-right:2rem!important}.gravity-margin-block-lg{margin-block:2rem!important}.gravity-margin-inline-lg{margin-inline:2rem!important}.gravity-margin-xl{margin:3rem!important}.gravity-margin-top-xl{margin-top:3rem!important}.gravity-margin-bottom-xl{margin-bottom:3rem!important}.gravity-margin-left-xl{margin-left:3rem!important}.gravity-margin-right-xl{margin-right:3rem!important}.gravity-margin-block-xl{margin-block:3rem!important}.gravity-margin-inline-xl{margin-inline:3rem!important}.gravity-margin-xxl{margin:4rem!important}.gravity-margin-top-xxl{margin-top:4rem!important}.gravity-margin-bottom-xxl{margin-bottom:4rem!important}.gravity-margin-left-xxl{margin-left:4rem!important}.gravity-margin-right-xxl{margin-right:4rem!important}.gravity-margin-block-xxl{margin-block:4rem!important}.gravity-margin-inline-xxl{margin-inline:4rem!important}.gravity-margin-xxxl{margin:6rem!important}.gravity-margin-top-xxxl{margin-top:6rem!important}.gravity-margin-bottom-xxxl{margin-bottom:6rem!important}.gravity-margin-left-xxxl{margin-left:6rem!important}.gravity-margin-right-xxxl{margin-right:6rem!important}.gravity-margin-block-xxxl{margin-block:6rem!important}.gravity-margin-inline-xxxl{margin-inline:6rem!important}.gravity-margin-xxxxl{margin:12rem!important}.gravity-margin-top-xxxxl{margin-top:12rem!important}.gravity-margin-bottom-xxxxl{margin-bottom:12rem!important}.gravity-margin-left-xxxxl{margin-left:12rem!important}.gravity-margin-right-xxxxl{margin-right:12rem!important}.gravity-margin-block-xxxxl{margin-block:12rem!important}.gravity-margin-inline-xxxxl{margin-inline:12rem!important}:host{display:block}label{color:var(--text-field-label-color);display:block;margin:0 12px 5px}label.active,label.hover{--text-field-label-color: var(--label-text-empty-enabled-primary)}label.open{--text-field-label-color: var(--label-text-full-enabled-pressed-primary)}label.selected,label.error{--text-field-label-color: var(--label-text-full-enabled-primary)}label.error span{color:var(--negative-primary)}label.disabled{--text-field-label-color: var(--on-bg-disabled)}label.readonly{--text-field-label-color: var(--label-text-full-read-only-primary)}.gravity-input-field{align-items:center;background-color:var(--text-field-input-field-background-color);border:var(--text-field-input-field-border-width) solid var(--text-field-input-field-border-color);border-radius:.3125rem;color:var(--text-field-input-field-content-color);cursor:pointer;display:flex;height:var(--text-field-input-field-height);padding:10px 12px;position:relative;--text-field-input-field-border-width: .5px;width:var(--text-field-input-field-width)}.gravity-input-field gravity-icon{--icon-color: var(--text-field-input-field-icon-color);--icon-height: var(--text-field-input-field-content);--icon-width: var(--text-field-input-field-content)}.gravity-input-field gravity-icon.pointer{cursor:pointer}.gravity-input-field gravity-icon.left{margin-right:var(--icon-margin)}.gravity-input-field gravity-icon.right{margin-left:var(--icon-margin)}.gravity-input-field p.value{color:var(--text-field-input-field-content-color);height:var(--text-field-input-field-input);line-height:normal;margin-left:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.gravity-input-field.sm{--dropdown-items-gap: map-get($spacing-values, xs);--dropdown-items-padding-top: 16px;--dropdown-top-margin: 5px;--text-field-input-field-content: 9px;--text-field-input-field-height: 29px;--text-field-input-field-input: 13px;--icon-margin: 5px;--span-checkmark-height: 14px;--span-checkmark-margin: 5px;--span-checkmark-width: 14px}.gravity-input-field.sm.short-width{--text-field-input-field-width: 195px}.gravity-input-field.sm.medium-width{--text-field-input-field-width: 276px}.gravity-input-field.sm.full-width{--text-field-input-field-width: 398px}.gravity-input-field.sm.fit-width{--text-field-input-field-width: 100%}.gravity-input-field.md{--dropdown-items-gap: 12px;--dropdown-items-padding-top: 20px;--dropdown-top-margin: 8px;--text-field-input-field-content: 15px;--text-field-input-field-height: 35px;--text-field-input-field-input: 18px;--icon-margin: 8px;--span-checkmark-height: 16px;--span-checkmark-margin: 8px;--span-checkmark-width: 16px}.gravity-input-field.md.short-width{--text-field-input-field-width: 242px}.gravity-input-field.md.medium-width{--text-field-input-field-width: 329px}.gravity-input-field.md.full-width{--text-field-input-field-width: 416px}.gravity-input-field.md.fit-width{--text-field-input-field-width: 100%}.gravity-input-field.active{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-empty-enabled-primary);--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--label-text-empty-enabled-primary)}.gravity-input-field.active:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.open{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-pressed-primary);--text-field-input-field-border-width: 1px;--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--icon-active-primary)}.gravity-input-field.selected{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-primary);--text-field-input-field-content-color: var(--placeholder-full-enabled-pressed-primary);--text-field-input-field-icon-color: var(--icon-active-primary)}.gravity-input-field.selected:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.error{--text-field-input-field-background-color: var(--bg-field-full-enabled-primary);--text-field-input-field-border-color: var(--negative-primary);--text-field-input-field-content-color: var(--label-text-full-enabled-primary);--text-field-input-field-icon-color: var(--label-text-full-enabled-primary)}.gravity-input-field.error:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.disabled{cursor:initial;--text-field-input-field-background-color: var(--bg-disabled);--text-field-input-field-border-color: var(--outline-disabled);--text-field-input-field-content-color: var(--on-bg-disabled);--text-field-input-field-icon-color: var(--on-bg-disabled)}.gravity-input-field.readonly{cursor:initial;--text-field-input-field-background-color: var(--bg-field-full-read-only-primary);--text-field-input-field-border-color: var(--bg-field-full-read-only-primary);--text-field-input-field-content-color: var(--input-text-full-read-only-primary);--text-field-input-field-icon-color: var(--input-text-full-read-only-primary)}.dropdown-panel{background-color:var(--bg-field-full-enabled-primary);border:1px solid var(--outline-field-full-enabled-pressed-primary);border-radius:.3125rem;cursor:initial;left:-1px;position:absolute;top:calc(100% + var(--dropdown-top-margin));width:calc(var(--text-field-input-field-width) + 2px);z-index:1}.dropdown-panel .search-input{align-items:center;border-bottom:1px solid var(--outline-field-full-enabled-pressed-primary);display:flex;padding:12px}.dropdown-panel .search-input gravity-icon.search-icon{margin-right:.5rem}.dropdown-panel .search-input gravity-icon.reset-icon{margin-left:.5rem}.dropdown-panel .search-input input{background-color:transparent;border:none;border-radius:0;color:var(--input-text-full-enabled-primary);margin:0;outline:none;padding:0;width:100%}.dropdown-panel .search-input input::placeholder{color:var(--placeholder-empty-enabled-primary)}.dropdown-panel .items{display:flex;flex-direction:column;gap:var(--dropdown-items-gap);max-height:200px;overflow:auto;padding:var(--dropdown-items-padding-top) 12px}.dropdown-panel .items .item{align-items:center;color:var(--label-text-full-enabled-primary);display:flex;padding:4px}.dropdown-panel .items .item:hover:not(.no-results),.dropdown-panel .items .item.selected{background-color:var(--bg-menu-button-hover-primary);color:var(--on-bg-menu-button-active-primary)}.dropdown-panel .items .item gravity-checkbox ::ng-deep .gravity-checkbox-field{padding-left:calc(var(--span-checkmark-width) + var(--span-checkmark-margin))}.dropdown-panel .items .item gravity-checkbox ::ng-deep .gravity-checkbox-field span.checkmark{height:var(--span-checkmark-height);min-height:var(--span-checkmark-height);min-width:var(--span-checkmark-width);width:var(--span-checkmark-width)}.dropdown-panel .dropdown-footer{align-items:center;display:flex;justify-content:space-between;padding:12px 12px 20px}.dropdown-panel .dropdown-footer.not-clearable{justify-content:end}.dropdown-panel .dropdown-footer p{cursor:pointer;color:var(--on-bg-button-active-secondary);margin-left:0}.supporting-text{align-items:center;color:var(--text-field-supporting-text-color);display:flex;margin:5px 12px 0}.supporting-text.active,.supporting-text.hover{--text-field-supporting-text-color: var(--label-text-empty-enabled-primary)}.supporting-text.typing{--text-field-supporting-text-color: var(--label-text-full-enabled-pressed-primary)}.supporting-text.typed{--text-field-supporting-text-color: var(--label-text-full-enabled-primary)}.supporting-text.error{--text-field-supporting-text-color: var(--negative-primary)}.supporting-text.disabled{--text-field-supporting-text-color: var(--on-bg-disabled)}.supporting-text.readonly{--text-field-supporting-text-color: var(--label-text-full-read-only-primary)}.supporting-text.sm{--text-field-supporting-text-icon-size: 9px}.supporting-text.md{--text-field-supporting-text-icon-size: 15px}.supporting-text gravity-icon{--icon-color: var(--negative-primary);--icon-height: var(--text-field-supporting-text-icon-size);--icon-width: var(--text-field-supporting-text-icon-size);margin-right:5px}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.GravityCheckboxComponent, selector: "gravity-checkbox", inputs: ["checked", "disabled", "name", "value"], outputs: ["change"] }, { kind: "component", type: i5.GravityIconComponent, selector: "gravity-icon", inputs: ["customIconColorVariable", "iconName", "iconSize", "hoverIcon", "size"] }] }); }
159
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityDropdownListComponent, selector: "gravity-dropdown-list", inputs: { clearable: "clearable", config: "config", currentLang: "currentLang", customValues: "customValues", cypressTag: "cypressTag", hasError: "hasError", iconLeft: "iconLeft", isDisabled: "isDisabled", isReadonly: "isReadonly", items: "items", label: "label", multiple: "multiple", placeholder: "placeholder", required: "required", supportText: "supportText", size: "size", width: "width" }, outputs: { selectedItemsResponse: "response" }, host: { listeners: { "document:click": "onDocumentClick($event)" } }, providers: [FilterByPipe], usesOnChanges: true, ngImport: i0, template: "<label class=\"hr-label sm-bold {{getStatus()}}\" *ngIf=\"label\">\n {{label}} <span *ngIf=\"required || hasError\">*</span>\n</label>\n<div [attr.data-cy]=\"cypressTag\" class=\"gravity-input-field {{size}} {{width}}-width {{getStatus()}}\"\n (click)=\"toggleDropdown()\">\n <gravity-icon class=\"left\" [iconName]=\"iconLeft\" [iconSize]=\"isIconLeftNew() ? 'md-16' : null\"\n *ngIf=\"iconLeft\"></gravity-icon>\n <p class=\"hr-label {{size}}-regular value\">\n <ng-container *ngIf=\"selectedItems.length == 0\">\n {{placeholder ? placeholder : label}}\n </ng-container>\n <ng-container *ngIf=\"selectedItems.length > 0\">\n <ng-container *ngFor=\"let item of selectedItems; let i = index\">\n {{config ? item[config.label] : item}}{{i != selectedItems.length - 1 ? ',' : ''}}\n </ng-container>\n </ng-container>\n </p>\n <gravity-icon class=\"right\" [iconName]=\"dropdownOpened ? 'arrow-up': 'arrow-down'\" [iconSize]=\"'md-16'\"\n *ngIf=\"!isReadonly\"></gravity-icon>\n <div class=\"dropdown-panel\" (click)=\"$event.stopPropagation()\" *ngIf=\"dropdownOpened\"\n [attr.data-cy]=\"cypressTag + '_panel'\">\n <div class=\"search-input\">\n <gravity-icon class=\"search-icon\" [iconName]=\"'search'\" [iconSize]=\"'sm-12'\"></gravity-icon>\n <input autocomplete=\"off\" class=\"hr-label {{size}}-regular\" (input)=\"filterItems()\"\n [attr.data-cy]=\"cypressTag + '_search_input'\" autofocus\n [(ngModel)]=\"searchText\" placeholder=\"{{currentLang == 'es' ? 'Limpiar' : 'Search input'}}\">\n <gravity-icon class=\"pointer reset-icon\" (click)=\"searchText = ''; filterItems()\" [iconName]=\"'unsuccess'\"\n [iconSize]=\"'sm-12'\" *ngIf=\"searchText?.length > 0\"></gravity-icon>\n </div>\n <div class=\"items\">\n <div class=\"hr-label item {{size}}-regular pointer\" [class.selected]=\"checkIfSelected(item)\"\n (click)=\"selectItem(item)\" *ngFor=\"let item of availableOptions\">\n <gravity-checkbox [checked]=\"checkIfSelected(item)\" *ngIf=\"multiple\">\n {{config ? item[config.label] : item}}\n </gravity-checkbox>\n <ng-container *ngIf=\"!multiple\">{{config ? item[config.label] : item}}</ng-container>\n </div>\n <div class=\"hr-label item {{size}}-bold no-results\" *ngIf=\"availableOptions.length === 0\">\n {{currentLang == 'es' ? 'Sin resultados' : 'No results'}}\n </div>\n </div>\n <div class=\"dropdown-footer\" *ngIf=\"selectedItems.length > 0\" [class.not-clearable]=\"!clearable\">\n <p class=\"hr-label pointer sm-regular\" (click)=\"clearSelection()\" *ngIf=\"clearable\"\n [attr.data-cy]=\"cypressTag + '_clear'\">\n {{currentLang == 'es' ? 'Limpiar' : 'Clear selection'}}\n </p>\n <p class=\"hr-label pointer sm-bold\" (click)=\"$event.stopPropagation(); toggleDropdown()\"\n *ngIf=\"availableOptions.length != 0\" [attr.data-cy]=\"cypressTag + '_apply'\">\n {{currentLang == 'es' ? 'Aplicar' : 'Apply'}}\n </p>\n </div>\n </div>\n</div>\n<p class=\"hr-label sm-regular supporting-text {{getStatus()}} {{size}}\" *ngIf=\"supportText\">\n <gravity-icon [iconName]=\"'question-circle'\" *ngIf=\"hasError\" [iconSize]=\"'md-16'\"></gravity-icon>\n {{supportText}}\n</p>\n<p class=\"hr-label sm-regular supporting-text {{getStatus()}} {{size}}\"\n *ngIf=\"!supportText && getStatus() == 'active' && selectedItems.length == 0 && required\">\n {{currentLang == 'es' ? 'Requerido' : 'Required'}}\n</p>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}.gravity-padding-none{padding:0!important}.gravity-padding-top-none{padding-top:0!important}.gravity-padding-bottom-none{padding-bottom:0!important}.gravity-padding-left-none{padding-left:0!important}.gravity-padding-right-none{padding-right:0!important}.gravity-padding-block-none{padding-block:0!important}.gravity-padding-inline-none{padding-inline:0!important}.gravity-padding-xs{padding:.5rem!important}.gravity-padding-top-xs{padding-top:.5rem!important}.gravity-padding-bottom-xs{padding-bottom:.5rem!important}.gravity-padding-left-xs{padding-left:.5rem!important}.gravity-padding-right-xs{padding-right:.5rem!important}.gravity-padding-block-xs{padding-block:.5rem!important}.gravity-padding-inline-xs{padding-inline:.5rem!important}.gravity-padding-sm{padding:1rem!important}.gravity-padding-top-sm{padding-top:1rem!important}.gravity-padding-bottom-sm{padding-bottom:1rem!important}.gravity-padding-left-sm{padding-left:1rem!important}.gravity-padding-right-sm{padding-right:1rem!important}.gravity-padding-block-sm{padding-block:1rem!important}.gravity-padding-inline-sm{padding-inline:1rem!important}.gravity-padding-md{padding:1.5rem!important}.gravity-padding-top-md{padding-top:1.5rem!important}.gravity-padding-bottom-md{padding-bottom:1.5rem!important}.gravity-padding-left-md{padding-left:1.5rem!important}.gravity-padding-right-md{padding-right:1.5rem!important}.gravity-padding-block-md{padding-block:1.5rem!important}.gravity-padding-inline-md{padding-inline:1.5rem!important}.gravity-padding-lg{padding:2rem!important}.gravity-padding-top-lg{padding-top:2rem!important}.gravity-padding-bottom-lg{padding-bottom:2rem!important}.gravity-padding-left-lg{padding-left:2rem!important}.gravity-padding-right-lg{padding-right:2rem!important}.gravity-padding-block-lg{padding-block:2rem!important}.gravity-padding-inline-lg{padding-inline:2rem!important}.gravity-padding-xl{padding:3rem!important}.gravity-padding-top-xl{padding-top:3rem!important}.gravity-padding-bottom-xl{padding-bottom:3rem!important}.gravity-padding-left-xl{padding-left:3rem!important}.gravity-padding-right-xl{padding-right:3rem!important}.gravity-padding-block-xl{padding-block:3rem!important}.gravity-padding-inline-xl{padding-inline:3rem!important}.gravity-padding-xxl{padding:4rem!important}.gravity-padding-top-xxl{padding-top:4rem!important}.gravity-padding-bottom-xxl{padding-bottom:4rem!important}.gravity-padding-left-xxl{padding-left:4rem!important}.gravity-padding-right-xxl{padding-right:4rem!important}.gravity-padding-block-xxl{padding-block:4rem!important}.gravity-padding-inline-xxl{padding-inline:4rem!important}.gravity-padding-xxxl{padding:6rem!important}.gravity-padding-top-xxxl{padding-top:6rem!important}.gravity-padding-bottom-xxxl{padding-bottom:6rem!important}.gravity-padding-left-xxxl{padding-left:6rem!important}.gravity-padding-right-xxxl{padding-right:6rem!important}.gravity-padding-block-xxxl{padding-block:6rem!important}.gravity-padding-inline-xxxl{padding-inline:6rem!important}.gravity-padding-xxxxl{padding:12rem!important}.gravity-padding-top-xxxxl{padding-top:12rem!important}.gravity-padding-bottom-xxxxl{padding-bottom:12rem!important}.gravity-padding-left-xxxxl{padding-left:12rem!important}.gravity-padding-right-xxxxl{padding-right:12rem!important}.gravity-padding-block-xxxxl{padding-block:12rem!important}.gravity-padding-inline-xxxxl{padding-inline:12rem!important}.gravity-margin-none{margin:0!important}.gravity-margin-top-none{margin-top:0!important}.gravity-margin-bottom-none{margin-bottom:0!important}.gravity-margin-left-none{margin-left:0!important}.gravity-margin-right-none{margin-right:0!important}.gravity-margin-block-none{margin-block:0!important}.gravity-margin-inline-none{margin-inline:0!important}.gravity-margin-xs{margin:.5rem!important}.gravity-margin-top-xs{margin-top:.5rem!important}.gravity-margin-bottom-xs{margin-bottom:.5rem!important}.gravity-margin-left-xs{margin-left:.5rem!important}.gravity-margin-right-xs{margin-right:.5rem!important}.gravity-margin-block-xs{margin-block:.5rem!important}.gravity-margin-inline-xs{margin-inline:.5rem!important}.gravity-margin-sm{margin:1rem!important}.gravity-margin-top-sm{margin-top:1rem!important}.gravity-margin-bottom-sm{margin-bottom:1rem!important}.gravity-margin-left-sm{margin-left:1rem!important}.gravity-margin-right-sm{margin-right:1rem!important}.gravity-margin-block-sm{margin-block:1rem!important}.gravity-margin-inline-sm{margin-inline:1rem!important}.gravity-margin-md{margin:1.5rem!important}.gravity-margin-top-md{margin-top:1.5rem!important}.gravity-margin-bottom-md{margin-bottom:1.5rem!important}.gravity-margin-left-md{margin-left:1.5rem!important}.gravity-margin-right-md{margin-right:1.5rem!important}.gravity-margin-block-md{margin-block:1.5rem!important}.gravity-margin-inline-md{margin-inline:1.5rem!important}.gravity-margin-lg{margin:2rem!important}.gravity-margin-top-lg{margin-top:2rem!important}.gravity-margin-bottom-lg{margin-bottom:2rem!important}.gravity-margin-left-lg{margin-left:2rem!important}.gravity-margin-right-lg{margin-right:2rem!important}.gravity-margin-block-lg{margin-block:2rem!important}.gravity-margin-inline-lg{margin-inline:2rem!important}.gravity-margin-xl{margin:3rem!important}.gravity-margin-top-xl{margin-top:3rem!important}.gravity-margin-bottom-xl{margin-bottom:3rem!important}.gravity-margin-left-xl{margin-left:3rem!important}.gravity-margin-right-xl{margin-right:3rem!important}.gravity-margin-block-xl{margin-block:3rem!important}.gravity-margin-inline-xl{margin-inline:3rem!important}.gravity-margin-xxl{margin:4rem!important}.gravity-margin-top-xxl{margin-top:4rem!important}.gravity-margin-bottom-xxl{margin-bottom:4rem!important}.gravity-margin-left-xxl{margin-left:4rem!important}.gravity-margin-right-xxl{margin-right:4rem!important}.gravity-margin-block-xxl{margin-block:4rem!important}.gravity-margin-inline-xxl{margin-inline:4rem!important}.gravity-margin-xxxl{margin:6rem!important}.gravity-margin-top-xxxl{margin-top:6rem!important}.gravity-margin-bottom-xxxl{margin-bottom:6rem!important}.gravity-margin-left-xxxl{margin-left:6rem!important}.gravity-margin-right-xxxl{margin-right:6rem!important}.gravity-margin-block-xxxl{margin-block:6rem!important}.gravity-margin-inline-xxxl{margin-inline:6rem!important}.gravity-margin-xxxxl{margin:12rem!important}.gravity-margin-top-xxxxl{margin-top:12rem!important}.gravity-margin-bottom-xxxxl{margin-bottom:12rem!important}.gravity-margin-left-xxxxl{margin-left:12rem!important}.gravity-margin-right-xxxxl{margin-right:12rem!important}.gravity-margin-block-xxxxl{margin-block:12rem!important}.gravity-margin-inline-xxxxl{margin-inline:12rem!important}:host{display:block}label{color:var(--text-field-label-color);display:block;margin:0 12px 5px}label.active,label.hover{--text-field-label-color: var(--label-text-empty-enabled-primary)}label.open{--text-field-label-color: var(--label-text-full-enabled-pressed-primary)}label.selected,label.error{--text-field-label-color: var(--label-text-full-enabled-primary)}label.error span{color:var(--negative-primary)}label.disabled{--text-field-label-color: var(--on-bg-disabled)}label.readonly{--text-field-label-color: var(--label-text-full-read-only-primary)}.gravity-input-field{align-items:center;background-color:var(--text-field-input-field-background-color);border:var(--text-field-input-field-border-width) solid var(--text-field-input-field-border-color);border-radius:.3125rem;color:var(--text-field-input-field-content-color);cursor:pointer;display:flex;height:var(--text-field-input-field-height);padding:10px 12px;position:relative;--text-field-input-field-border-width: .5px;width:var(--text-field-input-field-width)}.gravity-input-field gravity-icon{--icon-color: var(--text-field-input-field-icon-color);--icon-height: var(--text-field-input-field-content);--icon-width: var(--text-field-input-field-content)}.gravity-input-field gravity-icon.pointer{cursor:pointer}.gravity-input-field gravity-icon.left{margin-right:var(--icon-margin)}.gravity-input-field gravity-icon.right{margin-left:var(--icon-margin)}.gravity-input-field p.value{color:var(--text-field-input-field-content-color);height:var(--text-field-input-field-input);line-height:normal;margin-left:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.gravity-input-field.sm{--dropdown-items-gap: map-get($spacing-values, xs);--dropdown-items-padding-top: 16px;--dropdown-top-margin: 5px;--text-field-input-field-content: 9px;--text-field-input-field-height: 29px;--text-field-input-field-input: 13px;--icon-margin: 5px;--span-checkmark-height: 14px;--span-checkmark-margin: 5px;--span-checkmark-width: 14px}.gravity-input-field.sm.short-width{--text-field-input-field-width: 195px}.gravity-input-field.sm.medium-width{--text-field-input-field-width: 276px}.gravity-input-field.sm.full-width{--text-field-input-field-width: 398px}.gravity-input-field.sm.fit-width{--text-field-input-field-width: 100%}.gravity-input-field.md{--dropdown-items-gap: 12px;--dropdown-items-padding-top: 20px;--dropdown-top-margin: 8px;--text-field-input-field-content: 15px;--text-field-input-field-height: 35px;--text-field-input-field-input: 18px;--icon-margin: 8px;--span-checkmark-height: 16px;--span-checkmark-margin: 8px;--span-checkmark-width: 16px}.gravity-input-field.md.short-width{--text-field-input-field-width: 242px}.gravity-input-field.md.medium-width{--text-field-input-field-width: 329px}.gravity-input-field.md.full-width{--text-field-input-field-width: 416px}.gravity-input-field.md.fit-width{--text-field-input-field-width: 100%}.gravity-input-field.active{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-empty-enabled-primary);--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--label-text-empty-enabled-primary)}.gravity-input-field.active:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.open{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-pressed-primary);--text-field-input-field-border-width: 1px;--text-field-input-field-content-color: var(--placeholder-empty-enabled-primary);--text-field-input-field-icon-color: var(--icon-active-primary)}.gravity-input-field.selected{--text-field-input-field-background-color: var(--bg-field-empty-enabled-primary);--text-field-input-field-border-color: var(--outline-field-full-enabled-primary);--text-field-input-field-content-color: var(--placeholder-full-enabled-pressed-primary);--text-field-input-field-icon-color: var(--icon-active-primary)}.gravity-input-field.selected:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.error{--text-field-input-field-background-color: var(--bg-field-full-enabled-primary);--text-field-input-field-border-color: var(--negative-primary);--text-field-input-field-content-color: var(--label-text-full-enabled-primary);--text-field-input-field-icon-color: var(--label-text-full-enabled-primary)}.gravity-input-field.error:hover{--text-field-input-field-border-width: 1px}.gravity-input-field.disabled{cursor:initial;--text-field-input-field-background-color: var(--bg-disabled);--text-field-input-field-border-color: var(--outline-disabled);--text-field-input-field-content-color: var(--on-bg-disabled);--text-field-input-field-icon-color: var(--on-bg-disabled)}.gravity-input-field.readonly{cursor:initial;--text-field-input-field-background-color: var(--bg-field-full-read-only-primary);--text-field-input-field-border-color: var(--bg-field-full-read-only-primary);--text-field-input-field-content-color: var(--input-text-full-read-only-primary);--text-field-input-field-icon-color: var(--input-text-full-read-only-primary)}.dropdown-panel{background-color:var(--bg-field-full-enabled-primary);border:1px solid var(--outline-field-full-enabled-pressed-primary);border-radius:.3125rem;cursor:initial;left:-1px;position:absolute;top:calc(100% + var(--dropdown-top-margin));width:calc(var(--text-field-input-field-width) + 2px);z-index:1}.dropdown-panel .search-input{align-items:center;border-bottom:1px solid var(--outline-field-full-enabled-pressed-primary);display:flex;padding:12px}.dropdown-panel .search-input gravity-icon.search-icon{margin-right:.5rem}.dropdown-panel .search-input gravity-icon.reset-icon{margin-left:.5rem}.dropdown-panel .search-input input{background-color:transparent;border:none;border-radius:0;color:var(--input-text-full-enabled-primary);margin:0;outline:none;padding:0;width:100%}.dropdown-panel .search-input input::placeholder{color:var(--placeholder-empty-enabled-primary)}.dropdown-panel .items{display:flex;flex-direction:column;gap:var(--dropdown-items-gap);max-height:200px;overflow:auto;padding:var(--dropdown-items-padding-top) 12px}.dropdown-panel .items .item{align-items:center;color:var(--label-text-full-enabled-primary);display:flex;padding:4px}.dropdown-panel .items .item:hover:not(.no-results),.dropdown-panel .items .item.selected{background-color:var(--bg-menu-button-hover-primary);color:var(--on-bg-menu-button-active-primary)}.dropdown-panel .items .item gravity-checkbox ::ng-deep .gravity-checkbox-field{padding-left:calc(var(--span-checkmark-width) + var(--span-checkmark-margin))}.dropdown-panel .items .item gravity-checkbox ::ng-deep .gravity-checkbox-field span.checkmark{height:var(--span-checkmark-height);min-height:var(--span-checkmark-height);min-width:var(--span-checkmark-width);width:var(--span-checkmark-width)}.dropdown-panel .dropdown-footer{align-items:center;display:flex;justify-content:space-between;padding:12px 12px 20px}.dropdown-panel .dropdown-footer.not-clearable{justify-content:end}.dropdown-panel .dropdown-footer p{cursor:pointer;color:var(--on-bg-button-active-secondary);margin-left:0}.supporting-text{align-items:center;color:var(--text-field-supporting-text-color);display:flex;margin:5px 12px 0}.supporting-text.active,.supporting-text.hover{--text-field-supporting-text-color: var(--label-text-empty-enabled-primary)}.supporting-text.typing{--text-field-supporting-text-color: var(--label-text-full-enabled-pressed-primary)}.supporting-text.typed{--text-field-supporting-text-color: var(--label-text-full-enabled-primary)}.supporting-text.error{--text-field-supporting-text-color: var(--negative-primary)}.supporting-text.disabled{--text-field-supporting-text-color: var(--on-bg-disabled)}.supporting-text.readonly{--text-field-supporting-text-color: var(--label-text-full-read-only-primary)}.supporting-text.sm{--text-field-supporting-text-icon-size: 9px}.supporting-text.md{--text-field-supporting-text-icon-size: 15px}.supporting-text gravity-icon{--icon-color: var(--negative-primary);--icon-height: var(--text-field-supporting-text-icon-size);--icon-width: var(--text-field-supporting-text-icon-size);margin-right:5px}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.GravityCheckboxComponent, selector: "gravity-checkbox", inputs: ["checked", "disabled", "name", "size", "value"], outputs: ["change"] }, { kind: "component", type: i5.GravityIconComponent, selector: "gravity-icon", inputs: ["customIconColorVariable", "iconName", "iconSize", "hoverIcon", "size"] }] }); }
160
160
  }
161
161
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityDropdownListComponent, decorators: [{
162
162
  type: Component,
@@ -1,30 +1,32 @@
1
1
  import { Component, EventEmitter, Input, Output } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
- import * as i1 from "ngx-pretty-checkbox";
4
3
  export class GravityRadioButtonComponent {
5
4
  constructor() {
6
5
  this.checked = false;
7
6
  this.disabled = false;
8
- this.change = new EventEmitter();
7
+ this.size = 'sm';
8
+ this.onChange = new EventEmitter();
9
9
  }
10
- onChange(event) {
11
- this.change.emit(event);
10
+ onChangeEvent(value) {
11
+ this.onChange.emit(value);
12
12
  }
13
13
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityRadioButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityRadioButtonComponent, selector: "gravity-radio-button", inputs: { checked: "checked", disabled: "disabled", name: "name", value: "value" }, outputs: { change: "change" }, ngImport: i0, template: "<ngx-pretty-radio\n will-change\n\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [outline]=\"true\"\n [value]=\"value\"\n\n (change)=\"onChange($event)\">\n <ng-content></ng-content>\n</ngx-pretty-radio>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "component", type: i1.NgxPrettyRadioWillChangeComponent, selector: "ngx-pretty-radio[will-change], p-radio[will-change]", inputs: ["stroke", "shape", "animation", "color", "outline", "checked", "disabled", "value", "name", "isSwitch", "lock", "bigger", "enableFocus", "plain"], outputs: ["change"], exportAs: ["ngxPrettyRadio"] }] }); }
14
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravityRadioButtonComponent, selector: "gravity-radio-button", inputs: { checked: "checked", disabled: "disabled", name: "name", size: "size", value: "value" }, outputs: { onChange: "onChange" }, ngImport: i0, template: "<input [checked]=\"checked\" class=\"size-{{size}}\" (click)=\"onChangeEvent(value)\" [disabled]=\"disabled\" [id]=\"value\"\n [name]=\"name\" type=\"radio\" [value]=\"value\">\n<label>\n <ng-content></ng-content>\n</label>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}:host{align-items:center;display:flex}input[type=radio]{appearance:none;background-color:var(--radio-button-background-color);border-color:var(--radio-button-border-color);border-radius:6.25rem;border-style:solid;border-width:var(--radio-button-border-width);display:inline-block;height:var(--radio-button-size);margin:0;max-height:var(--radio-button-size);max-width:var(--radio-button-size);min-height:var(--radio-button-size);min-width:var(--radio-button-size);--radio-button-background-color: transparent;width:var(--radio-button-size)}input[type=radio]:disabled{--radio-button-border-color: var(--outline-disabled)}input[type=radio]:not(:disabled){--radio-button-border-color: var(--radio-button-off-primary)}input[type=radio]:not(:disabled):checked{--radio-button-background-color: var(--on-bg-checkbox-on-primary);--radio-button-border-color: var(--radio-button-on-primary)}input[type=radio].size-md{--radio-button-border-width: 3px;--radio-button-size: 27px}input[type=radio].size-md:checked:not(:disabled){--radio-button-border-width: 8px}input[type=radio].size-sm{--radio-button-border-width: 2px;--radio-button-size: 20px}input[type=radio].size-sm:checked:not(:disabled){--radio-button-border-width: 6px}label:not(:empty){margin-left:10px}\n"] }); }
15
15
  }
16
16
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravityRadioButtonComponent, decorators: [{
17
17
  type: Component,
18
- args: [{ selector: 'gravity-radio-button', template: "<ngx-pretty-radio\n will-change\n\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n [name]=\"name\"\n [outline]=\"true\"\n [value]=\"value\"\n\n (change)=\"onChange($event)\">\n <ng-content></ng-content>\n</ngx-pretty-radio>\n", styles: [":host{display:block}\n"] }]
18
+ args: [{ selector: 'gravity-radio-button', template: "<input [checked]=\"checked\" class=\"size-{{size}}\" (click)=\"onChangeEvent(value)\" [disabled]=\"disabled\" [id]=\"value\"\n [name]=\"name\" type=\"radio\" [value]=\"value\">\n<label>\n <ng-content></ng-content>\n</label>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}:host{align-items:center;display:flex}input[type=radio]{appearance:none;background-color:var(--radio-button-background-color);border-color:var(--radio-button-border-color);border-radius:6.25rem;border-style:solid;border-width:var(--radio-button-border-width);display:inline-block;height:var(--radio-button-size);margin:0;max-height:var(--radio-button-size);max-width:var(--radio-button-size);min-height:var(--radio-button-size);min-width:var(--radio-button-size);--radio-button-background-color: transparent;width:var(--radio-button-size)}input[type=radio]:disabled{--radio-button-border-color: var(--outline-disabled)}input[type=radio]:not(:disabled){--radio-button-border-color: var(--radio-button-off-primary)}input[type=radio]:not(:disabled):checked{--radio-button-background-color: var(--on-bg-checkbox-on-primary);--radio-button-border-color: var(--radio-button-on-primary)}input[type=radio].size-md{--radio-button-border-width: 3px;--radio-button-size: 27px}input[type=radio].size-md:checked:not(:disabled){--radio-button-border-width: 8px}input[type=radio].size-sm{--radio-button-border-width: 2px;--radio-button-size: 20px}input[type=radio].size-sm:checked:not(:disabled){--radio-button-border-width: 6px}label:not(:empty){margin-left:10px}\n"] }]
19
19
  }], propDecorators: { checked: [{
20
20
  type: Input
21
21
  }], disabled: [{
22
22
  type: Input
23
23
  }], name: [{
24
24
  type: Input
25
+ }], size: [{
26
+ type: Input
25
27
  }], value: [{
26
28
  type: Input
27
- }], change: [{
29
+ }], onChange: [{
28
30
  type: Output
29
31
  }] } });
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1yYWRpby1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3Jhdml0eS1kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9ncmF2aXR5LXJhZGlvLWJ1dHRvbi9ncmF2aXR5LXJhZGlvLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktcmFkaW8tYnV0dG9uL2dyYXZpdHktcmFkaW8tYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7OztBQVFyRSxNQUFNLE9BQU8sMkJBQTJCO0lBTHhDO1FBTWtCLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFDekIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUd6QixXQUFNLEdBQW9DLElBQUksWUFBWSxFQUFxQixDQUFDO0tBS2xHO0lBSEMsUUFBUSxDQUFDLEtBQXdCO1FBQy9CLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7K0dBVFUsMkJBQTJCO21HQUEzQiwyQkFBMkIsK0tDUnhDLDRQQVlBOzs0RkRKYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0Usc0JBQXNCOzhCQUtoQixPQUFPO3NCQUF0QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNXLE1BQU07c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7UHJldHR5UmFkaW9DaGFuZ2V9IGZyb20gXCJuZ3gtcHJldHR5LWNoZWNrYm94XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dyYXZpdHktcmFkaW8tYnV0dG9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dyYXZpdHktcmFkaW8tYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZ3Jhdml0eS1yYWRpby1idXR0b24uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBHcmF2aXR5UmFkaW9CdXR0b25Db21wb25lbnQge1xuICBASW5wdXQoKSBwdWJsaWMgY2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIG5hbWU6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHZhbHVlOiBzdHJpbmc7XG4gIEBPdXRwdXQoKSBwdWJsaWMgY2hhbmdlOiBFdmVudEVtaXR0ZXI8UHJldHR5UmFkaW9DaGFuZ2U+ID0gbmV3IEV2ZW50RW1pdHRlcjxQcmV0dHlSYWRpb0NoYW5nZT4oKTtcblxuICBvbkNoYW5nZShldmVudDogUHJldHR5UmFkaW9DaGFuZ2UpOiB2b2lkIHtcbiAgICB0aGlzLmNoYW5nZS5lbWl0KGV2ZW50KTtcbiAgfVxufVxuIiwiPG5neC1wcmV0dHktcmFkaW9cbiAgICB3aWxsLWNoYW5nZVxuXG4gICAgW2NoZWNrZWRdPVwiY2hlY2tlZFwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbbmFtZV09XCJuYW1lXCJcbiAgICBbb3V0bGluZV09XCJ0cnVlXCJcbiAgICBbdmFsdWVdPVwidmFsdWVcIlxuXG4gICAgKGNoYW5nZSk9XCJvbkNoYW5nZSgkZXZlbnQpXCI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbmd4LXByZXR0eS1yYWRpbz5cbiJdfQ==
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1yYWRpby1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3Jhdml0eS1kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9ncmF2aXR5LXJhZGlvLWJ1dHRvbi9ncmF2aXR5LXJhZGlvLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktcmFkaW8tYnV0dG9uL2dyYXZpdHktcmFkaW8tYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7O0FBT3JFLE1BQU0sT0FBTywyQkFBMkI7SUFMeEM7UUFNa0IsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUN6QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRTFCLFNBQUksR0FBZ0IsSUFBSSxDQUFDO1FBRXhCLGFBQVEsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztLQUs5RTtJQUhRLGFBQWEsQ0FBQyxLQUFhO1FBQ2hDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7K0dBVlUsMkJBQTJCO21HQUEzQiwyQkFBMkIsaU1DUHhDLDBPQUtBOzs0RkRFYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0Usc0JBQXNCOzhCQUtoQixPQUFPO3NCQUF0QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxJQUFJO3NCQUFuQixLQUFLO2dCQUNVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1csUUFBUTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdncmF2aXR5LXJhZGlvLWJ1dHRvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9ncmF2aXR5LXJhZGlvLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyYXZpdHktcmFkaW8tYnV0dG9uLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgR3Jhdml0eVJhZGlvQnV0dG9uQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHVibGljIGNoZWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBuYW1lOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzaXplOiAnbWQnIHwgJ3NtJyA9ICdzbSc7XG4gIEBJbnB1dCgpIHB1YmxpYyB2YWx1ZTogc3RyaW5nO1xuICBAT3V0cHV0KCkgcHVibGljIG9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIHB1YmxpYyBvbkNoYW5nZUV2ZW50KHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodmFsdWUpO1xuICB9XG59XG4iLCI8aW5wdXQgW2NoZWNrZWRdPVwiY2hlY2tlZFwiIGNsYXNzPVwic2l6ZS17e3NpemV9fVwiIChjbGljayk9XCJvbkNoYW5nZUV2ZW50KHZhbHVlKVwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIFtpZF09XCJ2YWx1ZVwiXG4gICAgICAgW25hbWVdPVwibmFtZVwiIHR5cGU9XCJyYWRpb1wiIFt2YWx1ZV09XCJ2YWx1ZVwiPlxuPGxhYmVsPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2xhYmVsPlxuIl19
@@ -3,45 +3,44 @@ import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/common";
4
4
  export class GravitySwitchComponent {
5
5
  constructor() {
6
- this.currentLang = "en";
7
- this.customCheck = false;
8
- this.required = false;
9
- this.state = "enabled";
10
- this.switchResponse = new EventEmitter();
6
+ this.checked = false;
7
+ this.disabled = false;
8
+ this.size = 'md';
9
+ this.response = new EventEmitter();
11
10
  this.isSwitchActive = false;
12
11
  }
13
12
  ngAfterViewInit() {
14
- this.isSwitchActive = this.customCheck;
15
- this.switchResponse.emit(this.isSwitchActive);
13
+ this.isSwitchActive = this.checked;
14
+ this.response.emit(this.isSwitchActive);
15
+ }
16
+ ngOnChanges(changes) {
17
+ if (changes['checked']) {
18
+ this.isSwitchActive = changes['checked'].currentValue;
19
+ }
16
20
  }
17
21
  toggleSwitch() {
18
- if (this.state == 'enabled') {
22
+ if (!this.disabled) {
19
23
  this.isSwitchActive = !this.isSwitchActive;
20
- this.switchResponse.emit(this.isSwitchActive);
24
+ this.response.emit(this.isSwitchActive);
21
25
  }
22
26
  }
23
27
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravitySwitchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
24
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravitySwitchComponent, selector: "gravity-switch", inputs: { currentLang: "currentLang", customCheck: "customCheck", cypressTag: "cypressTag", label: "label", required: "required", state: "state", toggleOptions: "toggleOptions" }, outputs: { switchResponse: "response" }, ngImport: i0, template: "<label class=\"hr-body-text sm-regular\" *ngIf=\"label\">\n {{label}}\n <ng-container *ngIf=\"required\">\n <ng-container *ngIf=\"currentLang == 'es'\">- Requerido <span class=\"text-negative\">*</span></ng-container>\n <ng-container *ngIf=\"currentLang == 'en'\">- Required <span class=\"text-negative\">*</span></ng-container>\n </ng-container>\n <ng-container *ngIf=\"state == 'readonly'\">\n <ng-container *ngIf=\"currentLang == 'es'\">- S\u00F3lo lectura</ng-container>\n <ng-container *ngIf=\"currentLang == 'en'\">- Readonly</ng-container>\n </ng-container>\n <ng-container *ngIf=\"state == 'disabled'\">\n <ng-container *ngIf=\"currentLang == 'es'\">- Deshabilitado</ng-container>\n <ng-container *ngIf=\"currentLang == 'en'\">- Disabled</ng-container>\n </ng-container>\n</label>\n<div class=\"gravity-switch\" [class.toggle-options]=\"toggleOptions\">\n <span class=\"hr-body-text sm-regular\" *ngIf=\"toggleOptions\">\n {{toggleOptions[0]}}\n </span>\n <div [attr.data-cy]=\"cypressTag\" class=\"switch\" (click)=\"toggleSwitch()\" [class.disabled]=\"state == 'disabled'\">\n <input type=\"checkbox\" [checked]=\"isSwitchActive\" [disabled]=\"state == 'disabled'\">\n <span class=\"slider round\"></span>\n </div>\n <span class=\"hr-body-text sm-regular\" *ngIf=\"toggleOptions\">\n {{toggleOptions[1]}}\n </span>\n</div>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}.text-negative{color:var(--negative-primary)}.text-neutro{color:var(--text-primary)}.text-positive{color:var(--positive-primary)}.support-text{margin-left:0;margin-top:.3125rem;padding-inline:1rem}:host{display:block}label{color:var(--text-primary);margin-inline:1rem}.gravity-switch{align-items:center;display:flex;height:3rem;padding:.625rem 1rem}.gravity-switch.toggle-options .switch{margin-inline:.5rem .75rem}.gravity-switch .switch{display:inline-block;height:1.75rem;position:relative;width:3rem}.gravity-switch .switch input{opacity:0;width:0;height:0}.gravity-switch .switch input:checked+.slider{background-color:var(--bg-switch-on-primary)}.gravity-switch .switch input:checked+.slider:before{background-color:var(--on-bg-switch-on-primary);transform:translate(110%);-webkit-transform:translateX(110%)}.gravity-switch .switch span.slider{background-color:var(--bg-switch-off-primary);border-radius:6.25rem;cursor:pointer;inset:0;position:absolute;transition:.4s;-webkit-transition:.4s}.gravity-switch .switch span.slider:before{background-color:var(--on-bg-switch-off-primary);border-radius:6.25rem;content:\"\";height:1.1rem;left:10%;position:absolute;top:18%;transition:.4s;width:1.1rem;-webkit-transition:.4s}.gravity-switch .switch.disabled span.slider{background-color:var(--bg-switch-disabled-primary);cursor:initial}.gravity-switch .switch.disabled span.slider:before{background-color:var(--on-bg-switch-disabled-primary)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
28
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GravitySwitchComponent, selector: "gravity-switch", inputs: { checked: "checked", cypressTag: "cypressTag", disabled: "disabled", size: "size", textOptions: "textOptions" }, outputs: { response: "response" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"gravity-switch size-{{size}}\" [class.with-above-text]=\"textOptions?.above\"\n [class.with-below-text]=\"textOptions?.below\">\n <span class=\"hr-body-text sm-regular\" *ngIf=\"textOptions?.left\">{{ textOptions.left }}</span>\n <div [attr.data-cy]=\"cypressTag\" class=\"switch\" [class.disabled]=\"disabled\" (click)=\"toggleSwitch()\">\n <span class=\"hr-body-text sm-regular above-text\" *ngIf=\"textOptions?.above\">{{ textOptions.above }}</span>\n <input type=\"checkbox\" [checked]=\"isSwitchActive\">\n <span class=\"slider\"></span>\n <span class=\"hr-body-text sm-regular below-text\" *ngIf=\"textOptions?.below\">{{ textOptions.below }}</span>\n </div>\n <span class=\"hr-body-text sm-regular\" *ngIf=\"textOptions?.right\">{{ textOptions.right }}</span>\n</div>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}:host{display:block}.gravity-switch{align-items:center;display:flex;gap:8px}.gravity-switch.with-above-text{padding-top:calc(var(--above-text-top) * -1)}.gravity-switch.with-below-text{padding-bottom:calc(var(--below-text-bottom) * -1)}.gravity-switch .switch{height:var(--switch-height);position:relative;width:var(--switch-width)}.gravity-switch .switch span.above-text{left:0;position:absolute;top:var(--above-text-top)}.gravity-switch .switch span.below-text{bottom:var(--below-text-bottom);left:0;position:absolute}.gravity-switch .switch input{opacity:0;width:0;height:0}.gravity-switch .switch span.slider{background-color:var(--bg-switch-off-primary);border:1px solid;border-color:var(--bg-switch-off-primary);border-radius:6.25rem;cursor:pointer;inset:0;position:absolute;transition:.4s;-webkit-transition:.4s}.gravity-switch .switch span.slider:before{background-color:var(--on-bg-switch-off-primary);border-radius:6.25rem;content:\"\";height:var(--switch-slider-size);inset:var(--switch-slider-position) auto auto var(--switch-slider-position);position:absolute;transition:.4s;width:var(--switch-slider-size);-webkit-transition:.4s}.gravity-switch .switch input:checked+.slider:before{inset:var(--switch-slider-position) var(--switch-slider-position) auto auto}.gravity-switch .switch.disabled span.slider{background-color:transparent;border-color:var(--bg-switch-disabled-primary)!important;cursor:initial}.gravity-switch .switch.disabled span.slider:before{background-color:var(--on-bg-switch-disabled-primary)!important}.gravity-switch .switch:not(.disabled) input:checked+.slider{background-color:var(--bg-switch-on-primary);border-color:var(--bg-switch-on-primary)}.gravity-switch .switch:not(.disabled) input:checked+.slider:before{background-color:var(--on-bg-switch-on-primary)}.gravity-switch.size-sm{--above-text-top: calc((var(--switch-slider-size) * -1) - 7.5px);--below-text-bottom: calc((var(--switch-slider-size) * -1) - 7.5px);--switch-height: 18px;--switch-slider-position: 1px;--switch-slider-size: 13.5px;--switch-width: 31.5px}.gravity-switch.size-md{--above-text-top: calc((var(--switch-slider-size) * -1) - 8px);--below-text-bottom: calc((var(--switch-slider-size) * -1) - 8px);--switch-height: 24px;--switch-slider-position: 2px;--switch-slider-size: 18px;--switch-width: 42px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
25
29
  }
26
30
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GravitySwitchComponent, decorators: [{
27
31
  type: Component,
28
- args: [{ selector: 'gravity-switch', template: "<label class=\"hr-body-text sm-regular\" *ngIf=\"label\">\n {{label}}\n <ng-container *ngIf=\"required\">\n <ng-container *ngIf=\"currentLang == 'es'\">- Requerido <span class=\"text-negative\">*</span></ng-container>\n <ng-container *ngIf=\"currentLang == 'en'\">- Required <span class=\"text-negative\">*</span></ng-container>\n </ng-container>\n <ng-container *ngIf=\"state == 'readonly'\">\n <ng-container *ngIf=\"currentLang == 'es'\">- S\u00F3lo lectura</ng-container>\n <ng-container *ngIf=\"currentLang == 'en'\">- Readonly</ng-container>\n </ng-container>\n <ng-container *ngIf=\"state == 'disabled'\">\n <ng-container *ngIf=\"currentLang == 'es'\">- Deshabilitado</ng-container>\n <ng-container *ngIf=\"currentLang == 'en'\">- Disabled</ng-container>\n </ng-container>\n</label>\n<div class=\"gravity-switch\" [class.toggle-options]=\"toggleOptions\">\n <span class=\"hr-body-text sm-regular\" *ngIf=\"toggleOptions\">\n {{toggleOptions[0]}}\n </span>\n <div [attr.data-cy]=\"cypressTag\" class=\"switch\" (click)=\"toggleSwitch()\" [class.disabled]=\"state == 'disabled'\">\n <input type=\"checkbox\" [checked]=\"isSwitchActive\" [disabled]=\"state == 'disabled'\">\n <span class=\"slider round\"></span>\n </div>\n <span class=\"hr-body-text sm-regular\" *ngIf=\"toggleOptions\">\n {{toggleOptions[1]}}\n </span>\n</div>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}.text-negative{color:var(--negative-primary)}.text-neutro{color:var(--text-primary)}.text-positive{color:var(--positive-primary)}.support-text{margin-left:0;margin-top:.3125rem;padding-inline:1rem}:host{display:block}label{color:var(--text-primary);margin-inline:1rem}.gravity-switch{align-items:center;display:flex;height:3rem;padding:.625rem 1rem}.gravity-switch.toggle-options .switch{margin-inline:.5rem .75rem}.gravity-switch .switch{display:inline-block;height:1.75rem;position:relative;width:3rem}.gravity-switch .switch input{opacity:0;width:0;height:0}.gravity-switch .switch input:checked+.slider{background-color:var(--bg-switch-on-primary)}.gravity-switch .switch input:checked+.slider:before{background-color:var(--on-bg-switch-on-primary);transform:translate(110%);-webkit-transform:translateX(110%)}.gravity-switch .switch span.slider{background-color:var(--bg-switch-off-primary);border-radius:6.25rem;cursor:pointer;inset:0;position:absolute;transition:.4s;-webkit-transition:.4s}.gravity-switch .switch span.slider:before{background-color:var(--on-bg-switch-off-primary);border-radius:6.25rem;content:\"\";height:1.1rem;left:10%;position:absolute;top:18%;transition:.4s;width:1.1rem;-webkit-transition:.4s}.gravity-switch .switch.disabled span.slider{background-color:var(--bg-switch-disabled-primary);cursor:initial}.gravity-switch .switch.disabled span.slider:before{background-color:var(--on-bg-switch-disabled-primary)}\n"] }]
29
- }], propDecorators: { currentLang: [{
30
- type: Input
31
- }], customCheck: [{
32
+ args: [{ selector: 'gravity-switch', template: "<div class=\"gravity-switch size-{{size}}\" [class.with-above-text]=\"textOptions?.above\"\n [class.with-below-text]=\"textOptions?.below\">\n <span class=\"hr-body-text sm-regular\" *ngIf=\"textOptions?.left\">{{ textOptions.left }}</span>\n <div [attr.data-cy]=\"cypressTag\" class=\"switch\" [class.disabled]=\"disabled\" (click)=\"toggleSwitch()\">\n <span class=\"hr-body-text sm-regular above-text\" *ngIf=\"textOptions?.above\">{{ textOptions.above }}</span>\n <input type=\"checkbox\" [checked]=\"isSwitchActive\">\n <span class=\"slider\"></span>\n <span class=\"hr-body-text sm-regular below-text\" *ngIf=\"textOptions?.below\">{{ textOptions.below }}</span>\n </div>\n <span class=\"hr-body-text sm-regular\" *ngIf=\"textOptions?.right\">{{ textOptions.right }}</span>\n</div>\n", styles: [".border-radius-none{border-radius:0}.border-radius-xs{border-radius:.0625rem}.border-radius-sm{border-radius:.3125rem}.border-radius-md{border-radius:.625rem}.border-radius-lg{border-radius:.9375rem}.border-radius-xl{border-radius:1.25rem}.border-radius-xxl{border-radius:2rem}.border-radius-rounded{border-radius:6.25rem}:host{display:block}.gravity-switch{align-items:center;display:flex;gap:8px}.gravity-switch.with-above-text{padding-top:calc(var(--above-text-top) * -1)}.gravity-switch.with-below-text{padding-bottom:calc(var(--below-text-bottom) * -1)}.gravity-switch .switch{height:var(--switch-height);position:relative;width:var(--switch-width)}.gravity-switch .switch span.above-text{left:0;position:absolute;top:var(--above-text-top)}.gravity-switch .switch span.below-text{bottom:var(--below-text-bottom);left:0;position:absolute}.gravity-switch .switch input{opacity:0;width:0;height:0}.gravity-switch .switch span.slider{background-color:var(--bg-switch-off-primary);border:1px solid;border-color:var(--bg-switch-off-primary);border-radius:6.25rem;cursor:pointer;inset:0;position:absolute;transition:.4s;-webkit-transition:.4s}.gravity-switch .switch span.slider:before{background-color:var(--on-bg-switch-off-primary);border-radius:6.25rem;content:\"\";height:var(--switch-slider-size);inset:var(--switch-slider-position) auto auto var(--switch-slider-position);position:absolute;transition:.4s;width:var(--switch-slider-size);-webkit-transition:.4s}.gravity-switch .switch input:checked+.slider:before{inset:var(--switch-slider-position) var(--switch-slider-position) auto auto}.gravity-switch .switch.disabled span.slider{background-color:transparent;border-color:var(--bg-switch-disabled-primary)!important;cursor:initial}.gravity-switch .switch.disabled span.slider:before{background-color:var(--on-bg-switch-disabled-primary)!important}.gravity-switch .switch:not(.disabled) input:checked+.slider{background-color:var(--bg-switch-on-primary);border-color:var(--bg-switch-on-primary)}.gravity-switch .switch:not(.disabled) input:checked+.slider:before{background-color:var(--on-bg-switch-on-primary)}.gravity-switch.size-sm{--above-text-top: calc((var(--switch-slider-size) * -1) - 7.5px);--below-text-bottom: calc((var(--switch-slider-size) * -1) - 7.5px);--switch-height: 18px;--switch-slider-position: 1px;--switch-slider-size: 13.5px;--switch-width: 31.5px}.gravity-switch.size-md{--above-text-top: calc((var(--switch-slider-size) * -1) - 8px);--below-text-bottom: calc((var(--switch-slider-size) * -1) - 8px);--switch-height: 24px;--switch-slider-position: 2px;--switch-slider-size: 18px;--switch-width: 42px}\n"] }]
33
+ }], propDecorators: { checked: [{
32
34
  type: Input
33
35
  }], cypressTag: [{
34
36
  type: Input
35
- }], label: [{
36
- type: Input
37
- }], required: [{
37
+ }], disabled: [{
38
38
  type: Input
39
- }], state: [{
39
+ }], size: [{
40
40
  type: Input
41
- }], toggleOptions: [{
41
+ }], textOptions: [{
42
42
  type: Input
43
- }], switchResponse: [{
44
- type: Output,
45
- args: ['response']
43
+ }], response: [{
44
+ type: Output
46
45
  }] } });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1zd2l0Y2guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3Jhdml0eS1kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9ncmF2aXR5LXN3aXRjaC9ncmF2aXR5LXN3aXRjaC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktc3dpdGNoL2dyYXZpdHktc3dpdGNoLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDOzs7QUFPcEYsTUFBTSxPQUFPLHNCQUFzQjtJQUxuQztRQU1rQixnQkFBVyxHQUFXLElBQUksQ0FBQztRQUMzQixnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUc3QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLFVBQUssR0FBd0MsU0FBUyxDQUFDO1FBRTVDLG1CQUFjLEdBQTBCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFL0UsbUJBQWMsR0FBWSxLQUFLLENBQUM7S0FheEM7SUFYQyxlQUFlO1FBQ2IsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRU0sWUFBWTtRQUNqQixJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksU0FBUyxFQUFFO1lBQzNCLElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO1lBQzNDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUMvQztJQUNILENBQUM7K0dBdEJVLHNCQUFzQjttR0FBdEIsc0JBQXNCLG1SQ1BuQyxtMkNBMkJBOzs0RkRwQmEsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLGdCQUFnQjs4QkFLVixXQUFXO3NCQUExQixLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBQ1UsVUFBVTtzQkFBekIsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxhQUFhO3NCQUE1QixLQUFLO2dCQUNxQixjQUFjO3NCQUF4QyxNQUFNO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ3Jhdml0eS1zd2l0Y2gnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3Jhdml0eS1zd2l0Y2guY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ncmF2aXR5LXN3aXRjaC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEdyYXZpdHlTd2l0Y2hDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCkgcHVibGljIGN1cnJlbnRMYW5nOiBzdHJpbmcgPSBcImVuXCI7XG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21DaGVjazogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgY3lwcmVzc1RhZzogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgbGFiZWw6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBzdGF0ZTogJ3JlYWRvbmx5JyB8ICdkaXNhYmxlZCcgfCAnZW5hYmxlZCcgPSBcImVuYWJsZWRcIjtcbiAgQElucHV0KCkgcHVibGljIHRvZ2dsZU9wdGlvbnM6IHN0cmluZ1tdO1xuICBAT3V0cHV0KCdyZXNwb25zZScpIHB1YmxpYyBzd2l0Y2hSZXNwb25zZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHB1YmxpYyBpc1N3aXRjaEFjdGl2ZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmlzU3dpdGNoQWN0aXZlID0gdGhpcy5jdXN0b21DaGVjaztcbiAgICB0aGlzLnN3aXRjaFJlc3BvbnNlLmVtaXQodGhpcy5pc1N3aXRjaEFjdGl2ZSk7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlU3dpdGNoKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN0YXRlID09ICdlbmFibGVkJykge1xuICAgICAgdGhpcy5pc1N3aXRjaEFjdGl2ZSA9ICF0aGlzLmlzU3dpdGNoQWN0aXZlO1xuICAgICAgdGhpcy5zd2l0Y2hSZXNwb25zZS5lbWl0KHRoaXMuaXNTd2l0Y2hBY3RpdmUpO1xuICAgIH1cbiAgfVxufVxuIiwiPGxhYmVsIGNsYXNzPVwiaHItYm9keS10ZXh0IHNtLXJlZ3VsYXJcIiAqbmdJZj1cImxhYmVsXCI+XG4gIHt7bGFiZWx9fVxuICA8bmctY29udGFpbmVyICpuZ0lmPVwicmVxdWlyZWRcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY3VycmVudExhbmcgPT0gJ2VzJ1wiPi0gUmVxdWVyaWRvIDxzcGFuIGNsYXNzPVwidGV4dC1uZWdhdGl2ZVwiPio8L3NwYW4+PC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImN1cnJlbnRMYW5nID09ICdlbidcIj4tIFJlcXVpcmVkIDxzcGFuIGNsYXNzPVwidGV4dC1uZWdhdGl2ZVwiPio8L3NwYW4+PC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic3RhdGUgPT0gJ3JlYWRvbmx5J1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXJyZW50TGFuZyA9PSAnZXMnXCI+LSBTw7NsbyBsZWN0dXJhPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImN1cnJlbnRMYW5nID09ICdlbidcIj4tIFJlYWRvbmx5PC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic3RhdGUgPT0gJ2Rpc2FibGVkJ1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXJyZW50TGFuZyA9PSAnZXMnXCI+LSBEZXNoYWJpbGl0YWRvPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImN1cnJlbnRMYW5nID09ICdlbidcIj4tIERpc2FibGVkPC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuPC9sYWJlbD5cbjxkaXYgY2xhc3M9XCJncmF2aXR5LXN3aXRjaFwiIFtjbGFzcy50b2dnbGUtb3B0aW9uc109XCJ0b2dnbGVPcHRpb25zXCI+XG4gIDxzcGFuIGNsYXNzPVwiaHItYm9keS10ZXh0IHNtLXJlZ3VsYXJcIiAqbmdJZj1cInRvZ2dsZU9wdGlvbnNcIj5cbiAgICB7e3RvZ2dsZU9wdGlvbnNbMF19fVxuICA8L3NwYW4+XG4gIDxkaXYgW2F0dHIuZGF0YS1jeV09XCJjeXByZXNzVGFnXCIgY2xhc3M9XCJzd2l0Y2hcIiAoY2xpY2spPVwidG9nZ2xlU3dpdGNoKClcIiBbY2xhc3MuZGlzYWJsZWRdPVwic3RhdGUgPT0gJ2Rpc2FibGVkJ1wiPlxuICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBbY2hlY2tlZF09XCJpc1N3aXRjaEFjdGl2ZVwiIFtkaXNhYmxlZF09XCJzdGF0ZSA9PSAnZGlzYWJsZWQnXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJzbGlkZXIgcm91bmRcIj48L3NwYW4+XG4gIDwvZGl2PlxuICA8c3BhbiBjbGFzcz1cImhyLWJvZHktdGV4dCBzbS1yZWd1bGFyXCIgKm5nSWY9XCJ0b2dnbGVPcHRpb25zXCI+XG4gICAge3t0b2dnbGVPcHRpb25zWzFdfX1cbiAgPC9zcGFuPlxuPC9kaXY+XG4iXX0=
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1zd2l0Y2guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3Jhdml0eS1kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9ncmF2aXR5LXN3aXRjaC9ncmF2aXR5LXN3aXRjaC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktc3dpdGNoL2dyYXZpdHktc3dpdGNoLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFnQixNQUFNLGVBQWUsQ0FBQzs7O0FBTzlHLE1BQU0sT0FBTyxzQkFBc0I7SUFMbkM7UUFNa0IsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUV6QixhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLFNBQUksR0FBZ0IsSUFBSSxDQUFDO1FBT3hCLGFBQVEsR0FBMEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUvRCxtQkFBYyxHQUFZLEtBQUssQ0FBQztLQW1CeEM7SUFqQkMsZUFBZTtRQUNiLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNuQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUN0QixJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxZQUFZLENBQUM7U0FDdkQ7SUFDSCxDQUFDO0lBRU0sWUFBWTtRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQixJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQztZQUMzQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7U0FDekM7SUFDSCxDQUFDOytHQS9CVSxzQkFBc0I7bUdBQXRCLHNCQUFzQix3T0NQbkMsMnlCQVdBOzs0RkRKYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UsZ0JBQWdCOzhCQUtWLE9BQU87c0JBQXRCLEtBQUs7Z0JBQ1UsVUFBVTtzQkFBekIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFNVyxRQUFRO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ3Jhdml0eS1zd2l0Y2gnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3Jhdml0eS1zd2l0Y2guY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ncmF2aXR5LXN3aXRjaC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEdyYXZpdHlTd2l0Y2hDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBwdWJsaWMgY2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgY3lwcmVzc1RhZzogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIHNpemU6ICdtZCcgfCAnc20nID0gJ21kJztcbiAgQElucHV0KCkgcHVibGljIHRleHRPcHRpb25zOiB7XG4gICAgYWJvdmU/OiBzdHJpbmc7XG4gICAgbGVmdD86IHN0cmluZztcbiAgICByaWdodD86IHN0cmluZztcbiAgICBiZWxvdz86IHN0cmluZztcbiAgfTtcbiAgQE91dHB1dCgpIHB1YmxpYyByZXNwb25zZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHB1YmxpYyBpc1N3aXRjaEFjdGl2ZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmlzU3dpdGNoQWN0aXZlID0gdGhpcy5jaGVja2VkO1xuICAgIHRoaXMucmVzcG9uc2UuZW1pdCh0aGlzLmlzU3dpdGNoQWN0aXZlKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlc1snY2hlY2tlZCddKSB7XG4gICAgICB0aGlzLmlzU3dpdGNoQWN0aXZlID0gY2hhbmdlc1snY2hlY2tlZCddLmN1cnJlbnRWYWx1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlU3dpdGNoKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5pc1N3aXRjaEFjdGl2ZSA9ICF0aGlzLmlzU3dpdGNoQWN0aXZlO1xuICAgICAgdGhpcy5yZXNwb25zZS5lbWl0KHRoaXMuaXNTd2l0Y2hBY3RpdmUpO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImdyYXZpdHktc3dpdGNoIHNpemUte3tzaXplfX1cIiBbY2xhc3Mud2l0aC1hYm92ZS10ZXh0XT1cInRleHRPcHRpb25zPy5hYm92ZVwiXG4gICAgIFtjbGFzcy53aXRoLWJlbG93LXRleHRdPVwidGV4dE9wdGlvbnM/LmJlbG93XCI+XG4gIDxzcGFuIGNsYXNzPVwiaHItYm9keS10ZXh0IHNtLXJlZ3VsYXJcIiAqbmdJZj1cInRleHRPcHRpb25zPy5sZWZ0XCI+e3sgdGV4dE9wdGlvbnMubGVmdCB9fTwvc3Bhbj5cbiAgPGRpdiBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWdcIiBjbGFzcz1cInN3aXRjaFwiIFtjbGFzcy5kaXNhYmxlZF09XCJkaXNhYmxlZFwiIChjbGljayk9XCJ0b2dnbGVTd2l0Y2goKVwiPlxuICAgIDxzcGFuIGNsYXNzPVwiaHItYm9keS10ZXh0IHNtLXJlZ3VsYXIgYWJvdmUtdGV4dFwiICpuZ0lmPVwidGV4dE9wdGlvbnM/LmFib3ZlXCI+e3sgdGV4dE9wdGlvbnMuYWJvdmUgfX08L3NwYW4+XG4gICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIFtjaGVja2VkXT1cImlzU3dpdGNoQWN0aXZlXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJzbGlkZXJcIj48L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJoci1ib2R5LXRleHQgc20tcmVndWxhciBiZWxvdy10ZXh0XCIgKm5nSWY9XCJ0ZXh0T3B0aW9ucz8uYmVsb3dcIj57eyB0ZXh0T3B0aW9ucy5iZWxvdyB9fTwvc3Bhbj5cbiAgPC9kaXY+XG4gIDxzcGFuIGNsYXNzPVwiaHItYm9keS10ZXh0IHNtLXJlZ3VsYXJcIiAqbmdJZj1cInRleHRPcHRpb25zPy5yaWdodFwiPnt7IHRleHRPcHRpb25zLnJpZ2h0IH19PC9zcGFuPlxuPC9kaXY+XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3Jhdml0eS1kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9ncmF2aXR5LXRyZWUtdmlldy9tb2RlbHMvbm9kZS1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIE5vZGVJdGVtPFQ+IHtcbiAgY2hpbGRyZW46IE5vZGVJdGVtPGFueT5bXTtcbiAgZGlzYWJsZWQ6IGJvb2xlYW47XG4gIGV4cGFuZGVkOiBib29sZWFuO1xuICBpZDogc3RyaW5nO1xuICBpdGVtOiBUO1xuICBuYW1lOiBzdHJpbmc7XG4gIHNlbGVjdGVkOiBib29sZWFuO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3Jhdml0eS1kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9ncmF2aXR5LXRyZWUtdmlldy9tb2RlbHMvbm9kZS1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIE5vZGVJdGVtPFQ+IHtcbiAgY2hpbGRyZW46IE5vZGVJdGVtPGFueT5bXTtcbiAgZGlzYWJsZWQ6IGJvb2xlYW47XG4gIGV4cGFuZGVkOiBib29sZWFuO1xuICBpZDogc3RyaW5nO1xuICBpdGVtOiBUO1xuICBuYW1lOiBzdHJpbmc7XG4gIHNlbGVjdGVkOiBib29sZWFuO1xuICBzaG93Q2hlY2tib3g6IGJvb2xlYW47XG59XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvZ3Jhdml0eS10cmVlLXZpZXcvbW9kZWxzL25vZGUtc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Tm9kZUl0ZW19IGZyb20gJy4vbm9kZS1pdGVtJztcbmltcG9ydCB7Tm9kZVNlbGVjdGVkU3RhdGV9IGZyb20gJy4vbm9kZS1zZWxlY3RlZC1zdGF0ZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTm9kZVN0YXRlIHtcbiAgY2hpbGRyZW46IE5vZGVTdGF0ZVtdO1xuICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgZXhwYW5kZWQ6IGJvb2xlYW47XG4gIGZpbHRlcmVkQ2hpbGRyZW46IE5vZGVTdGF0ZVtdO1xuICBoYXNGaWx0ZXJlZENoaWxkcmVuOiBib29sZWFuO1xuICBub2RlSXRlbTogTm9kZUl0ZW08YW55PjtcbiAgcGFyZW50OiBOb2RlU3RhdGU7XG4gIHNlbGVjdGVkOiBib29sZWFuO1xuICBzZWxlY3RlZFN0YXRlOiBOb2RlU2VsZWN0ZWRTdGF0ZTtcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvZ3Jhdml0eS10cmVlLXZpZXcvbW9kZWxzL25vZGUtc3RhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Tm9kZUl0ZW19IGZyb20gJy4vbm9kZS1pdGVtJztcbmltcG9ydCB7Tm9kZVNlbGVjdGVkU3RhdGV9IGZyb20gJy4vbm9kZS1zZWxlY3RlZC1zdGF0ZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTm9kZVN0YXRlIHtcbiAgY2hpbGRyZW46IE5vZGVTdGF0ZVtdO1xuICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgZXhwYW5kZWQ6IGJvb2xlYW47XG4gIGZpbHRlcmVkQ2hpbGRyZW46IE5vZGVTdGF0ZVtdO1xuICBoYXNGaWx0ZXJlZENoaWxkcmVuOiBib29sZWFuO1xuICBub2RlSXRlbTogTm9kZUl0ZW08YW55PjtcbiAgcGFyZW50OiBOb2RlU3RhdGU7XG4gIHNlbGVjdGVkOiBib29sZWFuO1xuICBzZWxlY3RlZFN0YXRlOiBOb2RlU2VsZWN0ZWRTdGF0ZTtcbiAgc2hvd0NoZWNrYm94OiBib29sZWFuO1xufVxuIl19
@@ -6,12 +6,12 @@ import * as i3 from "./node-checkbox/node-checkbox.component";
6
6
  import * as i4 from "./node-name/node-name.component";
7
7
  export class NodeComponent {
8
8
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NodeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NodeComponent, selector: "tree-node", inputs: { nodeState: "nodeState" }, ngImport: i0, template: "<div class=\"node-container\">\n <div class=\"node-content\">\n <node-toggle [state]=\"nodeState\"></node-toggle>\n <node-checkbox [state]=\"nodeState\"></node-checkbox>\n <node-name [state]=\"nodeState\"></node-name>\n </div>\n <div class=\"collapsible-wrapper\" *ngIf=\"nodeState.nodeItem.children\"\n [class.collapsed]=\"!nodeState.expanded && nodeState.nodeItem.children.length > 0 && nodeState.filteredChildren.length > 0\">\n <div class=\"collapsible\">\n <tree-node class=\"node-offset\" [nodeState]=\"child\"\n *ngFor=\"let child of nodeState.filteredChildren\"></tree-node>\n </div>\n </div>\n</div>\n", styles: [".node-container{display:flex;flex:1 1 auto;flex-direction:column}.node-container .node-content{display:inline-flex;padding-block:.3rem}.node-container node-toggle,.node-container node-checkbox{display:inline-flex;align-items:center}.node-container .collapsible-wrapper{display:flex;overflow:hidden}.node-container .collapsible-wrapper .collapsible{margin-bottom:0;max-height:1000000px}.node-container .collapsible-wrapper .collapsible tree-node.node-offset{display:flex;margin-left:1.25rem}.node-container .collapsible-wrapper.collapsed>.collapsible{margin-bottom:-20000px;visibility:hidden;max-height:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NodeComponent, selector: "tree-node", inputs: ["nodeState"] }, { kind: "component", type: i2.NodeToggleComponent, selector: "node-toggle", inputs: ["state"] }, { kind: "component", type: i3.NodeCheckboxComponent, selector: "node-checkbox", inputs: ["state"] }, { kind: "component", type: i4.NodeNameComponent, selector: "node-name", inputs: ["state"] }] }); }
9
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NodeComponent, selector: "tree-node", inputs: { nodeState: "nodeState" }, ngImport: i0, template: "<div class=\"node-container\">\n <div class=\"node-content\">\n <node-toggle [state]=\"nodeState\"></node-toggle>\n <node-checkbox [state]=\"nodeState\" *ngIf=\"nodeState.showCheckbox\"></node-checkbox>\n <node-name [state]=\"nodeState\"></node-name>\n </div>\n <div class=\"collapsible-wrapper\" *ngIf=\"nodeState.nodeItem.children\"\n [class.collapsed]=\"!nodeState.expanded && nodeState.nodeItem.children.length > 0 && nodeState.filteredChildren.length > 0\">\n <div class=\"collapsible\">\n <tree-node class=\"node-offset\" [nodeState]=\"child\"\n *ngFor=\"let child of nodeState.filteredChildren\"></tree-node>\n </div>\n </div>\n</div>\n", styles: [".node-container{display:flex;flex:1 1 auto;flex-direction:column}.node-container .node-content{display:inline-flex;padding-block:.3rem}.node-container node-toggle,.node-container node-checkbox{display:inline-flex;align-items:center}.node-container .collapsible-wrapper{display:flex;overflow:hidden}.node-container .collapsible-wrapper .collapsible{margin-bottom:0;max-height:1000000px}.node-container .collapsible-wrapper .collapsible tree-node.node-offset{display:flex;margin-left:1.25rem}.node-container .collapsible-wrapper.collapsed>.collapsible{margin-bottom:-20000px;visibility:hidden;max-height:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NodeComponent, selector: "tree-node", inputs: ["nodeState"] }, { kind: "component", type: i2.NodeToggleComponent, selector: "node-toggle", inputs: ["state"] }, { kind: "component", type: i3.NodeCheckboxComponent, selector: "node-checkbox", inputs: ["state"] }, { kind: "component", type: i4.NodeNameComponent, selector: "node-name", inputs: ["state"] }] }); }
10
10
  }
11
11
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NodeComponent, decorators: [{
12
12
  type: Component,
13
- args: [{ selector: 'tree-node', template: "<div class=\"node-container\">\n <div class=\"node-content\">\n <node-toggle [state]=\"nodeState\"></node-toggle>\n <node-checkbox [state]=\"nodeState\"></node-checkbox>\n <node-name [state]=\"nodeState\"></node-name>\n </div>\n <div class=\"collapsible-wrapper\" *ngIf=\"nodeState.nodeItem.children\"\n [class.collapsed]=\"!nodeState.expanded && nodeState.nodeItem.children.length > 0 && nodeState.filteredChildren.length > 0\">\n <div class=\"collapsible\">\n <tree-node class=\"node-offset\" [nodeState]=\"child\"\n *ngFor=\"let child of nodeState.filteredChildren\"></tree-node>\n </div>\n </div>\n</div>\n", styles: [".node-container{display:flex;flex:1 1 auto;flex-direction:column}.node-container .node-content{display:inline-flex;padding-block:.3rem}.node-container node-toggle,.node-container node-checkbox{display:inline-flex;align-items:center}.node-container .collapsible-wrapper{display:flex;overflow:hidden}.node-container .collapsible-wrapper .collapsible{margin-bottom:0;max-height:1000000px}.node-container .collapsible-wrapper .collapsible tree-node.node-offset{display:flex;margin-left:1.25rem}.node-container .collapsible-wrapper.collapsed>.collapsible{margin-bottom:-20000px;visibility:hidden;max-height:0}\n"] }]
13
+ args: [{ selector: 'tree-node', template: "<div class=\"node-container\">\n <div class=\"node-content\">\n <node-toggle [state]=\"nodeState\"></node-toggle>\n <node-checkbox [state]=\"nodeState\" *ngIf=\"nodeState.showCheckbox\"></node-checkbox>\n <node-name [state]=\"nodeState\"></node-name>\n </div>\n <div class=\"collapsible-wrapper\" *ngIf=\"nodeState.nodeItem.children\"\n [class.collapsed]=\"!nodeState.expanded && nodeState.nodeItem.children.length > 0 && nodeState.filteredChildren.length > 0\">\n <div class=\"collapsible\">\n <tree-node class=\"node-offset\" [nodeState]=\"child\"\n *ngFor=\"let child of nodeState.filteredChildren\"></tree-node>\n </div>\n </div>\n</div>\n", styles: [".node-container{display:flex;flex:1 1 auto;flex-direction:column}.node-container .node-content{display:inline-flex;padding-block:.3rem}.node-container node-toggle,.node-container node-checkbox{display:inline-flex;align-items:center}.node-container .collapsible-wrapper{display:flex;overflow:hidden}.node-container .collapsible-wrapper .collapsible{margin-bottom:0;max-height:1000000px}.node-container .collapsible-wrapper .collapsible tree-node.node-offset{display:flex;margin-left:1.25rem}.node-container .collapsible-wrapper.collapsed>.collapsible{margin-bottom:-20000px;visibility:hidden;max-height:0}\n"] }]
14
14
  }], propDecorators: { nodeState: [{
15
15
  type: Input
16
16
  }] } });
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktdHJlZS12aWV3L25vZGUvbm9kZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktdHJlZS12aWV3L25vZGUvbm9kZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBUS9DLE1BQU0sT0FBTyxhQUFhOytHQUFiLGFBQWE7bUdBQWIsYUFBYSxxRkNSMUIsa3BCQWNBLHkzQkROYSxhQUFhOzs0RkFBYixhQUFhO2tCQUx6QixTQUFTOytCQUNFLFdBQVc7OEJBS0wsU0FBUztzQkFBeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05vZGVTdGF0ZX0gZnJvbSAnLi4vbW9kZWxzL25vZGUtc3RhdGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0cmVlLW5vZGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vbm9kZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25vZGUuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBOb2RlQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHVibGljIG5vZGVTdGF0ZTogTm9kZVN0YXRlO1xufVxuIiwiPGRpdiBjbGFzcz1cIm5vZGUtY29udGFpbmVyXCI+XG4gIDxkaXYgY2xhc3M9XCJub2RlLWNvbnRlbnRcIj5cbiAgICA8bm9kZS10b2dnbGUgW3N0YXRlXT1cIm5vZGVTdGF0ZVwiPjwvbm9kZS10b2dnbGU+XG4gICAgPG5vZGUtY2hlY2tib3ggW3N0YXRlXT1cIm5vZGVTdGF0ZVwiPjwvbm9kZS1jaGVja2JveD5cbiAgICA8bm9kZS1uYW1lIFtzdGF0ZV09XCJub2RlU3RhdGVcIj48L25vZGUtbmFtZT5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJjb2xsYXBzaWJsZS13cmFwcGVyXCIgKm5nSWY9XCJub2RlU3RhdGUubm9kZUl0ZW0uY2hpbGRyZW5cIlxuICAgICAgIFtjbGFzcy5jb2xsYXBzZWRdPVwiIW5vZGVTdGF0ZS5leHBhbmRlZCAmJiBub2RlU3RhdGUubm9kZUl0ZW0uY2hpbGRyZW4ubGVuZ3RoID4gMCAmJiBub2RlU3RhdGUuZmlsdGVyZWRDaGlsZHJlbi5sZW5ndGggPiAwXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbGxhcHNpYmxlXCI+XG4gICAgICA8dHJlZS1ub2RlIGNsYXNzPVwibm9kZS1vZmZzZXRcIiBbbm9kZVN0YXRlXT1cImNoaWxkXCJcbiAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNoaWxkIG9mIG5vZGVTdGF0ZS5maWx0ZXJlZENoaWxkcmVuXCI+PC90cmVlLW5vZGU+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktdHJlZS12aWV3L25vZGUvbm9kZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktdHJlZS12aWV3L25vZGUvbm9kZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBUS9DLE1BQU0sT0FBTyxhQUFhOytHQUFiLGFBQWE7bUdBQWIsYUFBYSxxRkNSMUIsbXJCQWNBLHkzQkROYSxhQUFhOzs0RkFBYixhQUFhO2tCQUx6QixTQUFTOytCQUNFLFdBQVc7OEJBS0wsU0FBUztzQkFBeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge05vZGVTdGF0ZX0gZnJvbSAnLi4vbW9kZWxzL25vZGUtc3RhdGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0cmVlLW5vZGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vbm9kZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25vZGUuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBOb2RlQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHVibGljIG5vZGVTdGF0ZTogTm9kZVN0YXRlO1xufVxuIiwiPGRpdiBjbGFzcz1cIm5vZGUtY29udGFpbmVyXCI+XG4gIDxkaXYgY2xhc3M9XCJub2RlLWNvbnRlbnRcIj5cbiAgICA8bm9kZS10b2dnbGUgW3N0YXRlXT1cIm5vZGVTdGF0ZVwiPjwvbm9kZS10b2dnbGU+XG4gICAgPG5vZGUtY2hlY2tib3ggW3N0YXRlXT1cIm5vZGVTdGF0ZVwiICpuZ0lmPVwibm9kZVN0YXRlLnNob3dDaGVja2JveFwiPjwvbm9kZS1jaGVja2JveD5cbiAgICA8bm9kZS1uYW1lIFtzdGF0ZV09XCJub2RlU3RhdGVcIj48L25vZGUtbmFtZT5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJjb2xsYXBzaWJsZS13cmFwcGVyXCIgKm5nSWY9XCJub2RlU3RhdGUubm9kZUl0ZW0uY2hpbGRyZW5cIlxuICAgICAgIFtjbGFzcy5jb2xsYXBzZWRdPVwiIW5vZGVTdGF0ZS5leHBhbmRlZCAmJiBub2RlU3RhdGUubm9kZUl0ZW0uY2hpbGRyZW4ubGVuZ3RoID4gMCAmJiBub2RlU3RhdGUuZmlsdGVyZWRDaGlsZHJlbi5sZW5ndGggPiAwXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbGxhcHNpYmxlXCI+XG4gICAgICA8dHJlZS1ub2RlIGNsYXNzPVwibm9kZS1vZmZzZXRcIiBbbm9kZVN0YXRlXT1cImNoaWxkXCJcbiAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNoaWxkIG9mIG5vZGVTdGF0ZS5maWx0ZXJlZENoaWxkcmVuXCI+PC90cmVlLW5vZGU+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -184,7 +184,8 @@ export class TreeService {
184
184
  expanded: nodeItem.expanded !== false,
185
185
  disabled: nodeItem.disabled === true,
186
186
  selectedState: NodeSelectedState.unChecked,
187
- selected: false
187
+ selected: false,
188
+ showCheckbox: nodeItem.showCheckbox
188
189
  };
189
190
  }
190
191
  allChildrenSelected(state) {
@@ -214,4 +215,4 @@ export class TreeService {
214
215
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TreeService, decorators: [{
215
216
  type: Injectable
216
217
  }], ctorParameters: function () { return []; } });
217
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3Jhdml0eS1kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9ncmF2aXR5LXRyZWUtdmlldy9zZXJ2aWNlL3RyZWUtc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBQyxlQUFlLEVBQTJCLE1BQU0sTUFBTSxDQUFDO0FBQy9ELE9BQU8sRUFBQyxZQUFZLEVBQUUsb0JBQW9CLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUdsRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7QUFJaEUsTUFBTSxPQUFPLFdBQVc7SUFhdEI7UUFUTyxnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUV6QixrQkFBYSxHQUFVLEVBQUUsQ0FBQztRQUd6Qix3QkFBbUIsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDNUQseUJBQW9CLEdBQUcsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQy9ELG1CQUFjLEdBQWdCLEVBQUUsQ0FBQztRQUd2QyxJQUFJLENBQUMsK0JBQStCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDN0gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN4RCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLCtCQUErQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JELENB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Q2Y7U0FDRjtRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBYTtRQUNoQyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7K0dBdlBVLFdBQVc7bUhBQVgsV0FBVzs7NEZBQVgsV0FBVztrQkFEdkIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZSwgT25EZXN0cm95fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge05vZGVJdGVtfSBmcm9tICcuLi9tb2RlbHMvbm9kZS1pdGVtJztcbmltcG9ydCB7Tm9kZVN0YXRlfSBmcm9tICcuLi9tb2RlbHMvbm9kZS1zdGF0ZSc7XG5pbXBvcnQge05vZGVTZWxlY3RlZFN0YXRlfSBmcm9tICcuLi9tb2RlbHMvbm9kZS1zZWxlY3RlZC1zdGF0ZSc7XG5pbXBvcnQge1RyZWVDYWxsYmFja3N9IGZyb20gJy4uL21vZGVscy90cmVlLWNhbGxiYWNrcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUcmVlU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZmlsdGVyQ2hhbmdlU3ViamVjdFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gIHB1YmxpYyBjYWxsYmFja3M6IFRyZWVDYWxsYmFja3M7XG4gIHB1YmxpYyBmaWx0ZXJWYWx1ZTogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBub2RlSXRlbXM6IE5vZGVJdGVtPGFueT5bXTtcbiAgcHVibGljIHNlbGVjdGVkSXRlbXM6IGFueVtdID0gW107XG4gIHB1YmxpYyB0cmVlU3RhdGU6IE5vZGVTdGF0ZVtdO1xuXG4gIHByaXZhdGUgZmlsdGVyQ2hhbmdlU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3QodGhpcy5maWx0ZXJWYWx1ZSk7XG4gIHByaXZhdGUgc2VsZWN0ZWRJdGVtc1N1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRoaXMuc2VsZWN0ZWRJdGVtcyk7XG4gIHByaXZhdGUgc2VsZWN0ZWRTdGF0ZXM6IE5vZGVTdGF0ZVtdID0gW107XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5maWx0ZXJDaGFuZ2VTdWJqZWN0U3Vic2NyaXB0aW9uID0gdGhpcy5maWx0ZXJDaGFuZ2VTdWJqZWN0LnBpcGUoZGVib3VuY2VUaW1lKDMwMCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmZpbHRlclRyYXZlcnNlKHRoaXMudHJlZVN0YXRlLCB0aGlzLmZpbHRlclZhbHVlKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZmlsdGVyQ2hhbmdlU3ViamVjdFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIGNvbm5lY3QoKTogT2JzZXJ2YWJsZTxhbnlbXT4ge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkSXRlbXNTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIHNldEluaXRpYWxTdGF0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnNldEluaXRpYWxTZWxlY3RlZFN0YXRlKHRoaXMudHJlZVN0YXRlKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0SW5pdGlhbFNlbGVjdGVkU3RhdGUobm9kZVN0YXRlczogTm9kZVN0YXRlW10pOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IHN0YXRlIG9mIG5vZGVTdGF0ZXMpIHtcbiAgICAgIGlmIChzdGF0ZS5ub2RlSXRlbS5zZWxlY3RlZCAmJiAoIXN0YXRlLmNoaWxkcmVuIHx8IHN0YXRlLmNoaWxkcmVuLmxlbmd0aCA9PT0gMCkpIHtcbiAgICAgICAgdGhpcy50b2dnbGVTZWxlY3RlZFN0YXRlKHN0YXRlLCB0cnVlKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5zZXRJbml0aWFsU2VsZWN0ZWRTdGF0ZShzdGF0ZS5jaGlsZHJlbik7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNsZWFyKCk6IHZvaWQge1xuICAgIGZvciAobGV0IHN0YXRlIG9mIHRoaXMuc2VsZWN0ZWRTdGF0ZXMpIHtcbiAgICAgIHN0YXRlLnNlbGVjdGVkID0gZmFsc2U7XG4gICAgICBzdGF0ZS5zZWxlY3RlZFN0YXRlID0gTm9kZVNlbGVjdGVkU3RhdGUudW5DaGVja2VkO1xuICAgIH1cblxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5sZW5ndGggPSAwO1xuICAgIHRoaXMuc2VsZWN0ZWRTdGF0ZXMubGVuZ3RoID0gMDtcbiAgfVxuXG4gIHByaXZhdGUgZmlsdGVyVHJhdmVyc2Uoc3RhdGVzOiBOb2RlU3RhdGVbXSwgZmlsdGVyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBsZXQgcmVzdWx0czogYm9vbGVhbltdID0gW107XG5cbiAgICBmb3IgKGxldCBzdGF0ZSBvZiBzdGF0ZXMpIHtcbiAgICAgIGlmIChzdGF0ZS5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICAgIHN0YXRlLmhhc0ZpbHRlcmVkQ2hpbGRyZW4gPSBmYWxzZTtcbiAgICAgICAgc3RhdGUuaGFzRmlsdGVyZWRDaGlsZHJlbiA9IHRoaXMuZmlsdGVyVHJhdmVyc2Uoc3RhdGUuY2hpbGRyZW4sIGZpbHRlcik7XG5cbiAgICAgICAgaWYgKHRoaXMuYXBwbHlGaWx0ZXIoc3RhdGUsIGZpbHRlcikpIHtcbiAgICAgICAgICBzdGF0ZS5oYXNGaWx0ZXJlZENoaWxkcmVuID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlc3VsdHMucHVzaChzdGF0ZS5oYXNGaWx0ZXJlZENoaWxkcmVuKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0cy5zb21lKChpdGVtOiBib29sZWFuKSA9PiBpdGVtKTtcbiAgfVxuXG4gIHByaXZhdGUgYXBwbHlGaWx0ZXIoc3RhdGU6IE5vZGVTdGF0ZSwgZmlsdGVyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBzdGF0ZS5maWx0ZXJlZENoaWxkcmVuID0gdGhpcy5maWx0ZXIoc3RhdGUuY2hpbGRyZW4sIGZpbHRlcik7XG4gICAgcmV0dXJuIHN0YXRlLmZpbHRlcmVkQ2hpbGRyZW4ubGVuZ3RoID4gMDtcbiAgfVxuXG4gIHByaXZhdGUgZmlsdGVyKHN0YXRlczogTm9kZVN0YXRlW10sIHZhbHVlOiBzdHJpbmcpOiBOb2RlU3RhdGVbXSB7XG4gICAgcmV0dXJuIHN0YXRlcy5maWx0ZXIoKG5vZGVTdGF0ZTogTm9kZVN0YXRlKSA9PiBub2RlU3RhdGUuaGFzRmlsdGVyZWRDaGlsZHJlbiB8fCB2YWx1ZSA9PT0gJycgfHwgbm9kZVN0YXRlLm5vZGVJdGVtLm5hbWUudG9Mb3dlckNhc2UoKS5pbmRleE9mKHZhbHVlKSAhPT0gLTEpO1xuICB9XG5cbiAgcHVibGljIGNoZWNrYm94Q2xpY2soc3RhdGU6IE5vZGVTdGF0ZSk6IHZvaWQge1xuICAgIHRoaXMudG9nZ2xlU2VsZWN0ZWRTdGF0ZShzdGF0ZSwgZmFsc2UpO1xuXG4gICAgaWYgKHRoaXMuY2FsbGJhY2tzPy50b2dnbGUpIHtcbiAgICAgIHRoaXMuY2FsbGJhY2tzLnRvZ2dsZShzdGF0ZS5ub2RlSXRlbSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB0b2dnbGVTZWxlY3RlZFN0YXRlKHN0YXRlOiBOb2RlU3RhdGUsIGlnbm9yZURpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKHN0YXRlLmRpc2FibGVkICYmICFpZ25vcmVEaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChzdGF0ZS5zZWxlY3RlZFN0YXRlID09PSBOb2RlU2VsZWN0ZWRTdGF0ZS51bkNoZWNrZWQpIHtcbiAgICAgIHRoaXMuc2V0Q2hlY2tlZChzdGF0ZSwgdHJ1ZSwgaWdub3JlRGlzYWJsZWQpO1xuICAgIH0gZWxzZSBpZiAoc3RhdGUuc2VsZWN0ZWRTdGF0ZSA9PT0gTm9kZVNlbGVjdGVkU3RhdGUuY2hlY2tlZCkge1xuICAgICAgdGhpcy5zZXRVbmNoZWNrZWQoc3RhdGUsIHRydWUsIGlnbm9yZURpc2FibGVkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuYW55QWN0aXZlU2VsZWN0ZWQoc3RhdGUpICYmICFzdGF0ZS5zZWxlY3RlZCkge1xuICAgICAgICB0aGlzLnNldFVuY2hlY2tlZChzdGF0ZSwgdHJ1ZSwgaWdub3JlRGlzYWJsZWQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zZXRDaGVja2VkKHN0YXRlLCB0cnVlLCBpZ25vcmVEaXNhYmxlZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHN0YXRlLnBhcmVudCkge1xuICAgICAgdGhpcy5jaGlsZFN0YXRlQ2hhbmdlZChzdGF0ZS5wYXJlbnQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0Q2hlY2tlZChzdGF0ZTogTm9kZVN0YXRlLCBwcm9wYWdhdGU6IGJvb2xlYW4sIGlnbm9yZURpc2FibGVkPzogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmIChzdGF0ZS5kaXNhYmxlZCAmJiAhaWdub3JlRGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBzdGF0ZS5zZWxlY3RlZFN0YXRlID0gTm9kZVNlbGVjdGVkU3RhdGUuY2hlY2tlZDtcbiAgICBzdGF0ZS5zZWxlY3RlZCA9IHRydWU7XG5cbiAgICBpZiAoVHJlZVNlcnZpY2UuaGFzTm9DaGlsZHJlbihzdGF0ZSkpIHtcbiAgICAgIHRoaXMuYWRkU2VsZWN0ZWQoc3RhdGUpO1xuICAgIH0gZWxzZSBpZiAocHJvcGFnYXRlKSB7XG4gICAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIHN0YXRlLmNoaWxkcmVuKSB7XG4gICAgICAgIHRoaXMuc2V0Q2hlY2tlZChjaGlsZCwgcHJvcGFnYXRlLCBpZ25vcmVEaXNhYmxlZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRVbmNoZWNrZWQoc3RhdGU6IE5vZGVTdGF0ZSwgcHJvcGFnYXRlOiBib29sZWFuLCBpZ25vcmVEaXNhYmxlZD86IGJvb2xlYW4pIHtcbiAgICBpZiAoc3RhdGUuZGlzYWJsZWQgJiYgIWlnbm9yZURpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc3RhdGUuc2VsZWN0ZWRTdGF0ZSA9IE5vZGVTZWxlY3RlZFN0YXRlLnVuQ2hlY2tlZDtcbiAgICBzdGF0ZS5zZWxlY3RlZCA9IGZhbHNlO1xuXG4gICAgaWYgKFRyZWVTZXJ2aWNlLmhhc05vQ2hpbGRyZW4oc3RhdGUpKSB7XG4gICAgICB0aGlzLnJlbW92ZVNlbGVjdGVkKHN0YXRlLm5vZGVJdGVtLml0ZW0pO1xuXG4gICAgICBpZiAodGhpcy5jYWxsYmFja3M/LnVuU2VsZWN0KSB7XG4gICAgICAgIHRoaXMuY2FsbGJhY2tzLnVuU2VsZWN0KHN0YXRlLm5vZGVJdGVtKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHByb3BhZ2F0ZSkge1xuICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBzdGF0ZS5jaGlsZHJlbikge1xuICAgICAgICB0aGlzLnNldFVuY2hlY2tlZChjaGlsZCwgcHJvcGFnYXRlLCBpZ25vcmVEaXNhYmxlZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmFueUNoaWxkU2VsZWN0ZWQoc3RhdGUpKSB7XG4gICAgICB0aGlzLnJlbW92ZVNlbGVjdGVkKHN0YXRlLm5vZGVJdGVtLml0ZW0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlU2VsZWN0ZWQoaXRlbTogYW55KTogdm9pZCB7XG4gICAgbGV0IGluZGV4ID0gdGhpcy5zZWxlY3RlZEl0ZW1zLmluZGV4T2YoaXRlbSk7XG4gICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zLnNwbGljZShpbmRleCwgMSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgaGFzTm9DaGlsZHJlbihzdGF0ZTogTm9kZVN0YXRlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICFzdGF0ZS5jaGlsZHJlbiB8fCBzdGF0ZS5jaGlsZHJlbi5sZW5ndGggPT09IDA7XG4gIH1cblxuICBwcml2YXRlIGFkZFNlbGVjdGVkKHN0YXRlOiBOb2RlU3RhdGUpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkSXRlbXMucHVzaChzdGF0ZS5ub2RlSXRlbS5pdGVtKTtcbiAgICB0aGlzLnNlbGVjdGVkU3RhdGVzLnB1c2goc3RhdGUpO1xuXG4gICAgaWYgKHRoaXMuY2FsbGJhY2tzPy5zZWxlY3QpIHtcbiAgICAgIHRoaXMuY2FsbGJhY2tzLnNlbGVjdChzdGF0ZS5ub2RlSXRlbSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHJlRXZhbHVhdGVTZWxlY3RlZFN0YXRlKHN0YXRlOiBOb2RlU3RhdGUpOiB2b2lkIHtcbiAgICBpZiAoIVRyZWVTZXJ2aWNlLmhhc05vQ2hpbGRyZW4oc3RhdGUpKSB7XG4gICAgICB0aGlzLmNoaWxkU3RhdGVDaGFuZ2VkKHN0YXRlKTtcblxuICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBzdGF0ZS5jaGlsZHJlbikge1xuICAgICAgICB0aGlzLnJlRXZhbHVhdGVTZWxlY3RlZFN0YXRlKGNoaWxkKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY2hpbGRTdGF0ZUNoYW5nZWQoc3RhdGU6IE5vZGVTdGF0ZSk6IHZvaWQge1xuICAgIGlmICh0aGlzLmFueUNoaWxkU2VsZWN0ZWQoc3RhdGUpKSB7XG4gICAgICBpZiAoc3RhdGUubm9kZUl0ZW0uaWQgIT0gJzAnKSB7XG4gICAgICAgIGxldCBpdGVtSW5kZXggPSB0aGlzLnNlbGVjdGVkSXRlbXMuaW5kZXhPZihzdGF0ZS5ub2RlSXRlbS5pdGVtKTtcblxuICAgICAgICBpZiAoaXRlbUluZGV4ID09PSAtMSkge1xuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5wdXNoKHN0YXRlLm5vZGVJdGVtLml0ZW0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmFsbENoaWxkcmVuU2VsZWN0ZWQoc3RhdGUpKSB7XG4gICAgICAgIHRoaXMuc2V0Q2hlY2tlZChzdGF0ZSwgZmFsc2UpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc3RhdGUuc2VsZWN0ZWRTdGF0ZSA9IE5vZGVTZWxlY3RlZFN0YXRlLmluZGV0ZXJtaW5hdGU7XG4gICAgICAgIHN0YXRlLnNlbGVjdGVkID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2V0VW5jaGVja2VkKHN0YXRlLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgaWYgKHN0YXRlLnBhcmVudCkge1xuICAgICAgdGhpcy5jaGlsZFN0YXRlQ2hhbmdlZChzdGF0ZS5wYXJlbnQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYW55Q2hpbGRTZWxlY3RlZChzdGF0ZTogTm9kZVN0YXRlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHN0YXRlLmNoaWxkcmVuLmZpbmQoKGl0ZW06IE5vZGVTdGF0ZSkgPT4gaXRlbS5zZWxlY3RlZFN0YXRlID09PSBOb2RlU2VsZWN0ZWRTdGF0ZS5jaGVja2VkIHx8IGl0ZW0uc2VsZWN0ZWRTdGF0ZSA9PT0gTm9kZVNlbGVjdGVkU3RhdGUuaW5kZXRlcm1pbmF0ZSkgIT0gbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgaW5pdFN0YXRlKHBhcmVudDogTm9kZVN0YXRlLCBub2RlSXRlbTogTm9kZUl0ZW08YW55Pik6IE5vZGVTdGF0ZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHBhcmVudDogcGFyZW50LFxuICAgICAgY2hpbGRyZW46IFtdLFxuICAgICAgZmlsdGVyZWRDaGlsZHJlbjogW10sXG4gICAgICBoYXNGaWx0ZXJlZENoaWxkcmVuOiBmYWxzZSxcbiAgICAgIG5vZGVJdGVtOiBub2RlSXRlbSxcbiAgICAgIGV4cGFuZGVkOiBub2RlSXRlbS5leHBhbmRlZCAhPT0gZmFsc2UsXG4gICAgICBkaXNhYmxlZDogbm9kZUl0ZW0uZGlzYWJsZWQgPT09IHRydWUsXG4gICAgICBzZWxlY3RlZFN0YXRlOiBOb2RlU2VsZWN0ZWRTdGF0ZS51bkNoZWNrZWQsXG4gICAgICBzZWxlY3RlZDogZmFsc2VcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBhbGxDaGlsZHJlblNlbGVjdGVkKHN0YXRlOiBOb2RlU3RhdGUpOiBib29sZWFuIHtcbiAgICBpZiAoc3RhdGUubm9kZUl0ZW0uY2hpbGRyZW4pIHtcbiAgICAgIHJldHVybiBzdGF0ZS5jaGlsZHJlbi5ldmVyeShpdCA9PiBpdC5zZWxlY3RlZFN0YXRlID09PSBOb2RlU2VsZWN0ZWRTdGF0ZS5jaGVja2VkKSAmJiBzdGF0ZS5jaGlsZHJlbi5sZW5ndGggPT09IHN0YXRlLm5vZGVJdGVtLmNoaWxkcmVuLmxlbmd0aDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHN0YXRlLmNoaWxkcmVuLmV2ZXJ5KGl0ID0+IGl0LnNlbGVjdGVkU3RhdGUgPT09IE5vZGVTZWxlY3RlZFN0YXRlLmNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYW55QWN0aXZlU2VsZWN0ZWQoc3RhdGU6IE5vZGVTdGF0ZSk6IGJvb2xlYW4ge1xuICAgIGxldCByZXN1bHQgPSBzdGF0ZS5jaGlsZHJlbi5maWx0ZXIoaXQgPT4gIWl0LmRpc2FibGVkICYmIGl0LnNlbGVjdGVkKS5sZW5ndGggPiAwO1xuXG4gICAgZm9yIChjb25zdCBjaGlsZCBvZiBzdGF0ZS5jaGlsZHJlbikge1xuICAgICAgaWYgKCFUcmVlU2VydmljZS5oYXNOb0NoaWxkcmVuKGNoaWxkKSAmJiB0aGlzLmFueUFjdGl2ZVNlbGVjdGVkKGNoaWxkKSkge1xuICAgICAgICByZXN1bHQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwdWJsaWMgZmlsdGVyQ2hhbmdlZCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5maWx0ZXJWYWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMuZmlsdGVyQ2hhbmdlU3ViamVjdC5uZXh0KHZhbHVlKTtcbiAgfVxufVxuIl19
218
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ3Jhdml0eS1kZXNpZ24tc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9ncmF2aXR5LXRyZWUtdmlldy9zZXJ2aWNlL3RyZWUtc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBQyxlQUFlLEVBQTJCLE1BQU0sTUFBTSxDQUFDO0FBQy9ELE9BQU8sRUFBQyxZQUFZLEVBQUUsb0JBQW9CLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUdsRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7QUFJaEUsTUFBTSxPQUFPLFdBQVc7SUFhdEI7UUFUTyxnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUV6QixrQkFBYSxHQUFVLEVBQUUsQ0FBQztRQUd6Qix3QkFBbUIsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDNUQseUJBQW9CLEdBQUcsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQy9ELG1CQUFjLEdBQWdCLEVBQUUsQ0FBQztRQUd2QyxJQUFJLENBQUMsK0JBQStCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDN0gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN4RCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLCtCQUErQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JELENB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O2dCQUN0RSxNQUFNLEdBQUcsSUFBSSxDQUFDO2FBQ2Y7U0FDRjtRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBYTtRQUNoQyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7K0dBeFBVLFdBQVc7bUhBQVgsV0FBVzs7NEZBQVgsV0FBVztrQkFEdkIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZSwgT25EZXN0cm95fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge05vZGVJdGVtfSBmcm9tICcuLi9tb2RlbHMvbm9kZS1pdGVtJztcbmltcG9ydCB7Tm9kZVN0YXRlfSBmcm9tICcuLi9tb2RlbHMvbm9kZS1zdGF0ZSc7XG5pbXBvcnQge05vZGVTZWxlY3RlZFN0YXRlfSBmcm9tICcuLi9tb2RlbHMvbm9kZS1zZWxlY3RlZC1zdGF0ZSc7XG5pbXBvcnQge1RyZWVDYWxsYmFja3N9IGZyb20gJy4uL21vZGVscy90cmVlLWNhbGxiYWNrcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUcmVlU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZmlsdGVyQ2hhbmdlU3ViamVjdFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gIHB1YmxpYyBjYWxsYmFja3M6IFRyZWVDYWxsYmFja3M7XG4gIHB1YmxpYyBmaWx0ZXJWYWx1ZTogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBub2RlSXRlbXM6IE5vZGVJdGVtPGFueT5bXTtcbiAgcHVibGljIHNlbGVjdGVkSXRlbXM6IGFueVtdID0gW107XG4gIHB1YmxpYyB0cmVlU3RhdGU6IE5vZGVTdGF0ZVtdO1xuXG4gIHByaXZhdGUgZmlsdGVyQ2hhbmdlU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3QodGhpcy5maWx0ZXJWYWx1ZSk7XG4gIHByaXZhdGUgc2VsZWN0ZWRJdGVtc1N1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRoaXMuc2VsZWN0ZWRJdGVtcyk7XG4gIHByaXZhdGUgc2VsZWN0ZWRTdGF0ZXM6IE5vZGVTdGF0ZVtdID0gW107XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5maWx0ZXJDaGFuZ2VTdWJqZWN0U3Vic2NyaXB0aW9uID0gdGhpcy5maWx0ZXJDaGFuZ2VTdWJqZWN0LnBpcGUoZGVib3VuY2VUaW1lKDMwMCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmZpbHRlclRyYXZlcnNlKHRoaXMudHJlZVN0YXRlLCB0aGlzLmZpbHRlclZhbHVlKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZmlsdGVyQ2hhbmdlU3ViamVjdFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIGNvbm5lY3QoKTogT2JzZXJ2YWJsZTxhbnlbXT4ge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkSXRlbXNTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIHNldEluaXRpYWxTdGF0ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnNldEluaXRpYWxTZWxlY3RlZFN0YXRlKHRoaXMudHJlZVN0YXRlKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0SW5pdGlhbFNlbGVjdGVkU3RhdGUobm9kZVN0YXRlczogTm9kZVN0YXRlW10pOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IHN0YXRlIG9mIG5vZGVTdGF0ZXMpIHtcbiAgICAgIGlmIChzdGF0ZS5ub2RlSXRlbS5zZWxlY3RlZCAmJiAoIXN0YXRlLmNoaWxkcmVuIHx8IHN0YXRlLmNoaWxkcmVuLmxlbmd0aCA9PT0gMCkpIHtcbiAgICAgICAgdGhpcy50b2dnbGVTZWxlY3RlZFN0YXRlKHN0YXRlLCB0cnVlKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5zZXRJbml0aWFsU2VsZWN0ZWRTdGF0ZShzdGF0ZS5jaGlsZHJlbik7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNsZWFyKCk6IHZvaWQge1xuICAgIGZvciAobGV0IHN0YXRlIG9mIHRoaXMuc2VsZWN0ZWRTdGF0ZXMpIHtcbiAgICAgIHN0YXRlLnNlbGVjdGVkID0gZmFsc2U7XG4gICAgICBzdGF0ZS5zZWxlY3RlZFN0YXRlID0gTm9kZVNlbGVjdGVkU3RhdGUudW5DaGVja2VkO1xuICAgIH1cblxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5sZW5ndGggPSAwO1xuICAgIHRoaXMuc2VsZWN0ZWRTdGF0ZXMubGVuZ3RoID0gMDtcbiAgfVxuXG4gIHByaXZhdGUgZmlsdGVyVHJhdmVyc2Uoc3RhdGVzOiBOb2RlU3RhdGVbXSwgZmlsdGVyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBsZXQgcmVzdWx0czogYm9vbGVhbltdID0gW107XG5cbiAgICBmb3IgKGxldCBzdGF0ZSBvZiBzdGF0ZXMpIHtcbiAgICAgIGlmIChzdGF0ZS5jaGlsZHJlbi5sZW5ndGggPiAwKSB7XG4gICAgICAgIHN0YXRlLmhhc0ZpbHRlcmVkQ2hpbGRyZW4gPSBmYWxzZTtcbiAgICAgICAgc3RhdGUuaGFzRmlsdGVyZWRDaGlsZHJlbiA9IHRoaXMuZmlsdGVyVHJhdmVyc2Uoc3RhdGUuY2hpbGRyZW4sIGZpbHRlcik7XG5cbiAgICAgICAgaWYgKHRoaXMuYXBwbHlGaWx0ZXIoc3RhdGUsIGZpbHRlcikpIHtcbiAgICAgICAgICBzdGF0ZS5oYXNGaWx0ZXJlZENoaWxkcmVuID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlc3VsdHMucHVzaChzdGF0ZS5oYXNGaWx0ZXJlZENoaWxkcmVuKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0cy5zb21lKChpdGVtOiBib29sZWFuKSA9PiBpdGVtKTtcbiAgfVxuXG4gIHByaXZhdGUgYXBwbHlGaWx0ZXIoc3RhdGU6IE5vZGVTdGF0ZSwgZmlsdGVyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBzdGF0ZS5maWx0ZXJlZENoaWxkcmVuID0gdGhpcy5maWx0ZXIoc3RhdGUuY2hpbGRyZW4sIGZpbHRlcik7XG4gICAgcmV0dXJuIHN0YXRlLmZpbHRlcmVkQ2hpbGRyZW4ubGVuZ3RoID4gMDtcbiAgfVxuXG4gIHByaXZhdGUgZmlsdGVyKHN0YXRlczogTm9kZVN0YXRlW10sIHZhbHVlOiBzdHJpbmcpOiBOb2RlU3RhdGVbXSB7XG4gICAgcmV0dXJuIHN0YXRlcy5maWx0ZXIoKG5vZGVTdGF0ZTogTm9kZVN0YXRlKSA9PiBub2RlU3RhdGUuaGFzRmlsdGVyZWRDaGlsZHJlbiB8fCB2YWx1ZSA9PT0gJycgfHwgbm9kZVN0YXRlLm5vZGVJdGVtLm5hbWUudG9Mb3dlckNhc2UoKS5pbmRleE9mKHZhbHVlKSAhPT0gLTEpO1xuICB9XG5cbiAgcHVibGljIGNoZWNrYm94Q2xpY2soc3RhdGU6IE5vZGVTdGF0ZSk6IHZvaWQge1xuICAgIHRoaXMudG9nZ2xlU2VsZWN0ZWRTdGF0ZShzdGF0ZSwgZmFsc2UpO1xuXG4gICAgaWYgKHRoaXMuY2FsbGJhY2tzPy50b2dnbGUpIHtcbiAgICAgIHRoaXMuY2FsbGJhY2tzLnRvZ2dsZShzdGF0ZS5ub2RlSXRlbSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB0b2dnbGVTZWxlY3RlZFN0YXRlKHN0YXRlOiBOb2RlU3RhdGUsIGlnbm9yZURpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKHN0YXRlLmRpc2FibGVkICYmICFpZ25vcmVEaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChzdGF0ZS5zZWxlY3RlZFN0YXRlID09PSBOb2RlU2VsZWN0ZWRTdGF0ZS51bkNoZWNrZWQpIHtcbiAgICAgIHRoaXMuc2V0Q2hlY2tlZChzdGF0ZSwgdHJ1ZSwgaWdub3JlRGlzYWJsZWQpO1xuICAgIH0gZWxzZSBpZiAoc3RhdGUuc2VsZWN0ZWRTdGF0ZSA9PT0gTm9kZVNlbGVjdGVkU3RhdGUuY2hlY2tlZCkge1xuICAgICAgdGhpcy5zZXRVbmNoZWNrZWQoc3RhdGUsIHRydWUsIGlnbm9yZURpc2FibGVkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuYW55QWN0aXZlU2VsZWN0ZWQoc3RhdGUpICYmICFzdGF0ZS5zZWxlY3RlZCkge1xuICAgICAgICB0aGlzLnNldFVuY2hlY2tlZChzdGF0ZSwgdHJ1ZSwgaWdub3JlRGlzYWJsZWQpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zZXRDaGVja2VkKHN0YXRlLCB0cnVlLCBpZ25vcmVEaXNhYmxlZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHN0YXRlLnBhcmVudCkge1xuICAgICAgdGhpcy5jaGlsZFN0YXRlQ2hhbmdlZChzdGF0ZS5wYXJlbnQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0Q2hlY2tlZChzdGF0ZTogTm9kZVN0YXRlLCBwcm9wYWdhdGU6IGJvb2xlYW4sIGlnbm9yZURpc2FibGVkPzogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmIChzdGF0ZS5kaXNhYmxlZCAmJiAhaWdub3JlRGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBzdGF0ZS5zZWxlY3RlZFN0YXRlID0gTm9kZVNlbGVjdGVkU3RhdGUuY2hlY2tlZDtcbiAgICBzdGF0ZS5zZWxlY3RlZCA9IHRydWU7XG5cbiAgICBpZiAoVHJlZVNlcnZpY2UuaGFzTm9DaGlsZHJlbihzdGF0ZSkpIHtcbiAgICAgIHRoaXMuYWRkU2VsZWN0ZWQoc3RhdGUpO1xuICAgIH0gZWxzZSBpZiAocHJvcGFnYXRlKSB7XG4gICAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIHN0YXRlLmNoaWxkcmVuKSB7XG4gICAgICAgIHRoaXMuc2V0Q2hlY2tlZChjaGlsZCwgcHJvcGFnYXRlLCBpZ25vcmVEaXNhYmxlZCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRVbmNoZWNrZWQoc3RhdGU6IE5vZGVTdGF0ZSwgcHJvcGFnYXRlOiBib29sZWFuLCBpZ25vcmVEaXNhYmxlZD86IGJvb2xlYW4pIHtcbiAgICBpZiAoc3RhdGUuZGlzYWJsZWQgJiYgIWlnbm9yZURpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc3RhdGUuc2VsZWN0ZWRTdGF0ZSA9IE5vZGVTZWxlY3RlZFN0YXRlLnVuQ2hlY2tlZDtcbiAgICBzdGF0ZS5zZWxlY3RlZCA9IGZhbHNlO1xuXG4gICAgaWYgKFRyZWVTZXJ2aWNlLmhhc05vQ2hpbGRyZW4oc3RhdGUpKSB7XG4gICAgICB0aGlzLnJlbW92ZVNlbGVjdGVkKHN0YXRlLm5vZGVJdGVtLml0ZW0pO1xuXG4gICAgICBpZiAodGhpcy5jYWxsYmFja3M/LnVuU2VsZWN0KSB7XG4gICAgICAgIHRoaXMuY2FsbGJhY2tzLnVuU2VsZWN0KHN0YXRlLm5vZGVJdGVtKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHByb3BhZ2F0ZSkge1xuICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBzdGF0ZS5jaGlsZHJlbikge1xuICAgICAgICB0aGlzLnNldFVuY2hlY2tlZChjaGlsZCwgcHJvcGFnYXRlLCBpZ25vcmVEaXNhYmxlZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmFueUNoaWxkU2VsZWN0ZWQoc3RhdGUpKSB7XG4gICAgICB0aGlzLnJlbW92ZVNlbGVjdGVkKHN0YXRlLm5vZGVJdGVtLml0ZW0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlU2VsZWN0ZWQoaXRlbTogYW55KTogdm9pZCB7XG4gICAgbGV0IGluZGV4ID0gdGhpcy5zZWxlY3RlZEl0ZW1zLmluZGV4T2YoaXRlbSk7XG4gICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zLnNwbGljZShpbmRleCwgMSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgaGFzTm9DaGlsZHJlbihzdGF0ZTogTm9kZVN0YXRlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICFzdGF0ZS5jaGlsZHJlbiB8fCBzdGF0ZS5jaGlsZHJlbi5sZW5ndGggPT09IDA7XG4gIH1cblxuICBwcml2YXRlIGFkZFNlbGVjdGVkKHN0YXRlOiBOb2RlU3RhdGUpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkSXRlbXMucHVzaChzdGF0ZS5ub2RlSXRlbS5pdGVtKTtcbiAgICB0aGlzLnNlbGVjdGVkU3RhdGVzLnB1c2goc3RhdGUpO1xuXG4gICAgaWYgKHRoaXMuY2FsbGJhY2tzPy5zZWxlY3QpIHtcbiAgICAgIHRoaXMuY2FsbGJhY2tzLnNlbGVjdChzdGF0ZS5ub2RlSXRlbSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHJlRXZhbHVhdGVTZWxlY3RlZFN0YXRlKHN0YXRlOiBOb2RlU3RhdGUpOiB2b2lkIHtcbiAgICBpZiAoIVRyZWVTZXJ2aWNlLmhhc05vQ2hpbGRyZW4oc3RhdGUpKSB7XG4gICAgICB0aGlzLmNoaWxkU3RhdGVDaGFuZ2VkKHN0YXRlKTtcblxuICAgICAgZm9yIChjb25zdCBjaGlsZCBvZiBzdGF0ZS5jaGlsZHJlbikge1xuICAgICAgICB0aGlzLnJlRXZhbHVhdGVTZWxlY3RlZFN0YXRlKGNoaWxkKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY2hpbGRTdGF0ZUNoYW5nZWQoc3RhdGU6IE5vZGVTdGF0ZSk6IHZvaWQge1xuICAgIGlmICh0aGlzLmFueUNoaWxkU2VsZWN0ZWQoc3RhdGUpKSB7XG4gICAgICBpZiAoc3RhdGUubm9kZUl0ZW0uaWQgIT0gJzAnKSB7XG4gICAgICAgIGxldCBpdGVtSW5kZXggPSB0aGlzLnNlbGVjdGVkSXRlbXMuaW5kZXhPZihzdGF0ZS5ub2RlSXRlbS5pdGVtKTtcblxuICAgICAgICBpZiAoaXRlbUluZGV4ID09PSAtMSkge1xuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5wdXNoKHN0YXRlLm5vZGVJdGVtLml0ZW0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmFsbENoaWxkcmVuU2VsZWN0ZWQoc3RhdGUpKSB7XG4gICAgICAgIHRoaXMuc2V0Q2hlY2tlZChzdGF0ZSwgZmFsc2UpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc3RhdGUuc2VsZWN0ZWRTdGF0ZSA9IE5vZGVTZWxlY3RlZFN0YXRlLmluZGV0ZXJtaW5hdGU7XG4gICAgICAgIHN0YXRlLnNlbGVjdGVkID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2V0VW5jaGVja2VkKHN0YXRlLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgaWYgKHN0YXRlLnBhcmVudCkge1xuICAgICAgdGhpcy5jaGlsZFN0YXRlQ2hhbmdlZChzdGF0ZS5wYXJlbnQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYW55Q2hpbGRTZWxlY3RlZChzdGF0ZTogTm9kZVN0YXRlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHN0YXRlLmNoaWxkcmVuLmZpbmQoKGl0ZW06IE5vZGVTdGF0ZSkgPT4gaXRlbS5zZWxlY3RlZFN0YXRlID09PSBOb2RlU2VsZWN0ZWRTdGF0ZS5jaGVja2VkIHx8IGl0ZW0uc2VsZWN0ZWRTdGF0ZSA9PT0gTm9kZVNlbGVjdGVkU3RhdGUuaW5kZXRlcm1pbmF0ZSkgIT0gbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgaW5pdFN0YXRlKHBhcmVudDogTm9kZVN0YXRlLCBub2RlSXRlbTogTm9kZUl0ZW08YW55Pik6IE5vZGVTdGF0ZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHBhcmVudDogcGFyZW50LFxuICAgICAgY2hpbGRyZW46IFtdLFxuICAgICAgZmlsdGVyZWRDaGlsZHJlbjogW10sXG4gICAgICBoYXNGaWx0ZXJlZENoaWxkcmVuOiBmYWxzZSxcbiAgICAgIG5vZGVJdGVtOiBub2RlSXRlbSxcbiAgICAgIGV4cGFuZGVkOiBub2RlSXRlbS5leHBhbmRlZCAhPT0gZmFsc2UsXG4gICAgICBkaXNhYmxlZDogbm9kZUl0ZW0uZGlzYWJsZWQgPT09IHRydWUsXG4gICAgICBzZWxlY3RlZFN0YXRlOiBOb2RlU2VsZWN0ZWRTdGF0ZS51bkNoZWNrZWQsXG4gICAgICBzZWxlY3RlZDogZmFsc2UsXG4gICAgICBzaG93Q2hlY2tib3g6IG5vZGVJdGVtLnNob3dDaGVja2JveFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGFsbENoaWxkcmVuU2VsZWN0ZWQoc3RhdGU6IE5vZGVTdGF0ZSk6IGJvb2xlYW4ge1xuICAgIGlmIChzdGF0ZS5ub2RlSXRlbS5jaGlsZHJlbikge1xuICAgICAgcmV0dXJuIHN0YXRlLmNoaWxkcmVuLmV2ZXJ5KGl0ID0+IGl0LnNlbGVjdGVkU3RhdGUgPT09IE5vZGVTZWxlY3RlZFN0YXRlLmNoZWNrZWQpICYmIHN0YXRlLmNoaWxkcmVuLmxlbmd0aCA9PT0gc3RhdGUubm9kZUl0ZW0uY2hpbGRyZW4ubGVuZ3RoO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gc3RhdGUuY2hpbGRyZW4uZXZlcnkoaXQgPT4gaXQuc2VsZWN0ZWRTdGF0ZSA9PT0gTm9kZVNlbGVjdGVkU3RhdGUuY2hlY2tlZCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhbnlBY3RpdmVTZWxlY3RlZChzdGF0ZTogTm9kZVN0YXRlKTogYm9vbGVhbiB7XG4gICAgbGV0IHJlc3VsdCA9IHN0YXRlLmNoaWxkcmVuLmZpbHRlcihpdCA9PiAhaXQuZGlzYWJsZWQgJiYgaXQuc2VsZWN0ZWQpLmxlbmd0aCA+IDA7XG5cbiAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIHN0YXRlLmNoaWxkcmVuKSB7XG4gICAgICBpZiAoIVRyZWVTZXJ2aWNlLmhhc05vQ2hpbGRyZW4oY2hpbGQpICYmIHRoaXMuYW55QWN0aXZlU2VsZWN0ZWQoY2hpbGQpKSB7XG4gICAgICAgIHJlc3VsdCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHB1YmxpYyBmaWx0ZXJDaGFuZ2VkKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLmZpbHRlclZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5maWx0ZXJDaGFuZ2VTdWJqZWN0Lm5leHQodmFsdWUpO1xuICB9XG59XG4iXX0=