@flywheel-io/vision 2.9.0 → 2.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,10 +1,9 @@
1
- import { AfterContentInit, EventEmitter, OnChanges, OnDestroy, QueryList } from '@angular/core';
1
+ import { EventEmitter } from '@angular/core';
2
2
  import { ControlValueAccessor } from '@angular/forms';
3
- import { DomSanitizer, SafeStyle } from '@angular/platform-browser';
3
+ import { SafeStyle } from '@angular/platform-browser';
4
4
  import { FwRadioComponent } from './radio.component';
5
5
  import * as i0 from "@angular/core";
6
- export declare class FwRadioGroupComponent implements ControlValueAccessor, OnChanges, OnDestroy, AfterContentInit {
7
- private sanitizer;
6
+ export declare class FwRadioGroupComponent implements ControlValueAccessor {
8
7
  value: string;
9
8
  group: string;
10
9
  color?: 'primary' | 'secondary' | 'default';
@@ -12,14 +11,13 @@ export declare class FwRadioGroupComponent implements ControlValueAccessor, OnCh
12
11
  disabled?: boolean;
13
12
  direction?: 'horizontal' | 'vertical';
14
13
  change: EventEmitter<string>;
15
- radioButtons: QueryList<FwRadioComponent>;
14
+ private sanitizer;
15
+ private dr;
16
+ protected radioButtons: import("@angular/core").Signal<readonly FwRadioComponent[]>;
17
+ private _value;
18
+ private radioSubs;
16
19
  get style(): SafeStyle;
17
- private subscriptions;
18
- constructor(sanitizer: DomSanitizer);
19
- ngOnChanges(): void;
20
- ngOnDestroy(): void;
21
- ngAfterContentInit(): void;
22
- updateLayout(): void;
20
+ constructor();
23
21
  onTouch: () => void;
24
22
  onChange: (value: string) => void;
25
23
  writeValue(value: string): void;
@@ -1,8 +1,8 @@
1
1
  import { EventEmitter } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class FwRadioComponent {
4
- checked: boolean;
5
- value: string;
4
+ value: import("@angular/core").InputSignal<string>;
5
+ checked: import("@angular/core").ModelSignal<boolean>;
6
6
  group: string;
7
7
  disabled: boolean;
8
8
  size: 'medium' | 'compact';
@@ -13,5 +13,5 @@ export declare class FwRadioComponent {
13
13
  get radioStyles(): string[];
14
14
  handleChange(event: any): void;
15
15
  static ɵfac: i0.ɵɵFactoryDeclaration<FwRadioComponent, never>;
16
- static ɵcmp: i0.ɵɵComponentDeclaration<FwRadioComponent, "fw-radio-button", never, { "checked": { "alias": "checked"; "required": false; }; "value": { "alias": "value"; "required": false; }; "group": { "alias": "group"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "size": { "alias": "size"; "required": false; }; "color": { "alias": "color"; "required": false; }; "title": { "alias": "title"; "required": false; }; "focused": { "alias": "focused"; "required": false; }; }, { "change": "change"; }, never, ["*"], false, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<FwRadioComponent, "fw-radio-button", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "group": { "alias": "group"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "size": { "alias": "size"; "required": false; }; "color": { "alias": "color"; "required": false; }; "title": { "alias": "title"; "required": false; }; "focused": { "alias": "focused"; "required": false; }; }, { "checked": "checkedChange"; "change": "change"; }, never, ["*"], false, never>;
17
17
  }
@@ -12,7 +12,7 @@ export class FwChipListComponent {
12
12
  this.changeDetector = inject(ChangeDetectorRef);
13
13
  this.hostElement = inject(ElementRef);
14
14
  this.childChipElementRefs = contentChildren(FwChipComponent, { read: ElementRef });
15
- this.moreText = viewChild.required('moreText');
15
+ this.moreText = viewChild('moreText');
16
16
  this.subscriptions = [];
17
17
  this.hiddenElementCount = signal(0);
18
18
  this.hiddenChips = signal([]);
@@ -49,9 +49,13 @@ export class FwChipListComponent {
49
49
  if (this.disableOverflow()) {
50
50
  return;
51
51
  }
52
+ const moreTextRef = this.moreText();
53
+ if (!moreTextRef) {
54
+ return;
55
+ }
52
56
  const hostRect = this.hostElement.nativeElement.getBoundingClientRect();
53
57
  const chipElements = this.childChipElementRefs().map(ref => ref.nativeElement);
54
- const moreTextElement = this.moreText().nativeElement;
58
+ const moreTextElement = moreTextRef.nativeElement;
55
59
  chipElements.forEach(chip => chip.classList.remove('hidden'));
56
60
  moreTextElement.classList.remove('hidden');
57
61
  const visibleChips = chipElements.filter(chip => {
@@ -71,7 +75,7 @@ export class FwChipListComponent {
71
75
  });
72
76
  }
73
77
  else {
74
- this.moreText().nativeElement.classList.add('hidden');
78
+ moreTextElement.classList.add('hidden');
75
79
  }
76
80
  // eslint-disable-next-line @rx-angular/no-explicit-change-detection-apis
77
81
  this.changeDetector.detectChanges();
@@ -89,4 +93,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
89
93
  FwTooltipModule,
90
94
  ], template: "<ng-content></ng-content>\n@if(!disableOverflow()) {\n <fw-tooltip [title]=\"hiddenLabels()\">\n <p #moreText> +{{hiddenChips().length}} more </p>\n </fw-tooltip>\n}\n", styles: [":host{flex-basis:max-content;display:flex;flex-flow:row wrap;gap:8px;align-items:flex-start;justify-content:flex-start}:host p{line-height:24px;cursor:default;margin:0 8px 0 0;text-wrap:nowrap;color:var(--typography-muted)}:host::ng-deep .hidden{display:none}\n"] }]
91
95
  }] });
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2NoaXAtbGlzdC9jaGlwLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvY2hpcC1saXN0L2NoaXAtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsZUFBZSxFQUNmLE1BQU0sRUFDTixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLG9CQUFvQixFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUU5RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7O0FBRTVELCtGQUErRjtBQUMvRixnRUFBZ0U7QUFZaEUsTUFBTSxPQUFPLG1CQUFtQjtJQVZoQztRQVdFLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDM0MsZ0JBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakMseUJBQW9CLEdBQUcsZUFBZSxDQUE4QixlQUFlLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUMzRyxhQUFRLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBbUMsVUFBVSxDQUFDLENBQUM7UUFFNUUsa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFFbkIsdUJBQWtCLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9CLGdCQUFXLEdBQUcsTUFBTSxDQUFnQixFQUFFLENBQUMsQ0FBQztRQUN4QyxpQkFBWSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDM0IsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNuQyw2REFBNkQ7Z0JBQzdELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQy9DLE9BQU8sV0FBVyxDQUFDLFNBQVMsQ0FBQztZQUMvQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQUM7UUFFSCxxQkFBZ0IsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDOUIsb0JBQWUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFL0Isb0JBQWUsR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQzVCLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzFCLENBQUMsRUFBRSxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFaEMsbUJBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxHQUFHLEVBQUU7WUFDdkMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7S0EyREo7SUF6REMsUUFBUTtRQUNOLDhDQUE4QztRQUM5QyxNQUFNLE9BQU8sR0FBRyxJQUFJLGVBQWUsQ0FBd0IsRUFBRSxDQUFDLENBQUM7UUFDL0QsTUFBTSxlQUFlLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FDbEMsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLEVBQUUsNENBQTRDO1FBQzVGLG9CQUFvQixFQUFFLENBQ3ZCLENBQUM7UUFFRixNQUFNLGNBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFO1lBQzFELE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUE7UUFDRixjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLEVBQUcsQ0FBQyxDQUFDO1FBQzVELE1BQU0sR0FBRyxHQUFHLGVBQWUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQztRQUNyRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQztZQUMzQixPQUFPO1FBQ1QsQ0FBQztRQUVELE1BQU0sUUFBUSxHQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBNkIsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQ3pGLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxhQUE0QixDQUFDLENBQUM7UUFDOUYsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLGFBQWEsQ0FBQztRQUV0RCxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUM5RCxlQUFlLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUUzQyxNQUFNLFlBQVksR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzlDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQzlDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssSUFBSSxRQUFRLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNqRixDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sYUFBYSxHQUFHLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVyRSxJQUFJLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDN0IsTUFBTSxlQUFlLEdBQUcsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDOUQsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsZUFBZSxDQUFDLHFCQUFxQixFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLENBQUM7WUFFL0gsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7Z0JBQzNCLGFBQWEsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDdEMsQ0FBQztZQUVELElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3BDLGFBQWEsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUU7Z0JBQ2pDLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3JDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUVELHlFQUF5RTtRQUN6RSxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFDRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUN2RCxDQUFDOytHQXRGVSxtQkFBbUI7bUdBQW5CLG1CQUFtQix3YUFHc0MsZUFBZSxRQUFVLFVBQVUsbUtDcEN6Ryw4S0FNQSw4VERxQkksWUFBWSw4QkFDWixlQUFlOzs0RkFLTixtQkFBbUI7a0JBVi9CLFNBQVM7K0JBQ0UsY0FBYyxjQUNaLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7cUJBQ2hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgY29tcHV0ZWQsXG4gIGNvbnRlbnRDaGlsZHJlbixcbiAgZWZmZWN0LFxuICBFbGVtZW50UmVmLFxuICBpbmplY3QsXG4gIGlucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgc2lnbmFsLFxuICB2aWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBkZWJvdW5jZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIHRpbWVyIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEZ3Q2hpcENvbXBvbmVudCB9IGZyb20gJy4uL2NoaXAvY2hpcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRndDaGlwTW9kdWxlIH0gZnJvbSAnLi4vY2hpcC9jaGlwLm1vZHVsZSc7XG5pbXBvcnQgeyBGd1Rvb2x0aXBNb2R1bGUgfSBmcm9tICcuLi90b29sdGlwL3Rvb2x0aXAubW9kdWxlJztcblxuLy8gdGhlIG5hdHVyZSBvZiB0aGlzIGNvbXBvbmVudCBpcyB0byBoYW5kbGUgYSBjb21wbGV4IGxheW91dCBpc3N1ZSBzbyBkaXNhYmxpbmcgdGhpcyBsaW50IHJ1bGVcbi8qIGVzbGludC1kaXNhYmxlIEByeC1hbmd1bGFyL3ByZWZlci1uby1sYXlvdXQtc2Vuc2l0aXZlLWFwaXMgKi9cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZnctY2hpcC1saXN0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEZ3Q2hpcE1vZHVsZSxcbiAgICBGd1Rvb2x0aXBNb2R1bGUsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGlwLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vY2hpcC1saXN0LmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgRndDaGlwTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgY2hhbmdlRGV0ZWN0b3IgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBob3N0RWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgY2hpbGRDaGlwRWxlbWVudFJlZnMgPSBjb250ZW50Q2hpbGRyZW48RndDaGlwQ29tcG9uZW50LCBFbGVtZW50UmVmPihGd0NoaXBDb21wb25lbnQsIHsgcmVhZDogRWxlbWVudFJlZiB9KTtcbiAgbW9yZVRleHQgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxIVE1MUGFyYWdyYXBoRWxlbWVudD4+KCdtb3JlVGV4dCcpO1xuXG4gIHN1YnNjcmlwdGlvbnMgPSBbXTtcblxuICBoaWRkZW5FbGVtZW50Q291bnQgPSBzaWduYWwoMCk7XG4gIGhpZGRlbkNoaXBzID0gc2lnbmFsPEhUTUxFbGVtZW50W10+KFtdKTtcbiAgaGlkZGVuTGFiZWxzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLmhpZGRlbkNoaXBzKCkubWFwKGNoaXAgPT4ge1xuICAgICAgLy8gdGhpcyByZWxpZXMgb24gdGhlIGRvbSBzaGFwZSBvZiB0aGUgY2hpcCwgbWlnaHQgYmUgZnJhZ2lsZVxuICAgICAgY29uc3QgY29udGVudFNwYW4gPSBjaGlwLnF1ZXJ5U2VsZWN0b3IoJ3NwYW4nKTtcbiAgICAgIHJldHVybiBjb250ZW50U3Bhbi5pbm5lclRleHQ7XG4gICAgfSkuam9pbignLCAnKTtcbiAgfSk7XG5cbiAgcmVzaXplRGVib3VuY2VNcyA9IGlucHV0KDEwMCk7XG4gIGRpc2FibGVPdmVyZmxvdyA9IGlucHV0KGZhbHNlKTtcblxuICBjaGlsZHJlbkNoYW5nZWQgPSBlZmZlY3QoKCkgPT4ge1xuICAgIHRoaXMuY2hpbGRDaGlwRWxlbWVudFJlZnMoKTtcbiAgICB0aGlzLmNhbGNDaGlwT3ZlcmZsb3coKTtcbiAgfSwgeyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9KTtcblxuICByZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoKSA9PiB7XG4gICAgdGhpcy5jYWxjQ2hpcE92ZXJmbG93KCk7XG4gIH0pO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIC8vIHdpcmUgdXAgcmVzaXplIG9ic2VydmVyIHRvIHJ4anMgYW5kIGRlYm91Y2VcbiAgICBjb25zdCByZXNpemUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxSZXNpemVPYnNlcnZlckVudHJ5W10+KFtdKTtcbiAgICBjb25zdCByZWNhbGNPblJlc2l6ZSQgPSByZXNpemUkLnBpcGUoXG4gICAgICBkZWJvdW5jZSgoKSA9PiB0aW1lcih0aGlzLnJlc2l6ZURlYm91bmNlTXMoKSkpLCAvLyBkZWJvdW5jZSBvdGhlcndpc2UgaXQgY2FuIHJ1biBFVkVSWSBmcmFtZVxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICApO1xuXG4gICAgY29uc3QgcmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKHJlc2l6ZUVudHJpZXMpID0+IHtcbiAgICAgIHJlc2l6ZSQubmV4dChyZXNpemVFbnRyaWVzKTtcbiAgICB9KVxuICAgIHJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LCB7IH0pO1xuICAgIGNvbnN0IHN1YiA9IHJlY2FsY09uUmVzaXplJC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jYWxjQ2hpcE92ZXJmbG93KCkpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHN1Yik7XG4gIH1cblxuICBjYWxjQ2hpcE92ZXJmbG93KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVPdmVyZmxvdygpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgaG9zdFJlY3QgPSAodGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBjaGlwRWxlbWVudHMgPSB0aGlzLmNoaWxkQ2hpcEVsZW1lbnRSZWZzKCkubWFwKHJlZiA9PiByZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCk7XG4gICAgY29uc3QgbW9yZVRleHRFbGVtZW50ID0gdGhpcy5tb3JlVGV4dCgpLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICBjaGlwRWxlbWVudHMuZm9yRWFjaChjaGlwID0+IGNoaXAuY2xhc3NMaXN0LnJlbW92ZSgnaGlkZGVuJykpO1xuICAgIG1vcmVUZXh0RWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCdoaWRkZW4nKTtcblxuICAgIGNvbnN0IHZpc2libGVDaGlwcyA9IGNoaXBFbGVtZW50cy5maWx0ZXIoY2hpcCA9PiB7XG4gICAgICBjb25zdCBjaGlwUmVjdCA9IGNoaXAuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICByZXR1cm4gIShjaGlwUmVjdC5yaWdodCA+IGhvc3RSZWN0LnJpZ2h0IHx8IGNoaXBSZWN0LmJvdHRvbSA+IGhvc3RSZWN0LmJvdHRvbSk7XG4gICAgfSk7XG5cbiAgICBjb25zdCBvdmVyZmxvd0NoaXBzID0gY2hpcEVsZW1lbnRzLnRvU3BsaWNlZCgwLCB2aXNpYmxlQ2hpcHMubGVuZ3RoKTtcblxuICAgIGlmIChvdmVyZmxvd0NoaXBzLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnN0IGxhc3RWaXNpYmxlQ2hpcCA9IHZpc2libGVDaGlwc1t2aXNpYmxlQ2hpcHMubGVuZ3RoIC0gMV07XG4gICAgICBjb25zdCBlbm91Z2hSb29tRm9yTW9yZVRleHQgPSAoaG9zdFJlY3QucmlnaHQgLSBsYXN0VmlzaWJsZUNoaXAuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkucmlnaHQpID4gKG1vcmVUZXh0RWxlbWVudC5vZmZzZXRXaWR0aCk7XG5cbiAgICAgIGlmICghZW5vdWdoUm9vbUZvck1vcmVUZXh0KSB7XG4gICAgICAgIG92ZXJmbG93Q2hpcHMucHVzaChsYXN0VmlzaWJsZUNoaXApO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmhpZGRlbkNoaXBzLnNldChvdmVyZmxvd0NoaXBzKTtcbiAgICAgIG92ZXJmbG93Q2hpcHMuZm9yRWFjaChoaWRkZW5DaGlwID0+IHtcbiAgICAgICAgaGlkZGVuQ2hpcC5jbGFzc0xpc3QuYWRkKCdoaWRkZW4nKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1vcmVUZXh0KCkubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKCdoaWRkZW4nKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHJ4LWFuZ3VsYXIvbm8tZXhwbGljaXQtY2hhbmdlLWRldGVjdGlvbi1hcGlzXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goc3ViID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuQGlmKCFkaXNhYmxlT3ZlcmZsb3coKSkge1xuICA8ZnctdG9vbHRpcCBbdGl0bGVdPVwiaGlkZGVuTGFiZWxzKClcIj5cbiAgICA8cCAjbW9yZVRleHQ+ICt7e2hpZGRlbkNoaXBzKCkubGVuZ3RofX0gbW9yZSA8L3A+XG4gIDwvZnctdG9vbHRpcD5cbn1cbiJdfQ==
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2NoaXAtbGlzdC9jaGlwLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvY2hpcC1saXN0L2NoaXAtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsZUFBZSxFQUNmLE1BQU0sRUFDTixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLG9CQUFvQixFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUU5RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7O0FBRTVELCtGQUErRjtBQUMvRixnRUFBZ0U7QUFZaEUsTUFBTSxPQUFPLG1CQUFtQjtJQVZoQztRQVdFLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDM0MsZ0JBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakMseUJBQW9CLEdBQUcsZUFBZSxDQUE4QixlQUFlLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUMzRyxhQUFRLEdBQUcsU0FBUyxDQUFtQyxVQUFVLENBQUMsQ0FBQztRQUVuRSxrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQUVuQix1QkFBa0IsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0IsZ0JB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QUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7K0dBM0ZVLG1CQUFtQjttR0FBbkIsbUJBQW1CLHdhQUdzQyxlQUFlLFFBQVUsVUFBVSxtS0NwQ3pHLDhLQU1BLDhURHFCSSxZQUFZLDhCQUNaLGVBQWU7OzRGQUtOLG1CQUFtQjtrQkFWL0IsU0FBUzsrQkFDRSxjQUFjLGNBQ1osSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osZUFBZTtxQkFDaEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBjb21wdXRlZCxcbiAgY29udGVudENoaWxkcmVuLFxuICBlZmZlY3QsXG4gIEVsZW1lbnRSZWYsXG4gIGluamVjdCxcbiAgaW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBzaWduYWwsXG4gIHZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGRlYm91bmNlLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGltZXIgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRndDaGlwQ29tcG9uZW50IH0gZnJvbSAnLi4vY2hpcC9jaGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGd0NoaXBNb2R1bGUgfSBmcm9tICcuLi9jaGlwL2NoaXAubW9kdWxlJztcbmltcG9ydCB7IEZ3VG9vbHRpcE1vZHVsZSB9IGZyb20gJy4uL3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUnO1xuXG4vLyB0aGUgbmF0dXJlIG9mIHRoaXMgY29tcG9uZW50IGlzIHRvIGhhbmRsZSBhIGNvbXBsZXggbGF5b3V0IGlzc3VlIHNvIGRpc2FibGluZyB0aGlzIGxpbnQgcnVsZVxuLyogZXNsaW50LWRpc2FibGUgQHJ4LWFuZ3VsYXIvcHJlZmVyLW5vLWxheW91dC1zZW5zaXRpdmUtYXBpcyAqL1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmdy1jaGlwLWxpc3QnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgRndDaGlwTW9kdWxlLFxuICAgIEZ3VG9vbHRpcE1vZHVsZSxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoaXAtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9jaGlwLWxpc3QuY29tcG9uZW50LnNjc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBGd0NoaXBMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBjaGFuZ2VEZXRlY3RvciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gIGhvc3RFbGVtZW50ID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuICBjaGlsZENoaXBFbGVtZW50UmVmcyA9IGNvbnRlbnRDaGlsZHJlbjxGd0NoaXBDb21wb25lbnQsIEVsZW1lbnRSZWY+KEZ3Q2hpcENvbXBvbmVudCwgeyByZWFkOiBFbGVtZW50UmVmIH0pO1xuICBtb3JlVGV4dCA9IHZpZXdDaGlsZDxFbGVtZW50UmVmPEhUTUxQYXJhZ3JhcGhFbGVtZW50Pj4oJ21vcmVUZXh0Jyk7XG5cbiAgc3Vic2NyaXB0aW9ucyA9IFtdO1xuXG4gIGhpZGRlbkVsZW1lbnRDb3VudCA9IHNpZ25hbCgwKTtcbiAgaGlkZGVuQ2hpcHMgPSBzaWduYWw8SFRNTEVsZW1lbnRbXT4oW10pO1xuICBoaWRkZW5MYWJlbHMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuaGlkZGVuQ2hpcHMoKS5tYXAoY2hpcCA9PiB7XG4gICAgICAvLyB0aGlzIHJlbGllcyBvbiB0aGUgZG9tIHNoYXBlIG9mIHRoZSBjaGlwLCBtaWdodCBiZSBmcmFnaWxlXG4gICAgICBjb25zdCBjb250ZW50U3BhbiA9IGNoaXAucXVlcnlTZWxlY3Rvcignc3BhbicpO1xuICAgICAgcmV0dXJuIGNvbnRlbnRTcGFuLmlubmVyVGV4dDtcbiAgICB9KS5qb2luKCcsICcpO1xuICB9KTtcblxuICByZXNpemVEZWJvdW5jZU1zID0gaW5wdXQoMTAwKTtcbiAgZGlzYWJsZU92ZXJmbG93ID0gaW5wdXQoZmFsc2UpO1xuXG4gIGNoaWxkcmVuQ2hhbmdlZCA9IGVmZmVjdCgoKSA9PiB7XG4gICAgdGhpcy5jaGlsZENoaXBFbGVtZW50UmVmcygpO1xuICAgIHRoaXMuY2FsY0NoaXBPdmVyZmxvdygpO1xuICB9LCB7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH0pO1xuXG4gIHJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZU9ic2VydmVyKCgpID0+IHtcbiAgICB0aGlzLmNhbGNDaGlwT3ZlcmZsb3coKTtcbiAgfSk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gd2lyZSB1cCByZXNpemUgb2JzZXJ2ZXIgdG8gcnhqcyBhbmQgZGVib3VjZVxuICAgIGNvbnN0IHJlc2l6ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFJlc2l6ZU9ic2VydmVyRW50cnlbXT4oW10pO1xuICAgIGNvbnN0IHJlY2FsY09uUmVzaXplJCA9IHJlc2l6ZSQucGlwZShcbiAgICAgIGRlYm91bmNlKCgpID0+IHRpbWVyKHRoaXMucmVzaXplRGVib3VuY2VNcygpKSksIC8vIGRlYm91bmNlIG90aGVyd2lzZSBpdCBjYW4gcnVuIEVWRVJZIGZyYW1lXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICk7XG5cbiAgICBjb25zdCByZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigocmVzaXplRW50cmllcykgPT4ge1xuICAgICAgcmVzaXplJC5uZXh0KHJlc2l6ZUVudHJpZXMpO1xuICAgIH0pXG4gICAgcmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHsgfSk7XG4gICAgY29uc3Qgc3ViID0gcmVjYWxjT25SZXNpemUkLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNhbGNDaGlwT3ZlcmZsb3coKSk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goc3ViKTtcbiAgfVxuXG4gIGNhbGNDaGlwT3ZlcmZsb3coKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZU92ZXJmbG93KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBtb3JlVGV4dFJlZiA9IHRoaXMubW9yZVRleHQoKTtcbiAgICBpZiAoIW1vcmVUZXh0UmVmKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgaG9zdFJlY3QgPSAodGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBjaGlwRWxlbWVudHMgPSB0aGlzLmNoaWxkQ2hpcEVsZW1lbnRSZWZzKCkubWFwKHJlZiA9PiByZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCk7XG4gICAgY29uc3QgbW9yZVRleHRFbGVtZW50ID0gbW9yZVRleHRSZWYubmF0aXZlRWxlbWVudDtcblxuICAgIGNoaXBFbGVtZW50cy5mb3JFYWNoKGNoaXAgPT4gY2hpcC5jbGFzc0xpc3QucmVtb3ZlKCdoaWRkZW4nKSk7XG4gICAgbW9yZVRleHRFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoJ2hpZGRlbicpO1xuXG4gICAgY29uc3QgdmlzaWJsZUNoaXBzID0gY2hpcEVsZW1lbnRzLmZpbHRlcihjaGlwID0+IHtcbiAgICAgIGNvbnN0IGNoaXBSZWN0ID0gY2hpcC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgIHJldHVybiAhKGNoaXBSZWN0LnJpZ2h0ID4gaG9zdFJlY3QucmlnaHQgfHwgY2hpcFJlY3QuYm90dG9tID4gaG9zdFJlY3QuYm90dG9tKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IG92ZXJmbG93Q2hpcHMgPSBjaGlwRWxlbWVudHMudG9TcGxpY2VkKDAsIHZpc2libGVDaGlwcy5sZW5ndGgpO1xuXG4gICAgaWYgKG92ZXJmbG93Q2hpcHMubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgbGFzdFZpc2libGVDaGlwID0gdmlzaWJsZUNoaXBzW3Zpc2libGVDaGlwcy5sZW5ndGggLSAxXTtcbiAgICAgIGNvbnN0IGVub3VnaFJvb21Gb3JNb3JlVGV4dCA9IChob3N0UmVjdC5yaWdodCAtIGxhc3RWaXNpYmxlQ2hpcC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5yaWdodCkgPiAobW9yZVRleHRFbGVtZW50Lm9mZnNldFdpZHRoKTtcblxuICAgICAgaWYgKCFlbm91Z2hSb29tRm9yTW9yZVRleHQpIHtcbiAgICAgICAgb3ZlcmZsb3dDaGlwcy5wdXNoKGxhc3RWaXNpYmxlQ2hpcCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuaGlkZGVuQ2hpcHMuc2V0KG92ZXJmbG93Q2hpcHMpO1xuICAgICAgb3ZlcmZsb3dDaGlwcy5mb3JFYWNoKGhpZGRlbkNoaXAgPT4ge1xuICAgICAgICBoaWRkZW5DaGlwLmNsYXNzTGlzdC5hZGQoJ2hpZGRlbicpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG1vcmVUZXh0RWxlbWVudC5jbGFzc0xpc3QuYWRkKCdoaWRkZW4nKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHJ4LWFuZ3VsYXIvbm8tZXhwbGljaXQtY2hhbmdlLWRldGVjdGlvbi1hcGlzXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goc3ViID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuQGlmKCFkaXNhYmxlT3ZlcmZsb3coKSkge1xuICA8ZnctdG9vbHRpcCBbdGl0bGVdPVwiaGlkZGVuTGFiZWxzKClcIj5cbiAgICA8cCAjbW9yZVRleHQ+ICt7e2hpZGRlbkNoaXBzKCkubGVuZ3RofX0gbW9yZSA8L3A+XG4gIDwvZnctdG9vbHRpcD5cbn1cbiJdfQ==
@@ -52,7 +52,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
52
52
  return namedSizeToPxMap[input] || parseInt(input) || 24;
