valtech-components 4.0.953 → 4.0.955

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.
@@ -38,23 +38,13 @@ export class MetadataListComponent {
38
38
  });
39
39
  this.hostClass = computed(() => {
40
40
  const p = this.resolvedProps();
41
- return [
42
- 'ml',
43
- p.dividers ? 'ml--dividers' : '',
44
- p.size === 'small' ? 'ml--small' : '',
45
- (p.columns ?? 1) > 1 ? 'ml--grid' : '',
46
- ]
47
- .filter(Boolean)
48
- .join(' ');
49
- });
50
- this.gridStyle = computed(() => {
51
- const cols = this.resolvedProps().columns ?? 1;
52
- return cols > 1 ? `repeat(${cols}, 1fr)` : null;
41
+ return ['ml', p.dividers ? 'ml--dividers' : '', p.size === 'small' ? 'ml--small' : ''].filter(Boolean).join(' ');
53
42
  });
43
+ this.gridStyle = computed(() => null);
54
44
  }
55
45
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MetadataListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
56
46
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: MetadataListComponent, isStandalone: true, selector: "val-metadata-list", inputs: { props: { classPropertyName: "props", publicName: "props", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
57
- <dl [class]="hostClass()" [style.grid-template-columns]="gridStyle()">
47
+ <dl [class]="hostClass()">
58
48
  @for (section of resolvedSections(); track $index) {
59
49
  @if (section.label) {
60
50
  <div class="ml__section-label">{{ section.label }}</div>
@@ -90,12 +80,12 @@ export class MetadataListComponent {
90
80
  }
91
81
  }
92
82
  </dl>
93
- `, isInline: true, styles: ["@charset \"UTF-8\";:host{display:block}.ml{display:flex;flex-direction:column}.ml--dividers .ml__row:not(:last-child){border-bottom:1px solid var(--ion-border-color, rgba(0, 0, 0, .08))}.ml--grid{display:grid}.ml__section-label{grid-column:1/-1;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ion-color-medium, #92949c);padding-top:20px;padding-bottom:4px}.ml__section-label:first-child{padding-top:0}.ml--small .ml__section-label{font-size:.625rem;padding-top:16px}.ml__row--chips{grid-column:1/-1}.ml__row{display:flex;align-items:flex-start;gap:10px;padding:8px 0;grid-column:1/-1}.ml--small .ml__row{padding:5px 0}.ml__item{display:flex;align-items:flex-start;gap:10px;padding:8px 0}.ml--small .ml__item{padding:5px 0}.ml__icon{flex-shrink:0;font-size:1.125rem;color:var(--ion-color-medium, #92949c);line-height:1;margin-top:1px;padding:5px 0}.ml--grid .ml__icon{padding:5px 0}.ml--small .ml__icon{font-size:1rem}.ml__icon--placeholder{width:1.125rem;height:1.125rem}.ml--small .ml__icon--placeholder{width:1rem;height:1rem}.ml__text{display:flex;flex-direction:column;gap:2px;min-width:0}.ml__cell{display:flex;flex-direction:column;gap:2px;min-width:0;padding:5px 0}.ml--grid .ml__cell{padding:5px 0}.ml__label{font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:var(--ion-color-medium, #92949c);line-height:1.3}.ml--small .ml__label{font-size:.625rem}.ml__value{font-size:.875rem;font-weight:600;color:var(--ion-text-color, #000);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ml--small .ml__value{font-size:.8125rem}.ml__chips{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0}.ml__chip{display:inline-block;font-size:.75rem;font-weight:500;line-height:1;padding:3px 8px;border-radius:100px;background:var(--ion-color-light, rgba(0, 0, 0, .06));color:var(--ion-text-color, #000)}.ml--small .ml__chip{font-size:.6875rem;padding:2px 7px}\n"], dependencies: [{ kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }] }); }
83
+ `, isInline: true, styles: ["@charset \"UTF-8\";:host{display:block}.ml{display:flex;flex-direction:column}.ml--dividers .ml__item:not(:last-child),.ml--dividers .ml__row:not(:last-child){border-bottom:1px solid var(--ion-border-color, rgba(0, 0, 0, .08))}.ml__section-label{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ion-color-medium, #92949c);padding-top:20px;padding-bottom:4px}.ml__section-label:first-child{padding-top:0}.ml--small .ml__section-label{font-size:.625rem;padding-top:16px}.ml__row{display:flex;align-items:flex-start;gap:10px;padding:8px 0;grid-column:1/-1}.ml--small .ml__row{padding:5px 0}.ml__item{display:flex;align-items:flex-start;gap:10px;padding:12px 0;width:100%}.ml--small .ml__item{padding:8px 0}.ml__icon{flex-shrink:0;font-size:1.125rem;color:var(--ion-color-medium, #92949c);line-height:1;margin-top:1px;padding:5px 0}.ml--grid .ml__icon{padding:5px 0}.ml--small .ml__icon{font-size:1rem}.ml__icon--placeholder{width:1.125rem;height:1.125rem}.ml--small .ml__icon--placeholder{width:1rem;height:1rem}.ml__text{display:flex;flex-direction:column;gap:2px;min-width:0}.ml__cell{display:flex;flex-direction:column;gap:2px;min-width:0;padding:5px 0}.ml--grid .ml__cell{padding:5px 0}.ml__label{font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:var(--ion-color-medium, #92949c);line-height:1.3}.ml--small .ml__label{font-size:.625rem}.ml__value{font-size:.875rem;font-weight:600;color:var(--ion-text-color, #000);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ml--small .ml__value{font-size:.8125rem}.ml__chips{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0}.ml__chip{display:inline-block;font-size:.75rem;font-weight:500;line-height:1;padding:3px 8px;border-radius:100px;background:var(--ion-color-light, rgba(0, 0, 0, .06));color:var(--ion-text-color, #000)}.ml--small .ml__chip{font-size:.6875rem;padding:2px 7px}\n"], dependencies: [{ kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }] }); }
94
84
  }