53
53
  }
54
54
  return input;
55
- }
55
+ },
56
56
  }]
57
57
  }], color: [{
58
58
  type: Input
@@ -66,4 +66,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
66
66
  type: HostBinding,
67
67
  args: ['style']
68
68
  }] } });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9pY29uL2ljb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT3ZGLE1BQU0sZ0JBQWdCLEdBQUc7SUFDdkIsS0FBSyxFQUFFLEVBQUU7SUFDVCxNQUFNLEVBQUUsRUFBRTtJQUNWLEtBQUssRUFBRSxFQUFFO0lBQ1QsYUFBYSxFQUFFLEVBQUU7Q0FDbEIsQ0FBQTtBQU9ELE1BQU0sT0FBTyxlQUFlO0lBb0IxQixJQUEwQixLQUFLO1FBQzdCLE1BQU0sU0FBUyxHQUFXLGNBQWMsSUFBSSxDQUFDLElBQUksa0JBQWtCLElBQUksQ0FBQyxJQUFJLGNBQWMsSUFBSSxDQUFDLElBQUksS0FBSyxDQUFDO1FBQ3pHLElBQUksVUFBVSxHQUFXLEVBQUUsQ0FBQztRQUM1QixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDM0IsVUFBVSxHQUFHLGlDQUFpQyxDQUFDO1lBQ2pELENBQUM7aUJBQU0sQ0FBQztnQkFDTixVQUFVLEdBQUcsZ0JBQWdCLElBQUksQ0FBQyxLQUFLLFNBQVMsQ0FBQztZQUNuRCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyx3QkFBd0IsQ0FBQztRQUMzQyxTQUFTO1FBQ1QsVUFBVTtHQUNmLENBQUMsQ0FBQztJQUNILENBQUM7SUFFRCxZQUFvQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBbEJyQixVQUFLLEdBQUcsYUFBYSxDQUFDO1FBQ3ZCLFNBQUksR0FBRyxLQUFLLENBQUM7SUFrQmxDLENBQUM7K0dBckNVLGVBQWU7bUdBQWYsZUFBZSx3REFFYixDQUFDLEtBQWUsRUFBRSxFQUFFO29CQUM3QixJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO3dCQUM5QixPQUFPLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQzFELENBQUM7b0JBQ0QsT0FBTyxLQUFLLENBQUM7Z0JBQ2YsQ0FBQywwSUFWTywyQkFBMkI7OzRGQUcxQixlQUFlO2tCQUwzQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxTQUFTO29CQUNuQixRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7aUZBU0ksSUFBSTtzQkFQTixLQUFLO3VCQUFDO3dCQUNMLFNBQVMsRUFBRSxDQUFDLEtBQWUsRUFBRSxFQUFFOzRCQUM3QixJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO2dDQUM5QixPQUFPLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7NEJBQzFELENBQUM7NEJBQ0QsT0FBTyxLQUFLLENBQUM7d0JBQ2YsQ0FBQztxQkFDRjtnQkFDUSxLQUFLO3NCQUFiLEtBQUs7Z0JBU2dCLEtBQUs7c0JBQTFCLFdBQVc7dUJBQUMsT0FBTztnQkFDQyxJQUFJO3NCQUF4QixXQUFXO3VCQUFDLE1BQU07Z0JBQ08sS0FBSztzQkFBOUIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVTdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG50eXBlIE5hbWVkSWNvblNpemUgPSAnbGFyZ2UnIHwgJ21lZGl1bScgfCAnc21hbGwnIHwgJ2V4dHJhLXNtYWxsJztcblxuZXhwb3J0IHR5cGUgSWNvblNpemUgPSBOYW1lZEljb25TaXplIHwgbnVtYmVyO1xuXG5jb25zdCBuYW1lZFNpemVUb1B4TWFwID0ge1xuICBsYXJnZTogMjgsXG4gIG1lZGl1bTogMjQsXG4gIHNtYWxsOiAyMixcbiAgJ2V4dHJhLXNtYWxsJzogMTgsXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Z3LWljb24nLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRndJY29uQ29tcG9uZW50IHtcbiAgQElucHV0KHtcbiAgICB0cmFuc2Zvcm06IChpbnB1dDogSWNvblNpemUpID0+IHtcbiAgICAgIGlmICh0eXBlb2YgaW5wdXQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJldHVybiBuYW1lZFNpemVUb1B4TWFwW2lucHV0XSB8fCBwYXJzZUludChpbnB1dCkgfHwgMjQ7XG4gICAgICB9XG4gICAgICByZXR1cm4gaW5wdXQ7XG4gICAgfVxuICB9KSBzaXplOiBudW1iZXI7XG4gIEBJbnB1dCgpIGNvbG9yPzpcbiAgICB8ICdwcmltYXJ5J1xuICAgIHwgJ3NlY29uZGFyeSdcbiAgICB8ICdyZWQnXG4gICAgfCAnb3JhbmdlJ1xuICAgIHwgJ2dyZWVuJ1xuICAgIHwgJ3NsYXRlJ1xuICAgIHwgJ211dGVkJ1xuICAgIHwgJ3R5cG9ncmFwaHknO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgY2xhc3MgPSAndmlzaW9uLWljb24nO1xuICBASG9zdEJpbmRpbmcoJ3JvbGUnKSByb2xlID0gJ2ltZyc7XG4gIEBIb3N0QmluZGluZygnc3R5bGUnKSBnZXQgc3R5bGUoKTogU2FmZVN0eWxlIHtcbiAgICBjb25zdCBzaXplU3R5bGU6IHN0cmluZyA9IGBmb250LXNpemU6ICR7dGhpcy5zaXplfXB4OyBtaW4td2lkdGg6ICR7dGhpcy5zaXplfXB4OyB3aWR0aDogJHt0aGlzLnNpemV9cHg7YDtcbiAgICBsZXQgY29sb3JTdHlsZTogc3RyaW5nID0gJyc7XG4gICAgaWYgKHRoaXMuY29sb3IpIHtcbiAgICAgIGlmICh0aGlzLmNvbG9yID09PSAnbXV0ZWQnKSB7XG4gICAgICAgIGNvbG9yU3R5bGUgPSAnY29sb3I6IHZhcigtLXR5cG9ncmFwaHktbXV0ZWQpOyc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb2xvclN0eWxlID0gYGNvbG9yOiB2YXIoLS0ke3RoaXMuY29sb3J9LWJhc2UpO2A7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0U3R5bGUoYFxuICAgICAgJHtzaXplU3R5bGV9XG4gICAgICAke2NvbG9yU3R5bGV9XG4gIGApO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge1xuICB9XG59XG4iXX0=
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9pY29uL2ljb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT3ZGLE1BQU0sZ0JBQWdCLEdBQUc7SUFDdkIsS0FBSyxFQUFFLEVBQUU7SUFDVCxNQUFNLEVBQUUsRUFBRTtJQUNWLEtBQUssRUFBRSxFQUFFO0lBQ1QsYUFBYSxFQUFFLEVBQUU7Q0FDbEIsQ0FBQTtBQU9ELE1BQU0sT0FBTyxlQUFlO0lBb0IxQixJQUEwQixLQUFLO1FBQzdCLE1BQU0sU0FBUyxHQUFXLGNBQWMsSUFBSSxDQUFDLElBQUksa0JBQWtCLElBQUksQ0FBQyxJQUFJLGNBQWMsSUFBSSxDQUFDLElBQUksS0FBSyxDQUFDO1FBQ3pHLElBQUksVUFBVSxHQUFXLEVBQUUsQ0FBQztRQUM1QixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDM0IsVUFBVSxHQUFHLGlDQUFpQyxDQUFDO1lBQ2pELENBQUM7aUJBQU0sQ0FBQztnQkFDTixVQUFVLEdBQUcsZ0JBQWdCLElBQUksQ0FBQyxLQUFLLFNBQVMsQ0FBQztZQUNuRCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyx3QkFBd0IsQ0FBQztRQUMzQyxTQUFTO1FBQ1QsVUFBVTtHQUNmLENBQUMsQ0FBQztJQUNILENBQUM7SUFFRCxZQUFvQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBbEJyQixVQUFLLEdBQUcsYUFBYSxDQUFDO1FBQ3ZCLFNBQUksR0FBRyxLQUFLLENBQUM7SUFrQmxDLENBQUM7K0dBckNVLGVBQWU7bUdBQWYsZUFBZSx3REFFYixDQUFDLEtBQWUsRUFBRSxFQUFFO29CQUM3QixJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO3dCQUM5QixPQUFPLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQzFELENBQUM7b0JBQ0QsT0FBTyxLQUFLLENBQUM7Z0JBQ2YsQ0FBQywwSUFWTywyQkFBMkI7OzRGQUcxQixlQUFlO2tCQUwzQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxTQUFTO29CQUNuQixRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQ7aUZBU0ksSUFBSTtzQkFQTixLQUFLO3VCQUFDO3dCQUNMLFNBQVMsRUFBRSxDQUFDLEtBQWUsRUFBRSxFQUFFOzRCQUM3QixJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO2dDQUM5QixPQUFPLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7NEJBQzFELENBQUM7NEJBQ0QsT0FBTyxLQUFLLENBQUM7d0JBQ2YsQ0FBQztxQkFDRjtnQkFDUSxLQUFLO3NCQUFiLEtBQUs7Z0JBU2dCLEtBQUs7c0JBQTFCLFdBQVc7dUJBQUMsT0FBTztnQkFDQyxJQUFJO3NCQUF4QixXQUFXO3VCQUFDLE1BQU07Z0JBQ08sS0FBSztzQkFBOUIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVTdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG50eXBlIE5hbWVkSWNvblNpemUgPSAnbGFyZ2UnIHwgJ21lZGl1bScgfCAnc21hbGwnIHwgJ2V4dHJhLXNtYWxsJztcblxuZXhwb3J0IHR5cGUgSWNvblNpemUgPSBOYW1lZEljb25TaXplIHwgbnVtYmVyO1xuXG5jb25zdCBuYW1lZFNpemVUb1B4TWFwID0ge1xuICBsYXJnZTogMjgsXG4gIG1lZGl1bTogMjQsXG4gIHNtYWxsOiAyMixcbiAgJ2V4dHJhLXNtYWxsJzogMTgsXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Z3LWljb24nLFxuICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRndJY29uQ29tcG9uZW50IHtcbiAgQElucHV0KHtcbiAgICB0cmFuc2Zvcm06IChpbnB1dDogSWNvblNpemUpID0+IHtcbiAgICAgIGlmICh0eXBlb2YgaW5wdXQgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJldHVybiBuYW1lZFNpemVUb1B4TWFwW2lucHV0XSB8fCBwYXJzZUludChpbnB1dCkgfHwgMjQ7XG4gICAgICB9XG4gICAgICByZXR1cm4gaW5wdXQ7XG4gICAgfSxcbiAgfSkgc2l6ZTogbnVtYmVyO1xuICBASW5wdXQoKSBjb2xvcj86XG4gICAgfCAncHJpbWFyeSdcbiAgICB8ICdzZWNvbmRhcnknXG4gICAgfCAncmVkJ1xuICAgIHwgJ29yYW5nZSdcbiAgICB8ICdncmVlbidcbiAgICB8ICdzbGF0ZSdcbiAgICB8ICdtdXRlZCdcbiAgICB8ICd0eXBvZ3JhcGh5JztcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGNsYXNzID0gJ3Zpc2lvbi1pY29uJztcbiAgQEhvc3RCaW5kaW5nKCdyb2xlJykgcm9sZSA9ICdpbWcnO1xuICBASG9zdEJpbmRpbmcoJ3N0eWxlJykgZ2V0IHN0eWxlKCk6IFNhZmVTdHlsZSB7XG4gICAgY29uc3Qgc2l6ZVN0eWxlOiBzdHJpbmcgPSBgZm9udC1zaXplOiAke3RoaXMuc2l6ZX1weDsgbWluLXdpZHRoOiAke3RoaXMuc2l6ZX1weDsgd2lkdGg6ICR7dGhpcy5zaXplfXB4O2A7XG4gICAgbGV0IGNvbG9yU3R5bGU6IHN0cmluZyA9ICcnO1xuICAgIGlmICh0aGlzLmNvbG9yKSB7XG4gICAgICBpZiAodGhpcy5jb2xvciA9PT0gJ211dGVkJykge1xuICAgICAgICBjb2xvclN0eWxlID0gJ2NvbG9yOiB2YXIoLS10eXBvZ3JhcGh5LW11dGVkKTsnO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29sb3JTdHlsZSA9IGBjb2xvcjogdmFyKC0tJHt0aGlzLmNvbG9yfS1iYXNlKTtgO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFN0eWxlKGBcbiAgICAgICR7c2l6ZVN0eWxlfVxuICAgICAgJHtjb2xvclN0eWxlfVxuICBgKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHtcbiAgfVxufVxuIl19
@@ -89,7 +89,7 @@ export class FwMenuItemComponent {
89
89
  }
90
90
  ;
91
91
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwMenuItemComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
92
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: FwMenuItemComponent, selector: "fw-menu-item", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: false, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: false, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: false, isRequired: false, transformFunction: null }, iconColor: { classPropertyName: "iconColor", publicName: "iconColor", isSignal: false, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, showCheckbox: { classPropertyName: "showCheckbox", publicName: "showCheckbox", isSignal: false, isRequired: false, transformFunction: null }, checkboxColor: { classPropertyName: "checkboxColor", publicName: "checkboxColor", isSignal: false, isRequired: false, transformFunction: null }, multiSelect: { classPropertyName: "multiSelect", publicName: "multiSelect", isSignal: false, isRequired: false, transformFunction: null }, hidden: { classPropertyName: "hidden", publicName: "hidden", isSignal: false, isRequired: false, transformFunction: null }, collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: false, isRequired: false, transformFunction: null }, href: { classPropertyName: "href", publicName: "href", isSignal: false, isRequired: false, transformFunction: null }, target: { classPropertyName: "target", publicName: "target", isSignal: false, isRequired: false, transformFunction: null }, subItemsOpen: { classPropertyName: "subItemsOpen", publicName: "subItemsOpen", isSignal: false, isRequired: false, transformFunction: null }, mouseEnterHandler: { classPropertyName: "mouseEnterHandler", publicName: "mouseEnterHandler", isSignal: true, isRequired: false, transformFunction: null }, focused: { classPropertyName: "focused", publicName: "focused", isSignal: false, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { mouseEnterHandler: "mouseEnterHandlerChange", click: "click" }, host: { listeners: { "mouseenter": "onMouseEnter($event)" }, properties: { "class.collapsed": "this.collapsed", "class.focused": "this.focused", "class.selected": "this.selected", "attr.title": "this.attrTitle" } }, queries: [{ propertyName: "subItems", predicate: FwMenuSubItemComponent }], usesOnChanges: true, ngImport: i0, template: "<div (click)=\"handleClick($event)\" *ngIf=\"!hidden\">\n <div\n [ngClass]=\"['menu-item', 'size-'+size, disabled?'disabled':'']\"\n [class.disabled]=\"disabled\">\n <div class=\"item-checkbox\" *ngIf=\"showCheckbox && multiSelect\">\n <fw-checkbox\n [disabled]=\"disabled\"\n [color]=\"checkboxColor\"\n [checked]=\"selected\">\n </fw-checkbox>\n </div>\n <div class=\"item-radiobutton\" *ngIf=\"showCheckbox && !multiSelect\">\n <fw-radio-button\n [value]=\"value\"\n [color]=\"checkboxColor\"\n [disabled]=\"disabled\"\n [checked]=\"selected\">\n </fw-radio-button>\n </div>\n <fw-icon [color]=\"iconColor\" *ngIf=\"icon\" class=\"menu-icon {{iconColor}}\">{{ icon }}</fw-icon>\n <ng-content select=\"fw-avatar\"></ng-content>\n <div class=\"menu-text\" *ngIf=\"title\">\n <h4 class=\"vision-h4\">{{ title }}</h4>\n <p *ngIf=\"description\" class=\"vision-p4 description\">{{ description }}</p>\n </div>\n <div class=\"key-text vision-p2\">\n <ng-content select=\"p\"></ng-content>\n <ng-content select=\"fw-badge\"></ng-content>\n <ng-content select=\"fw-icon\"></ng-content>\n <ng-content select=\"fw-icon-button\"></ng-content>\n <fw-icon-button\n [size]=\"'small'\"\n [icon]=\"subItemsOpen?'chevron-up':'chevron-down'\"\n *ngIf=\"subItems.length>0\"\n (click)=\"toggleSubItemsView()\">\n </fw-icon-button>\n </div>\n </div>\n</div>\n<div class=\"item-subitems\">\n <ng-content select=\"fw-menu-sub-item\"></ng-content>\n</div>\n", styles: [":host{position:relative;display:flex;flex-direction:column}:host>div{display:flex;flex:1;text-decoration:none;max-width:100%}:host h4{text-overflow:ellipsis}:host:hover:not(.selected) .menu-item:not(.disabled),:host.focused .menu-item:not(.disabled){background-color:var(--slate-hover);cursor:pointer}:host:hover:not(.selected) .menu-item:not(.disabled) .menu-icon,:host.focused .menu-item:not(.disabled) .menu-icon{color:var(--primary-base)}:host:hover:not(.selected) .menu-item:not(.disabled) .menu-text h4,:host.focused .menu-item:not(.disabled) .menu-text h4{color:var(--typography-base)}:host.selected .menu-item{background-color:var(--primary-hover);cursor:pointer}:host.selected .menu-item .menu-icon{color:var(--primary-base)}:host.selected .menu-item .menu-text h4{color:var(--typography-base)}:host.collapsed .menu-item{container-name:menuitem;container-type:size}:host .menu-item{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;flex:1;gap:8px;padding:8px;margin:1px 4px;border-radius:4px;color:var(--typography-muted);min-height:40px;width:stretch}:host .menu-item .item-checkbox:empty{display:none}:host .menu-item .item-radiobutton{padding:0}:host .menu-item .item-radiobutton:empty{display:none}:host .menu-item .menu-icon{font-size:18px;min-width:18px;width:18px;white-space:nowrap}:host .menu-item .menu-text{flex:1;overflow:hidden;padding:2px 0}:host .menu-item .menu-text h4{margin:0;color:var(--typography-muted);white-space:nowrap;overflow:hidden}:host .menu-item .menu-text p{margin:0}:host .menu-item .menu-text p.description{color:var(--typography-light)}:host .menu-item .key-text{display:flex;align-items:center;gap:8px;color:var(--typography-light)}:host .menu-item .key-text fw-icon-button{min-height:22px!important;min-width:22px!important;width:22px!important}:host .menu-item.size-compact{min-height:32px}:host .menu-item.size-compact .menu-text .description{display:none}:host .menu-item.disabled{opacity:.4;cursor:not-allowed}:host .item-subitems{display:flex;flex-direction:column}@container menuitem (max-width: 60px){.menu-item{gap:0}.menu-item .menu-text{opacity:0}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FwIconButtonComponent, selector: "fw-icon-button", inputs: ["color", "icon", "size", "disabled", "selected"] }, { kind: "component", type: i3.FwIconComponent, selector: "fw-icon", inputs: ["size", "color"] }, { kind: "component", type: i4.FwCheckboxComponent, selector: "fw-checkbox", inputs: ["name", "disabled", "size", "color", "title", "focused", "checked"], outputs: ["change"] }, { kind: "component", type: i5.FwRadioComponent, selector: "fw-radio-button", inputs: ["checked", "value", "group", "disabled", "size", "color", "title", "focused"], outputs: ["change"] }] }); }
92
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: FwMenuItemComponent, selector: "fw-menu-item", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: false, isRequired: false, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: false, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: false, isRequired: false, transformFunction: null }, iconColor: { classPropertyName: "iconColor", publicName: "iconColor", isSignal: false, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, showCheckbox: { classPropertyName: "showCheckbox", publicName: "showCheckbox", isSignal: false, isRequired: false, transformFunction: null }, checkboxColor: { classPropertyName: "checkboxColor", publicName: "checkboxColor", isSignal: false, isRequired: false, transformFunction: null }, multiSelect: { classPropertyName: "multiSelect", publicName: "multiSelect", isSignal: false, isRequired: false, transformFunction: null }, hidden: { classPropertyName: "hidden", publicName: "hidden", isSignal: false, isRequired: false, transformFunction: null }, collapsed: { classPropertyName: "collapsed", publicName: "collapsed", isSignal: false, isRequired: false, transformFunction: null }, href: { classPropertyName: "href", publicName: "href", isSignal: false, isRequired: false, transformFunction: null }, target: { classPropertyName: "target", publicName: "target", isSignal: false, isRequired: false, transformFunction: null }, subItemsOpen: { classPropertyName: "subItemsOpen", publicName: "subItemsOpen", isSignal: false, isRequired: false, transformFunction: null }, mouseEnterHandler: { classPropertyName: "mouseEnterHandler", publicName: "mouseEnterHandler", isSignal: true, isRequired: false, transformFunction: null }, focused: { classPropertyName: "focused", publicName: "focused", isSignal: false, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { mouseEnterHandler: "mouseEnterHandlerChange", click: "click" }, host: { listeners: { "mouseenter": "onMouseEnter($event)" }, properties: { "class.collapsed": "this.collapsed", "class.focused": "this.focused", "class.selected": "this.selected", "attr.title": "this.attrTitle" } }, queries: [{ propertyName: "subItems", predicate: FwMenuSubItemComponent }], usesOnChanges: true, ngImport: i0, template: "<div (click)=\"handleClick($event)\" *ngIf=\"!hidden\">\n <div\n [ngClass]=\"['menu-item', 'size-'+size, disabled?'disabled':'']\"\n [class.disabled]=\"disabled\">\n <div class=\"item-checkbox\" *ngIf=\"showCheckbox && multiSelect\">\n <fw-checkbox\n [disabled]=\"disabled\"\n [color]=\"checkboxColor\"\n [checked]=\"selected\">\n </fw-checkbox>\n </div>\n <div class=\"item-radiobutton\" *ngIf=\"showCheckbox && !multiSelect\">\n <fw-radio-button\n [value]=\"value\"\n [color]=\"checkboxColor\"\n [disabled]=\"disabled\"\n [checked]=\"selected\">\n </fw-radio-button>\n </div>\n <fw-icon [color]=\"iconColor\" *ngIf=\"icon\" class=\"menu-icon {{iconColor}}\">{{ icon }}</fw-icon>\n <ng-content select=\"fw-avatar\"></ng-content>\n <div class=\"menu-text\" *ngIf=\"title\">\n <h4 class=\"vision-h4\">{{ title }}</h4>\n <p *ngIf=\"description\" class=\"vision-p4 description\">{{ description }}</p>\n </div>\n <div class=\"key-text vision-p2\">\n <ng-content select=\"p\"></ng-content>\n <ng-content select=\"fw-badge\"></ng-content>\n <ng-content select=\"fw-icon\"></ng-content>\n <ng-content select=\"fw-icon-button\"></ng-content>\n <fw-icon-button\n [size]=\"'small'\"\n [icon]=\"subItemsOpen?'chevron-up':'chevron-down'\"\n *ngIf=\"subItems.length>0\"\n (click)=\"toggleSubItemsView()\">\n </fw-icon-button>\n </div>\n </div>\n</div>\n<div class=\"item-subitems\">\n <ng-content select=\"fw-menu-sub-item\"></ng-content>\n</div>\n", styles: [":host{position:relative;display:flex;flex-direction:column}:host>div{display:flex;flex:1;text-decoration:none;max-width:100%}:host h4{text-overflow:ellipsis}:host:hover:not(.selected) .menu-item:not(.disabled),:host.focused .menu-item:not(.disabled){background-color:var(--slate-hover);cursor:pointer}:host:hover:not(.selected) .menu-item:not(.disabled) .menu-icon,:host.focused .menu-item:not(.disabled) .menu-icon{color:var(--primary-base)}:host:hover:not(.selected) .menu-item:not(.disabled) .menu-text h4,:host.focused .menu-item:not(.disabled) .menu-text h4{color:var(--typography-base)}:host.selected .menu-item{background-color:var(--primary-hover);cursor:pointer}:host.selected .menu-item .menu-icon{color:var(--primary-base)}:host.selected .menu-item .menu-text h4{color:var(--typography-base)}:host.collapsed .menu-item{container-name:menuitem;container-type:size}:host .menu-item{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;flex:1;gap:8px;padding:8px;margin:1px 4px;border-radius:4px;color:var(--typography-muted);min-height:40px;width:stretch}:host .menu-item .item-checkbox:empty{display:none}:host .menu-item .item-radiobutton{padding:0}:host .menu-item .item-radiobutton:empty{display:none}:host .menu-item .menu-icon{font-size:18px;min-width:18px;width:18px;white-space:nowrap}:host .menu-item .menu-text{flex:1;overflow:hidden;padding:2px 0}:host .menu-item .menu-text h4{margin:0;color:var(--typography-muted);white-space:nowrap;overflow:hidden}:host .menu-item .menu-text p{margin:0}:host .menu-item .menu-text p.description{color:var(--typography-light)}:host .menu-item .key-text{display:flex;align-items:center;gap:8px;color:var(--typography-light)}:host .menu-item .key-text fw-icon-button{min-height:22px!important;min-width:22px!important;width:22px!important}:host .menu-item.size-compact{min-height:32px}:host .menu-item.size-compact .menu-text .description{display:none}:host .menu-item.disabled{opacity:.4;cursor:not-allowed}:host .item-subitems{display:flex;flex-direction:column}@container menuitem (max-width: 60px){.menu-item{gap:0}.menu-item .menu-text{opacity:0}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.FwIconButtonComponent, selector: "fw-icon-button", inputs: ["color", "icon", "size", "disabled", "selected"] }, { kind: "component", type: i3.FwIconComponent, selector: "fw-icon", inputs: ["size", "color"] }, { kind: "component", type: i4.FwCheckboxComponent, selector: "fw-checkbox", inputs: ["name", "disabled", "size", "color", "title", "focused", "checked"], outputs: ["change"] }, { kind: "component", type: i5.FwRadioComponent, selector: "fw-radio-button", inputs: ["value", "checked", "group", "disabled", "size", "color", "title", "focused"], outputs: ["checkedChange", "change"] }] }); }
93
93
  }
94
94
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwMenuItemComponent, decorators: [{
95
95
  type: Component,
@@ -1,67 +1,69 @@
1
- import { Component, ContentChildren, EventEmitter, HostBinding, Input, Output, } from '@angular/core';
1
+ import { Component, contentChildren, DestroyRef, effect, EventEmitter, HostBinding, inject, Input, Output, signal, } from '@angular/core';
2
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
2
3
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
+ import { DomSanitizer } from '@angular/platform-browser';
3
5
  import { FwRadioComponent } from './radio.component';
4
6
  import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/platform-browser";
6
7
  export class FwRadioGroupComponent {
7
8
  get style() {
8
- let direction = 'row';
9
- if (this.direction === 'vertical') {
10
- direction = 'column';
11
- }
9
+ const dir = this.direction === 'vertical' ? 'column' : 'row';
12
10
  return this.sanitizer.bypassSecurityTrustStyle(`
13
- display: flex;
14
- flex-direction: ${direction};
15
- `);
11
+ display: flex;
12
+ flex-direction: ${dir};
13
+ `);
16
14
  }
17
- constructor(sanitizer) {
18
- this.sanitizer = sanitizer;
15
+ constructor() {
19
16
  this.direction = 'horizontal';
20
17
  // eslint-disable-next-line @angular-eslint/no-output-native
21
18
  this.change = new EventEmitter();
22
- this.subscriptions = [];
19
+ this.sanitizer = inject(DomSanitizer);
20
+ this.dr = inject(DestroyRef);
21
+ this.radioButtons = contentChildren(FwRadioComponent);
22
+ this._value = signal(null);
23
+ this.radioSubs = new Map();
23
24
  this.onTouch = () => {
24
25
  };
25
26
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
26
27
  this.onChange = (value) => {
27
28
  };
28
- }
29
- ngOnChanges() {
30
- this.updateLayout();
31
- }
32
- ngOnDestroy() {
33
- for (const subscription of this.subscriptions) {
34
- subscription.unsubscribe();
35
- }
36
- }
37
- ngAfterContentInit() {
38
- if (this.radioButtons) {
39
- this.radioButtons.forEach(rb => {
40
- const sub = rb.change.subscribe((value) => this.handleChange(value));
41
- this.subscriptions.push(sub);
42
- });
43
- }
44
- this.updateLayout();
45
- }
46
- updateLayout() {
47
- if (this.radioButtons) {
48
- this.radioButtons.forEach(rb => {
49
- rb.group = this.group;
50
- rb.checked = rb.value === this.value;
51
- if (this.color) {
52
- rb.color = this.color;
29
+ effect(() => {
30
+ const radios = this.radioButtons();
31
+ const value = this._value();
32
+ const disabled = this.disabled;
33
+ const group = this.group;
34
+ const color = this.color;
35
+ const size = this.size;
36
+ radios.forEach(rb => {
37
+ rb.group = group;
38
+ rb.checked.set(rb.value() === value);
39
+ rb.disabled = Boolean(disabled);
40
+ if (color) {
41
+ rb.color = color;
42
+ }
43
+ if (size) {
44
+ rb.size = size;
53
45
  }
54
- if (this.size) {
55
- rb.size = this.size;
46
+ });
47
+ });
48
+ effect(() => {
49
+ const radios = this.radioButtons();
50
+ this.radioSubs.forEach((sub, rb) => {
51
+ if (!radios.includes(rb)) {
52
+ sub.unsubscribe();
53
+ this.radioSubs.delete(rb);
56
54
  }
57
- if (this.disabled !== undefined) {
58
- rb.disabled = this.disabled;
55
+ });
56
+ radios.forEach(rb => {
57
+ if (!this.radioSubs.has(rb)) {
58
+ const sub = rb.change.pipe(takeUntilDestroyed(this.dr)).subscribe(value => this.handleChange(value));
59
+ this.radioSubs.set(rb, sub);
59
60
  }
60
61
  });
61
- }
62
+ });
62
63
  }
63
64
  writeValue(value) {
64
65
  this.value = value;
66
+ this._value.set(value);
65
67
  }
66
68
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
67
69
  registerOnChange(fn) {
@@ -76,15 +78,16 @@ export class FwRadioGroupComponent {
76
78
  }
77
79
  handleChange(value) {
78
80
  this.value = value;
81
+ this._value.set(value);
79
82
  this.onChange(value);
80
83
  this.change.emit(this.value);
81
84
  }
82
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwRadioGroupComponent, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
83
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FwRadioGroupComponent, selector: "fw-radio-group", inputs: { value: "value", group: "group", color: "color", size: "size", disabled: "disabled", direction: "direction" }, outputs: { change: "change" }, host: { properties: { "style": "this.style" } }, providers: [{
85
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwRadioGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
86
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "17.3.12", type: FwRadioGroupComponent, selector: "fw-radio-group", inputs: { value: "value", group: "group", color: "color", size: "size", disabled: "disabled", direction: "direction" }, outputs: { change: "change" }, host: { properties: { "style": "this.style" } }, providers: [{
84
87
  provide: NG_VALUE_ACCESSOR,
85
88
  useExisting: FwRadioGroupComponent,
86
89
  multi: true,
87
- }], queries: [{ propertyName: "radioButtons", predicate: FwRadioComponent }], usesOnChanges: true, ngImport: i0, template: '<ng-content select="fw-radio-button"></ng-content>', isInline: true }); }
90
+ }], queries: [{ propertyName: "radioButtons", predicate: FwRadioComponent, isSignal: true }], ngImport: i0, template: '<ng-content select="fw-radio-button"></ng-content>', isInline: true }); }
88
91
  }
89
92
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwRadioGroupComponent, decorators: [{
90
93
  type: Component,
@@ -93,7 +96,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
93
96
  useExisting: FwRadioGroupComponent,
94
97
  multi: true,
95
98
  }] }]
96
- }], ctorParameters: () => [{ type: i1.DomSanitizer }], propDecorators: { value: [{
99
+ }], ctorParameters: () => [], propDecorators: { value: [{
97
100
  type: Input
98
101
  }], group: [{
99
102
  type: Input
@@ -107,11 +110,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
107
110
  type: Input
108
111
  }], change: [{
109
112
  type: Output
110
- }], radioButtons: [{
111
- type: ContentChildren,
112
- args: [FwRadioComponent]
113
113
  }], style: [{
114
114
  type: HostBinding,
115
115
  args: ['style']
116
116
  }] } });
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmFkaW8vcmFkaW8tZ3JvdXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxTQUFTLEVBQ1QsZUFBZSxFQUNmLFlBQVksRUFDWixXQUFXLEVBQ1gsS0FBSyxFQUdMLE1BQU0sR0FFVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJekUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7OztBQVlyRCxNQUFNLE9BQU8scUJBQXFCO0lBVzlCLElBQTBCLEtBQUs7UUFDM0IsSUFBSSxTQUFTLEdBQVcsS0FBSyxDQUFDO1FBQzlCLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxVQUFVLEVBQUUsQ0FBQztZQUNoQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsd0JBQXdCLENBQUM7O3dCQUUvQixTQUFTO0dBQzlCLENBQUMsQ0FBQztJQUNELENBQUM7SUFJRCxZQUFvQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO1FBbEJsQyxjQUFTLEdBQStCLFlBQVksQ0FBQztRQUM5RCw0REFBNEQ7UUFDbEQsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFjdEMsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBNENwQyxZQUFPLEdBQUcsR0FBUyxFQUFFO1FBQzVCLENBQUMsQ0FBQztRQUNGLDZEQUE2RDtRQUN0RCxhQUFRLEdBQUcsQ0FBQyxLQUFhLEVBQVEsRUFBRTtRQUMxQyxDQUFDLENBQUM7SUE3Q0YsQ0FBQztJQUdELFdBQVc7UUFDUCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVE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SztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUksTUFBTTtzQkFBZixNQUFNO2dCQUM0QixZQUFZO3NCQUE5QyxlQUFlO3VCQUFDLGdCQUFnQjtnQkFFUCxLQUFLO3NCQUE5QixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVN0eWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRndSYWRpb0NvbXBvbmVudCB9IGZyb20gJy4vcmFkaW8uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmdy1yYWRpby1ncm91cCcsXG4gICAgc3R5bGVVcmxzOiBbXSxcbiAgICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50IHNlbGVjdD1cImZ3LXJhZGlvLWJ1dHRvblwiPjwvbmctY29udGVudD4nLFxuICAgIHByb3ZpZGVyczogW3tcbiAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgIHVzZUV4aXN0aW5nOiBGd1JhZGlvR3JvdXBDb21wb25lbnQsXG4gICAgICAgIG11bHRpOiB0cnVlLFxuICAgIH1dLFxufSlcbmV4cG9ydCBjbGFzcyBGd1JhZGlvR3JvdXBDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIEFmdGVyQ29udGVudEluaXQge1xuICAgIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmc7XG4gICAgQElucHV0KCkgZ3JvdXA6IHN0cmluZztcbiAgICBASW5wdXQoKSBjb2xvcj86ICdwcmltYXJ5JyB8ICdzZWNvbmRhcnknIHwgJ2RlZmF1bHQnO1xuICAgIEBJbnB1dCgpIHNpemU/OiAnbWVkaXVtJyB8ICdjb21wYWN0JztcbiAgICBASW5wdXQoKSBkaXNhYmxlZD86IGJvb2xlYW47XG4gICAgQElucHV0KCkgZGlyZWN0aW9uPzogJ2hvcml6b250YWwnIHwgJ3ZlcnRpY2FsJyA9ICdob3Jpem9udGFsJztcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcbiAgICBAT3V0cHV0KCkgY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gICAgQENvbnRlbnRDaGlsZHJlbihGd1JhZGlvQ29tcG9uZW50KSByYWRpb0J1dHRvbnM6IFF1ZXJ5TGlzdDxGd1JhZGlvQ29tcG9uZW50PjtcblxuICAgIEBIb3N0QmluZGluZygnc3R5bGUnKSBnZXQgc3R5bGUoKTogU2FmZVN0eWxlIHtcbiAgICAgICAgbGV0IGRpcmVjdGlvbjogc3RyaW5nID0gJ3Jvdyc7XG4gICAgICAgIGlmICh0aGlzLmRpcmVjdGlvbiA9PT0gJ3ZlcnRpY2FsJykge1xuICAgICAgICAgICAgZGlyZWN0aW9uID0gJ2NvbHVtbic7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RTdHlsZShgXG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246ICR7ZGlyZWN0aW9ufTtcbiAgYCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge1xuICAgIH1cblxuXG4gICAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlTGF5b3V0KCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGZvciAoY29uc3Qgc3Vic2NyaXB0aW9uIG9mIHRoaXMuc3Vic2NyaXB0aW9ucykge1xuICAgICAgICAgICAgc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnJhZGlvQnV0dG9ucykge1xuICAgICAgICAgICAgdGhpcy5yYWRpb0J1dHRvbnMuZm9yRWFjaChyYiA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3ViID0gcmIuY2hhbmdlLnN1YnNjcmliZSgodmFsdWU6IHN0cmluZykgPT4gdGhpcy5oYW5kbGVDaGFuZ2UodmFsdWUpKTtcbiAgICAgICAgICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChzdWIpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy51cGRhdGVMYXlvdXQoKTtcbiAgICB9XG5cbiAgICB1cGRhdGVMYXlvdXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnJhZGlvQnV0dG9ucykge1xuICAgICAgICAgICAgdGhpcy5yYWRpb0J1dHRvbnMuZm9yRWFjaChyYiA9PiB7XG4gICAgICAgICAgICAgICAgcmIuZ3JvdXAgPSB0aGlzLmdyb3VwO1xuICAgICAgICAgICAgICAgIHJiLmNoZWNrZWQgPSByYi52YWx1ZSA9PT0gdGhpcy52YWx1ZTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jb2xvcikge1xuICAgICAgICAgICAgICAgICAgICByYi5jb2xvciA9IHRoaXMuY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnNpemUpIHtcbiAgICAgICAgICAgICAgICAgICAgcmIuc2l6ZSA9IHRoaXMuc2l6ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICByYi5kaXNhYmxlZCA9IHRoaXMuZGlzYWJsZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25Ub3VjaCA9ICgpOiB2b2lkID0+IHtcbiAgICB9O1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBwdWJsaWMgb25DaGFuZ2UgPSAodmFsdWU6IHN0cmluZyk6IHZvaWQgPT4ge1xuICAgIH07XG5cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoID0gZm47XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMuY2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XG4gICAgfVxufVxuIl19
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmFkaW8vcmFkaW8tZ3JvdXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixNQUFNLEVBQ04sWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxZQUFZLEVBQWEsTUFBTSwyQkFBMkIsQ0FBQztBQUdwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFZckQsTUFBTSxPQUFPLHFCQUFxQjtJQWlCOUIsSUFBMEIsS0FBSztRQUM3QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDN0QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHdCQUF3QixDQUFDOzswQkFFM0IsR0FBRztPQUN0QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7UUFuQlMsY0FBUyxHQUErQixZQUFZLENBQUM7UUFDOUQsNERBQTREO1FBQ2xELFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBRXRDLGNBQVMsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDakMsT0FBRSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUV0QixpQkFBWSxHQUFHLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ25ELFdB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SUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELGdCQUFnQixDQUFDLFVBQW1CO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO0lBQzdCLENBQUM7SUFFRCxZQUFZLENBQUMsS0FBYTtRQUN4QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDOytHQWxHUSxxQkFBcUI7bUdBQXJCLHFCQUFxQixpUEFObkIsQ0FBQztnQkFDUixPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUscUJBQXFCO2dCQUNsQyxLQUFLLEVBQUUsSUFBSTthQUNkLENBQUMsdURBZXVDLGdCQUFnQiw2Q0FwQi9DLG9EQUFvRDs7NEZBT3JELHFCQUFxQjtrQkFWakMsU0FBUzsrQkFDSSxnQkFBZ0IsWUFFaEIsb0RBQW9ELGFBQ25ELENBQUM7NEJBQ1IsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyx1QkFBdUI7NEJBQ2xDLEtBQUssRUFBRSxJQUFJO3lCQUNkLENBQUM7d0RBR08sS0FBSztzQkFBYixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFFSSxNQUFNO3NCQUFmLE1BQU07Z0JBU21CLEtBQUs7c0JBQTlCLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgY29udGVudENoaWxkcmVuLFxuICBEZXN0cm95UmVmLFxuICBlZmZlY3QsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIGluamVjdCxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVN0eWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRndSYWRpb0NvbXBvbmVudCB9IGZyb20gJy4vcmFkaW8uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmdy1yYWRpby1ncm91cCcsXG4gICAgc3R5bGVVcmxzOiBbXSxcbiAgICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50IHNlbGVjdD1cImZ3LXJhZGlvLWJ1dHRvblwiPjwvbmctY29udGVudD4nLFxuICAgIHByb3ZpZGVyczogW3tcbiAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgIHVzZUV4aXN0aW5nOiBGd1JhZGlvR3JvdXBDb21wb25lbnQsXG4gICAgICAgIG11bHRpOiB0cnVlLFxuICAgIH1dLFxufSlcbmV4cG9ydCBjbGFzcyBGd1JhZGlvR3JvdXBDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgQElucHV0KCkgdmFsdWU6IHN0cmluZztcbiAgICBASW5wdXQoKSBncm91cDogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGNvbG9yPzogJ3ByaW1hcnknIHwgJ3NlY29uZGFyeScgfCAnZGVmYXVsdCc7XG4gICAgQElucHV0KCkgc2l6ZT86ICdtZWRpdW0nIHwgJ2NvbXBhY3QnO1xuICAgIEBJbnB1dCgpIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBkaXJlY3Rpb24/OiAnaG9yaXpvbnRhbCcgfCAndmVydGljYWwnID0gJ2hvcml6b250YWwnO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW5hdGl2ZVxuICAgIEBPdXRwdXQoKSBjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAgIHByaXZhdGUgc2FuaXRpemVyID0gaW5qZWN0KERvbVNhbml0aXplcik7XG4gICAgcHJpdmF0ZSBkciA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICAgIHByb3RlY3RlZCByYWRpb0J1dHRvbnMgPSBjb250ZW50Q2hpbGRyZW4oRndSYWRpb0NvbXBvbmVudCk7XG4gICAgcHJpdmF0ZSBfdmFsdWUgPSBzaWduYWw8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG4gICAgcHJpdmF0ZSByYWRpb1N1YnMgPSBuZXcgTWFwPEZ3UmFkaW9Db21wb25lbnQsIFN1YnNjcmlwdGlvbj4oKTtcblxuICAgIEBIb3N0QmluZGluZygnc3R5bGUnKSBnZXQgc3R5bGUoKTogU2FmZVN0eWxlIHtcbiAgICAgIGNvbnN0IGRpciA9IHRoaXMuZGlyZWN0aW9uID09PSAndmVydGljYWwnID8gJ2NvbHVtbicgOiAncm93JztcbiAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0U3R5bGUoYFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogJHtkaXJ9O1xuICAgICAgYCk7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgICBjb25zdCByYWRpb3MgPSB0aGlzLnJhZGlvQnV0dG9ucygpO1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuX3ZhbHVlKCk7XG4gICAgICAgIGNvbnN0IGRpc2FibGVkID0gdGhpcy5kaXNhYmxlZDtcbiAgICAgICAgY29uc3QgZ3JvdXAgPSB0aGlzLmdyb3VwO1xuICAgICAgICBjb25zdCBjb2xvciA9IHRoaXMuY29sb3I7XG4gICAgICAgIGNvbnN0IHNpemUgPSB0aGlzLnNpemU7XG5cbiAgICAgICAgcmFkaW9zLmZvckVhY2gocmIgPT4ge1xuICAgICAgICAgIHJiLmdyb3VwID0gZ3JvdXA7XG4gICAgICAgICAgcmIuY2hlY2tlZC5zZXQocmIudmFsdWUoKSA9PT0gdmFsdWUpO1xuICAgICAgICAgIHJiLmRpc2FibGVkID0gQm9vbGVhbihkaXNhYmxlZCk7XG5cbiAgICAgICAgICBpZiAoY29sb3IpIHtcbiAgICAgICAgICAgIHJiLmNvbG9yID0gY29sb3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHNpemUpIHtcbiAgICAgICAgICAgIHJiLnNpemUgPSBzaXplO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcblxuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBjb25zdCByYWRpb3MgPSB0aGlzLnJhZGlvQnV0dG9ucygpO1xuXG4gICAgICB0aGlzLnJhZGlvU3Vicy5mb3JFYWNoKChzdWIsIHJiKSA9PiB7XG4gICAgICAgIGlmICghcmFkaW9zLmluY2x1ZGVzKHJiKSkge1xuICAgICAgICAgIHN1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgIHRoaXMucmFkaW9TdWJzLmRlbGV0ZShyYik7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICByYWRpb3MuZm9yRWFjaChyYiA9PiB7XG4gICAgICAgIGlmICghdGhpcy5yYWRpb1N1YnMuaGFzKHJiKSkge1xuICAgICAgICAgIGNvbnN0IHN1YiA9IHJiLmNoYW5nZS5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRyKSkuc3Vic2NyaWJlKHZhbHVlID0+IHRoaXMuaGFuZGxlQ2hhbmdlKHZhbHVlKSk7XG4gICAgICAgICAgdGhpcy5yYWRpb1N1YnMuc2V0KHJiLCBzdWIpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gICAgcHVibGljIG9uVG91Y2ggPSAoKTogdm9pZCA9PiB7XG4gICAgfTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgcHVibGljIG9uQ2hhbmdlID0gKHZhbHVlOiBzdHJpbmcpOiB2b2lkID0+IHtcbiAgICB9O1xuXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICB0aGlzLl92YWx1ZS5zZXQodmFsdWUpO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgICB0aGlzLm9uVG91Y2ggPSBmbjtcbiAgICB9XG5cbiAgICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICB0aGlzLl92YWx1ZS5zZXQodmFsdWUpO1xuICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XG4gICAgICB0aGlzLmNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,9 +1,10 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
1
+ import { Component, EventEmitter, Input, input, model, Output } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/common";
4
4
  export class FwRadioComponent {
5
5
  constructor() {
6
- this.checked = false;
6
+ this.value = input();
7
+ this.checked = model(false);
7
8
  this.disabled = false;
8
9
  this.size = 'medium';
9
10
  this.color = 'default';
@@ -24,16 +25,12 @@ export class FwRadioComponent {
24
25
  this.change.emit(event.target.value);
25
26
  }
26
27
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwRadioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
27
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FwRadioComponent, selector: "fw-radio-button", inputs: { checked: "checked", value: "value", group: "group", disabled: "disabled", size: "size", color: "color", title: "title", focused: "focused" }, outputs: { change: "change" }, ngImport: i0, template: "<div [ngClass]=\"['fw-radio-wrapper', disabled?'disabled':'']\">\n <div [ngClass]=\"radioStyles\">\n <input\n type=\"radio\"\n class=\"fw-radio\"\n [id]=\"group+value\"\n [value]=\"value\"\n [checked]=\"checked\"\n [name]=\"group\"\n [disabled]=\"disabled\"\n (change)=\"handleChange($event)\"\n (focusout)=\"focused=false\"\n (focusin)=\"focused=true\"\n />\n </div>\n <label *ngIf=\"title\" [htmlFor]=\"group+value\" class=\"vision-h4\">{{ title }}\n <ng-content></ng-content>\n </label>\n</div>\n", styles: [":host .fw-radio-wrapper{display:flex;align-items:center;width:fit-content;cursor:pointer}:host .fw-radio-wrapper label{margin:0 6px 0 0;color:var(--typography-base)}:host .fw-radio-wrapper label:empty{display:none}:host .fw-radio-wrapper .fw-radio{height:36px;width:36px;display:flex;align-items:center;justify-content:center;border-radius:50%}:host .fw-radio-wrapper .fw-radio:hover{background-color:var(--slate-hover)}:host .fw-radio-wrapper .fw-radio.focused{background-color:var(--slate-focus)}:host .fw-radio-wrapper .fw-radio input[type=radio]{appearance:none;display:inline-block;width:20px;height:20px;margin:6px;background-clip:content-box;border:2px solid var(--typography-light);background-color:transparent;border-radius:50%;cursor:pointer}:host .fw-radio-wrapper .fw-radio input[type=radio]:checked{width:16px;height:16px;background-color:var(--typography-light);outline:2px solid var(--typography-light);border:2px solid white;margin:8px}:host .fw-radio-wrapper .fw-radio.primary.focused{background-color:var(--primary-focus)}:host .fw-radio-wrapper .fw-radio.primary.focused input[type=radio]{border:2px solid var(--primary-base)}:host .fw-radio-wrapper .fw-radio.primary input[type=radio]:checked{border:2px solid white;background-color:var(--primary-base);outline:2px solid var(--primary-base)}:host .fw-radio-wrapper .fw-radio.secondary.focused{background-color:var(--secondary-focus)}:host .fw-radio-wrapper .fw-radio.secondary.focused input[type=radio]{border:2px solid var(--secondary-base)}:host .fw-radio-wrapper .fw-radio.secondary input[type=radio]:checked{border:2px solid white;background-color:var(--secondary-base);outline:2px solid var(--secondary-base)}:host .fw-radio-wrapper .fw-radio.disabled{cursor:not-allowed}:host .fw-radio-wrapper .fw-radio.disabled input[type=radio]:checked{border:2px solid white;background-color:var(--typography-light);outline:2px solid var(--typography-light)}:host .fw-radio-wrapper .fw-radio.compact{width:30px;height:30px}:host .fw-radio-wrapper .fw-radio.compact input[type=radio]{width:18px;height:18px;margin:5px}:host .fw-radio-wrapper .fw-radio.compact input[type=radio]:checked{width:14px;height:14px;margin:7px}:host .fw-radio-wrapper.disabled{cursor:not-allowed;opacity:.4}:host .fw-radio-wrapper.disabled label{color:var(--typography-light)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
28
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: FwRadioComponent, selector: "fw-radio-button", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, group: { classPropertyName: "group", publicName: "group", isSignal: false, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: false, isRequired: false, transformFunction: null }, focused: { classPropertyName: "focused", publicName: "focused", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { checked: "checkedChange", change: "change" }, ngImport: i0, template: "<div [ngClass]=\"['fw-radio-wrapper', disabled?'disabled':'']\">\n <div [ngClass]=\"radioStyles\">\n <input\n type=\"radio\"\n class=\"fw-radio\"\n [id]=\"group+value()\"\n [value]=\"value()\"\n [checked]=\"checked()\"\n [name]=\"group\"\n [disabled]=\"disabled\"\n (change)=\"handleChange($event)\"\n (focusout)=\"focused=false\"\n (focusin)=\"focused=true\"\n />\n </div>\n\n @if (title) {\n <label [htmlFor]=\"group+value()\" class=\"vision-h4\">{{ title }}\n <ng-content></ng-content>\n </label>\n }\n</div>\n", styles: [":host .fw-radio-wrapper{display:flex;align-items:center;width:fit-content;cursor:pointer}:host .fw-radio-wrapper label{margin:0 6px 0 0;color:var(--typography-base)}:host .fw-radio-wrapper label:empty{display:none}:host .fw-radio-wrapper .fw-radio{height:36px;width:36px;display:flex;align-items:center;justify-content:center;border-radius:50%}:host .fw-radio-wrapper .fw-radio:hover{background-color:var(--slate-hover)}:host .fw-radio-wrapper .fw-radio.focused{background-color:var(--slate-focus)}:host .fw-radio-wrapper .fw-radio input[type=radio]{appearance:none;display:inline-block;width:20px;height:20px;margin:6px;background-clip:content-box;border:2px solid var(--typography-light);background-color:transparent;border-radius:50%;cursor:pointer}:host .fw-radio-wrapper .fw-radio input[type=radio]:checked{width:16px;height:16px;background-color:var(--typography-light);outline:2px solid var(--typography-light);border:2px solid white;margin:8px}:host .fw-radio-wrapper .fw-radio.primary.focused{background-color:var(--primary-focus)}:host .fw-radio-wrapper .fw-radio.primary.focused input[type=radio]{border:2px solid var(--primary-base)}:host .fw-radio-wrapper .fw-radio.primary input[type=radio]:checked{border:2px solid white;background-color:var(--primary-base);outline:2px solid var(--primary-base)}:host .fw-radio-wrapper .fw-radio.secondary.focused{background-color:var(--secondary-focus)}:host .fw-radio-wrapper .fw-radio.secondary.focused input[type=radio]{border:2px solid var(--secondary-base)}:host .fw-radio-wrapper .fw-radio.secondary input[type=radio]:checked{border:2px solid white;background-color:var(--secondary-base);outline:2px solid var(--secondary-base)}:host .fw-radio-wrapper .fw-radio.disabled{cursor:not-allowed}:host .fw-radio-wrapper .fw-radio.disabled input[type=radio]:checked{border:2px solid white;background-color:var(--typography-light);outline:2px solid var(--typography-light)}:host .fw-radio-wrapper .fw-radio.compact{width:30px;height:30px}:host .fw-radio-wrapper .fw-radio.compact input[type=radio]{width:18px;height:18px;margin:5px}:host .fw-radio-wrapper .fw-radio.compact input[type=radio]:checked{width:14px;height:14px;margin:7px}:host .fw-radio-wrapper.disabled{cursor:not-allowed;opacity:.4}:host .fw-radio-wrapper.disabled label{color:var(--typography-light)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
28
29
  }
29
30
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FwRadioComponent, decorators: [{
30
31
  type: Component,
31
- args: [{ selector: 'fw-radio-button', template: "<div [ngClass]=\"['fw-radio-wrapper', disabled?'disabled':'']\">\n <div [ngClass]=\"radioStyles\">\n <input\n type=\"radio\"\n class=\"fw-radio\"\n [id]=\"group+value\"\n [value]=\"value\"\n [checked]=\"checked\"\n [name]=\"group\"\n [disabled]=\"disabled\"\n (change)=\"handleChange($event)\"\n (focusout)=\"focused=false\"\n (focusin)=\"focused=true\"\n />\n </div>\n <label *ngIf=\"title\" [htmlFor]=\"group+value\" class=\"vision-h4\">{{ title }}\n <ng-content></ng-content>\n </label>\n</div>\n", styles: [":host .fw-radio-wrapper{display:flex;align-items:center;width:fit-content;cursor:pointer}:host .fw-radio-wrapper label{margin:0 6px 0 0;color:var(--typography-base)}:host .fw-radio-wrapper label:empty{display:none}:host .fw-radio-wrapper .fw-radio{height:36px;width:36px;display:flex;align-items:center;justify-content:center;border-radius:50%}:host .fw-radio-wrapper .fw-radio:hover{background-color:var(--slate-hover)}:host .fw-radio-wrapper .fw-radio.focused{background-color:var(--slate-focus)}:host .fw-radio-wrapper .fw-radio input[type=radio]{appearance:none;display:inline-block;width:20px;height:20px;margin:6px;background-clip:content-box;border:2px solid var(--typography-light);background-color:transparent;border-radius:50%;cursor:pointer}:host .fw-radio-wrapper .fw-radio input[type=radio]:checked{width:16px;height:16px;background-color:var(--typography-light);outline:2px solid var(--typography-light);border:2px solid white;margin:8px}:host .fw-radio-wrapper .fw-radio.primary.focused{background-color:var(--primary-focus)}:host .fw-radio-wrapper .fw-radio.primary.focused input[type=radio]{border:2px solid var(--primary-base)}:host .fw-radio-wrapper .fw-radio.primary input[type=radio]:checked{border:2px solid white;background-color:var(--primary-base);outline:2px solid var(--primary-base)}:host .fw-radio-wrapper .fw-radio.secondary.focused{background-color:var(--secondary-focus)}:host .fw-radio-wrapper .fw-radio.secondary.focused input[type=radio]{border:2px solid var(--secondary-base)}:host .fw-radio-wrapper .fw-radio.secondary input[type=radio]:checked{border:2px solid white;background-color:var(--secondary-base);outline:2px solid var(--secondary-base)}:host .fw-radio-wrapper .fw-radio.disabled{cursor:not-allowed}:host .fw-radio-wrapper .fw-radio.disabled input[type=radio]:checked{border:2px solid white;background-color:var(--typography-light);outline:2px solid var(--typography-light)}:host .fw-radio-wrapper .fw-radio.compact{width:30px;height:30px}:host .fw-radio-wrapper .fw-radio.compact input[type=radio]{width:18px;height:18px;margin:5px}:host .fw-radio-wrapper .fw-radio.compact input[type=radio]:checked{width:14px;height:14px;margin:7px}:host .fw-radio-wrapper.disabled{cursor:not-allowed;opacity:.4}:host .fw-radio-wrapper.disabled label{color:var(--typography-light)}\n"] }]
32
- }], propDecorators: { checked: [{
33
- type: Input
34
- }], value: [{
35
- type: Input
36
- }], group: [{
32
+ args: [{ selector: 'fw-radio-button', template: "<div [ngClass]=\"['fw-radio-wrapper', disabled?'disabled':'']\">\n <div [ngClass]=\"radioStyles\">\n <input\n type=\"radio\"\n class=\"fw-radio\"\n [id]=\"group+value()\"\n [value]=\"value()\"\n [checked]=\"checked()\"\n [name]=\"group\"\n [disabled]=\"disabled\"\n (change)=\"handleChange($event)\"\n (focusout)=\"focused=false\"\n (focusin)=\"focused=true\"\n />\n </div>\n\n @if (title) {\n <label [htmlFor]=\"group+value()\" class=\"vision-h4\">{{ title }}\n <ng-content></ng-content>\n </label>\n }\n</div>\n", styles: [":host .fw-radio-wrapper{display:flex;align-items:center;width:fit-content;cursor:pointer}:host .fw-radio-wrapper label{margin:0 6px 0 0;color:var(--typography-base)}:host .fw-radio-wrapper label:empty{display:none}:host .fw-radio-wrapper .fw-radio{height:36px;width:36px;display:flex;align-items:center;justify-content:center;border-radius:50%}:host .fw-radio-wrapper .fw-radio:hover{background-color:var(--slate-hover)}:host .fw-radio-wrapper .fw-radio.focused{background-color:var(--slate-focus)}:host .fw-radio-wrapper .fw-radio input[type=radio]{appearance:none;display:inline-block;width:20px;height:20px;margin:6px;background-clip:content-box;border:2px solid var(--typography-light);background-color:transparent;border-radius:50%;cursor:pointer}:host .fw-radio-wrapper .fw-radio input[type=radio]:checked{width:16px;height:16px;background-color:var(--typography-light);outline:2px solid var(--typography-light);border:2px solid white;margin:8px}:host .fw-radio-wrapper .fw-radio.primary.focused{background-color:var(--primary-focus)}:host .fw-radio-wrapper .fw-radio.primary.focused input[type=radio]{border:2px solid var(--primary-base)}:host .fw-radio-wrapper .fw-radio.primary input[type=radio]:checked{border:2px solid white;background-color:var(--primary-base);outline:2px solid var(--primary-base)}:host .fw-radio-wrapper .fw-radio.secondary.focused{background-color:var(--secondary-focus)}:host .fw-radio-wrapper .fw-radio.secondary.focused input[type=radio]{border:2px solid var(--secondary-base)}:host .fw-radio-wrapper .fw-radio.secondary input[type=radio]:checked{border:2px solid white;background-color:var(--secondary-base);outline:2px solid var(--secondary-base)}:host .fw-radio-wrapper .fw-radio.disabled{cursor:not-allowed}:host .fw-radio-wrapper .fw-radio.disabled input[type=radio]:checked{border:2px solid white;background-color:var(--typography-light);outline:2px solid var(--typography-light)}:host .fw-radio-wrapper .fw-radio.compact{width:30px;height:30px}:host .fw-radio-wrapper .fw-radio.compact input[type=radio]{width:18px;height:18px;margin:5px}:host .fw-radio-wrapper .fw-radio.compact input[type=radio]:checked{width:14px;height:14px;margin:7px}:host .fw-radio-wrapper.disabled{cursor:not-allowed;opacity:.4}:host .fw-radio-wrapper.disabled label{color:var(--typography-light)}\n"] }]
33
+ }], propDecorators: { group: [{
37
34
  type: Input
38
35
  }], disabled: [{
39
36
  type: Input
@@ -48,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
48
45
  }], change: [{
49
46
  type: Output
50
47
  }] } });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmFkaW8vcmFkaW8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmFkaW8vcmFkaW8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT3ZFLE1BQU0sT0FBTyxnQkFBZ0I7SUFMN0I7UUFNYSxZQUFPLEdBQVksS0FBSyxDQUFDO1FBR3pCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsU0FBSSxHQUF5QixRQUFRLENBQUM7UUFDdEMsVUFBSyxHQUF3QyxTQUFTLENBQUM7UUFFdkQsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUNsQyw0REFBNEQ7UUFDbEQsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7S0FlakQ7SUFiRyxJQUFJLFdBQVc7UUFDWCxPQUFPO1lBQ0gsVUFBVTtZQUNWLElBQUksQ0FBQyxLQUFLO1lBQ1YsSUFBSSxDQUFDLElBQUk7WUFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFO1NBQ2xDLENBQUM7SUFDTixDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQUs7UUFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pDLENBQUM7K0dBeEJRLGdCQUFnQjttR0FBaEIsZ0JBQWdCLDhPQ1A3QixvakJBbUJBOzs0RkRaYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0ksaUJBQWlCOzhCQUtsQixPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFFSSxNQUFNO3NCQUFmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2Z3LXJhZGlvLWJ1dHRvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3JhZGlvLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9yYWRpby5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBGd1JhZGlvQ29tcG9uZW50IHtcbiAgICBASW5wdXQoKSBjaGVja2VkOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgdmFsdWU6IHN0cmluZztcbiAgICBASW5wdXQoKSBncm91cDogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgc2l6ZTogJ21lZGl1bScgfCAnY29tcGFjdCcgPSAnbWVkaXVtJztcbiAgICBASW5wdXQoKSBjb2xvcjogJ2RlZmF1bHQnIHwgJ3ByaW1hcnknIHwgJ3NlY29uZGFyeScgPSAnZGVmYXVsdCc7XG4gICAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcbiAgICBASW5wdXQoKSBmb2N1c2VkOiBib29sZWFuID0gZmFsc2U7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtbmF0aXZlXG4gICAgQE91dHB1dCgpIGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgZ2V0IHJhZGlvU3R5bGVzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICdmdy1yYWRpbycsXG4gICAgICAgICAgICB0aGlzLmNvbG9yLFxuICAgICAgICAgICAgdGhpcy5zaXplLFxuICAgICAgICAgICAgdGhpcy5mb2N1c2VkID8gJ2ZvY3VzZWQnIDogJycsXG4gICAgICAgICAgICB0aGlzLmRpc2FibGVkID8gJ2Rpc2FibGVkJyA6ICcnLFxuICAgICAgICBdO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZShldmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoYW5nZS5lbWl0KGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgfVxufVxuIiwiPGRpdiBbbmdDbGFzc109XCJbJ2Z3LXJhZGlvLXdyYXBwZXInLCBkaXNhYmxlZD8nZGlzYWJsZWQnOicnXVwiPlxuICA8ZGl2IFtuZ0NsYXNzXT1cInJhZGlvU3R5bGVzXCI+XG4gICAgPGlucHV0XG4gICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgY2xhc3M9XCJmdy1yYWRpb1wiXG4gICAgICBbaWRdPVwiZ3JvdXArdmFsdWVcIlxuICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcbiAgICAgIFtjaGVja2VkXT1cImNoZWNrZWRcIlxuICAgICAgW25hbWVdPVwiZ3JvdXBcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIChjaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgKGZvY3Vzb3V0KT1cImZvY3VzZWQ9ZmFsc2VcIlxuICAgICAgKGZvY3VzaW4pPVwiZm9jdXNlZD10cnVlXCJcbiAgICAvPlxuICA8L2Rpdj5cbiAgPGxhYmVsICpuZ0lmPVwidGl0bGVcIiBbaHRtbEZvcl09XCJncm91cCt2YWx1ZVwiIGNsYXNzPVwidmlzaW9uLWg0XCI+e3sgdGl0bGUgfX1cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvbGFiZWw+XG48L2Rpdj5cbiJdfQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmFkaW8vcmFkaW8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmFkaW8vcmFkaW8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPcEYsTUFBTSxPQUFPLGdCQUFnQjtJQUw3QjtRQU1XLFVBQUssR0FBRyxLQUFLLEVBQVUsQ0FBQztRQUN4QixZQUFPLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBR3JCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsU0FBSSxHQUF5QixRQUFRLENBQUM7UUFDdEMsVUFBSyxHQUF3QyxTQUFTLENBQUM7UUFFdkQsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUNsQyw0REFBNEQ7UUFDbEQsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7S0FlakQ7SUFiRyxJQUFJLFdBQVc7UUFDWCxPQUFPO1lBQ0gsVUFBVTtZQUNWLElBQUksQ0FBQyxLQUFLO1lBQ1YsSUFBSSxDQUFDLElBQUk7WUFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFO1NBQ2xDLENBQUM7SUFDTixDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQUs7UUFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pDLENBQUM7K0dBekJRLGdCQUFnQjttR0FBaEIsZ0JBQWdCLG9sQ0NQN0IsMGtCQXNCQTs7NEZEZmEsZ0JBQWdCO2tCQUw1QixTQUFTOytCQUNJLGlCQUFpQjs4QkFRbEIsS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUVJLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgaW5wdXQsbW9kZWwsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2Z3LXJhZGlvLWJ1dHRvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3JhZGlvLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9yYWRpby5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBGd1JhZGlvQ29tcG9uZW50IHtcbiAgICBwdWJsaWMgdmFsdWUgPSBpbnB1dDxzdHJpbmc+KCk7XG4gICAgcHVibGljIGNoZWNrZWQgPSBtb2RlbChmYWxzZSk7XG5cbiAgICBASW5wdXQoKSBncm91cDogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgc2l6ZTogJ21lZGl1bScgfCAnY29tcGFjdCcgPSAnbWVkaXVtJztcbiAgICBASW5wdXQoKSBjb2xvcjogJ2RlZmF1bHQnIHwgJ3ByaW1hcnknIHwgJ3NlY29uZGFyeScgPSAnZGVmYXVsdCc7XG4gICAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcbiAgICBASW5wdXQoKSBmb2N1c2VkOiBib29sZWFuID0gZmFsc2U7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtbmF0aXZlXG4gICAgQE91dHB1dCgpIGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gICAgZ2V0IHJhZGlvU3R5bGVzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICdmdy1yYWRpbycsXG4gICAgICAgICAgICB0aGlzLmNvbG9yLFxuICAgICAgICAgICAgdGhpcy5zaXplLFxuICAgICAgICAgICAgdGhpcy5mb2N1c2VkID8gJ2ZvY3VzZWQnIDogJycsXG4gICAgICAgICAgICB0aGlzLmRpc2FibGVkID8gJ2Rpc2FibGVkJyA6ICcnLFxuICAgICAgICBdO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZShldmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoYW5nZS5lbWl0KGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgfVxufVxuIiwiPGRpdiBbbmdDbGFzc109XCJbJ2Z3LXJhZGlvLXdyYXBwZXInLCBkaXNhYmxlZD8nZGlzYWJsZWQnOicnXVwiPlxuICA8ZGl2IFtuZ0NsYXNzXT1cInJhZGlvU3R5bGVzXCI+XG4gICAgPGlucHV0XG4gICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgY2xhc3M9XCJmdy1yYWRpb1wiXG4gICAgICBbaWRdPVwiZ3JvdXArdmFsdWUoKVwiXG4gICAgICBbdmFsdWVdPVwidmFsdWUoKVwiXG4gICAgICBbY2hlY2tlZF09XCJjaGVja2VkKClcIlxuICAgICAgW25hbWVdPVwiZ3JvdXBcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIChjaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgKGZvY3Vzb3V0KT1cImZvY3VzZWQ9ZmFsc2VcIlxuICAgICAgKGZvY3VzaW4pPVwiZm9jdXNlZD10cnVlXCJcbiAgICAvPlxuICA8L2Rpdj5cblxuICBAaWYgKHRpdGxlKSB7XG4gICAgPGxhYmVsIFtodG1sRm9yXT1cImdyb3VwK3ZhbHVlKClcIiBjbGFzcz1cInZpc2lvbi1oNFwiPnt7IHRpdGxlIH19XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9sYWJlbD5cbiAgfVxuPC9kaXY+XG4iXX0=