95
85
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MetadataListComponent, decorators: [{
96
86
  type: Component,
97
87
  args: [{ selector: 'val-metadata-list', standalone: true, imports: [IonIcon], template: `
98
- <dl [class]="hostClass()" [style.grid-template-columns]="gridStyle()">
88
+ <dl [class]="hostClass()">
99
89
  @for (section of resolvedSections(); track $index) {
100
90
  @if (section.label) {
101
91
  <div class="ml__section-label">{{ section.label }}</div>
@@ -131,6 +121,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
131
121
  }
132
122
  }
133
123
  </dl>
134
- `, styles: ["@charset \"UTF-8\";:host{display:block}.ml{display:flex;flex-direction:column}.ml--dividers .ml__row:not(:last-child){border-bottom:1px solid var(--ion-border-color, rgba(0, 0, 0, .08))}.ml--grid{display:grid}.ml__section-label{grid-column:1/-1;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ion-color-medium, #92949c);padding-top:20px;padding-bottom:4px}.ml__section-label:first-child{padding-top:0}.ml--small .ml__section-label{font-size:.625rem;padding-top:16px}.ml__row--chips{grid-column:1/-1}.ml__row{display:flex;align-items:flex-start;gap:10px;padding:8px 0;grid-column:1/-1}.ml--small .ml__row{padding:5px 0}.ml__item{display:flex;align-items:flex-start;gap:10px;padding:8px 0}.ml--small .ml__item{padding:5px 0}.ml__icon{flex-shrink:0;font-size:1.125rem;color:var(--ion-color-medium, #92949c);line-height:1;margin-top:1px;padding:5px 0}.ml--grid .ml__icon{padding:5px 0}.ml--small .ml__icon{font-size:1rem}.ml__icon--placeholder{width:1.125rem;height:1.125rem}.ml--small .ml__icon--placeholder{width:1rem;height:1rem}.ml__text{display:flex;flex-direction:column;gap:2px;min-width:0}.ml__cell{display:flex;flex-direction:column;gap:2px;min-width:0;padding:5px 0}.ml--grid .ml__cell{padding:5px 0}.ml__label{font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:var(--ion-color-medium, #92949c);line-height:1.3}.ml--small .ml__label{font-size:.625rem}.ml__value{font-size:.875rem;font-weight:600;color:var(--ion-text-color, #000);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ml--small .ml__value{font-size:.8125rem}.ml__chips{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0}.ml__chip{display:inline-block;font-size:.75rem;font-weight:500;line-height:1;padding:3px 8px;border-radius:100px;background:var(--ion-color-light, rgba(0, 0, 0, .06));color:var(--ion-text-color, #000)}.ml--small .ml__chip{font-size:.6875rem;padding:2px 7px}\n"] }]
124
+ `, styles: ["@charset \"UTF-8\";:host{display:block}.ml{display:flex;flex-direction:column}.ml--dividers .ml__item:not(:last-child),.ml--dividers .ml__row:not(:last-child){border-bottom:1px solid var(--ion-border-color, rgba(0, 0, 0, .08))}.ml__section-label{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ion-color-medium, #92949c);padding-top:20px;padding-bottom:4px}.ml__section-label:first-child{padding-top:0}.ml--small .ml__section-label{font-size:.625rem;padding-top:16px}.ml__row{display:flex;align-items:flex-start;gap:10px;padding:8px 0;grid-column:1/-1}.ml--small .ml__row{padding:5px 0}.ml__item{display:flex;align-items:flex-start;gap:10px;padding:12px 0;width:100%}.ml--small .ml__item{padding:8px 0}.ml__icon{flex-shrink:0;font-size:1.125rem;color:var(--ion-color-medium, #92949c);line-height:1;margin-top:1px;padding:5px 0}.ml--grid .ml__icon{padding:5px 0}.ml--small .ml__icon{font-size:1rem}.ml__icon--placeholder{width:1.125rem;height:1.125rem}.ml--small .ml__icon--placeholder{width:1rem;height:1rem}.ml__text{display:flex;flex-direction:column;gap:2px;min-width:0}.ml__cell{display:flex;flex-direction:column;gap:2px;min-width:0;padding:5px 0}.ml--grid .ml__cell{padding:5px 0}.ml__label{font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:var(--ion-color-medium, #92949c);line-height:1.3}.ml--small .ml__label{font-size:.625rem}.ml__value{font-size:.875rem;font-weight:600;color:var(--ion-text-color, #000);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ml--small .ml__value{font-size:.8125rem}.ml__chips{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0}.ml__chip{display:inline-block;font-size:.75rem;font-weight:500;line-height:1;padding:3px 8px;border-radius:100px;background:var(--ion-color-light, rgba(0, 0, 0, .06));color:var(--ion-text-color, #000)}.ml--small .ml__chip{font-size:.6875rem;padding:2px 7px}\n"] }]
135
125
  }] });
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL21ldGFkYXRhLWxpc3QvbWV0YWRhdGEtbGlzdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVwRCxPQUFPLEVBQXlDLHNCQUFzQixFQUFFLE1BQU0sU0FBUyxDQUFDOztBQUV4Rjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUE2Q0gsTUFBTSxPQUFPLHFCQUFxQjtJQTVDbEM7UUE2Q1csVUFBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXdCLENBQUM7UUFFL0Msa0JBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUN2QyxHQUFHLHNCQUFzQjtZQUN6QixHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUU7U0FDaEIsQ0FBQyxDQUFDLENBQUM7UUFFSyxxQkFBZ0IsR0FBRyxRQUFRLENBQUMsR0FBc0IsRUFBRTtZQUMzRCxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLE1BQU07Z0JBQUUsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDO1lBQzFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7UUFFTSxjQUFTLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNqQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDL0IsT0FBTztnQkFDTCxJQUFJO2dCQUNKLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDaEMsQ0FBQyxDQUFDLElBQUksS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDckMsQ0FBQyxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFO2FBQ3ZDO2lCQUNFLE1BQU0sQ0FBQyxPQUFPLENBQUM7aUJBQ2YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQUM7UUFFTSxjQUFTLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNqQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQztZQUMvQyxPQUFPLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNsRCxDQUFDLENBQUMsQ0FBQztLQUNKOytHQTlCWSxxQkFBcUI7bUdBQXJCLHFCQUFxQixnTkF4Q3RCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUNULGcvREF0Q1MsT0FBTzs7NEZBeUNOLHFCQUFxQjtrQkE1Q2pDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBQ2pCLElBQUksV0FDUCxDQUFDLE9BQU8sQ0FBQyxZQUNSOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUNUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElvbkljb24gfSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IGFkZEljb25zIH0gZnJvbSAnaW9uaWNvbnMnO1xuaW1wb3J0IHsgTWV0YWRhdGFMaXN0TWV0YWRhdGEsIE1ldGFkYXRhU2VjdGlvbiwgTUVUQURBVEFfTElTVF9ERUZBVUxUUyB9IGZyb20gJy4vdHlwZXMnO1xuXG4vKipcbiAqIHZhbC1tZXRhZGF0YS1saXN0XG4gKlxuICogTGlzdGEgZGUgcGFyZXMgY2xhdmUtdmFsb3IgY29uIGljb25vIG9wY2lvbmFsLiBTb3BvcnRhOlxuICogLSBNb2RvIHBsYW5vOiBgeyBpdGVtczogWy4uLl0gfWBcbiAqIC0gTW9kbyBhZ3J1cGFkbzogYHsgc2VjdGlvbnM6IFt7IGxhYmVsLCBpdGVtcyB9XSB9YFxuICogLSBHcmlkIG11bHRpY29sdW1uYTogYHsgY29sdW1uczogMiB9YFxuICogLSBWYWxvcmVzIGNvbW8gY2hpcHM6IGB7IC4uLiwgY2hpcHM6IHRydWUgfWAgZW4gZWwgaXRlbVxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBodG1sXG4gKiA8dmFsLW1ldGFkYXRhLWxpc3QgW3Byb3BzXT1cIntcbiAqICAgY29sdW1uczogMixcbiAqICAgc2l6ZTogJ3NtYWxsJyxcbiAqICAgc2VjdGlvbnM6IFtcbiAqICAgICB7IGl0ZW1zOiBbeyBpY29uOiAncGF3LW91dGxpbmUnLCBsYWJlbDogJ0VzcGVjaWUnLCB2YWx1ZTogJ0dhdG8nIH1dIH0sXG4gKiAgICAgeyBsYWJlbDogJ1BlcnNvbmFsaWRhZCcsIGl0ZW1zOiBbeyBsYWJlbDogJ1RlbXBlcmFtZW50bycsIHZhbHVlOiAndHJhbnF1aWxhLCBjYXJpw7Fvc2EnLCBjaGlwczogdHJ1ZSB9XSB9XG4gKiAgIF1cbiAqIH1cIiAvPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1tZXRhZGF0YS1saXN0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0lvbkljb25dLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkbCBbY2xhc3NdPVwiaG9zdENsYXNzKClcIiBbc3R5bGUuZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zXT1cImdyaWRTdHlsZSgpXCI+XG4gICAgICBAZm9yIChzZWN0aW9uIG9mIHJlc29sdmVkU2VjdGlvbnMoKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgIEBpZiAoc2VjdGlvbi5sYWJlbCkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtbF9fc2VjdGlvbi1sYWJlbFwiPnt7IHNlY3Rpb24ubGFiZWwgfX08L2Rpdj5cbiAgICAgICAgfVxuICAgICAgICBAZm9yIChpdGVtIG9mIHNlY3Rpb24uaXRlbXM7IHRyYWNrIGl0ZW0udG9rZW4gfHwgaXRlbS5sYWJlbCkge1xuICAgICAgICAgIEBpZiAoaXRlbS5jaGlwcykge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1sX19yb3cgbWxfX3Jvdy0tY2hpcHNcIj5cbiAgICAgICAgICAgICAgQGlmIChpdGVtLmljb24pIHtcbiAgICAgICAgICAgICAgICA8aW9uLWljb24gY2xhc3M9XCJtbF9faWNvblwiIFtuYW1lXT1cIml0ZW0uaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1sX190ZXh0XCI+XG4gICAgICAgICAgICAgICAgPGR0IGNsYXNzPVwibWxfX2xhYmVsXCI+e3sgaXRlbS5sYWJlbCB9fTwvZHQ+XG4gICAgICAgICAgICAgICAgPGRkIGNsYXNzPVwibWxfX2NoaXBzXCI+XG4gICAgICAgICAgICAgICAgICBAZm9yIChjaGlwIG9mIGl0ZW0udmFsdWUuc3BsaXQoJywnKTsgdHJhY2sgY2hpcCkge1xuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1sX19jaGlwXCI+e3sgY2hpcC50cmltKCkgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9kZD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtbF9faXRlbVwiPlxuICAgICAgICAgICAgICBAaWYgKGl0ZW0uaWNvbikge1xuICAgICAgICAgICAgICAgIDxpb24taWNvbiBjbGFzcz1cIm1sX19pY29uXCIgW25hbWVdPVwiaXRlbS5pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz5cbiAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1sX19pY29uLS1wbGFjZWhvbGRlclwiPjwvZGl2PlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtbF9fY2VsbFwiPlxuICAgICAgICAgICAgICAgIDxkdCBjbGFzcz1cIm1sX19sYWJlbFwiPnt7IGl0ZW0ubGFiZWwgfX08L2R0PlxuICAgICAgICAgICAgICAgIDxkZCBjbGFzcz1cIm1sX192YWx1ZVwiIFtzdHlsZS5jb2xvcl09XCJpdGVtLmNvbG9yIHx8IG51bGxcIj57eyBpdGVtLnZhbHVlIH19PC9kZD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICA8L2RsPlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9tZXRhZGF0YS1saXN0LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE1ldGFkYXRhTGlzdENvbXBvbmVudCB7XG4gIHJlYWRvbmx5IHByb3BzID0gaW5wdXQucmVxdWlyZWQ8TWV0YWRhdGFMaXN0TWV0YWRhdGE+KCk7XG5cbiAgcmVhZG9ubHkgcmVzb2x2ZWRQcm9wcyA9IGNvbXB1dGVkKCgpID0+ICh7XG4gICAgLi4uTUVUQURBVEFfTElTVF9ERUZBVUxUUyxcbiAgICAuLi50aGlzLnByb3BzKCksXG4gIH0pKTtcblxuICByZWFkb25seSByZXNvbHZlZFNlY3Rpb25zID0gY29tcHV0ZWQoKCk6IE1ldGFkYXRhU2VjdGlvbltdID0+IHtcbiAgICBjb25zdCBwID0gdGhpcy5yZXNvbHZlZFByb3BzKCk7XG4gICAgaWYgKHAuc2VjdGlvbnM/Lmxlbmd0aCkgcmV0dXJuIHAuc2VjdGlvbnM7XG4gICAgcmV0dXJuIFt7IGl0ZW1zOiBwLml0ZW1zID8/IFtdIH1dO1xuICB9KTtcblxuICByZWFkb25seSBob3N0Q2xhc3MgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgcCA9IHRoaXMucmVzb2x2ZWRQcm9wcygpO1xuICAgIHJldHVybiBbXG4gICAgICAnbWwnLFxuICAgICAgcC5kaXZpZGVycyA/ICdtbC0tZGl2aWRlcnMnIDogJycsXG4gICAgICBwLnNpemUgPT09ICdzbWFsbCcgPyAnbWwtLXNtYWxsJyA6ICcnLFxuICAgICAgKHAuY29sdW1ucyA/PyAxKSA+IDEgPyAnbWwtLWdyaWQnIDogJycsXG4gICAgXVxuICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgLmpvaW4oJyAnKTtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgZ3JpZFN0eWxlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGNvbHMgPSB0aGlzLnJlc29sdmVkUHJvcHMoKS5jb2x1bW5zID8/IDE7XG4gICAgcmV0dXJuIGNvbHMgPiAxID8gYHJlcGVhdCgke2NvbHN9LCAxZnIpYCA6IG51bGw7XG4gIH0pO1xufVxuIl19
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL21ldGFkYXRhLWxpc3QvbWV0YWRhdGEtbGlzdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVwRCxPQUFPLEVBQXlDLHNCQUFzQixFQUFFLE1BQU0sU0FBUyxDQUFDOztBQUV4Rjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUE2Q0gsTUFBTSxPQUFPLHFCQUFxQjtJQTVDbEM7UUE2Q1csVUFBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXdCLENBQUM7UUFFL0Msa0JBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUN2QyxHQUFHLHNCQUFzQjtZQUN6QixHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUU7U0FDaEIsQ0FBQyxDQUFDLENBQUM7UUFFSyxxQkFBZ0IsR0FBRyxRQUFRLENBQUMsR0FBc0IsRUFBRTtZQUMzRCxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLE1BQU07Z0JBQUUsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDO1lBQzFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7UUFFTSxjQUFTLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNqQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDL0IsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25ILENBQUMsQ0FBQyxDQUFDO1FBRU0sY0FBUyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUMzQzsrR0FwQlkscUJBQXFCO21HQUFyQixxQkFBcUIsZ05BeEN0Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFDVCw0OURBdENTLE9BQU87OzRGQXlDTixxQkFBcUI7a0JBNUNqQyxTQUFTOytCQUNFLG1CQUFtQixjQUNqQixJQUFJLFdBQ1AsQ0FBQyxPQUFPLENBQUMsWUFDUjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFDVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJb25JY29uIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBhZGRJY29ucyB9IGZyb20gJ2lvbmljb25zJztcbmltcG9ydCB7IE1ldGFkYXRhTGlzdE1ldGFkYXRhLCBNZXRhZGF0YVNlY3Rpb24sIE1FVEFEQVRBX0xJU1RfREVGQVVMVFMgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiB2YWwtbWV0YWRhdGEtbGlzdFxuICpcbiAqIExpc3RhIGRlIHBhcmVzIGNsYXZlLXZhbG9yIGNvbiBpY29ubyBvcGNpb25hbC4gU29wb3J0YTpcbiAqIC0gTW9kbyBwbGFubzogYHsgaXRlbXM6IFsuLi5dIH1gXG4gKiAtIE1vZG8gYWdydXBhZG86IGB7IHNlY3Rpb25zOiBbeyBsYWJlbCwgaXRlbXMgfV0gfWBcbiAqIC0gR3JpZCBtdWx0aWNvbHVtbmE6IGB7IGNvbHVtbnM6IDIgfWBcbiAqIC0gVmFsb3JlcyBjb21vIGNoaXBzOiBgeyAuLi4sIGNoaXBzOiB0cnVlIH1gIGVuIGVsIGl0ZW1cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgaHRtbFxuICogPHZhbC1tZXRhZGF0YS1saXN0IFtwcm9wc109XCJ7XG4gKiAgIGNvbHVtbnM6IDIsXG4gKiAgIHNpemU6ICdzbWFsbCcsXG4gKiAgIHNlY3Rpb25zOiBbXG4gKiAgICAgeyBpdGVtczogW3sgaWNvbjogJ3Bhdy1vdXRsaW5lJywgbGFiZWw6ICdFc3BlY2llJywgdmFsdWU6ICdHYXRvJyB9XSB9LFxuICogICAgIHsgbGFiZWw6ICdQZXJzb25hbGlkYWQnLCBpdGVtczogW3sgbGFiZWw6ICdUZW1wZXJhbWVudG8nLCB2YWx1ZTogJ3RyYW5xdWlsYSwgY2FyacOxb3NhJywgY2hpcHM6IHRydWUgfV0gfVxuICogICBdXG4gKiB9XCIgLz5cbiAqIGBgYFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtbWV0YWRhdGEtbGlzdCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtJb25JY29uXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGwgW2NsYXNzXT1cImhvc3RDbGFzcygpXCI+XG4gICAgICBAZm9yIChzZWN0aW9uIG9mIHJlc29sdmVkU2VjdGlvbnMoKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgIEBpZiAoc2VjdGlvbi5sYWJlbCkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtbF9fc2VjdGlvbi1sYWJlbFwiPnt7IHNlY3Rpb24ubGFiZWwgfX08L2Rpdj5cbiAgICAgICAgfVxuICAgICAgICBAZm9yIChpdGVtIG9mIHNlY3Rpb24uaXRlbXM7IHRyYWNrIGl0ZW0udG9rZW4gfHwgaXRlbS5sYWJlbCkge1xuICAgICAgICAgIEBpZiAoaXRlbS5jaGlwcykge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1sX19yb3cgbWxfX3Jvdy0tY2hpcHNcIj5cbiAgICAgICAgICAgICAgQGlmIChpdGVtLmljb24pIHtcbiAgICAgICAgICAgICAgICA8aW9uLWljb24gY2xhc3M9XCJtbF9faWNvblwiIFtuYW1lXT1cIml0ZW0uaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1sX190ZXh0XCI+XG4gICAgICAgICAgICAgICAgPGR0IGNsYXNzPVwibWxfX2xhYmVsXCI+e3sgaXRlbS5sYWJlbCB9fTwvZHQ+XG4gICAgICAgICAgICAgICAgPGRkIGNsYXNzPVwibWxfX2NoaXBzXCI+XG4gICAgICAgICAgICAgICAgICBAZm9yIChjaGlwIG9mIGl0ZW0udmFsdWUuc3BsaXQoJywnKTsgdHJhY2sgY2hpcCkge1xuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1sX19jaGlwXCI+e3sgY2hpcC50cmltKCkgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9kZD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtbF9faXRlbVwiPlxuICAgICAgICAgICAgICBAaWYgKGl0ZW0uaWNvbikge1xuICAgICAgICAgICAgICAgIDxpb24taWNvbiBjbGFzcz1cIm1sX19pY29uXCIgW25hbWVdPVwiaXRlbS5pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz5cbiAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1sX19pY29uLS1wbGFjZWhvbGRlclwiPjwvZGl2PlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtbF9fY2VsbFwiPlxuICAgICAgICAgICAgICAgIDxkdCBjbGFzcz1cIm1sX19sYWJlbFwiPnt7IGl0ZW0ubGFiZWwgfX08L2R0PlxuICAgICAgICAgICAgICAgIDxkZCBjbGFzcz1cIm1sX192YWx1ZVwiIFtzdHlsZS5jb2xvcl09XCJpdGVtLmNvbG9yIHx8IG51bGxcIj57eyBpdGVtLnZhbHVlIH19PC9kZD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICA8L2RsPlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9tZXRhZGF0YS1saXN0LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE1ldGFkYXRhTGlzdENvbXBvbmVudCB7XG4gIHJlYWRvbmx5IHByb3BzID0gaW5wdXQucmVxdWlyZWQ8TWV0YWRhdGFMaXN0TWV0YWRhdGE+KCk7XG5cbiAgcmVhZG9ubHkgcmVzb2x2ZWRQcm9wcyA9IGNvbXB1dGVkKCgpID0+ICh7XG4gICAgLi4uTUVUQURBVEFfTElTVF9ERUZBVUxUUyxcbiAgICAuLi50aGlzLnByb3BzKCksXG4gIH0pKTtcblxuICByZWFkb25seSByZXNvbHZlZFNlY3Rpb25zID0gY29tcHV0ZWQoKCk6IE1ldGFkYXRhU2VjdGlvbltdID0+IHtcbiAgICBjb25zdCBwID0gdGhpcy5yZXNvbHZlZFByb3BzKCk7XG4gICAgaWYgKHAuc2VjdGlvbnM/Lmxlbmd0aCkgcmV0dXJuIHAuc2VjdGlvbnM7XG4gICAgcmV0dXJuIFt7IGl0ZW1zOiBwLml0ZW1zID8/IFtdIH1dO1xuICB9KTtcblxuICByZWFkb25seSBob3N0Q2xhc3MgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgcCA9IHRoaXMucmVzb2x2ZWRQcm9wcygpO1xuICAgIHJldHVybiBbJ21sJywgcC5kaXZpZGVycyA/ICdtbC0tZGl2aWRlcnMnIDogJycsIHAuc2l6ZSA9PT0gJ3NtYWxsJyA/ICdtbC0tc21hbGwnIDogJyddLmZpbHRlcihCb29sZWFuKS5qb2luKCcgJyk7XG4gIH0pO1xuXG4gIHJlYWRvbmx5IGdyaWRTdHlsZSA9IGNvbXB1dGVkKCgpID0+IG51bGwpO1xufVxuIl19
@@ -0,0 +1,154 @@
1
+ import { Component, computed, inject, signal } from '@angular/core';
2
+ import { IonIcon, IonItem, IonLabel, IonList } from '@ionic/angular/standalone';
3
+ import { I18nService } from '../../../services/i18n';
4
+ import { ButtonComponent } from '../../atoms/button/button.component';
5
+ import { ModalLayoutComponent } from '../modal-layout/modal-layout.component';
6
+ import { SearchbarComponent } from '../searchbar/searchbar.component';
7
+ import { replaceSpecialChars } from '../../../shared/utils/text';
8
+ import * as i0 from "@angular/core";
9
+ /**
10
+ * Picker de `val-select-search` / `val-multi-select-search` — full-screen en
11
+ * mobile, card flotante en desktop (`ModalService.openAdaptive`, Regla #5).
12
+ * Reemplaza el `ion-modal` con breakpoints que ambos componentes tenían
13
+ * embebido: mismo bottom-sheet en cualquier tamaño de pantalla, sin el
14
+ * tratamiento "card centrada" que el resto de los modales del factory ya usa.
15
+ *
16
+ * Selección simple: cierra al tocar un ítem (`dismiss({values:[v]}, 'selected')`).
17
+ * Selección múltiple: acumula localmente, footer con "Aplicar" (Regla #5,
18
+ * val-modal-layout con `actions`).
19
+ */
20
+ export class SelectSearchPickerModalComponent {
21
+ constructor() {
22
+ this.i18n = inject(I18nService);
23
+ this.query = signal('');
24
+ this.selected = signal([]);
25
+ this.filteredItems = computed(() => {
26
+ this.ensureSeeded();
27
+ const opts = this.props.options ?? [];
28
+ const q = replaceSpecialChars(this.query().trim().toLowerCase());
29
+ if (!q)
30
+ return opts;
31
+ return opts.filter(o => {
32
+ const label = replaceSpecialChars(String(o[this.props.labelProperty] ?? '').toLowerCase());
33
+ const value = replaceSpecialChars(String(o[this.props.valueProperty] ?? '').toLowerCase());
34
+ return label.includes(q) || value.includes(q);
35
+ });
36
+ });
37
+ this.footerActions = computed(() => this.props?.multiple
38
+ ? [
39
+ {
40
+ text: this.i18n.t('apply'),
41
+ color: 'primary',
42
+ shape: 'round',
43
+ type: 'button',
44
+ state: 'ENABLED',
45
+ },
46
+ ]
47
+ : []);
48
+ // `props` llega por componentProps (Ionic hace el assign DESPUÉS de construir
49
+ // la instancia, no en el constructor) — sembrar la selección tiene que pasar
50
+ // en el primer acceso desde el template, no acá. Un flag propio en vez de
51
+ // "selected().length === 0": si el usuario deselecciona todo a propósito, un
52
+ // chequeo por longitud volvería a sembrar los valores originales en la
53
+ // siguiente change-detection.
54
+ this.seeded = false;
55
+ }
56
+ ensureSeeded() {
57
+ if (this.seeded)
58
+ return;
59
+ this.seeded = true;
60
+ if (this.props?.selectedValues?.length) {
61
+ this.selected.set([...this.props.selectedValues]);
62
+ }
63
+ }
64
+ isSelected(item) {
65
+ this.ensureSeeded();
66
+ return this.selected().includes(item[this.props.valueProperty]);
67
+ }
68
+ toggle(item) {
69
+ this.ensureSeeded();
70
+ const value = item[this.props.valueProperty];
71
+ if (!this.props.multiple) {
72
+ this._modalRef?.dismiss({ values: [value] }, 'selected');
73
+ return;
74
+ }
75
+ const current = this.selected();
76
+ const idx = current.indexOf(value);
77
+ this.selected.set(idx === -1 ? [...current, value] : current.filter(v => v !== value));
78
+ }
79
+ apply() {
80
+ this._modalRef?.dismiss({ values: this.selected() }, 'selected');
81
+ }
82
+ cancel() {
83
+ this._modalRef?.dismiss(undefined, 'cancel');
84
+ }
85
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SelectSearchPickerModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
86
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SelectSearchPickerModalComponent, isStandalone: true, selector: "val-select-search-picker-modal", ngImport: i0, template: `
87
+ <val-modal-layout
88
+ [title]="props.title"
89
+ [closeLabel]="i18n.t('close')"
90
+ [actions]="footerActions()"
91
+ actionsAlign="stretch"
92
+ (close)="cancel()"
93
+ (actionClick)="apply()"
94
+ >
95
+ <div class="ssp-search">
96
+ <val-searchbar
97
+ [props]="{ placeholder: props.placeholder || i18n.t('selectOption'), debounce: 200 }"
98
+ (filterEvent)="query.set($event)"
99
+ />
100
+ </div>
101
+
102
+ @if (filteredItems().length === 0) {
103
+ <p class="ssp-empty">{{ i18n.t('noResults') }}</p>
104
+ } @else {
105
+ <ion-list class="ssp-list" lines="none">
106
+ @for (item of filteredItems(); track item[props.valueProperty]) {
107
+ <ion-item class="ssp-item" button detail="false" (click)="toggle(item)">
108
+ <ion-label>{{ item[props.labelProperty] }}</ion-label>
109
+ @if (isSelected(item)) {
110
+ <ion-icon name="checkmark-outline" slot="end" color="primary" aria-hidden="true" />
111
+ }
112
+ </ion-item>
113
+ }
114
+ </ion-list>
115
+ }
116
+ </val-modal-layout>
117
+ `, isInline: true, styles: [":host{display:flex;flex-direction:column;height:100%;min-height:0}.ssp-search{margin:0 0 12px}.ssp-list{background:transparent;display:flex;flex-direction:column;gap:6px}.ssp-item{--background: var(--ion-card-background, var(--ion-background-color, #fff));--padding-start: 12px;--padding-end: 12px;--inner-padding-end: 0;border:1px solid var(--ion-border-color, rgba(0, 0, 0, .1));border-radius:10px;cursor:pointer}.ssp-empty{text-align:center;color:var(--ion-color-medium, #92949c);font-size:.875rem;margin:24px 0}\n"], dependencies: [{ kind: "component", type: IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: IonItem, selector: "ion-item", inputs: ["button", "color", "detail", "detailIcon", "disabled", "download", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: IonList, selector: "ion-list", inputs: ["inset", "lines", "mode"] }, { kind: "component", type: ModalLayoutComponent, selector: "val-modal-layout", inputs: ["title", "subtitle", "closeLabel", "showClose", "actions", "actionsAlign", "footer", "footerClass"], outputs: ["close", "actionClick"] }, { kind: "component", type: SearchbarComponent, selector: "val-searchbar", inputs: ["preset", "props"], outputs: ["filterEvent", "focusEvent", "blurEvent"] }] }); }
118
+ }
119
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SelectSearchPickerModalComponent, decorators: [{
120
+ type: Component,
121
+ args: [{ selector: 'val-select-search-picker-modal', standalone: true, imports: [IonIcon, IonItem, IonLabel, IonList, ButtonComponent, ModalLayoutComponent, SearchbarComponent], template: `
122
+ <val-modal-layout
123
+ [title]="props.title"
124
+ [closeLabel]="i18n.t('close')"
125
+ [actions]="footerActions()"
126
+ actionsAlign="stretch"
127
+ (close)="cancel()"
128
+ (actionClick)="apply()"
129
+ >
130
+ <div class="ssp-search">
131
+ <val-searchbar
132
+ [props]="{ placeholder: props.placeholder || i18n.t('selectOption'), debounce: 200 }"
133
+ (filterEvent)="query.set($event)"
134
+ />
135
+ </div>
136
+
137
+ @if (filteredItems().length === 0) {
138
+ <p class="ssp-empty">{{ i18n.t('noResults') }}</p>
139
+ } @else {
140
+ <ion-list class="ssp-list" lines="none">
141
+ @for (item of filteredItems(); track item[props.valueProperty]) {
142
+ <ion-item class="ssp-item" button detail="false" (click)="toggle(item)">
143
+ <ion-label>{{ item[props.labelProperty] }}</ion-label>
144
+ @if (isSelected(item)) {
145
+ <ion-icon name="checkmark-outline" slot="end" color="primary" aria-hidden="true" />
146
+ }
147
+ </ion-item>
148
+ }
149
+ </ion-list>
150
+ }
151
+ </val-modal-layout>
152
+ `, styles: [":host{display:flex;flex-direction:column;height:100%;min-height:0}.ssp-search{margin:0 0 12px}.ssp-list{background:transparent;display:flex;flex-direction:column;gap:6px}.ssp-item{--background: var(--ion-card-background, var(--ion-background-color, #fff));--padding-start: 12px;--padding-end: 12px;--inner-padding-end: 0;border:1px solid var(--ion-border-color, rgba(0, 0, 0, .1));border-radius:10px;cursor:pointer}.ssp-empty{text-align:center;color:var(--ion-color-medium, #92949c);font-size:.875rem;margin:24px 0}\n"] }]
153
+ }] });
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXNlYXJjaC1waWNrZXItbW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy9zZWxlY3Qtc2VhcmNoL3NlbGVjdC1zZWFyY2gtcGlja2VyLW1vZGFsLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXRFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQWFqRTs7Ozs7Ozs7OztHQVVHO0FBd0VILE1BQU0sT0FBTyxnQ0FBZ0M7SUF2RTdDO1FBMEVXLFNBQUksR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFLM0IsVUFBSyxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNuQixhQUFRLEdBQUcsTUFBTSxDQUFZLEVBQUUsQ0FBQyxDQUFDO1FBRWpDLGtCQUFhLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNyQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDcEIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDO1lBQ3RDLE1BQU0sQ0FB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LEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMvQyxDQUFDOytHQTNFVSxnQ0FBZ0M7bUdBQWhDLGdDQUFnQywwRkFuRWpDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0JULCtrQkFoQ1MsT0FBTywySkFBRSxPQUFPLDBOQUFFLFFBQVEsNkZBQUUsT0FBTyx5RkFBbUIsb0JBQW9CLDhNQUFFLGtCQUFrQjs7NEZBb0U3RixnQ0FBZ0M7a0JBdkU1QyxTQUFTOytCQUNFLGdDQUFnQyxjQUM5QixJQUFJLFdBQ1AsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixDQUFDLFlBQy9GOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0JUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElvbkljb24sIElvbkl0ZW0sIElvbkxhYmVsLCBJb25MaXN0IH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2kxOG4nO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnV0dG9uTWV0YWRhdGEgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBNb2RhbExheW91dENvbXBvbmVudCB9IGZyb20gJy4uL21vZGFsLWxheW91dC9tb2RhbC1sYXlvdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFNlYXJjaGJhckNvbXBvbmVudCB9IGZyb20gJy4uL3NlYXJjaGJhci9zZWFyY2hiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IHJlcGxhY2VTcGVjaWFsQ2hhcnMgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvdXRpbHMvdGV4dCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0U2VhcmNoUGlja2VyUHJvcHMge1xuICB0aXRsZTogc3RyaW5nO1xuICBvcHRpb25zOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPltdO1xuICB2YWx1ZVByb3BlcnR5OiBzdHJpbmc7XG4gIGxhYmVsUHJvcGVydHk6IHN0cmluZztcbiAgbXVsdGlwbGU6IGJvb2xlYW47XG4gIC8qKiBWYWxvcmVzIHlhIHNlbGVjY2lvbmFkb3MgKHNpZW1wcmUgYXJyYXkg4oCUIHVuIHNvbG8gZWxlbWVudG8gc2kgbm8gZXMgYG11bHRpcGxlYCkuICovXG4gIHNlbGVjdGVkVmFsdWVzOiB1bmtub3duW107XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFBpY2tlciBkZSBgdmFsLXNlbGVjdC1zZWFyY2hgIC8gYHZhbC1tdWx0aS1zZWxlY3Qtc2VhcmNoYCDigJQgZnVsbC1zY3JlZW4gZW5cbiAqIG1vYmlsZSwgY2FyZCBmbG90YW50ZSBlbiBkZXNrdG9wIChgTW9kYWxTZXJ2aWNlLm9wZW5BZGFwdGl2ZWAsIFJlZ2xhICM1KS5cbiAqIFJlZW1wbGF6YSBlbCBgaW9uLW1vZGFsYCBjb24gYnJlYWtwb2ludHMgcXVlIGFtYm9zIGNvbXBvbmVudGVzIHRlbsOtYW5cbiAqIGVtYmViaWRvOiBtaXNtbyBib3R0b20tc2hlZXQgZW4gY3VhbHF1aWVyIHRhbWHDsW8gZGUgcGFudGFsbGEsIHNpbiBlbFxuICogdHJhdGFtaWVudG8gXCJjYXJkIGNlbnRyYWRhXCIgcXVlIGVsIHJlc3RvIGRlIGxvcyBtb2RhbGVzIGRlbCBmYWN0b3J5IHlhIHVzYS5cbiAqXG4gKiBTZWxlY2Npw7NuIHNpbXBsZTogY2llcnJhIGFsIHRvY2FyIHVuIMOtdGVtIChgZGlzbWlzcyh7dmFsdWVzOlt2XX0sICdzZWxlY3RlZCcpYCkuXG4gKiBTZWxlY2Npw7NuIG3Dumx0aXBsZTogYWN1bXVsYSBsb2NhbG1lbnRlLCBmb290ZXIgY29uIFwiQXBsaWNhclwiIChSZWdsYSAjNSxcbiAqIHZhbC1tb2RhbC1sYXlvdXQgY29uIGBhY3Rpb25zYCkuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1zZWxlY3Qtc2VhcmNoLXBpY2tlci1tb2RhbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtJb25JY29uLCBJb25JdGVtLCBJb25MYWJlbCwgSW9uTGlzdCwgQnV0dG9uQ29tcG9uZW50LCBNb2RhbExheW91dENvbXBvbmVudCwgU2VhcmNoYmFyQ29tcG9uZW50XSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8dmFsLW1vZGFsLWxheW91dFxuICAgICAgW3RpdGxlXT1cInByb3BzLnRpdGxlXCJcbiAgICAgIFtjbG9zZUxhYmVsXT1cImkxOG4udCgnY2xvc2UnKVwiXG4gICAgICBbYWN0aW9uc109XCJmb290ZXJBY3Rpb25zKClcIlxuICAgICAgYWN0aW9uc0FsaWduPVwic3RyZXRjaFwiXG4gICAgICAoY2xvc2UpPVwiY2FuY2VsKClcIlxuICAgICAgKGFjdGlvbkNsaWNrKT1cImFwcGx5KClcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJzc3Atc2VhcmNoXCI+XG4gICAgICAgIDx2YWwtc2VhcmNoYmFyXG4gICAgICAgICAgW3Byb3BzXT1cInsgcGxhY2Vob2xkZXI6IHByb3BzLnBsYWNlaG9sZGVyIHx8IGkxOG4udCgnc2VsZWN0T3B0aW9uJyksIGRlYm91bmNlOiAyMDAgfVwiXG4gICAgICAgICAgKGZpbHRlckV2ZW50KT1cInF1ZXJ5LnNldCgkZXZlbnQpXCJcbiAgICAgICAgLz5cbiAgICAgIDwvZGl2PlxuXG4gICAgICBAaWYgKGZpbHRlcmVkSXRlbXMoKS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgPHAgY2xhc3M9XCJzc3AtZW1wdHlcIj57eyBpMThuLnQoJ25vUmVzdWx0cycpIH19PC9wPlxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIDxpb24tbGlzdCBjbGFzcz1cInNzcC1saXN0XCIgbGluZXM9XCJub25lXCI+XG4gICAgICAgICAgQGZvciAoaXRlbSBvZiBmaWx0ZXJlZEl0ZW1zKCk7IHRyYWNrIGl0ZW1bcHJvcHMudmFsdWVQcm9wZXJ0eV0pIHtcbiAgICAgICAgICAgIDxpb24taXRlbSBjbGFzcz1cInNzcC1pdGVtXCIgYnV0dG9uIGRldGFpbD1cImZhbHNlXCIgKGNsaWNrKT1cInRvZ2dsZShpdGVtKVwiPlxuICAgICAgICAgICAgICA8aW9uLWxhYmVsPnt7IGl0ZW1bcHJvcHMubGFiZWxQcm9wZXJ0eV0gfX08L2lvbi1sYWJlbD5cbiAgICAgICAgICAgICAgQGlmIChpc1NlbGVjdGVkKGl0ZW0pKSB7XG4gICAgICAgICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJjaGVja21hcmstb3V0bGluZVwiIHNsb3Q9XCJlbmRcIiBjb2xvcj1cInByaW1hcnlcIiBhcmlhLWhpZGRlbj1cInRydWVcIiAvPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2lvbi1pdGVtPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9pb24tbGlzdD5cbiAgICAgIH1cbiAgICA8L3ZhbC1tb2RhbC1sYXlvdXQ+XG4gIGAsXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAgIDpob3N0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgfVxuICAgICAgLnNzcC1zZWFyY2gge1xuICAgICAgICBtYXJnaW46IDAgMCAxMnB4O1xuICAgICAgfVxuICAgICAgLnNzcC1saXN0IHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogNnB4O1xuICAgICAgfVxuICAgICAgLnNzcC1pdGVtIHtcbiAgICAgICAgLS1iYWNrZ3JvdW5kOiB2YXIoLS1pb24tY2FyZC1iYWNrZ3JvdW5kLCB2YXIoLS1pb24tYmFja2dyb3VuZC1jb2xvciwgI2ZmZikpO1xuICAgICAgICAtLXBhZGRpbmctc3RhcnQ6IDEycHg7XG4gICAgICAgIC0tcGFkZGluZy1lbmQ6IDEycHg7XG4gICAgICAgIC0taW5uZXItcGFkZGluZy1lbmQ6IDA7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlvbi1ib3JkZXItY29sb3IsIHJnYmEoMCwgMCwgMCwgMC4xKSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cbiAgICAgIC5zc3AtZW1wdHkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItbWVkaXVtLCAjOTI5NDljKTtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgbWFyZ2luOiAyNHB4IDA7XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0U2VhcmNoUGlja2VyTW9kYWxDb21wb25lbnQge1xuICBfbW9kYWxSZWY/OiB7IGRpc21pc3M6IChkYXRhPzogdW5rbm93biwgcm9sZT86IHN0cmluZykgPT4gdm9pZCB9O1xuXG4gIHJlYWRvbmx5IGkxOG4gPSBpbmplY3QoSTE4blNlcnZpY2UpO1xuXG4gIC8qKiBJbnllY3RhZG8gcG9yIGBNb2RhbFNlcnZpY2Uub3BlbkFkYXB0aXZlKHsgY29tcG9uZW50UHJvcHMgfSlgLiAqL1xuICBwcm9wcyE6IFNlbGVjdFNlYXJjaFBpY2tlclByb3BzO1xuXG4gIHJlYWRvbmx5IHF1ZXJ5ID0gc2lnbmFsKCcnKTtcbiAgcmVhZG9ubHkgc2VsZWN0ZWQgPSBzaWduYWw8dW5rbm93bltdPihbXSk7XG5cbiAgcmVhZG9ubHkgZmlsdGVyZWRJdGVtcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICB0aGlzLmVuc3VyZVNlZWRlZCgpO1xuICAgIGNvbnN0IG9wdHMgPSB0aGlzLnByb3BzLm9wdGlvbnMgPz8gW107XG4gICAgY29uc3QgcSA9IHJlcGxhY2VTcGVjaWFsQ2hhcnModGhpcy5xdWVyeSgpLnRyaW0oKS50b0xvd2VyQ2FzZSgpKTtcbiAgICBpZiAoIXEpIHJldHVybiBvcHRzO1xuICAgIHJldHVybiBvcHRzLmZpbHRlcihvID0+IHtcbiAgICAgIGNvbnN0IGxhYmVsID0gcmVwbGFjZVNwZWNpYWxDaGFycyhTdHJpbmcob1t0aGlzLnByb3BzLmxhYmVsUHJvcGVydHldID8/ICcnKS50b0xvd2VyQ2FzZSgpKTtcbiAgICAgIGNvbnN0IHZhbHVlID0gcmVwbGFjZVNwZWNpYWxDaGFycyhTdHJpbmcob1t0aGlzLnByb3BzLnZhbHVlUHJvcGVydHldID8/ICcnKS50b0xvd2VyQ2FzZSgpKTtcbiAgICAgIHJldHVybiBsYWJlbC5pbmNsdWRlcyhxKSB8fCB2YWx1ZS5pbmNsdWRlcyhxKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgZm9vdGVyQWN0aW9ucyA9IGNvbXB1dGVkPEJ1dHRvbk1ldGFkYXRhW10+KCgpID0+XG4gICAgdGhpcy5wcm9wcz8ubXVsdGlwbGVcbiAgICAgID8gW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHRleHQ6IHRoaXMuaTE4bi50KCdhcHBseScpLFxuICAgICAgICAgICAgY29sb3I6ICdwcmltYXJ5JyxcbiAgICAgICAgICAgIHNoYXBlOiAncm91bmQnLFxuICAgICAgICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICAgICAgICBzdGF0ZTogJ0VOQUJMRUQnIGFzIEJ1dHRvbk1ldGFkYXRhWydzdGF0ZSddLFxuICAgICAgICAgIH0sXG4gICAgICAgIF1cbiAgICAgIDogW11cbiAgKTtcblxuICAvLyBgcHJvcHNgIGxsZWdhIHBvciBjb21wb25lbnRQcm9wcyAoSW9uaWMgaGFjZSBlbCBhc3NpZ24gREVTUFXDiVMgZGUgY29uc3RydWlyXG4gIC8vIGxhIGluc3RhbmNpYSwgbm8gZW4gZWwgY29uc3RydWN0b3IpIOKAlCBzZW1icmFyIGxhIHNlbGVjY2nDs24gdGllbmUgcXVlIHBhc2FyXG4gIC8vIGVuIGVsIHByaW1lciBhY2Nlc28gZGVzZGUgZWwgdGVtcGxhdGUsIG5vIGFjw6EuIFVuIGZsYWcgcHJvcGlvIGVuIHZleiBkZVxuICAvLyBcInNlbGVjdGVkKCkubGVuZ3RoID09PSAwXCI6IHNpIGVsIHVzdWFyaW8gZGVzZWxlY2Npb25hIHRvZG8gYSBwcm9ww7NzaXRvLCB1blxuICAvLyBjaGVxdWVvIHBvciBsb25naXR1ZCB2b2x2ZXLDrWEgYSBzZW1icmFyIGxvcyB2YWxvcmVzIG9yaWdpbmFsZXMgZW4gbGFcbiAgLy8gc2lndWllbnRlIGNoYW5nZS1kZXRlY3Rpb24uXG4gIHByaXZhdGUgc2VlZGVkID0gZmFsc2U7XG4gIHByaXZhdGUgZW5zdXJlU2VlZGVkKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNlZWRlZCkgcmV0dXJuO1xuICAgIHRoaXMuc2VlZGVkID0gdHJ1ZTtcbiAgICBpZiAodGhpcy5wcm9wcz8uc2VsZWN0ZWRWYWx1ZXM/Lmxlbmd0aCkge1xuICAgICAgdGhpcy5zZWxlY3RlZC5zZXQoWy4uLnRoaXMucHJvcHMuc2VsZWN0ZWRWYWx1ZXNdKTtcbiAgICB9XG4gIH1cblxuICBpc1NlbGVjdGVkKGl0ZW06IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogYm9vbGVhbiB7XG4gICAgdGhpcy5lbnN1cmVTZWVkZWQoKTtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZCgpLmluY2x1ZGVzKGl0ZW1bdGhpcy5wcm9wcy52YWx1ZVByb3BlcnR5XSk7XG4gIH1cblxuICB0b2dnbGUoaXRlbTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pOiB2b2lkIHtcbiAgICB0aGlzLmVuc3VyZVNlZWRlZCgpO1xuICAgIGNvbnN0IHZhbHVlID0gaXRlbVt0aGlzLnByb3BzLnZhbHVlUHJvcGVydHldO1xuICAgIGlmICghdGhpcy5wcm9wcy5tdWx0aXBsZSkge1xuICAgICAgdGhpcy5fbW9kYWxSZWY/LmRpc21pc3MoeyB2YWx1ZXM6IFt2YWx1ZV0gfSwgJ3NlbGVjdGVkJyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLnNlbGVjdGVkKCk7XG4gICAgY29uc3QgaWR4ID0gY3VycmVudC5pbmRleE9mKHZhbHVlKTtcbiAgICB0aGlzLnNlbGVjdGVkLnNldChpZHggPT09IC0xID8gWy4uLmN1cnJlbnQsIHZhbHVlXSA6IGN1cnJlbnQuZmlsdGVyKHYgPT4gdiAhPT0gdmFsdWUpKTtcbiAgfVxuXG4gIGFwcGx5KCk6IHZvaWQge1xuICAgIHRoaXMuX21vZGFsUmVmPy5kaXNtaXNzKHsgdmFsdWVzOiB0aGlzLnNlbGVjdGVkKCkgfSwgJ3NlbGVjdGVkJyk7XG4gIH1cblxuICBjYW5jZWwoKTogdm9pZCB7XG4gICAgdGhpcy5fbW9kYWxSZWY/LmRpc21pc3ModW5kZWZpbmVkLCAnY2FuY2VsJyk7XG4gIH1cbn1cbiJdfQ==