valtech-components 2.0.813 → 2.0.815

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.
@@ -160,7 +160,7 @@ export class TextareaInputComponent {
160
160
  </ion-note>
161
161
  }
162
162
  </div>
163
- `, isInline: true, styles: [":host{display:block;width:100%}.textarea-container{position:relative}.textarea-container ion-textarea{--background: var(--ion-background-color, #fff);--padding-start: 12px;--padding-end: 12px;--padding-top: 12px;--padding-bottom: 12px}.textarea-container ion-textarea.no-resize textarea{resize:none!important}.textarea-container.has-error ion-textarea{--border-color: var(--ion-color-danger);--highlight-color: var(--ion-color-danger)}.char-counter{font-size:12px;color:var(--ion-color-medium);text-align:right;margin-top:4px;padding-right:4px}.char-counter.remaining{color:var(--ion-color-medium-shade)}.hint{display:block;font-size:12px;color:var(--ion-color-medium);margin-top:4px;padding-left:4px}.error-message{display:block;font-size:12px;margin-top:4px;padding-left:4px}ion-textarea::part(counter){font-size:12px;color:var(--ion-color-medium)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: IonTextarea, selector: "ion-textarea", inputs: ["autoGrow", "autocapitalize", "autofocus", "clearOnEdit", "color", "cols", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "maxlength", "minlength", "mode", "name", "placeholder", "readonly", "required", "rows", "shape", "spellcheck", "value", "wrap"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }] }); }
163
+ `, isInline: true, styles: ["@charset \"UTF-8\";:host{display:block;width:100%}.textarea-container{position:relative}.textarea-container ion-textarea{--background: var(--ion-background-color, #fff);--padding-start: 12px;--padding-end: 12px;--padding-top: 12px;--padding-bottom: 12px}.textarea-container ion-textarea.no-resize textarea{resize:none!important}.textarea-container.has-error ion-textarea{--border-color: var(--ion-color-danger);--highlight-color: var(--ion-color-danger)}.char-counter{font-size:12px;color:var(--ion-color-medium);text-align:right;margin-top:4px;padding-right:4px}.char-counter.remaining{color:var(--ion-color-medium-shade)}.hint{display:block;font-size:12px;color:var(--ion-color-dark);margin-top:4px;padding-left:4px}.error-message{display:block;font-size:12px;margin-top:4px;padding-left:4px}ion-textarea::part(counter){font-size:12px;color:var(--ion-color-medium)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: IonTextarea, selector: "ion-textarea", inputs: ["autoGrow", "autocapitalize", "autofocus", "clearOnEdit", "color", "cols", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "maxlength", "minlength", "mode", "name", "placeholder", "readonly", "required", "rows", "shape", "spellcheck", "value", "wrap"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }] }); }
164
164
  }
165
165
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TextareaInputComponent, decorators: [{
166
166
  type: Component,
@@ -204,10 +204,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
204
204
  </ion-note>
205
205
  }
206
206
  </div>
207
- `, styles: [":host{display:block;width:100%}.textarea-container{position:relative}.textarea-container ion-textarea{--background: var(--ion-background-color, #fff);--padding-start: 12px;--padding-end: 12px;--padding-top: 12px;--padding-bottom: 12px}.textarea-container ion-textarea.no-resize textarea{resize:none!important}.textarea-container.has-error ion-textarea{--border-color: var(--ion-color-danger);--highlight-color: var(--ion-color-danger)}.char-counter{font-size:12px;color:var(--ion-color-medium);text-align:right;margin-top:4px;padding-right:4px}.char-counter.remaining{color:var(--ion-color-medium-shade)}.hint{display:block;font-size:12px;color:var(--ion-color-medium);margin-top:4px;padding-left:4px}.error-message{display:block;font-size:12px;margin-top:4px;padding-left:4px}ion-textarea::part(counter){font-size:12px;color:var(--ion-color-medium)}\n"] }]
207
+ `, styles: ["@charset \"UTF-8\";:host{display:block;width:100%}.textarea-container{position:relative}.textarea-container ion-textarea{--background: var(--ion-background-color, #fff);--padding-start: 12px;--padding-end: 12px;--padding-top: 12px;--padding-bottom: 12px}.textarea-container ion-textarea.no-resize textarea{resize:none!important}.textarea-container.has-error ion-textarea{--border-color: var(--ion-color-danger);--highlight-color: var(--ion-color-danger)}.char-counter{font-size:12px;color:var(--ion-color-medium);text-align:right;margin-top:4px;padding-right:4px}.char-counter.remaining{color:var(--ion-color-medium-shade)}.hint{display:block;font-size:12px;color:var(--ion-color-dark);margin-top:4px;padding-left:4px}.error-message{display:block;font-size:12px;margin-top:4px;padding-left:4px}ion-textarea::part(counter){font-size:12px;color:var(--ion-color-medium)}\n"] }]
208
208
  }], propDecorators: { preset: [{
209
209
  type: Input
210
210
  }], props: [{
211
211
  type: Input
212
212
  }] } });
213
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90ZXh0YXJlYS1pbnB1dC90ZXh0YXJlYS1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7O0FBa0Q5Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQ0c7QUFDSCxNQUFNLE9BQU8sc0JBQXNCO0lBaEZuQztRQWlGVSxZQUFPLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBV3hDOztXQUVHO1FBQ00sVUFBSyxHQUFtQyxFQUFFLENBQUM7UUFFcEQ7O1dBRUc7UUFDSCxrQkFBYSxHQUEwQixFQUEyQixDQUFDO1FBRW5FLFdBQU0sR0FBRyxlQUFlLENBQUM7UUFnRnpCLGlEQUFpRDtRQUNqRCxxQkFBZ0IsR0FBRyxDQUFDLFdBQW1CLEVBQUUsU0FBaUIsRUFBVSxFQUFFO1lBQ3BFLE9BQU8sR0FBRyxXQUFXLElBQUksU0FBUyxFQUFFLENBQUM7UUFDdkMsQ0FBQyxDQUFDO0tBQ0g7SUFsRkMsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FB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Q0FBQztJQUM3RCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDM0MsT0FBTyxTQUFTLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsc0JBQXNCLENBQUM7SUFDMUUsQ0FBQzsrR0FwR1Usc0JBQXNCO21HQUF0QixzQkFBc0IsaUpBNUV2Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdDVCw2NUJBekNTLFlBQVksOEJBQUUsbUJBQW1CLGdvQkFBRSxXQUFXLGlhQUFFLE9BQU87OzRGQTZFdEQsc0JBQXNCO2tCQWhGbEMsU0FBUzsrQkFDRSxvQkFBb0IsY0FDbEIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxPQUFPLENBQUMsWUFDeEQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3Q1Q7OEJBOENRLE1BQU07c0JBQWQsS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IElvblRleHRhcmVhLCBJb25Ob3RlIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBQcmVzZXRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcHJlc2V0cyc7XG5pbXBvcnQgeyBDb21wb25lbnRTdGF0ZXMgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBUZXh0YXJlYUlucHV0TWV0YWRhdGEgfSBmcm9tICcuL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLXRleHRhcmVhLWlucHV0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgSW9uVGV4dGFyZWEsIElvbk5vdGVdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0YXJlYS1jb250YWluZXJcIiBbY2xhc3NdPVwicmVzb2x2ZWRQcm9wcy5jc3NDbGFzc1wiIFtjbGFzcy5oYXMtZXJyb3JdPVwiaGFzRXJyb3JcIj5cbiAgICAgIDxpb24tdGV4dGFyZWFcbiAgICAgICAgW2Zvcm1Db250cm9sXT1cInJlc29sdmVkUHJvcHMuY29udHJvbFwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJnZXRQbGFjZWhvbGRlcigpXCJcbiAgICAgICAgW2xhYmVsXT1cImdldExhYmVsKClcIlxuICAgICAgICBbbGFiZWxQbGFjZW1lbnRdPVwicmVzb2x2ZWRQcm9wcy5sYWJlbFBsYWNlbWVudCB8fCAnc3RhY2tlZCdcIlxuICAgICAgICBbZmlsbF09XCJyZXNvbHZlZFByb3BzLmZpbGwgfHwgJ291dGxpbmUnXCJcbiAgICAgICAgW2NvbG9yXT1cImhhc0Vycm9yID8gJ2RhbmdlcicgOiByZXNvbHZlZFByb3BzLmNvbG9yXCJcbiAgICAgICAgW3Jvd3NdPVwicmVzb2x2ZWRQcm9wcy5yb3dzIHx8IDRcIlxuICAgICAgICBbYXV0b0dyb3ddPVwicmVzb2x2ZWRQcm9wcy5hdXRvR3JvdyA/PyBmYWxzZVwiXG4gICAgICAgIFttYXhsZW5ndGhdPVwicmVzb2x2ZWRQcm9wcy5tYXhMZW5ndGhcIlxuICAgICAgICBbbWlubGVuZ3RoXT1cInJlc29sdmVkUHJvcHMubWluTGVuZ3RoXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cInJlc29sdmVkUHJvcHMuc3RhdGUgPT09IHN0YXRlcy5ESVNBQkxFRFwiXG4gICAgICAgIFtyZWFkb25seV09XCJyZXNvbHZlZFByb3BzLnN0YXRlID09PSBzdGF0ZXMuV09SS0lOR1wiXG4gICAgICAgIFtzcGVsbGNoZWNrXT1cInJlc29sdmVkUHJvcHMuc3BlbGxjaGVjayA/PyB0cnVlXCJcbiAgICAgICAgW2F1dG9jYXBpdGFsaXplXT1cInJlc29sdmVkUHJvcHMuYXV0b2NhcGl0YWxpemUgfHwgJ3NlbnRlbmNlcydcIlxuICAgICAgICBbaW5wdXRtb2RlXT1cInJlc29sdmVkUHJvcHMuaW5wdXRNb2RlIHx8ICd0ZXh0J1wiXG4gICAgICAgIFt3cmFwXT1cInJlc29sdmVkUHJvcHMud3JhcCB8fCAnc29mdCdcIlxuICAgICAgICBbY291bnRlcl09XCJyZXNvbHZlZFByb3BzLnNob3dDb3VudGVyICYmICEhcmVzb2x2ZWRQcm9wcy5tYXhMZW5ndGhcIlxuICAgICAgICBbY291bnRlckZvcm1hdHRlcl09XCJjb3VudGVyRm9ybWF0dGVyXCJcbiAgICAgICAgW2NsYXNzLm5vLXJlc2l6ZV09XCJyZXNvbHZlZFByb3BzLmRpc2FibGVSZXNpemVcIlxuICAgICAgPjwvaW9uLXRleHRhcmVhPlxuXG4gICAgICBAaWYgKHJlc29sdmVkUHJvcHMuc2hvd0NvdW50ZXIgJiYgcmVzb2x2ZWRQcm9wcy5tYXhMZW5ndGggJiYgcmVzb2x2ZWRQcm9wcy5jb3VudGVyRm9ybWF0ID09PSAncmVtYWluaW5nJykge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiY2hhci1jb3VudGVyIHJlbWFpbmluZ1wiPlxuICAgICAgICAgIHt7IGdldFJlbWFpbmluZ0NoYXJzKCkgfX0ge3sgZ2V0UmVtYWluaW5nTGFiZWwoKSB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cblxuICAgICAgQGlmIChyZXNvbHZlZFByb3BzLmhpbnQgJiYgIWhhc0Vycm9yKSB7XG4gICAgICAgIDxpb24tbm90ZSBjbGFzcz1cImhpbnRcIj57eyBnZXRIaW50KCkgfX08L2lvbi1ub3RlPlxuICAgICAgfVxuXG4gICAgICBAaWYgKGhhc0Vycm9yICYmIHJlc29sdmVkUHJvcHMuc2hvd0Vycm9ycykge1xuICAgICAgICA8aW9uLW5vdGUgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCIgY29sb3I9XCJkYW5nZXJcIj5cbiAgICAgICAgICB7eyBnZXRFcnJvck1lc3NhZ2UoKSB9fVxuICAgICAgICA8L2lvbi1ub3RlPlxuICAgICAgfVxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi90ZXh0YXJlYS1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxufSlcbi8qKlxuICogdmFsLXRleHRhcmVhLWlucHV0XG4gKlxuICogQSB0ZXh0YXJlYSBpbnB1dCBmaWVsZCB3aXRoIGNoYXJhY3RlciBjb3VudGVyLCBhdXRvLWdyb3csIGFuZCB2YWxpZGF0aW9uIHN1cHBvcnQuXG4gKlxuICogQGV4YW1wbGUgQmFzaWMgdXNhZ2VcbiAqIGBgYGh0bWxcbiAqIDx2YWwtdGV4dGFyZWEtaW5wdXRcbiAqICAgW3Byb3BzXT1cIntcbiAqICAgICBjb250cm9sOiBtZXNzYWdlQ29udHJvbCxcbiAqICAgICBwbGFjZWhvbGRlcjogJ0VudGVyIHlvdXIgbWVzc2FnZScsXG4gKiAgICAgcm93czogNFxuICogICB9XCJcbiAqID48L3ZhbC10ZXh0YXJlYS1pbnB1dD5cbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlIFdpdGggY291bnRlciBhbmQgdmFsaWRhdGlvblxuICogYGBgaHRtbFxuICogPHZhbC10ZXh0YXJlYS1pbnB1dFxuICogICBbcHJvcHNdPVwie1xuICogICAgIGNvbnRyb2w6IGJpb0NvbnRyb2wsXG4gKiAgICAgbGFiZWw6ICdCaW8nLFxuICogICAgIHBsYWNlaG9sZGVyOiAnVGVsbCB1cyBhYm91dCB5b3Vyc2VsZicsXG4gKiAgICAgbWF4TGVuZ3RoOiA1MDAsXG4gKiAgICAgc2hvd0NvdW50ZXI6IHRydWUsXG4gKiAgICAgY291bnRlckZvcm1hdDogJ3JlbWFpbmluZycsXG4gKiAgICAgYXV0b0dyb3c6IHRydWUsXG4gKiAgICAgc2hvd0Vycm9yczogdHJ1ZSxcbiAqICAgICBlcnJvcnM6IHsgbWF4bGVuZ3RoOiAnQmlvIGlzIHRvbyBsb25nJyB9XG4gKiAgIH1cIlxuICogPjwvdmFsLXRleHRhcmVhLWlucHV0PlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBUZXh0YXJlYUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBwcml2YXRlIHByZXNldHMgPSBpbmplY3QoUHJlc2V0U2VydmljZSk7XG5cbiAgLyoqXG4gICAqIFByZXNldCBuYW1lIHRvIGFwcGx5LiBQcmVzZXRzIGRlZmluZSByZXVzYWJsZSB0ZXh0YXJlYSBjb25maWd1cmF0aW9uc1xuICAgKiB0aGF0IGNhbiBiZSByZWdpc3RlcmVkIGF0IGFwcCBsZXZlbCB2aWEgcHJvdmlkZVZhbHRlY2hQcmVzZXRzKCkuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIDx2YWwtdGV4dGFyZWEtaW5wdXQgcHJlc2V0PVwiZm9ybS1maWVsZFwiIFtwcm9wc109XCJ7IGNvbnRyb2w6IGN0cmwgfVwiPjwvdmFsLXRleHRhcmVhLWlucHV0PlxuICAgKi9cbiAgQElucHV0KCkgcHJlc2V0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUZXh0YXJlYSBjb25maWd1cmF0aW9uIG9iamVjdC4gVmFsdWVzIGhlcmUgb3ZlcnJpZGUgcHJlc2V0IHZhbHVlcy5cbiAgICovXG4gIEBJbnB1dCgpIHByb3BzOiBQYXJ0aWFsPFRleHRhcmVhSW5wdXRNZXRhZGF0YT4gPSB7fTtcblxuICAvKipcbiAgICogUmVzb2x2ZWQgcHJvcHMgYWZ0ZXIgbWVyZ2luZyBwcmVzZXQgKyBleHBsaWNpdCBwcm9wcy5cbiAgICovXG4gIHJlc29sdmVkUHJvcHM6IFRleHRhcmVhSW5wdXRNZXRhZGF0YSA9IHt9IGFzIFRleHRhcmVhSW5wdXRNZXRhZGF0YTtcblxuICBzdGF0ZXMgPSBDb21wb25lbnRTdGF0ZXM7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yZXNvbHZlUHJvcHMoKTtcbiAgICB0aGlzLmFwcGx5RGVmYXVsdFZhbHVlKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXNbJ3ByZXNldCddIHx8IGNoYW5nZXNbJ3Byb3BzJ10pIHtcbiAgICAgIHRoaXMucmVzb2x2ZVByb3BzKCk7XG4gICAgICB0aGlzLmFwcGx5RGVmYXVsdFZhbHVlKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1lcmdlIHByZXNldCBjb25maWd1cmF0aW9uIHdpdGggZXhwbGljaXQgcHJvcHMuXG4gICAqIEV4cGxpY2l0IHByb3BzIHRha2UgcHJlY2VkZW5jZSBvdmVyIHByZXNldCB2YWx1ZXMuXG4gICAqL1xuICBwcml2YXRlIHJlc29sdmVQcm9wcygpOiB2b2lkIHtcbiAgICBjb25zdCBwcmVzZXRQcm9wcyA9IHRoaXMucHJlc2V0XG4gICAgICA/ICh0aGlzLnByZXNldHMuZ2V0KCd0ZXh0YXJlYUlucHV0JywgdGhpcy5wcmVzZXQpIGFzIFBhcnRpYWw8VGV4dGFyZWFJbnB1dE1ldGFkYXRhPilcbiAgICAgIDoge307XG5cbiAgICB0aGlzLnJlc29sdmVkUHJvcHMgPSB7XG4gICAgICAuLi5wcmVzZXRQcm9wcyxcbiAgICAgIC4uLnRoaXMucHJvcHMsXG4gICAgfSBhcyBUZXh0YXJlYUlucHV0TWV0YWRhdGE7XG4gIH1cblxuICBwcml2YXRlIGFwcGx5RGVmYXVsdFZhbHVlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnJlc29sdmVkUHJvcHM/LndpdGhEZWZhdWx0IHx8IHRoaXMucmVzb2x2ZWRQcm9wcz8udmFsdWUpIHtcbiAgICAgIGNvbnN0IGRlZmF1bHRWYWx1ZSA9XG4gICAgICAgIHR5cGVvZiB0aGlzLnJlc29sdmVkUHJvcHMud2l0aERlZmF1bHQgPT09ICdzdHJpbmcnID8gdGhpcy5yZXNvbHZlZFByb3BzLndpdGhEZWZhdWx0IDogdGhpcy5yZXNvbHZlZFByb3BzLnZhbHVlIHx8ICcnO1xuICAgICAgaWYgKHRoaXMucmVzb2x2ZWRQcm9wcy5jb250cm9sICYmICF0aGlzLnJlc29sdmVkUHJvcHMuY29udHJvbC52YWx1ZSkge1xuICAgICAgICB0aGlzLnJlc29sdmVkUHJvcHMuY29udHJvbC5zZXRWYWx1ZShkZWZhdWx0VmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldExhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmVzb2x2ZWRQcm9wcy5sYWJlbCB8fCAnJztcbiAgfVxuXG4gIGdldFBsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmVzb2x2ZWRQcm9wcy5wbGFjZWhvbGRlciB8fCAnJztcbiAgfVxuXG4gIGdldEhpbnQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvbHZlZFByb3BzLmhpbnQgfHwgJyc7XG4gIH1cblxuICBnZXQgaGFzRXJyb3IoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhKHRoaXMucmVzb2x2ZWRQcm9wcy5jb250cm9sPy50b3VjaGVkICYmIHRoaXMucmVzb2x2ZWRQcm9wcy5jb250cm9sPy5pbnZhbGlkKTtcbiAgfVxuXG4gIGdldEVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5yZXNvbHZlZFByb3BzLmNvbnRyb2w/LmVycm9ycyB8fCAhdGhpcy5yZXNvbHZlZFByb3BzLmVycm9ycykge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIGNvbnN0IGVycm9yS2V5cyA9IE9iamVjdC5rZXlzKHRoaXMucmVzb2x2ZWRQcm9wcy5jb250cm9sLmVycm9ycyk7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgZXJyb3JLZXlzKSB7XG4gICAgICBpZiAodGhpcy5yZXNvbHZlZFByb3BzLmVycm9yc1trZXldKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlc29sdmVkUHJvcHMuZXJyb3JzW2tleV07XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgZ2V0UmVtYWluaW5nQ2hhcnMoKTogbnVtYmVyIHtcbiAgICBjb25zdCBjdXJyZW50TGVuZ3RoID0gdGhpcy5yZXNvbHZlZFByb3BzLmNvbnRyb2w/LnZhbHVlPy5sZW5ndGggfHwgMDtcbiAgICByZXR1cm4gKHRoaXMucmVzb2x2ZWRQcm9wcy5tYXhMZW5ndGggfHwgMCkgLSBjdXJyZW50TGVuZ3RoO1xuICB9XG5cbiAgZ2V0UmVtYWluaW5nTGFiZWwoKTogc3RyaW5nIHtcbiAgICBjb25zdCByZW1haW5pbmcgPSB0aGlzLmdldFJlbWFpbmluZ0NoYXJzKCk7XG4gICAgcmV0dXJuIHJlbWFpbmluZyA9PT0gMSA/ICdjaGFyYWN0ZXIgcmVtYWluaW5nJyA6ICdjaGFyYWN0ZXJzIHJlbWFpbmluZyc7XG4gIH1cblxuICAvLyBDb3VudGVyIGZvcm1hdHRlciBmb3IgSW9uaWMncyBidWlsdC1pbiBjb3VudGVyXG4gIGNvdW50ZXJGb3JtYXR0ZXIgPSAoaW5wdXRMZW5ndGg6IG51bWJlciwgbWF4TGVuZ3RoOiBudW1iZXIpOiBzdHJpbmcgPT4ge1xuICAgIHJldHVybiBgJHtpbnB1dExlbmd0aH0vJHttYXhMZW5ndGh9YDtcbiAgfTtcbn1cbiJdfQ==
213
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL21vbGVjdWxlcy90ZXh0YXJlYS1pbnB1dC90ZXh0YXJlYS1pbnB1dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBb0MsTUFBTSxlQUFlLENBQUM7QUFDM0YsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7O0FBa0Q5Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQ0c7QUFDSCxNQUFNLE9BQU8sc0JBQXNCO0lBaEZuQztRQWlGVSxZQUFPLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBV3hDOztXQUVHO1FBQ00sVUFBSyxHQUFtQyxFQUFFLENBQUM7UUFFcEQ7O1dBRUc7UUFDSCxrQkFBYSxHQUEwQixFQUEyQixDQUFDO1FBRW5FLFdBQU0sR0FBRyxlQUFlLENBQUM7UUFnRnpCLGlEQUFpRDtRQUNqRCxxQkFBZ0IsR0FBRyxDQUFDLFdBQW1CLEVBQUUsU0FBaUIsRUFBVSxFQUFFO1lBQ3BFLE9BQU8sR0FBRyxXQUFXLElBQUksU0FBUyxFQUFFLENBQUM7UUFDdkMsQ0FBQyxDQUFDO0tBQ0g7SUFsRkMsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FB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Q0FBQztJQUM3RCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDM0MsT0FBTyxTQUFTLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsc0JBQXNCLENBQUM7SUFDMUUsQ0FBQzsrR0FwR1Usc0JBQXNCO21HQUF0QixzQkFBc0IsaUpBNUV2Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdDVCw4NkJBekNTLFlBQVksOEJBQUUsbUJBQW1CLGdvQkFBRSxXQUFXLGlhQUFFLE9BQU87OzRGQTZFdEQsc0JBQXNCO2tCQWhGbEMsU0FBUzsrQkFDRSxvQkFBb0IsY0FDbEIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxPQUFPLENBQUMsWUFDeEQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3Q1Q7OEJBOENRLE1BQU07c0JBQWQsS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IElvblRleHRhcmVhLCBJb25Ob3RlIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBQcmVzZXRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcHJlc2V0cyc7XG5pbXBvcnQgeyBDb21wb25lbnRTdGF0ZXMgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBUZXh0YXJlYUlucHV0TWV0YWRhdGEgfSBmcm9tICcuL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLXRleHRhcmVhLWlucHV0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgSW9uVGV4dGFyZWEsIElvbk5vdGVdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0YXJlYS1jb250YWluZXJcIiBbY2xhc3NdPVwicmVzb2x2ZWRQcm9wcy5jc3NDbGFzc1wiIFtjbGFzcy5oYXMtZXJyb3JdPVwiaGFzRXJyb3JcIj5cbiAgICAgIDxpb24tdGV4dGFyZWFcbiAgICAgICAgW2Zvcm1Db250cm9sXT1cInJlc29sdmVkUHJvcHMuY29udHJvbFwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJnZXRQbGFjZWhvbGRlcigpXCJcbiAgICAgICAgW2xhYmVsXT1cImdldExhYmVsKClcIlxuICAgICAgICBbbGFiZWxQbGFjZW1lbnRdPVwicmVzb2x2ZWRQcm9wcy5sYWJlbFBsYWNlbWVudCB8fCAnc3RhY2tlZCdcIlxuICAgICAgICBbZmlsbF09XCJyZXNvbHZlZFByb3BzLmZpbGwgfHwgJ291dGxpbmUnXCJcbiAgICAgICAgW2NvbG9yXT1cImhhc0Vycm9yID8gJ2RhbmdlcicgOiByZXNvbHZlZFByb3BzLmNvbG9yXCJcbiAgICAgICAgW3Jvd3NdPVwicmVzb2x2ZWRQcm9wcy5yb3dzIHx8IDRcIlxuICAgICAgICBbYXV0b0dyb3ddPVwicmVzb2x2ZWRQcm9wcy5hdXRvR3JvdyA/PyBmYWxzZVwiXG4gICAgICAgIFttYXhsZW5ndGhdPVwicmVzb2x2ZWRQcm9wcy5tYXhMZW5ndGhcIlxuICAgICAgICBbbWlubGVuZ3RoXT1cInJlc29sdmVkUHJvcHMubWluTGVuZ3RoXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cInJlc29sdmVkUHJvcHMuc3RhdGUgPT09IHN0YXRlcy5ESVNBQkxFRFwiXG4gICAgICAgIFtyZWFkb25seV09XCJyZXNvbHZlZFByb3BzLnN0YXRlID09PSBzdGF0ZXMuV09SS0lOR1wiXG4gICAgICAgIFtzcGVsbGNoZWNrXT1cInJlc29sdmVkUHJvcHMuc3BlbGxjaGVjayA/PyB0cnVlXCJcbiAgICAgICAgW2F1dG9jYXBpdGFsaXplXT1cInJlc29sdmVkUHJvcHMuYXV0b2NhcGl0YWxpemUgfHwgJ3NlbnRlbmNlcydcIlxuICAgICAgICBbaW5wdXRtb2RlXT1cInJlc29sdmVkUHJvcHMuaW5wdXRNb2RlIHx8ICd0ZXh0J1wiXG4gICAgICAgIFt3cmFwXT1cInJlc29sdmVkUHJvcHMud3JhcCB8fCAnc29mdCdcIlxuICAgICAgICBbY291bnRlcl09XCJyZXNvbHZlZFByb3BzLnNob3dDb3VudGVyICYmICEhcmVzb2x2ZWRQcm9wcy5tYXhMZW5ndGhcIlxuICAgICAgICBbY291bnRlckZvcm1hdHRlcl09XCJjb3VudGVyRm9ybWF0dGVyXCJcbiAgICAgICAgW2NsYXNzLm5vLXJlc2l6ZV09XCJyZXNvbHZlZFByb3BzLmRpc2FibGVSZXNpemVcIlxuICAgICAgPjwvaW9uLXRleHRhcmVhPlxuXG4gICAgICBAaWYgKHJlc29sdmVkUHJvcHMuc2hvd0NvdW50ZXIgJiYgcmVzb2x2ZWRQcm9wcy5tYXhMZW5ndGggJiYgcmVzb2x2ZWRQcm9wcy5jb3VudGVyRm9ybWF0ID09PSAncmVtYWluaW5nJykge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiY2hhci1jb3VudGVyIHJlbWFpbmluZ1wiPlxuICAgICAgICAgIHt7IGdldFJlbWFpbmluZ0NoYXJzKCkgfX0ge3sgZ2V0UmVtYWluaW5nTGFiZWwoKSB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cblxuICAgICAgQGlmIChyZXNvbHZlZFByb3BzLmhpbnQgJiYgIWhhc0Vycm9yKSB7XG4gICAgICAgIDxpb24tbm90ZSBjbGFzcz1cImhpbnRcIj57eyBnZXRIaW50KCkgfX08L2lvbi1ub3RlPlxuICAgICAgfVxuXG4gICAgICBAaWYgKGhhc0Vycm9yICYmIHJlc29sdmVkUHJvcHMuc2hvd0Vycm9ycykge1xuICAgICAgICA8aW9uLW5vdGUgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCIgY29sb3I9XCJkYW5nZXJcIj5cbiAgICAgICAgICB7eyBnZXRFcnJvck1lc3NhZ2UoKSB9fVxuICAgICAgICA8L2lvbi1ub3RlPlxuICAgICAgfVxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi90ZXh0YXJlYS1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxufSlcbi8qKlxuICogdmFsLXRleHRhcmVhLWlucHV0XG4gKlxuICogQSB0ZXh0YXJlYSBpbnB1dCBmaWVsZCB3aXRoIGNoYXJhY3RlciBjb3VudGVyLCBhdXRvLWdyb3csIGFuZCB2YWxpZGF0aW9uIHN1cHBvcnQuXG4gKlxuICogQGV4YW1wbGUgQmFzaWMgdXNhZ2VcbiAqIGBgYGh0bWxcbiAqIDx2YWwtdGV4dGFyZWEtaW5wdXRcbiAqICAgW3Byb3BzXT1cIntcbiAqICAgICBjb250cm9sOiBtZXNzYWdlQ29udHJvbCxcbiAqICAgICBwbGFjZWhvbGRlcjogJ0VudGVyIHlvdXIgbWVzc2FnZScsXG4gKiAgICAgcm93czogNFxuICogICB9XCJcbiAqID48L3ZhbC10ZXh0YXJlYS1pbnB1dD5cbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlIFdpdGggY291bnRlciBhbmQgdmFsaWRhdGlvblxuICogYGBgaHRtbFxuICogPHZhbC10ZXh0YXJlYS1pbnB1dFxuICogICBbcHJvcHNdPVwie1xuICogICAgIGNvbnRyb2w6IGJpb0NvbnRyb2wsXG4gKiAgICAgbGFiZWw6ICdCaW8nLFxuICogICAgIHBsYWNlaG9sZGVyOiAnVGVsbCB1cyBhYm91dCB5b3Vyc2VsZicsXG4gKiAgICAgbWF4TGVuZ3RoOiA1MDAsXG4gKiAgICAgc2hvd0NvdW50ZXI6IHRydWUsXG4gKiAgICAgY291bnRlckZvcm1hdDogJ3JlbWFpbmluZycsXG4gKiAgICAgYXV0b0dyb3c6IHRydWUsXG4gKiAgICAgc2hvd0Vycm9yczogdHJ1ZSxcbiAqICAgICBlcnJvcnM6IHsgbWF4bGVuZ3RoOiAnQmlvIGlzIHRvbyBsb25nJyB9XG4gKiAgIH1cIlxuICogPjwvdmFsLXRleHRhcmVhLWlucHV0PlxuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBUZXh0YXJlYUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBwcml2YXRlIHByZXNldHMgPSBpbmplY3QoUHJlc2V0U2VydmljZSk7XG5cbiAgLyoqXG4gICAqIFByZXNldCBuYW1lIHRvIGFwcGx5LiBQcmVzZXRzIGRlZmluZSByZXVzYWJsZSB0ZXh0YXJlYSBjb25maWd1cmF0aW9uc1xuICAgKiB0aGF0IGNhbiBiZSByZWdpc3RlcmVkIGF0IGFwcCBsZXZlbCB2aWEgcHJvdmlkZVZhbHRlY2hQcmVzZXRzKCkuXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIDx2YWwtdGV4dGFyZWEtaW5wdXQgcHJlc2V0PVwiZm9ybS1maWVsZFwiIFtwcm9wc109XCJ7IGNvbnRyb2w6IGN0cmwgfVwiPjwvdmFsLXRleHRhcmVhLWlucHV0PlxuICAgKi9cbiAgQElucHV0KCkgcHJlc2V0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUZXh0YXJlYSBjb25maWd1cmF0aW9uIG9iamVjdC4gVmFsdWVzIGhlcmUgb3ZlcnJpZGUgcHJlc2V0IHZhbHVlcy5cbiAgICovXG4gIEBJbnB1dCgpIHByb3BzOiBQYXJ0aWFsPFRleHRhcmVhSW5wdXRNZXRhZGF0YT4gPSB7fTtcblxuICAvKipcbiAgICogUmVzb2x2ZWQgcHJvcHMgYWZ0ZXIgbWVyZ2luZyBwcmVzZXQgKyBleHBsaWNpdCBwcm9wcy5cbiAgICovXG4gIHJlc29sdmVkUHJvcHM6IFRleHRhcmVhSW5wdXRNZXRhZGF0YSA9IHt9IGFzIFRleHRhcmVhSW5wdXRNZXRhZGF0YTtcblxuICBzdGF0ZXMgPSBDb21wb25lbnRTdGF0ZXM7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yZXNvbHZlUHJvcHMoKTtcbiAgICB0aGlzLmFwcGx5RGVmYXVsdFZhbHVlKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXNbJ3ByZXNldCddIHx8IGNoYW5nZXNbJ3Byb3BzJ10pIHtcbiAgICAgIHRoaXMucmVzb2x2ZVByb3BzKCk7XG4gICAgICB0aGlzLmFwcGx5RGVmYXVsdFZhbHVlKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1lcmdlIHByZXNldCBjb25maWd1cmF0aW9uIHdpdGggZXhwbGljaXQgcHJvcHMuXG4gICAqIEV4cGxpY2l0IHByb3BzIHRha2UgcHJlY2VkZW5jZSBvdmVyIHByZXNldCB2YWx1ZXMuXG4gICAqL1xuICBwcml2YXRlIHJlc29sdmVQcm9wcygpOiB2b2lkIHtcbiAgICBjb25zdCBwcmVzZXRQcm9wcyA9IHRoaXMucHJlc2V0XG4gICAgICA/ICh0aGlzLnByZXNldHMuZ2V0KCd0ZXh0YXJlYUlucHV0JywgdGhpcy5wcmVzZXQpIGFzIFBhcnRpYWw8VGV4dGFyZWFJbnB1dE1ldGFkYXRhPilcbiAgICAgIDoge307XG5cbiAgICB0aGlzLnJlc29sdmVkUHJvcHMgPSB7XG4gICAgICAuLi5wcmVzZXRQcm9wcyxcbiAgICAgIC4uLnRoaXMucHJvcHMsXG4gICAgfSBhcyBUZXh0YXJlYUlucHV0TWV0YWRhdGE7XG4gIH1cblxuICBwcml2YXRlIGFwcGx5RGVmYXVsdFZhbHVlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnJlc29sdmVkUHJvcHM/LndpdGhEZWZhdWx0IHx8IHRoaXMucmVzb2x2ZWRQcm9wcz8udmFsdWUpIHtcbiAgICAgIGNvbnN0IGRlZmF1bHRWYWx1ZSA9XG4gICAgICAgIHR5cGVvZiB0aGlzLnJlc29sdmVkUHJvcHMud2l0aERlZmF1bHQgPT09ICdzdHJpbmcnID8gdGhpcy5yZXNvbHZlZFByb3BzLndpdGhEZWZhdWx0IDogdGhpcy5yZXNvbHZlZFByb3BzLnZhbHVlIHx8ICcnO1xuICAgICAgaWYgKHRoaXMucmVzb2x2ZWRQcm9wcy5jb250cm9sICYmICF0aGlzLnJlc29sdmVkUHJvcHMuY29udHJvbC52YWx1ZSkge1xuICAgICAgICB0aGlzLnJlc29sdmVkUHJvcHMuY29udHJvbC5zZXRWYWx1ZShkZWZhdWx0VmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldExhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmVzb2x2ZWRQcm9wcy5sYWJlbCB8fCAnJztcbiAgfVxuXG4gIGdldFBsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucmVzb2x2ZWRQcm9wcy5wbGFjZWhvbGRlciB8fCAnJztcbiAgfVxuXG4gIGdldEhpbnQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvbHZlZFByb3BzLmhpbnQgfHwgJyc7XG4gIH1cblxuICBnZXQgaGFzRXJyb3IoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhKHRoaXMucmVzb2x2ZWRQcm9wcy5jb250cm9sPy50b3VjaGVkICYmIHRoaXMucmVzb2x2ZWRQcm9wcy5jb250cm9sPy5pbnZhbGlkKTtcbiAgfVxuXG4gIGdldEVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5yZXNvbHZlZFByb3BzLmNvbnRyb2w/LmVycm9ycyB8fCAhdGhpcy5yZXNvbHZlZFByb3BzLmVycm9ycykge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIGNvbnN0IGVycm9yS2V5cyA9IE9iamVjdC5rZXlzKHRoaXMucmVzb2x2ZWRQcm9wcy5jb250cm9sLmVycm9ycyk7XG4gICAgZm9yIChjb25zdCBrZXkgb2YgZXJyb3JLZXlzKSB7XG4gICAgICBpZiAodGhpcy5yZXNvbHZlZFByb3BzLmVycm9yc1trZXldKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlc29sdmVkUHJvcHMuZXJyb3JzW2tleV07XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgZ2V0UmVtYWluaW5nQ2hhcnMoKTogbnVtYmVyIHtcbiAgICBjb25zdCBjdXJyZW50TGVuZ3RoID0gdGhpcy5yZXNvbHZlZFByb3BzLmNvbnRyb2w/LnZhbHVlPy5sZW5ndGggfHwgMDtcbiAgICByZXR1cm4gKHRoaXMucmVzb2x2ZWRQcm9wcy5tYXhMZW5ndGggfHwgMCkgLSBjdXJyZW50TGVuZ3RoO1xuICB9XG5cbiAgZ2V0UmVtYWluaW5nTGFiZWwoKTogc3RyaW5nIHtcbiAgICBjb25zdCByZW1haW5pbmcgPSB0aGlzLmdldFJlbWFpbmluZ0NoYXJzKCk7XG4gICAgcmV0dXJuIHJlbWFpbmluZyA9PT0gMSA/ICdjaGFyYWN0ZXIgcmVtYWluaW5nJyA6ICdjaGFyYWN0ZXJzIHJlbWFpbmluZyc7XG4gIH1cblxuICAvLyBDb3VudGVyIGZvcm1hdHRlciBmb3IgSW9uaWMncyBidWlsdC1pbiBjb3VudGVyXG4gIGNvdW50ZXJGb3JtYXR0ZXIgPSAoaW5wdXRMZW5ndGg6IG51bWJlciwgbWF4TGVuZ3RoOiBudW1iZXIpOiBzdHJpbmcgPT4ge1xuICAgIHJldHVybiBgJHtpbnB1dExlbmd0aH0vJHttYXhMZW5ndGh9YDtcbiAgfTtcbn1cbiJdfQ==
@@ -54,7 +54,13 @@ export class ModalService {
54
54
  * @returns Promise resolving to the modal result
55
55
  */
56
56
  async open(options) {
57
- const size = MODAL_SIZES[options.size || 'medium'];
57
+ // A sheet modal (breakpoints present) gets its height from the breakpoints
58
+ // and must span the full viewport width. Applying a size preset's
59
+ // `--width`/`--height` here collapses the sheet (e.g. `auto` → shrink to
60
+ // content) or fights the breakpoint height. So when it's a sheet we skip
61
+ // the size preset entirely.
62
+ const isSheet = !!options.breakpoints?.breakpoints?.length;
63
+ const size = isSheet ? undefined : MODAL_SIZES[options.size || 'medium'];
58
64
  const cssClasses = this.buildCssClasses(options);
59
65
  const modal = await this.modalController.create({
60
66
  component: options.component,
@@ -80,11 +86,13 @@ export class ModalService {
80
86
  handle: options.breakpoints?.showHandle,
81
87
  handleBehavior: options.breakpoints?.handleBehavior,
82
88
  });
83
- // Apply custom size styles
84
- if (options.width || options.height || size) {
89
+ // Apply custom size styles. Skipped for sheet modals — their dimensions
90
+ // come from the breakpoints (Ionic spans the sheet full-width and uses the
91
+ // breakpoint values for height).
92
+ if (!isSheet && (options.width || options.height || size)) {
85
93
  const modalEl = modal;
86
- modalEl.style.setProperty('--width', options.width || size.width || 'auto');
87
- modalEl.style.setProperty('--height', options.height || size.height || '50vh');
94
+ modalEl.style.setProperty('--width', options.width || size?.width || 'auto');
95
+ modalEl.style.setProperty('--height', options.height || size?.height || '50vh');
88
96
  }
89
97
  await modal.present();
90
98
  const { data, role } = await modal.onDidDismiss();
@@ -209,4 +217,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
209
217
  providedIn: 'root',
210
218
  }]
211
219
  }], ctorParameters: () => [{ type: i1.ModalController }] });
212
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZXMvbW9kYWwvbW9kYWwuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFRLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFLTCxXQUFXLEVBQ1gsNEJBQTRCLEVBQzVCLDJCQUEyQixHQUM1QixNQUFNLFNBQVMsQ0FBQztBQUNqQixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBRS9FOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0NHO0FBSUgsTUFBTSxPQUFPLFlBQVk7SUFDdkIsWUFBb0IsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO0lBQUcsQ0FBQztJQUV4RDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLElBQUksQ0FBbUIsT0FBeUI7UUFDcEQsTUFBTSxJQUFJLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksUUFBUSxDQUFDLENBQUM7UUFDbkQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVqRCxNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDO1lBQzlDLFNBQVMsRUFBRSxPQUFPLENBQUMsU0FBUztZQUM1QixjQUFjLEVBQUU7Z0JBQ2QsR0FBRyxPQUFPLENBQUMsY0FBYztnQkFDekIseURBQXlEO2dCQUN6RCxTQUFTLEVBQUU7b0JBQ1QsT0FBTyxFQUFFLENBQUMsSUFBVSxFQUFFLElBQWEsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDO2lCQUNsRTthQUNGO1lBQ0QsRUFBRSxFQUFFLE9BQU8sQ0FBQyxFQUFFO1lBQ2QsWUFB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dCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb2RhbENvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7XG4gIE1vZGFsTWV0YWRhdGEsXG4gIFNpbXBsZU1vZGFsTWV0YWRhdGEsXG4gIE1vZGFsUmVzdWx0LFxuICBNb2RhbEJ1dHRvbixcbiAgTU9EQUxfU0laRVMsXG4gIERFRkFVTFRfTU9EQUxfQ09ORklSTV9CVVRUT04sXG4gIERFRkFVTFRfTU9EQUxfQ0FOQ0VMX0JVVFRPTixcbn0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBTaW1wbGVNb2RhbENvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL3NpbXBsZS1tb2RhbC1jb250ZW50LmNvbXBvbmVudCc7XG5cbi8qKlxuICogTW9kYWxTZXJ2aWNlXG4gKlxuICogQSBzZXJ2aWNlIGZvciBjcmVhdGluZyBhbmQgbWFuYWdpbmcgbW9kYWxzIHdpdGggdmFyaW91cyBjb25maWd1cmF0aW9ucy5cbiAqXG4gKiBAZXhhbXBsZSBCYXNpYyBjb21wb25lbnQgbW9kYWxcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHJlc3VsdCA9IGF3YWl0IG1vZGFsU2VydmljZS5vcGVuKHtcbiAqICAgY29tcG9uZW50OiBNeUZvcm1Db21wb25lbnQsXG4gKiAgIGNvbXBvbmVudFByb3BzOiB7IHVzZXJJZDogMTIzIH0sXG4gKiAgIGhlYWRlcjogeyB0aXRsZTogJ0VkaXQgVXNlcicsIHNob3dDbG9zZUJ1dHRvbjogdHJ1ZSB9LFxuICogICBzaXplOiAnbWVkaXVtJ1xuICogfSk7XG4gKlxuICogaWYgKHJlc3VsdC5yb2xlID09PSAnY29uZmlybScpIHtcbiAqICAgY29uc29sZS5sb2coJ1NhdmVkOicsIHJlc3VsdC5kYXRhKTtcbiAqIH1cbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlIFNpbXBsZSBjb250ZW50IG1vZGFsXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBhd2FpdCBtb2RhbFNlcnZpY2Uub3BlblNpbXBsZSh7XG4gKiAgIHRpdGxlOiAnVGVybXMgb2YgU2VydmljZScsXG4gKiAgIGNvbnRlbnQ6ICc8cD5UZXJtcyBjb250ZW50IGhlcmUuLi48L3A+JyxcbiAqICAgc2l6ZTogJ2xhcmdlJyxcbiAqICAgc2hvd0Nsb3NlQnV0dG9uOiB0cnVlXG4gKiB9KTtcbiAqIGBgYFxuICpcbiAqIEBleGFtcGxlIFNoZWV0IG1vZGFsIChtb2JpbGUpXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCByZXN1bHQgPSBhd2FpdCBtb2RhbFNlcnZpY2Uub3BlblNoZWV0KHtcbiAqICAgY29tcG9uZW50OiBGaWx0ZXJDb21wb25lbnQsXG4gKiAgIGJyZWFrcG9pbnRzOiB7XG4gKiAgICAgaW5pdGlhbEJyZWFrcG9pbnQ6IDAuNSxcbiAqICAgICBicmVha3BvaW50czogWzAsIDAuNSwgMV0sXG4gKiAgICAgc2hvd0hhbmRsZTogdHJ1ZVxuICogICB9XG4gKiB9KTtcbiAqIGBgYFxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTW9kYWxTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtb2RhbENvbnRyb2xsZXI6IE1vZGFsQ29udHJvbGxlcikge31cblxuICAvKipcbiAgICogT3BlbnMgYSBtb2RhbCB3aXRoIGEgY29tcG9uZW50LlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIE1vZGFsIGNvbmZpZ3VyYXRpb25cbiAgICogQHJldHVybnMgUHJvbWlzZSByZXNvbHZpbmcgdG8gdGhlIG1vZGFsIHJlc3VsdFxuICAgKi9cbiAgYXN5bmMgb3BlbjxUID0gYW55LCBSID0gYW55PihvcHRpb25zOiBNb2RhbE1ldGFkYXRhPFQ+KTogUHJvbWlzZTxNb2RhbFJlc3VsdDxSPj4ge1xuICAgIGNvbnN0IHNpemUgPSBNT0RBTF9TSVpFU1tvcHRpb25zLnNpemUgfHwgJ21lZGl1bSddO1xuICAgIGNvbnN0IGNzc0NsYXNzZXMgPSB0aGlzLmJ1aWxkQ3NzQ2xhc3NlcyhvcHRpb25zKTtcblxuICAgIGNvbnN0IG1vZGFsID0gYXdhaXQgdGhpcy5tb2RhbENvbnRyb2xsZXIuY3JlYXRlKHtcbiAgICAgIGNvbXBvbmVudDogb3B0aW9ucy5jb21wb25lbnQsXG4gICAgICBjb21wb25lbnRQcm9wczoge1xuICAgICAgICAuLi5vcHRpb25zLmNvbXBvbmVudFByb3BzLFxuICAgICAgICAvLyBQYXNzIG1vZGFsIHJlZmVyZW5jZSBmb3IgZGlzbWlzcyBmcm9tIHdpdGhpbiBjb21wb25lbnRcbiAgICAgICAgX21vZGFsUmVmOiB7XG4gICAgICAgICAgZGlzbWlzczogKGRhdGE/OiBhbnksIHJvbGU/OiBzdHJpbmcpID0+IG1vZGFsLmRpc21pc3MoZGF0YSwgcm9sZSksXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgaWQ6IG9wdGlvbnMuaWQsXG4gICAgICBzaG93QmFja2Ryb3A6IG9wdGlvbnMuc2hvd0JhY2tkcm9wID8/IHRydWUsXG4gICAgICBiYWNrZHJvcERpc21pc3M6IG9wdGlvbnMuYmFja2Ryb3BEaXNtaXNzID8/IHRydWUsXG4gICAgICBrZXlib2FyZENsb3NlOiBvcHRpb25zLmtleWJvYXJkQ2xvc2UgPz8gdHJ1ZSxcbiAgICAgIGNzc0NsYXNzOiBjc3NDbGFzc2VzLFxuICAgICAgbW9kZTogb3B0aW9ucy5tb2RlLFxuICAgICAgYW5pbWF0ZWQ6IG9wdGlvbnMuYW5pbWF0ZWQgPz8gdHJ1ZSxcbiAgICAgIGNhbkRpc21pc3M6IHRoaXMubm9ybWFsaXplQ2FuRGlzbWlzcyhvcHRpb25zLmNhbkRpc21pc3MgPz8gdHJ1ZSksXG4gICAgICBwcmVzZW50aW5nRWxlbWVudDogb3B0aW9ucy5wcmVzZW50aW5nRWxlbWVudCxcbiAgICAgIC8vIFNoZWV0IG1vZGFsIG9wdGlvbnNcbiAgICAgIGluaXRpYWxCcmVha3BvaW50OiBvcHRpb25zLmJyZWFrcG9pbnRzPy5pbml0aWFsQnJlYWtwb2ludCxcbiAgICAgIGJyZWFrcG9pbnRzOiBvcHRpb25zLmJyZWFrcG9pbnRzPy5icmVha3BvaW50cyxcbiAgICAgIGhhbmRsZTogb3B0aW9ucy5icmVha3BvaW50cz8uc2hvd0hhbmRsZSxcbiAgICAgIGhhbmRsZUJlaGF2aW9yOiBvcHRpb25zLmJyZWFrcG9pbnRzPy5oYW5kbGVCZWhhdmlvcixcbiAgICB9KTtcblxuICAgIC8vIEFwcGx5IGN1c3RvbSBzaXplIHN0eWxlc1xuICAgIGlmIChvcHRpb25zLndpZHRoIHx8IG9wdGlvbnMuaGVpZ2h0IHx8IHNpemUpIHtcbiAgICAgIGNvbnN0IG1vZGFsRWwgPSBtb2RhbCBhcyBIVE1MSW9uTW9kYWxFbGVtZW50O1xuICAgICAgbW9kYWxFbC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS13aWR0aCcsIG9wdGlvbnMud2lkdGggfHwgc2l6ZS53aWR0aCB8fCAnYXV0bycpO1xuICAgICAgbW9kYWxFbC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1oZWlnaHQnLCBvcHRpb25zLmhlaWdodCB8fCBzaXplLmhlaWdodCB8fCAnNTB2aCcpO1xuICAgIH1cblxuICAgIGF3YWl0IG1vZGFsLnByZXNlbnQoKTtcbiAgICBjb25zdCB7IGRhdGEsIHJvbGUgfSA9IGF3YWl0IG1vZGFsLm9uRGlkRGlzbWlzcygpO1xuXG4gICAgcmV0dXJuIHsgZGF0YSwgcm9sZSB9O1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW5zIGEgc2ltcGxlIGNvbnRlbnQgbW9kYWwgd2l0aG91dCBhIGN1c3RvbSBjb21wb25lbnQuXG4gICAqIFVzZXMgSW9uaWMncyBhbGVydC1saWtlIHN0eWxpbmcgYnV0IHdpdGggbW9kYWwgY2FwYWJpbGl0aWVzLlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIFNpbXBsZSBtb2RhbCBjb25maWd1cmF0aW9uXG4gICAqIEByZXR1cm5zIFByb21pc2UgcmVzb2x2aW5nIHRvIHRoZSBtb2RhbCByZXN1bHRcbiAgICovXG4gIGFzeW5jIG9wZW5TaW1wbGUob3B0aW9uczogU2ltcGxlTW9kYWxNZXRhZGF0YSk6IFByb21pc2U8TW9kYWxSZXN1bHQ+IHtcbiAgICByZXR1cm4gdGhpcy5vcGVuKHtcbiAgICAgIGNvbXBvbmVudDogU2ltcGxlTW9kYWxDb250ZW50Q29tcG9uZW50LFxuICAgICAgY29tcG9uZW50UHJvcHM6IHtcbiAgICAgICAgdGl0bGU6IG9wdGlvbnMudGl0bGUsXG4gICAgICAgIGNvbnRlbnQ6IG9wdGlvbnMuY29udGVudCxcbiAgICAgICAgYnV0dG9uczogb3B0aW9ucy5idXR0b25zIHx8IFtERUZBVUxUX01PREFMX0NBTkNFTF9CVVRUT04sIERFRkFVTFRfTU9EQUxfQ09ORklSTV9CVVRUT05dLFxuICAgICAgICBzaG93Q2xvc2VCdXR0b246IG9wdGlvbnMuc2hvd0Nsb3NlQnV0dG9uID8/IHRydWUsXG4gICAgICB9LFxuICAgICAgc2l6ZTogb3B0aW9ucy5zaXplIHx8ICdtZWRpdW0nLFxuICAgICAgYmFja2Ryb3BEaXNtaXNzOiBvcHRpb25zLmJhY2tkcm9wRGlzbWlzcyA/PyB0cnVlLFxuICAgICAgY3NzQ2xhc3M6IFsnc2ltcGxlLW1vZGFsJywgb3B0aW9ucy5jc3NDbGFzc10uZmlsdGVyKEJvb2xlYW4pLmpvaW4oJyAnKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyBhIGNvbmZpcm1hdGlvbiBtb2RhbC5cbiAgICogQHBhcmFtIHRpdGxlIC0gTW9kYWwgdGl0bGVcbiAgICogQHBhcmFtIG1lc3NhZ2UgLSBNb2RhbCBtZXNzYWdlXG4gICAqIEBwYXJhbSBjb25maXJtQnV0dG9uIC0gQ29uZmlybSBidXR0b24gY29uZmlnIChvcHRpb25hbClcbiAgICogQHBhcmFtIGNhbmNlbEJ1dHRvbiAtIENhbmNlbCBidXR0b24gY29uZmlnIChvcHRpb25hbClcbiAgICogQHJldHVybnMgUHJvbWlzZSByZXNvbHZpbmcgdG8gdHJ1ZSBpZiBjb25maXJtZWRcbiAgICovXG4gIGFzeW5jIGNvbmZpcm0oXG4gICAgdGl0bGU6IHN0cmluZyxcbiAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgY29uZmlybUJ1dHRvbj86IFBhcnRpYWw8TW9kYWxCdXR0b24+LFxuICAgIGNhbmNlbEJ1dHRvbj86IFBhcnRpYWw8TW9kYWxCdXR0b24+XG4gICk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMub3BlblNpbXBsZSh7XG4gICAgICB0aXRsZSxcbiAgICAgIGNvbnRlbnQ6IG1lc3NhZ2UsXG4gICAgICBzaXplOiAnc21hbGwnLFxuICAgICAgc2hvd0Nsb3NlQnV0dG9uOiBmYWxzZSxcbiAgICAgIGJhY2tkcm9wRGlzbWlzczogZmFsc2UsXG4gICAgICBidXR0b25zOiBbXG4gICAgICAgIHsgLi4uREVGQVVMVF9NT0RBTF9DQU5DRUxfQlVUVE9OLCAuLi5jYW5jZWxCdXR0b24gfSxcbiAgICAgICAgeyAuLi5ERUZBVUxUX01PREFMX0NPTkZJUk1fQlVUVE9OLCAuLi5jb25maXJtQnV0dG9uIH0sXG4gICAgICBdLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHJlc3VsdC5yb2xlID09PSAnY29uZmlybSc7XG4gIH1cblxuICAvKipcbiAgICogT3BlbnMgYSBzaGVldCBtb2RhbCAoaU9TLXN0eWxlIGJvdHRvbSBzaGVldCkuXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gTW9kYWwgY29uZmlndXJhdGlvbiB3aXRoIHNoZWV0LXNwZWNpZmljIG9wdGlvbnNcbiAgICogQHJldHVybnMgUHJvbWlzZSByZXNvbHZpbmcgdG8gdGhlIG1vZGFsIHJlc3VsdFxuICAgKi9cbiAgYXN5bmMgb3BlblNoZWV0PFQgPSBhbnksIFIgPSBhbnk+KFxuICAgIG9wdGlvbnM6IE9taXQ8TW9kYWxNZXRhZGF0YTxUPiwgJ2JyZWFrcG9pbnRzJz4gJiB7XG4gICAgICBpbml0aWFsQnJlYWtwb2ludD86IG51bWJlcjtcbiAgICAgIGJyZWFrcG9pbnRzPzogbnVtYmVyW107XG4gICAgICBzaG93SGFuZGxlPzogYm9vbGVhbjtcbiAgICB9XG4gICk6IFByb21pc2U8TW9kYWxSZXN1bHQ8Uj4+IHtcbiAgICByZXR1cm4gdGhpcy5vcGVuKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBicmVha3BvaW50czoge1xuICAgICAgICBpbml0aWFsQnJlYWtwb2ludDogb3B0aW9ucy5pbml0aWFsQnJlYWtwb2ludCA/PyAwLjUsXG4gICAgICAgIGJyZWFrcG9pbnRzOiBvcHRpb25zLmJyZWFrcG9pbnRzID8/IFswLCAwLjUsIDFdLFxuICAgICAgICBzaG93SGFuZGxlOiBvcHRpb25zLnNob3dIYW5kbGUgPz8gdHJ1ZSxcbiAgICAgIH0sXG4gICAgICBjc3NDbGFzczogWydzaGVldC1tb2RhbCcsIG9wdGlvbnMuY3NzQ2xhc3NdLmZpbHRlcihCb29sZWFuKS5qb2luKCcgJyksXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogT3BlbnMgYSBmdWxsc2NyZWVuIG1vZGFsLlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIE1vZGFsIGNvbmZpZ3VyYXRpb25cbiAgICogQHJldHVybnMgUHJvbWlzZSByZXNvbHZpbmcgdG8gdGhlIG1vZGFsIHJlc3VsdFxuICAgKi9cbiAgYXN5bmMgb3BlbkZ1bGxzY3JlZW48VCA9IGFueSwgUiA9IGFueT4ob3B0aW9uczogTW9kYWxNZXRhZGF0YTxUPik6IFByb21pc2U8TW9kYWxSZXN1bHQ8Uj4+IHtcbiAgICByZXR1cm4gdGhpcy5vcGVuKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBzaXplOiAnZnVsbCcsXG4gICAgICBjc3NDbGFzczogWydmdWxsc2NyZWVuLW1vZGFsJywgb3B0aW9ucy5jc3NDbGFzc10uZmlsdGVyKEJvb2xlYW4pLmpvaW4oJyAnKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEaXNtaXNzZXMgdGhlIHRvcC1tb3N0IG1vZGFsLlxuICAgKiBAcGFyYW0gZGF0YSAtIE9wdGlvbmFsIGRhdGEgdG8gcmV0dXJuXG4gICAqIEBwYXJhbSByb2xlIC0gT3B0aW9uYWwgcm9sZVxuICAgKi9cbiAgYXN5bmMgZGlzbWlzcyhkYXRhPzogYW55LCByb2xlPzogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMubW9kYWxDb250cm9sbGVyLmRpc21pc3MoZGF0YSwgcm9sZSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdG9wLW1vc3QgbW9kYWwuXG4gICAqL1xuICBhc3luYyBnZXRUb3AoKTogUHJvbWlzZTxIVE1MSW9uTW9kYWxFbGVtZW50IHwgdW5kZWZpbmVkPiB7XG4gICAgcmV0dXJuIHRoaXMubW9kYWxDb250cm9sbGVyLmdldFRvcCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBub3JtYWxpemVDYW5EaXNtaXNzKFxuICAgIGNhbkRpc21pc3M6IGJvb2xlYW4gfCAoKCkgPT4gYm9vbGVhbiB8IFByb21pc2U8Ym9vbGVhbj4pXG4gICk6IGJvb2xlYW4gfCAoKGRhdGE/OiBhbnksIHJvbGU/OiBzdHJpbmcpID0+IFByb21pc2U8Ym9vbGVhbj4pIHtcbiAgICBpZiAodHlwZW9mIGNhbkRpc21pc3MgPT09ICdib29sZWFuJykge1xuICAgICAgcmV0dXJuIGNhbkRpc21pc3M7XG4gICAgfVxuICAgIC8vIFdyYXAgdGhlIGZ1bmN0aW9uIHRvIGVuc3VyZSBpdCByZXR1cm5zIGEgUHJvbWlzZVxuICAgIHJldHVybiBhc3luYyAoZGF0YT86IGFueSwgcm9sZT86IHN0cmluZykgPT4ge1xuICAgICAgY29uc3QgcmVzdWx0ID0gY2FuRGlzbWlzcygpO1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShyZXN1bHQpO1xuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkQ3NzQ2xhc3NlcyhvcHRpb25zOiBNb2RhbE1ldGFkYXRhKTogc3RyaW5nIHtcbiAgICBjb25zdCBjbGFzc2VzOiBzdHJpbmdbXSA9IFsndmFsLW1vZGFsJ107XG5cbiAgICBpZiAob3B0aW9ucy5zaXplKSB7XG4gICAgICBjbGFzc2VzLnB1c2goYG1vZGFsLSR7b3B0aW9ucy5zaXplfWApO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmhlYWRlcikge1xuICAgICAgY2xhc3Nlcy5wdXNoKCdtb2RhbC13aXRoLWhlYWRlcicpO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmZvb3Rlcikge1xuICAgICAgY2xhc3Nlcy5wdXNoKCdtb2RhbC13aXRoLWZvb3RlcicpO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmNzc0NsYXNzKSB7XG4gICAgICBjbGFzc2VzLnB1c2gob3B0aW9ucy5jc3NDbGFzcyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNsYXNzZXMuam9pbignICcpO1xuICB9XG59XG4iXX0=
220
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZXMvbW9kYWwvbW9kYWwuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFRLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFLTCxXQUFXLEVBQ1gsNEJBQTRCLEVBQzVCLDJCQUEyQixHQUM1QixNQUFNLFNBQVMsQ0FBQztBQUNqQixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBRS9FOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0NHO0FBSUgsTUFBTSxPQUFPLFlBQVk7SUFDdkIsWUFBb0IsZUFBZ0M7UUFBaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO0lBQUcsQ0FBQztJQUV4RDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLElBQUksQ0FBbUIsT0FBeUI7UUFDcEQsMkVBQTJFO1FBQzNFLGtFQUFrRTtRQUNsRSx5RUFBeUU7UUFDekUseUVBQXlFO1FBQ3pFLDRCQUE0QjtRQUM1QixNQUFNLE9BQU8sR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsTUFBTSxDQUFDO1FBQzNELE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsQ0FBQztRQUN6RSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWpELE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUM7WUFDOUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxTQUFTO1lBQzVCLGNBQWMsRUFBRTtnQkFDZCxHQUFHLE9BQU8sQ0FBQyxj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QUM7WUFDckIsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDakMsQ0FBQztRQUVELE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMzQixDQUFDOytHQWpNVSxZQUFZO21IQUFaLFlBQVksY0FGWCxNQUFNOzs0RkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1vZGFsQ29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyL3N0YW5kYWxvbmUnO1xuaW1wb3J0IHtcbiAgTW9kYWxNZXRhZGF0YSxcbiAgU2ltcGxlTW9kYWxNZXRhZGF0YSxcbiAgTW9kYWxSZXN1bHQsXG4gIE1vZGFsQnV0dG9uLFxuICBNT0RBTF9TSVpFUyxcbiAgREVGQVVMVF9NT0RBTF9DT05GSVJNX0JVVFRPTixcbiAgREVGQVVMVF9NT0RBTF9DQU5DRUxfQlVUVE9OLFxufSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IFNpbXBsZU1vZGFsQ29udGVudENvbXBvbmVudCB9IGZyb20gJy4vc2ltcGxlLW1vZGFsLWNvbnRlbnQuY29tcG9uZW50JztcblxuLyoqXG4gKiBNb2RhbFNlcnZpY2VcbiAqXG4gKiBBIHNlcnZpY2UgZm9yIGNyZWF0aW5nIGFuZCBtYW5hZ2luZyBtb2RhbHMgd2l0aCB2YXJpb3VzIGNvbmZpZ3VyYXRpb25zLlxuICpcbiAqIEBleGFtcGxlIEJhc2ljIGNvbXBvbmVudCBtb2RhbFxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgcmVzdWx0ID0gYXdhaXQgbW9kYWxTZXJ2aWNlLm9wZW4oe1xuICogICBjb21wb25lbnQ6IE15Rm9ybUNvbXBvbmVudCxcbiAqICAgY29tcG9uZW50UHJvcHM6IHsgdXNlcklkOiAxMjMgfSxcbiAqICAgaGVhZGVyOiB7IHRpdGxlOiAnRWRpdCBVc2VyJywgc2hvd0Nsb3NlQnV0dG9uOiB0cnVlIH0sXG4gKiAgIHNpemU6ICdtZWRpdW0nXG4gKiB9KTtcbiAqXG4gKiBpZiAocmVzdWx0LnJvbGUgPT09ICdjb25maXJtJykge1xuICogICBjb25zb2xlLmxvZygnU2F2ZWQ6JywgcmVzdWx0LmRhdGEpO1xuICogfVxuICogYGBgXG4gKlxuICogQGV4YW1wbGUgU2ltcGxlIGNvbnRlbnQgbW9kYWxcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGF3YWl0IG1vZGFsU2VydmljZS5vcGVuU2ltcGxlKHtcbiAqICAgdGl0bGU6ICdUZXJtcyBvZiBTZXJ2aWNlJyxcbiAqICAgY29udGVudDogJzxwPlRlcm1zIGNvbnRlbnQgaGVyZS4uLjwvcD4nLFxuICogICBzaXplOiAnbGFyZ2UnLFxuICogICBzaG93Q2xvc2VCdXR0b246IHRydWVcbiAqIH0pO1xuICogYGBgXG4gKlxuICogQGV4YW1wbGUgU2hlZXQgbW9kYWwgKG1vYmlsZSlcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHJlc3VsdCA9IGF3YWl0IG1vZGFsU2VydmljZS5vcGVuU2hlZXQoe1xuICogICBjb21wb25lbnQ6IEZpbHRlckNvbXBvbmVudCxcbiAqICAgYnJlYWtwb2ludHM6IHtcbiAqICAgICBpbml0aWFsQnJlYWtwb2ludDogMC41LFxuICogICAgIGJyZWFrcG9pbnRzOiBbMCwgMC41LCAxXSxcbiAqICAgICBzaG93SGFuZGxlOiB0cnVlXG4gKiAgIH1cbiAqIH0pO1xuICogYGBgXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBNb2RhbFNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1vZGFsQ29udHJvbGxlcjogTW9kYWxDb250cm9sbGVyKSB7fVxuXG4gIC8qKlxuICAgKiBPcGVucyBhIG1vZGFsIHdpdGggYSBjb21wb25lbnQuXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gTW9kYWwgY29uZmlndXJhdGlvblxuICAgKiBAcmV0dXJucyBQcm9taXNlIHJlc29sdmluZyB0byB0aGUgbW9kYWwgcmVzdWx0XG4gICAqL1xuICBhc3luYyBvcGVuPFQgPSBhbnksIFIgPSBhbnk+KG9wdGlvbnM6IE1vZGFsTWV0YWRhdGE8VD4pOiBQcm9taXNlPE1vZGFsUmVzdWx0PFI+PiB7XG4gICAgLy8gQSBzaGVldCBtb2RhbCAoYnJlYWtwb2ludHMgcHJlc2VudCkgZ2V0cyBpdHMgaGVpZ2h0IGZyb20gdGhlIGJyZWFrcG9pbnRzXG4gICAgLy8gYW5kIG11c3Qgc3BhbiB0aGUgZnVsbCB2aWV3cG9ydCB3aWR0aC4gQXBwbHlpbmcgYSBzaXplIHByZXNldCdzXG4gICAgLy8gYC0td2lkdGhgL2AtLWhlaWdodGAgaGVyZSBjb2xsYXBzZXMgdGhlIHNoZWV0IChlLmcuIGBhdXRvYCDihpIgc2hyaW5rIHRvXG4gICAgLy8gY29udGVudCkgb3IgZmlnaHRzIHRoZSBicmVha3BvaW50IGhlaWdodC4gU28gd2hlbiBpdCdzIGEgc2hlZXQgd2Ugc2tpcFxuICAgIC8vIHRoZSBzaXplIHByZXNldCBlbnRpcmVseS5cbiAgICBjb25zdCBpc1NoZWV0ID0gISFvcHRpb25zLmJyZWFrcG9pbnRzPy5icmVha3BvaW50cz8ubGVuZ3RoO1xuICAgIGNvbnN0IHNpemUgPSBpc1NoZWV0ID8gdW5kZWZpbmVkIDogTU9EQUxfU0laRVNbb3B0aW9ucy5zaXplIHx8ICdtZWRpdW0nXTtcbiAgICBjb25zdCBjc3NDbGFzc2VzID0gdGhpcy5idWlsZENzc0NsYXNzZXMob3B0aW9ucyk7XG5cbiAgICBjb25zdCBtb2RhbCA9IGF3YWl0IHRoaXMubW9kYWxDb250cm9sbGVyLmNyZWF0ZSh7XG4gICAgICBjb21wb25lbnQ6IG9wdGlvbnMuY29tcG9uZW50LFxuICAgICAgY29tcG9uZW50UHJvcHM6IHtcbiAgICAgICAgLi4ub3B0aW9ucy5jb21wb25lbnRQcm9wcyxcbiAgICAgICAgLy8gUGFzcyBtb2RhbCByZWZlcmVuY2UgZm9yIGRpc21pc3MgZnJvbSB3aXRoaW4gY29tcG9uZW50XG4gICAgICAgIF9tb2RhbFJlZjoge1xuICAgICAgICAgIGRpc21pc3M6IChkYXRhPzogYW55LCByb2xlPzogc3RyaW5nKSA9PiBtb2RhbC5kaXNtaXNzKGRhdGEsIHJvbGUpLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIGlkOiBvcHRpb25zLmlkLFxuICAgICAgc2hvd0JhY2tkcm9wOiBvcHRpb25zLnNob3dCYWNrZHJvcCA/PyB0cnVlLFxuICAgICAgYmFja2Ryb3BEaXNtaXNzOiBvcHRpb25zLmJhY2tkcm9wRGlzbWlzcyA/PyB0cnVlLFxuICAgICAga2V5Ym9hcmRDbG9zZTogb3B0aW9ucy5rZXlib2FyZENsb3NlID8/IHRydWUsXG4gICAgICBjc3NDbGFzczogY3NzQ2xhc3NlcyxcbiAgICAgIG1vZGU6IG9wdGlvbnMubW9kZSxcbiAgICAgIGFuaW1hdGVkOiBvcHRpb25zLmFuaW1hdGVkID8/IHRydWUsXG4gICAgICBjYW5EaXNtaXNzOiB0aGlzLm5vcm1hbGl6ZUNhbkRpc21pc3Mob3B0aW9ucy5jYW5EaXNtaXNzID8/IHRydWUpLFxuICAgICAgcHJlc2VudGluZ0VsZW1lbnQ6IG9wdGlvbnMucHJlc2VudGluZ0VsZW1lbnQsXG4gICAgICAvLyBTaGVldCBtb2RhbCBvcHRpb25zXG4gICAgICBpbml0aWFsQnJlYWtwb2ludDogb3B0aW9ucy5icmVha3BvaW50cz8uaW5pdGlhbEJyZWFrcG9pbnQsXG4gICAgICBicmVha3BvaW50czogb3B0aW9ucy5icmVha3BvaW50cz8uYnJlYWtwb2ludHMsXG4gICAgICBoYW5kbGU6IG9wdGlvbnMuYnJlYWtwb2ludHM/LnNob3dIYW5kbGUsXG4gICAgICBoYW5kbGVCZWhhdmlvcjogb3B0aW9ucy5icmVha3BvaW50cz8uaGFuZGxlQmVoYXZpb3IsXG4gICAgfSk7XG5cbiAgICAvLyBBcHBseSBjdXN0b20gc2l6ZSBzdHlsZXMuIFNraXBwZWQgZm9yIHNoZWV0IG1vZGFscyDigJQgdGhlaXIgZGltZW5zaW9uc1xuICAgIC8vIGNvbWUgZnJvbSB0aGUgYnJlYWtwb2ludHMgKElvbmljIHNwYW5zIHRoZSBzaGVldCBmdWxsLXdpZHRoIGFuZCB1c2VzIHRoZVxuICAgIC8vIGJyZWFrcG9pbnQgdmFsdWVzIGZvciBoZWlnaHQpLlxuICAgIGlmICghaXNTaGVldCAmJiAob3B0aW9ucy53aWR0aCB8fCBvcHRpb25zLmhlaWdodCB8fCBzaXplKSkge1xuICAgICAgY29uc3QgbW9kYWxFbCA9IG1vZGFsIGFzIEhUTUxJb25Nb2RhbEVsZW1lbnQ7XG4gICAgICBtb2RhbEVsLnN0eWxlLnNldFByb3BlcnR5KCctLXdpZHRoJywgb3B0aW9ucy53aWR0aCB8fCBzaXplPy53aWR0aCB8fCAnYXV0bycpO1xuICAgICAgbW9kYWxFbC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1oZWlnaHQnLCBvcHRpb25zLmhlaWdodCB8fCBzaXplPy5oZWlnaHQgfHwgJzUwdmgnKTtcbiAgICB9XG5cbiAgICBhd2FpdCBtb2RhbC5wcmVzZW50KCk7XG4gICAgY29uc3QgeyBkYXRhLCByb2xlIH0gPSBhd2FpdCBtb2RhbC5vbkRpZERpc21pc3MoKTtcblxuICAgIHJldHVybiB7IGRhdGEsIHJvbGUgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyBhIHNpbXBsZSBjb250ZW50IG1vZGFsIHdpdGhvdXQgYSBjdXN0b20gY29tcG9uZW50LlxuICAgKiBVc2VzIElvbmljJ3MgYWxlcnQtbGlrZSBzdHlsaW5nIGJ1dCB3aXRoIG1vZGFsIGNhcGFiaWxpdGllcy5cbiAgICogQHBhcmFtIG9wdGlvbnMgLSBTaW1wbGUgbW9kYWwgY29uZmlndXJhdGlvblxuICAgKiBAcmV0dXJucyBQcm9taXNlIHJlc29sdmluZyB0byB0aGUgbW9kYWwgcmVzdWx0XG4gICAqL1xuICBhc3luYyBvcGVuU2ltcGxlKG9wdGlvbnM6IFNpbXBsZU1vZGFsTWV0YWRhdGEpOiBQcm9taXNlPE1vZGFsUmVzdWx0PiB7XG4gICAgcmV0dXJuIHRoaXMub3Blbih7XG4gICAgICBjb21wb25lbnQ6IFNpbXBsZU1vZGFsQ29udGVudENvbXBvbmVudCxcbiAgICAgIGNvbXBvbmVudFByb3BzOiB7XG4gICAgICAgIHRpdGxlOiBvcHRpb25zLnRpdGxlLFxuICAgICAgICBjb250ZW50OiBvcHRpb25zLmNvbnRlbnQsXG4gICAgICAgIGJ1dHRvbnM6IG9wdGlvbnMuYnV0dG9ucyB8fCBbREVGQVVMVF9NT0RBTF9DQU5DRUxfQlVUVE9OLCBERUZBVUxUX01PREFMX0NPTkZJUk1fQlVUVE9OXSxcbiAgICAgICAgc2hvd0Nsb3NlQnV0dG9uOiBvcHRpb25zLnNob3dDbG9zZUJ1dHRvbiA/PyB0cnVlLFxuICAgICAgfSxcbiAgICAgIHNpemU6IG9wdGlvbnMuc2l6ZSB8fCAnbWVkaXVtJyxcbiAgICAgIGJhY2tkcm9wRGlzbWlzczogb3B0aW9ucy5iYWNrZHJvcERpc21pc3MgPz8gdHJ1ZSxcbiAgICAgIGNzc0NsYXNzOiBbJ3NpbXBsZS1tb2RhbCcsIG9wdGlvbnMuY3NzQ2xhc3NdLmZpbHRlcihCb29sZWFuKS5qb2luKCcgJyksXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogT3BlbnMgYSBjb25maXJtYXRpb24gbW9kYWwuXG4gICAqIEBwYXJhbSB0aXRsZSAtIE1vZGFsIHRpdGxlXG4gICAqIEBwYXJhbSBtZXNzYWdlIC0gTW9kYWwgbWVzc2FnZVxuICAgKiBAcGFyYW0gY29uZmlybUJ1dHRvbiAtIENvbmZpcm0gYnV0dG9uIGNvbmZpZyAob3B0aW9uYWwpXG4gICAqIEBwYXJhbSBjYW5jZWxCdXR0b24gLSBDYW5jZWwgYnV0dG9uIGNvbmZpZyAob3B0aW9uYWwpXG4gICAqIEByZXR1cm5zIFByb21pc2UgcmVzb2x2aW5nIHRvIHRydWUgaWYgY29uZmlybWVkXG4gICAqL1xuICBhc3luYyBjb25maXJtKFxuICAgIHRpdGxlOiBzdHJpbmcsXG4gICAgbWVzc2FnZTogc3RyaW5nLFxuICAgIGNvbmZpcm1CdXR0b24/OiBQYXJ0aWFsPE1vZGFsQnV0dG9uPixcbiAgICBjYW5jZWxCdXR0b24/OiBQYXJ0aWFsPE1vZGFsQnV0dG9uPlxuICApOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLm9wZW5TaW1wbGUoe1xuICAgICAgdGl0bGUsXG4gICAgICBjb250ZW50OiBtZXNzYWdlLFxuICAgICAgc2l6ZTogJ3NtYWxsJyxcbiAgICAgIHNob3dDbG9zZUJ1dHRvbjogZmFsc2UsXG4gICAgICBiYWNrZHJvcERpc21pc3M6IGZhbHNlLFxuICAgICAgYnV0dG9uczogW1xuICAgICAgICB7IC4uLkRFRkFVTFRfTU9EQUxfQ0FOQ0VMX0JVVFRPTiwgLi4uY2FuY2VsQnV0dG9uIH0sXG4gICAgICAgIHsgLi4uREVGQVVMVF9NT0RBTF9DT05GSVJNX0JVVFRPTiwgLi4uY29uZmlybUJ1dHRvbiB9LFxuICAgICAgXSxcbiAgICB9KTtcblxuICAgIHJldHVybiByZXN1bHQucm9sZSA9PT0gJ2NvbmZpcm0nO1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW5zIGEgc2hlZXQgbW9kYWwgKGlPUy1zdHlsZSBib3R0b20gc2hlZXQpLlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIE1vZGFsIGNvbmZpZ3VyYXRpb24gd2l0aCBzaGVldC1zcGVjaWZpYyBvcHRpb25zXG4gICAqIEByZXR1cm5zIFByb21pc2UgcmVzb2x2aW5nIHRvIHRoZSBtb2RhbCByZXN1bHRcbiAgICovXG4gIGFzeW5jIG9wZW5TaGVldDxUID0gYW55LCBSID0gYW55PihcbiAgICBvcHRpb25zOiBPbWl0PE1vZGFsTWV0YWRhdGE8VD4sICdicmVha3BvaW50cyc+ICYge1xuICAgICAgaW5pdGlhbEJyZWFrcG9pbnQ/OiBudW1iZXI7XG4gICAgICBicmVha3BvaW50cz86IG51bWJlcltdO1xuICAgICAgc2hvd0hhbmRsZT86IGJvb2xlYW47XG4gICAgfVxuICApOiBQcm9taXNlPE1vZGFsUmVzdWx0PFI+PiB7XG4gICAgcmV0dXJuIHRoaXMub3Blbih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgYnJlYWtwb2ludHM6IHtcbiAgICAgICAgaW5pdGlhbEJyZWFrcG9pbnQ6IG9wdGlvbnMuaW5pdGlhbEJyZWFrcG9pbnQgPz8gMC41LFxuICAgICAgICBicmVha3BvaW50czogb3B0aW9ucy5icmVha3BvaW50cyA/PyBbMCwgMC41LCAxXSxcbiAgICAgICAgc2hvd0hhbmRsZTogb3B0aW9ucy5zaG93SGFuZGxlID8/IHRydWUsXG4gICAgICB9LFxuICAgICAgY3NzQ2xhc3M6IFsnc2hlZXQtbW9kYWwnLCBvcHRpb25zLmNzc0NsYXNzXS5maWx0ZXIoQm9vbGVhbikuam9pbignICcpLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW5zIGEgZnVsbHNjcmVlbiBtb2RhbC5cbiAgICogQHBhcmFtIG9wdGlvbnMgLSBNb2RhbCBjb25maWd1cmF0aW9uXG4gICAqIEByZXR1cm5zIFByb21pc2UgcmVzb2x2aW5nIHRvIHRoZSBtb2RhbCByZXN1bHRcbiAgICovXG4gIGFzeW5jIG9wZW5GdWxsc2NyZWVuPFQgPSBhbnksIFIgPSBhbnk+KG9wdGlvbnM6IE1vZGFsTWV0YWRhdGE8VD4pOiBQcm9taXNlPE1vZGFsUmVzdWx0PFI+PiB7XG4gICAgcmV0dXJuIHRoaXMub3Blbih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgc2l6ZTogJ2Z1bGwnLFxuICAgICAgY3NzQ2xhc3M6IFsnZnVsbHNjcmVlbi1tb2RhbCcsIG9wdGlvbnMuY3NzQ2xhc3NdLmZpbHRlcihCb29sZWFuKS5qb2luKCcgJyksXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogRGlzbWlzc2VzIHRoZSB0b3AtbW9zdCBtb2RhbC5cbiAgICogQHBhcmFtIGRhdGEgLSBPcHRpb25hbCBkYXRhIHRvIHJldHVyblxuICAgKiBAcGFyYW0gcm9sZSAtIE9wdGlvbmFsIHJvbGVcbiAgICovXG4gIGFzeW5jIGRpc21pc3MoZGF0YT86IGFueSwgcm9sZT86IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLm1vZGFsQ29udHJvbGxlci5kaXNtaXNzKGRhdGEsIHJvbGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHRvcC1tb3N0IG1vZGFsLlxuICAgKi9cbiAgYXN5bmMgZ2V0VG9wKCk6IFByb21pc2U8SFRNTElvbk1vZGFsRWxlbWVudCB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiB0aGlzLm1vZGFsQ29udHJvbGxlci5nZXRUb3AoKTtcbiAgfVxuXG4gIHByaXZhdGUgbm9ybWFsaXplQ2FuRGlzbWlzcyhcbiAgICBjYW5EaXNtaXNzOiBib29sZWFuIHwgKCgpID0+IGJvb2xlYW4gfCBQcm9taXNlPGJvb2xlYW4+KVxuICApOiBib29sZWFuIHwgKChkYXRhPzogYW55LCByb2xlPzogc3RyaW5nKSA9PiBQcm9taXNlPGJvb2xlYW4+KSB7XG4gICAgaWYgKHR5cGVvZiBjYW5EaXNtaXNzID09PSAnYm9vbGVhbicpIHtcbiAgICAgIHJldHVybiBjYW5EaXNtaXNzO1xuICAgIH1cbiAgICAvLyBXcmFwIHRoZSBmdW5jdGlvbiB0byBlbnN1cmUgaXQgcmV0dXJucyBhIFByb21pc2VcbiAgICByZXR1cm4gYXN5bmMgKGRhdGE/OiBhbnksIHJvbGU/OiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGNhbkRpc21pc3MoKTtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUocmVzdWx0KTtcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZENzc0NsYXNzZXMob3B0aW9uczogTW9kYWxNZXRhZGF0YSk6IHN0cmluZyB7XG4gICAgY29uc3QgY2xhc3Nlczogc3RyaW5nW10gPSBbJ3ZhbC1tb2RhbCddO1xuXG4gICAgaWYgKG9wdGlvbnMuc2l6ZSkge1xuICAgICAgY2xhc3Nlcy5wdXNoKGBtb2RhbC0ke29wdGlvbnMuc2l6ZX1gKTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucy5oZWFkZXIpIHtcbiAgICAgIGNsYXNzZXMucHVzaCgnbW9kYWwtd2l0aC1oZWFkZXInKTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucy5mb290ZXIpIHtcbiAgICAgIGNsYXNzZXMucHVzaCgnbW9kYWwtd2l0aC1mb290ZXInKTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucy5jc3NDbGFzcykge1xuICAgICAgY2xhc3Nlcy5wdXNoKG9wdGlvbnMuY3NzQ2xhc3MpO1xuICAgIH1cblxuICAgIHJldHVybiBjbGFzc2VzLmpvaW4oJyAnKTtcbiAgfVxufVxuIl19
@@ -1,4 +1,4 @@
1
- import { Injectable, signal } from '@angular/core';
1
+ import { DestroyRef, inject, Injectable, signal } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  /**
4
4
  * PageRefreshService — bus del pull-to-refresh estándar del factory.
@@ -74,4 +74,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
74
74
  type: Injectable,
75
75
  args: [{ providedIn: 'root' }]
76
76
  }] });
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1yZWZyZXNoLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL3BhZ2UtcmVmcmVzaC9wYWdlLXJlZnJlc2guc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFRbkQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0ErQkc7QUFFSCxNQUFNLE9BQU8sa0JBQWtCO0lBRC9CO1FBRVUsWUFBTyxHQUE4QixJQUFJLENBQUM7UUFFbEQ7OztXQUdHO1FBQ00sZUFBVSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztLQTZCckM7SUEzQkM7Ozs7T0FJRztJQUNILFFBQVEsQ0FBQyxPQUEyQjtRQUNsQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsVUFBVTtRQUNSLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsR0FBRztRQUNQLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFDMUIsTUFBTSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDdkIsQ0FBQzsrR0FuQ1Usa0JBQWtCO21IQUFsQixrQkFBa0IsY0FETCxNQUFNOzs0RkFDbkIsa0JBQWtCO2tCQUQ5QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIEhhbmRsZXIgZGUgcmVmcmVzaCBxdWUgcmVnaXN0cmEgdW5hIHDDoWdpbmEuIFB1ZWRlIHNlciBzeW5jIG8gYXN5bmMg4oCUXG4gKiBgdmFsLXBhZ2Utd3JhcHBlcmAgZXNwZXJhIChgYXdhaXRgKSBhIHF1ZSB0ZXJtaW5lIGFudGVzIGRlIGNlcnJhciBlbCBzcGlubmVyLlxuICovXG5leHBvcnQgdHlwZSBQYWdlUmVmcmVzaEhhbmRsZXIgPSAoKSA9PiBQcm9taXNlPHZvaWQ+IHwgdm9pZDtcblxuLyoqXG4gKiBQYWdlUmVmcmVzaFNlcnZpY2Ug4oCUIGJ1cyBkZWwgcHVsbC10by1yZWZyZXNoIGVzdMOhbmRhciBkZWwgZmFjdG9yeS5cbiAqXG4gKiAqKlBvciBxdcOpIGV4aXN0ZToqKiBgdmFsLXBhZ2Utd3JhcHBlcmAgcG9zZWUgdW4gw7puaWNvIGA8aW9uLWNvbnRlbnQ+YCB5IHRvZGFzXG4gKiBsYXMgcMOhZ2luYXMgc2UgcmVuZGVyaXphbiBkZW50cm8gdsOtYSBgPHJvdXRlci1vdXRsZXQ+YC4gVW4gYDxpb24tcmVmcmVzaGVyPmBcbiAqIHRpZW5lIHF1ZSB2aXZpciBkZW50cm8gZGUgZXNlIGBpb24tY29udGVudGAsIGFzw60gcXVlIGVsIHJlZnJlc2hlciBOTyBwdWVkZVxuICogZGVjbGFyYXJzZSBlbiBlbCB0ZW1wbGF0ZSBkZSBjYWRhIHDDoWdpbmEg4oCUIHZpdmUgdW5hIHNvbGEgdmV6IGVuXG4gKiBgdmFsLXBhZ2Utd3JhcHBlcmAuIEVzdGUgc2VydmljaW8gZXMgZWwgcHVlbnRlOiBsYSBww6FnaW5hIGFjdGl2YSByZWdpc3RyYVxuICogKnF1w6kgaGFjZXIqIGFsIHJlZnJlc2NhcjsgZWwgcGFnZS13cmFwcGVyIGRpc3BhcmEgZWwgZ2VzdG8geSBjaWVycmEgZWwgc3Bpbm5lci5cbiAqXG4gKiAqKlVzbyBlbiB1bmEgcMOhZ2luYSoqICh2ZXIgYGZyb250ZW5kL0NMQVVERS5tZGAg4oCUIGVzIGVsIHBhdHLDs24gZXN0w6FuZGFyKTpcbiAqXG4gKiBgYGB0c1xuICogZXhwb3J0IGNsYXNzIE1pUGFnZSBpbXBsZW1lbnRzIFZpZXdXaWxsRW50ZXIsIFZpZXdXaWxsTGVhdmUge1xuICogICBwcml2YXRlIHBhZ2VSZWZyZXNoID0gaW5qZWN0KFBhZ2VSZWZyZXNoU2VydmljZSk7XG4gKlxuICogICBpb25WaWV3V2lsbEVudGVyKCk6IHZvaWQge1xuICogICAgIHRoaXMucGFnZVJlZnJlc2gucmVnaXN0ZXIoKCkgPT4gdGhpcy5yZWxvYWQoKSk7XG4gKiAgIH1cbiAqICAgaW9uVmlld1dpbGxMZWF2ZSgpOiB2b2lkIHtcbiAqICAgICB0aGlzLnBhZ2VSZWZyZXNoLnVucmVnaXN0ZXIoKTtcbiAqICAgfVxuICpcbiAqICAgcHJpdmF0ZSBhc3luYyByZWxvYWQoKTogUHJvbWlzZTx2b2lkPiB7XG4gKiAgICAgLy8gcmUtZmV0Y2ggLyByZS1zdXNjcmliaXIgc3RyZWFtcyAvIGV0Yy5cbiAqICAgfVxuICogfVxuICogYGBgXG4gKlxuICogUMOhZ2luYXMgcXVlIG5vIGxsYW1hbiBgcmVnaXN0ZXIoKWAgc2ltcGxlbWVudGUgbm8gbXVlc3RyYW4gcmVmcmVzaGVyIOKAlFxuICogb3B0LWluLCBzaW4gaW1wYWN0by5cbiAqL1xuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBQYWdlUmVmcmVzaFNlcnZpY2Uge1xuICBwcml2YXRlIGhhbmRsZXI6IFBhZ2VSZWZyZXNoSGFuZGxlciB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBgdHJ1ZWAgY3VhbmRvIGhheSB1bmEgcMOhZ2luYSBjb24gaGFuZGxlciByZWdpc3RyYWRvLiBgdmFsLXBhZ2Utd3JhcHBlcmBcbiAgICogcmVuZGVyaXphIGVsIGA8dmFsLXJlZnJlc2hlcj5gIHPDs2xvIGN1YW5kbyBlc3RvIGVzIGB0cnVlYC5cbiAgICovXG4gIHJlYWRvbmx5IGhhc0hhbmRsZXIgPSBzaWduYWwoZmFsc2UpO1xuXG4gIC8qKlxuICAgKiBSZWdpc3RyYSBlbCBoYW5kbGVyIGRlIHJlZnJlc2ggZGUgbGEgcMOhZ2luYSBhY3RpdmEuIExsYW1hciBlblxuICAgKiBgaW9uVmlld1dpbGxFbnRlcmAuIFNpIHlhIGhhYsOtYSB1bm8sIGxvIHJlZW1wbGF6YSAoc8OzbG8gaGF5IHVuYSBww6FnaW5hXG4gICAqIGFjdGl2YSBhIGxhIHZleiBlbiBlbCByb3V0ZXItb3V0bGV0IGRlIElvbmljKS5cbiAgICovXG4gIHJlZ2lzdGVyKGhhbmRsZXI6IFBhZ2VSZWZyZXNoSGFuZGxlcik6IHZvaWQge1xuICAgIHRoaXMuaGFuZGxlciA9IGhhbmRsZXI7XG4gICAgdGhpcy5oYXNIYW5kbGVyLnNldCh0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBRdWl0YSBlbCBoYW5kbGVyLiBMbGFtYXIgZW4gYGlvblZpZXdXaWxsTGVhdmVgIHBhcmEgcXVlIGVsIHJlZnJlc2hlclxuICAgKiBkZXNhcGFyZXpjYSBhbCBzYWxpciBkZSBsYSB2aXN0YS5cbiAgICovXG4gIHVucmVnaXN0ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5oYW5kbGVyID0gbnVsbDtcbiAgICB0aGlzLmhhc0hhbmRsZXIuc2V0KGZhbHNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFamVjdXRhIGVsIGhhbmRsZXIgcmVnaXN0cmFkbyB5IGVzcGVyYSBhIHF1ZSB0ZXJtaW5lLiBMbyBpbnZvY2FcbiAgICogYHZhbC1wYWdlLXdyYXBwZXJgIGFsIGRldGVjdGFyIGVsIGdlc3RvIGRlIHB1bGwuIE5vLW9wIHNpIG5vIGhheSBoYW5kbGVyLlxuICAgKi9cbiAgYXN5bmMgcnVuKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghdGhpcy5oYW5kbGVyKSByZXR1cm47XG4gICAgYXdhaXQgdGhpcy5oYW5kbGVyKCk7XG4gIH1cbn1cbiJdfQ==
77
+ /**
78
+ * Conecta una página al pull-to-refresh estándar en UNA línea, sin lifecycle
79
+ * hooks manuales: registra el handler y lo desregistra al destruir la página
80
+ * (vía `DestroyRef`).
81
+ *
82
+ * DEBE llamarse en un injection context (constructor o field initializer).
83
+ *
84
+ * @example
85
+ * ```ts
86
+ * export class MiPage {
87
+ * private data = createRefreshableStream(() => this.svc.getX());
88
+ * readonly items = this.data.data;
89
+ *
90
+ * constructor() {
91
+ * connectPageRefresh(() => this.data.reload());
92
+ * }
93
+ * }
94
+ * ```
95
+ *
96
+ * Reemplaza el patrón `ngOnInit`→`register` / `ngOnDestroy`→`unregister`.
97
+ */
98
+ export function connectPageRefresh(handler) {
99
+ const svc = inject(PageRefreshService);
100
+ const destroyRef = inject(DestroyRef);
101
+ svc.register(handler);
102
+ destroyRef.onDestroy(() => svc.unregister());
103
+ }
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1yZWZyZXNoLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL3BhZ2UtcmVmcmVzaC9wYWdlLXJlZnJlc2guc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVF2RTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQStCRztBQUVILE1BQU0sT0FBTyxrQkFBa0I7SUFEL0I7UUFFVSxZQUFPLEdBQThCLElBQUksQ0FBQztRQUVsRDs7O1dBR0c7UUFDTSxlQUFVLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBNkJyQztJQTNCQzs7OztPQUlHO0lBQ0gsUUFBUSxDQUFDLE9BQTJCO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxVQUFVO1FBQ1IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxHQUFHO1FBQ1AsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTztRQUMxQixNQUFNLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN2QixDQUFDOytHQW5DVSxrQkFBa0I7bUhBQWxCLGtCQUFrQixjQURMLE1BQU07OzRGQUNuQixrQkFBa0I7a0JBRDlCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOztBQXVDbEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBQ0gsTUFBTSxVQUFVLGtCQUFrQixDQUFDLE9BQTJCO0lBQzVELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3ZDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN0QyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3RCLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7QUFDL0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlc3Ryb3lSZWYsIGluamVjdCwgSW5qZWN0YWJsZSwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogSGFuZGxlciBkZSByZWZyZXNoIHF1ZSByZWdpc3RyYSB1bmEgcMOhZ2luYS4gUHVlZGUgc2VyIHN5bmMgbyBhc3luYyDigJRcbiAqIGB2YWwtcGFnZS13cmFwcGVyYCBlc3BlcmEgKGBhd2FpdGApIGEgcXVlIHRlcm1pbmUgYW50ZXMgZGUgY2VycmFyIGVsIHNwaW5uZXIuXG4gKi9cbmV4cG9ydCB0eXBlIFBhZ2VSZWZyZXNoSGFuZGxlciA9ICgpID0+IFByb21pc2U8dm9pZD4gfCB2b2lkO1xuXG4vKipcbiAqIFBhZ2VSZWZyZXNoU2VydmljZSDigJQgYnVzIGRlbCBwdWxsLXRvLXJlZnJlc2ggZXN0w6FuZGFyIGRlbCBmYWN0b3J5LlxuICpcbiAqICoqUG9yIHF1w6kgZXhpc3RlOioqIGB2YWwtcGFnZS13cmFwcGVyYCBwb3NlZSB1biDDum5pY28gYDxpb24tY29udGVudD5gIHkgdG9kYXNcbiAqIGxhcyBww6FnaW5hcyBzZSByZW5kZXJpemFuIGRlbnRybyB2w61hIGA8cm91dGVyLW91dGxldD5gLiBVbiBgPGlvbi1yZWZyZXNoZXI+YFxuICogdGllbmUgcXVlIHZpdmlyIGRlbnRybyBkZSBlc2UgYGlvbi1jb250ZW50YCwgYXPDrSBxdWUgZWwgcmVmcmVzaGVyIE5PIHB1ZWRlXG4gKiBkZWNsYXJhcnNlIGVuIGVsIHRlbXBsYXRlIGRlIGNhZGEgcMOhZ2luYSDigJQgdml2ZSB1bmEgc29sYSB2ZXogZW5cbiAqIGB2YWwtcGFnZS13cmFwcGVyYC4gRXN0ZSBzZXJ2aWNpbyBlcyBlbCBwdWVudGU6IGxhIHDDoWdpbmEgYWN0aXZhIHJlZ2lzdHJhXG4gKiAqcXXDqSBoYWNlciogYWwgcmVmcmVzY2FyOyBlbCBwYWdlLXdyYXBwZXIgZGlzcGFyYSBlbCBnZXN0byB5IGNpZXJyYSBlbCBzcGlubmVyLlxuICpcbiAqICoqVXNvIGVuIHVuYSBww6FnaW5hKiogKHZlciBgZnJvbnRlbmQvQ0xBVURFLm1kYCDigJQgZXMgZWwgcGF0csOzbiBlc3TDoW5kYXIpOlxuICpcbiAqIGBgYHRzXG4gKiBleHBvcnQgY2xhc3MgTWlQYWdlIGltcGxlbWVudHMgVmlld1dpbGxFbnRlciwgVmlld1dpbGxMZWF2ZSB7XG4gKiAgIHByaXZhdGUgcGFnZVJlZnJlc2ggPSBpbmplY3QoUGFnZVJlZnJlc2hTZXJ2aWNlKTtcbiAqXG4gKiAgIGlvblZpZXdXaWxsRW50ZXIoKTogdm9pZCB7XG4gKiAgICAgdGhpcy5wYWdlUmVmcmVzaC5yZWdpc3RlcigoKSA9PiB0aGlzLnJlbG9hZCgpKTtcbiAqICAgfVxuICogICBpb25WaWV3V2lsbExlYXZlKCk6IHZvaWQge1xuICogICAgIHRoaXMucGFnZVJlZnJlc2gudW5yZWdpc3RlcigpO1xuICogICB9XG4gKlxuICogICBwcml2YXRlIGFzeW5jIHJlbG9hZCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAqICAgICAvLyByZS1mZXRjaCAvIHJlLXN1c2NyaWJpciBzdHJlYW1zIC8gZXRjLlxuICogICB9XG4gKiB9XG4gKiBgYGBcbiAqXG4gKiBQw6FnaW5hcyBxdWUgbm8gbGxhbWFuIGByZWdpc3RlcigpYCBzaW1wbGVtZW50ZSBubyBtdWVzdHJhbiByZWZyZXNoZXIg4oCUXG4gKiBvcHQtaW4sIHNpbiBpbXBhY3RvLlxuICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFBhZ2VSZWZyZXNoU2VydmljZSB7XG4gIHByaXZhdGUgaGFuZGxlcjogUGFnZVJlZnJlc2hIYW5kbGVyIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIGB0cnVlYCBjdWFuZG8gaGF5IHVuYSBww6FnaW5hIGNvbiBoYW5kbGVyIHJlZ2lzdHJhZG8uIGB2YWwtcGFnZS13cmFwcGVyYFxuICAgKiByZW5kZXJpemEgZWwgYDx2YWwtcmVmcmVzaGVyPmAgc8OzbG8gY3VhbmRvIGVzdG8gZXMgYHRydWVgLlxuICAgKi9cbiAgcmVhZG9ubHkgaGFzSGFuZGxlciA9IHNpZ25hbChmYWxzZSk7XG5cbiAgLyoqXG4gICAqIFJlZ2lzdHJhIGVsIGhhbmRsZXIgZGUgcmVmcmVzaCBkZSBsYSBww6FnaW5hIGFjdGl2YS4gTGxhbWFyIGVuXG4gICAqIGBpb25WaWV3V2lsbEVudGVyYC4gU2kgeWEgaGFiw61hIHVubywgbG8gcmVlbXBsYXphIChzw7NsbyBoYXkgdW5hIHDDoWdpbmFcbiAgICogYWN0aXZhIGEgbGEgdmV6IGVuIGVsIHJvdXRlci1vdXRsZXQgZGUgSW9uaWMpLlxuICAgKi9cbiAgcmVnaXN0ZXIoaGFuZGxlcjogUGFnZVJlZnJlc2hIYW5kbGVyKTogdm9pZCB7XG4gICAgdGhpcy5oYW5kbGVyID0gaGFuZGxlcjtcbiAgICB0aGlzLmhhc0hhbmRsZXIuc2V0KHRydWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFF1aXRhIGVsIGhhbmRsZXIuIExsYW1hciBlbiBgaW9uVmlld1dpbGxMZWF2ZWAgcGFyYSBxdWUgZWwgcmVmcmVzaGVyXG4gICAqIGRlc2FwYXJlemNhIGFsIHNhbGlyIGRlIGxhIHZpc3RhLlxuICAgKi9cbiAgdW5yZWdpc3RlcigpOiB2b2lkIHtcbiAgICB0aGlzLmhhbmRsZXIgPSBudWxsO1xuICAgIHRoaXMuaGFzSGFuZGxlci5zZXQoZmFsc2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIEVqZWN1dGEgZWwgaGFuZGxlciByZWdpc3RyYWRvIHkgZXNwZXJhIGEgcXVlIHRlcm1pbmUuIExvIGludm9jYVxuICAgKiBgdmFsLXBhZ2Utd3JhcHBlcmAgYWwgZGV0ZWN0YXIgZWwgZ2VzdG8gZGUgcHVsbC4gTm8tb3Agc2kgbm8gaGF5IGhhbmRsZXIuXG4gICAqL1xuICBhc3luYyBydW4oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCF0aGlzLmhhbmRsZXIpIHJldHVybjtcbiAgICBhd2FpdCB0aGlzLmhhbmRsZXIoKTtcbiAgfVxufVxuXG4vKipcbiAqIENvbmVjdGEgdW5hIHDDoWdpbmEgYWwgcHVsbC10by1yZWZyZXNoIGVzdMOhbmRhciBlbiBVTkEgbMOtbmVhLCBzaW4gbGlmZWN5Y2xlXG4gKiBob29rcyBtYW51YWxlczogcmVnaXN0cmEgZWwgaGFuZGxlciB5IGxvIGRlc3JlZ2lzdHJhIGFsIGRlc3RydWlyIGxhIHDDoWdpbmFcbiAqICh2w61hIGBEZXN0cm95UmVmYCkuXG4gKlxuICogREVCRSBsbGFtYXJzZSBlbiB1biBpbmplY3Rpb24gY29udGV4dCAoY29uc3RydWN0b3IgbyBmaWVsZCBpbml0aWFsaXplcikuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBleHBvcnQgY2xhc3MgTWlQYWdlIHtcbiAqICAgcHJpdmF0ZSBkYXRhID0gY3JlYXRlUmVmcmVzaGFibGVTdHJlYW0oKCkgPT4gdGhpcy5zdmMuZ2V0WCgpKTtcbiAqICAgcmVhZG9ubHkgaXRlbXMgPSB0aGlzLmRhdGEuZGF0YTtcbiAqXG4gKiAgIGNvbnN0cnVjdG9yKCkge1xuICogICAgIGNvbm5lY3RQYWdlUmVmcmVzaCgoKSA9PiB0aGlzLmRhdGEucmVsb2FkKCkpO1xuICogICB9XG4gKiB9XG4gKiBgYGBcbiAqXG4gKiBSZWVtcGxhemEgZWwgcGF0csOzbiBgbmdPbkluaXRg4oaSYHJlZ2lzdGVyYCAvIGBuZ09uRGVzdHJveWDihpJgdW5yZWdpc3RlcmAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb25uZWN0UGFnZVJlZnJlc2goaGFuZGxlcjogUGFnZVJlZnJlc2hIYW5kbGVyKTogdm9pZCB7XG4gIGNvbnN0IHN2YyA9IGluamVjdChQYWdlUmVmcmVzaFNlcnZpY2UpO1xuICBjb25zdCBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICBzdmMucmVnaXN0ZXIoaGFuZGxlcik7XG4gIGRlc3Ryb3lSZWYub25EZXN0cm95KCgpID0+IHN2Yy51bnJlZ2lzdGVyKCkpO1xufVxuIl19
@@ -2,5 +2,5 @@
2
2
  * Current version of valtech-components.
3
3
  * This is automatically updated during the publish process.
4
4
  */
5
- export const VERSION = '2.0.813';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDdXJyZW50IHZlcnNpb24gb2YgdmFsdGVjaC1jb21wb25lbnRzLlxuICogVGhpcyBpcyBhdXRvbWF0aWNhbGx5IHVwZGF0ZWQgZHVyaW5nIHRoZSBwdWJsaXNoIHByb2Nlc3MuXG4gKi9cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzIuMC44MTMnO1xuIl19
5
+ export const VERSION = '2.0.815';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDdXJyZW50IHZlcnNpb24gb2YgdmFsdGVjaC1jb21wb25lbnRzLlxuICogVGhpcyBpcyBhdXRvbWF0aWNhbGx5IHVwZGF0ZWQgZHVyaW5nIHRoZSBwdWJsaXNoIHByb2Nlc3MuXG4gKi9cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzIuMC44MTUnO1xuIl19
@@ -53,7 +53,7 @@ import 'prismjs/components/prism-json';
53
53
  * Current version of valtech-components.
54
54
  * This is automatically updated during the publish process.
55
55
  */
56
- const VERSION = '2.0.813';
56
+ const VERSION = '2.0.815';
57
57
 
58
58
  /**
59
59
  * Servicio para gestionar presets de componentes.
@@ -13955,7 +13955,7 @@ class TextareaInputComponent {
13955
13955
  </ion-note>
13956
13956
  }
13957
13957
  </div>
13958
- `, isInline: true, styles: [":host{display:block;width:100%}.textarea-container{position:relative}.textarea-container ion-textarea{--background: var(--ion-background-color, #fff);--padding-start: 12px;--padding-end: 12px;--padding-top: 12px;--padding-bottom: 12px}.textarea-container ion-textarea.no-resize textarea{resize:none!important}.textarea-container.has-error ion-textarea{--border-color: var(--ion-color-danger);--highlight-color: var(--ion-color-danger)}.char-counter{font-size:12px;color:var(--ion-color-medium);text-align:right;margin-top:4px;padding-right:4px}.char-counter.remaining{color:var(--ion-color-medium-shade)}.hint{display:block;font-size:12px;color:var(--ion-color-medium);margin-top:4px;padding-left:4px}.error-message{display:block;font-size:12px;margin-top:4px;padding-left:4px}ion-textarea::part(counter){font-size:12px;color:var(--ion-color-medium)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i1$3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: IonTextarea, selector: "ion-textarea", inputs: ["autoGrow", "autocapitalize", "autofocus", "clearOnEdit", "color", "cols", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "maxlength", "minlength", "mode", "name", "placeholder", "readonly", "required", "rows", "shape", "spellcheck", "value", "wrap"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }] }); }
13958
+ `, isInline: true, styles: ["@charset \"UTF-8\";:host{display:block;width:100%}.textarea-container{position:relative}.textarea-container ion-textarea{--background: var(--ion-background-color, #fff);--padding-start: 12px;--padding-end: 12px;--padding-top: 12px;--padding-bottom: 12px}.textarea-container ion-textarea.no-resize textarea{resize:none!important}.textarea-container.has-error ion-textarea{--border-color: var(--ion-color-danger);--highlight-color: var(--ion-color-danger)}.char-counter{font-size:12px;color:var(--ion-color-medium);text-align:right;margin-top:4px;padding-right:4px}.char-counter.remaining{color:var(--ion-color-medium-shade)}.hint{display:block;font-size:12px;color:var(--ion-color-dark);margin-top:4px;padding-left:4px}.error-message{display:block;font-size:12px;margin-top:4px;padding-left:4px}ion-textarea::part(counter){font-size:12px;color:var(--ion-color-medium)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i1$3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: IonTextarea, selector: "ion-textarea", inputs: ["autoGrow", "autocapitalize", "autofocus", "clearOnEdit", "color", "cols", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "maxlength", "minlength", "mode", "name", "placeholder", "readonly", "required", "rows", "shape", "spellcheck", "value", "wrap"] }, { kind: "component", type: IonNote, selector: "ion-note", inputs: ["color", "mode"] }] }); }
13959
13959
  }
13960
13960
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TextareaInputComponent, decorators: [{
13961
13961
  type: Component,
@@ -13999,7 +13999,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
13999
13999
  </ion-note>
14000
14000
  }
14001
14001
  </div>
14002
- `, styles: [":host{display:block;width:100%}.textarea-container{position:relative}.textarea-container ion-textarea{--background: var(--ion-background-color, #fff);--padding-start: 12px;--padding-end: 12px;--padding-top: 12px;--padding-bottom: 12px}.textarea-container ion-textarea.no-resize textarea{resize:none!important}.textarea-container.has-error ion-textarea{--border-color: var(--ion-color-danger);--highlight-color: var(--ion-color-danger)}.char-counter{font-size:12px;color:var(--ion-color-medium);text-align:right;margin-top:4px;padding-right:4px}.char-counter.remaining{color:var(--ion-color-medium-shade)}.hint{display:block;font-size:12px;color:var(--ion-color-medium);margin-top:4px;padding-left:4px}.error-message{display:block;font-size:12px;margin-top:4px;padding-left:4px}ion-textarea::part(counter){font-size:12px;color:var(--ion-color-medium)}\n"] }]
14002
+ `, styles: ["@charset \"UTF-8\";:host{display:block;width:100%}.textarea-container{position:relative}.textarea-container ion-textarea{--background: var(--ion-background-color, #fff);--padding-start: 12px;--padding-end: 12px;--padding-top: 12px;--padding-bottom: 12px}.textarea-container ion-textarea.no-resize textarea{resize:none!important}.textarea-container.has-error ion-textarea{--border-color: var(--ion-color-danger);--highlight-color: var(--ion-color-danger)}.char-counter{font-size:12px;color:var(--ion-color-medium);text-align:right;margin-top:4px;padding-right:4px}.char-counter.remaining{color:var(--ion-color-medium-shade)}.hint{display:block;font-size:12px;color:var(--ion-color-dark);margin-top:4px;padding-left:4px}.error-message{display:block;font-size:12px;margin-top:4px;padding-left:4px}ion-textarea::part(counter){font-size:12px;color:var(--ion-color-medium)}\n"] }]
14003
14003
  }], propDecorators: { preset: [{
14004
14004
  type: Input
14005
14005
  }], props: [{
@@ -36878,6 +36878,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
36878
36878
  type: Injectable,
36879
36879
  args: [{ providedIn: 'root' }]
36880
36880
  }] });
36881
+ /**
36882
+ * Conecta una página al pull-to-refresh estándar en UNA línea, sin lifecycle
36883
+ * hooks manuales: registra el handler y lo desregistra al destruir la página
36884
+ * (vía `DestroyRef`).
36885
+ *
36886
+ * DEBE llamarse en un injection context (constructor o field initializer).
36887
+ *
36888
+ * @example
36889
+ * ```ts
36890
+ * export class MiPage {
36891
+ * private data = createRefreshableStream(() => this.svc.getX());
36892
+ * readonly items = this.data.data;
36893
+ *
36894
+ * constructor() {
36895
+ * connectPageRefresh(() => this.data.reload());
36896
+ * }
36897
+ * }
36898
+ * ```
36899
+ *
36900
+ * Reemplaza el patrón `ngOnInit`→`register` / `ngOnDestroy`→`unregister`.
36901
+ */
36902
+ function connectPageRefresh(handler) {
36903
+ const svc = inject(PageRefreshService);
36904
+ const destroyRef = inject(DestroyRef);
36905
+ svc.register(handler);
36906
+ destroyRef.onDestroy(() => svc.unregister());
36907
+ }
36881
36908
 
36882
36909
  /**
36883
36910
  * val-page-wrapper
@@ -37679,7 +37706,13 @@ class ModalService {
37679
37706
  * @returns Promise resolving to the modal result
37680
37707
  */
37681
37708
  async open(options) {
37682
- const size = MODAL_SIZES[options.size || 'medium'];
37709
+ // A sheet modal (breakpoints present) gets its height from the breakpoints
37710
+ // and must span the full viewport width. Applying a size preset's
37711
+ // `--width`/`--height` here collapses the sheet (e.g. `auto` → shrink to
37712
+ // content) or fights the breakpoint height. So when it's a sheet we skip
37713
+ // the size preset entirely.
37714
+ const isSheet = !!options.breakpoints?.breakpoints?.length;
37715
+ const size = isSheet ? undefined : MODAL_SIZES[options.size || 'medium'];
37683
37716
  const cssClasses = this.buildCssClasses(options);
37684
37717
  const modal = await this.modalController.create({
37685
37718
  component: options.component,
@@ -37705,11 +37738,13 @@ class ModalService {
37705
37738
  handle: options.breakpoints?.showHandle,
37706
37739
  handleBehavior: options.breakpoints?.handleBehavior,
37707
37740
  });
37708
- // Apply custom size styles
37709
- if (options.width || options.height || size) {
37741
+ // Apply custom size styles. Skipped for sheet modals — their dimensions
37742
+ // come from the breakpoints (Ionic spans the sheet full-width and uses the
37743
+ // breakpoint values for height).
37744
+ if (!isSheet && (options.width || options.height || size)) {
37710
37745
  const modalEl = modal;
37711
- modalEl.style.setProperty('--width', options.width || size.width || 'auto');
37712
- modalEl.style.setProperty('--height', options.height || size.height || '50vh');
37746
+ modalEl.style.setProperty('--width', options.width || size?.width || 'auto');
37747
+ modalEl.style.setProperty('--height', options.height || size?.height || '50vh');
37713
37748
  }
37714
37749
  await modal.present();
37715
37750
  const { data, role } = await modal.onDidDismiss();
@@ -45727,5 +45762,5 @@ function buildFooterLinks(links, t, resolver) {
45727
45762
  * Generated bundle index. Do not edit.
45728
45763
  */
45729
45764
 
45730
- export { ACTION_CARD_DEFAULTS, AD_SIZE_MAP, API_TABLE_COLUMN_LABELS, ARTICLE_SPACING, AVATAR_UPLOAD_DEFAULTS, AccordionComponent, ActionCardComponent, ActionHeaderComponent, ActionType, AdSlotComponent, AdsLoaderService, AdsService, AlertBoxComponent, AnalyticsErrorHandler, AnalyticsRouterTracker, AnalyticsService, AppConfigService, AppVersionService, ArticleBuilder, ArticleComponent, AuthBackgroundComponent, AuthService, AuthStateService, AuthStorageService, AuthSyncService, AvatarComponent, AvatarUploadComponent, BOTTOM_NAV_DEFAULTS, BannerComponent, BaseDefault, BlogPostBuilder, BottomNavComponent, BoxComponent, BreadcrumbComponent, ButtonComponent, ButtonGroupComponent, CALLOUT_LABELS, CHEV_KEYS, COMMON_COUNTRY_CODES, COMMON_CURRENCIES, CURRENCY_INFO, CardComponent, CardSection, CardType, CardsCarouselComponent, CheckInputComponent, CheckboxRadioInputComponent, ChipGroupComponent, ClearDefault, ClearDefaultBlock, ClearDefaultFull, ClearDefaultRound, ClearDefaultRoundBlock, ClearDefaultRoundFull, CodeDisplayComponent, CommandDisplayComponent, CommentComponent, CommentInputComponent, CommentSectionComponent, CompanyFooterComponent, ComponentStates, ConfirmationDialogService, ContainerComponent, ContentLoaderComponent, ContentReactionComponent, ContentTransformer, CookieBannerComponent, CountdownComponent, CurrencyInputComponent, DEFAULT_ADS_CONFIG, DEFAULT_APP_CONFIG_SERVICE_CONFIG, DEFAULT_APP_VERSION_SERVICE_CONFIG, DEFAULT_AUTH_CONFIG, DEFAULT_BACK_HEADER, DEFAULT_CANCEL_BUTTON, DEFAULT_CHECK_INTERVAL_MS, DEFAULT_CONFIRM_BUTTON, DEFAULT_COUNTDOWN_LABELS, DEFAULT_COUNTDOWN_LABELS_EN, DEFAULT_DONATION_CONFIG, DEFAULT_EMPTY_STATE, DEFAULT_EMULATOR_CONFIG, DEFAULT_FEEDBACK_CONFIG, DEFAULT_FEEDBACK_TYPE_OPTIONS, DEFAULT_HOME_HEADER, DEFAULT_INFINITE_LIST_METADATA, DEFAULT_MODAL_CANCEL_BUTTON, DEFAULT_MODAL_CONFIRM_BUTTON, DEFAULT_PAGE_SIZE_OPTIONS, DEFAULT_PLATFORMS, DEFAULT_REFRESHER_METADATA, DEFAULT_SKELETON_CONFIG, DataTableComponent, DateInputComponent, DateRangeInputComponent, DetailSkeletonComponent, DeviceService, DisplayComponent, DividerComponent, DocsApiTableComponent, DocsBreadcrumbComponent, DocsBuilder, DocsCalloutComponent, DocsCodeExampleComponent, DocsLayoutComponent, DocsNavLinksComponent, DocsNavigationService, DocsPageComponent, DocsSearchComponent, DocsSectionComponent, DocsShellComponent, DocsSidebarComponent, DocsTocComponent, DonationService, DownloadService, EmailInputComponent, ExpandableTextComponent, FEATURES_LIST_DEFAULTS, FabComponent, FaqComponent, FeaturesListComponent, FeedbackFormComponent, FeedbackService, FileInputComponent, FirebaseService, FirestoreCollectionFactory, FirestoreService, FooterComponent, FooterLinksComponent, FormComponent, FormFooterComponent, FormSkeletonComponent, FunHeaderComponent, GlassComponent, GlowCardComponent, GlowComponent, GridSkeletonComponent, HANDOFF_ROUTE_PARAM, HANDOFF_TOKEN_PARAM, HandoffService, HeaderComponent, HintComponent, HorizontalScrollComponent, HourInputComponent, HrefComponent, I18nService, IMAGE_DEFAULTS, INITIAL_AUTH_STATE, INITIAL_MFA_STATE, Icon, IconComponent, IconService, ImageComponent, ImageCropComponent, ImageService, InAppBrowserService, InfiniteListComponent, InfoComponent, InputI18nHelper, InputType, ItemListComponent, LANG_STORAGE_KEY$1 as LANG_STORAGE_KEY, LEGAL_CONTENT_CONFIG, LOGIN_DEFAULTS, LanguageSelectorComponent, LayeredCardComponent, LegalContentService, LegalLinkService, LinkComponent, LinkProcessorService, LinkedProvidersComponent, LinksAccordionComponent, LinksCakeComponent, ListSkeletonComponent, LoadingDirective, LocalStorageService, LocaleService, LoginComponent, MODAL_SIZES, MOTIF_KEYS, MOTION, MaintenancePageComponent, MarkdownArticleParserService, MenuComponent, MessagingService, MetaService, ModalService, MultiSelectSearchComponent, NavigationService, NewsBuilder, NoContentComponent, NotesBoxComponent, NotificationActionService, NotificationsService, NumberFromToComponent, NumberInputComponent, NumberStepperComponent, OAUTH_PROVIDERS_INFO, OAuthCallbackComponent, OAuthService, OrgSwitchService, OutlineDefault, OutlineDefaultBlock, OutlineDefaultFull, OutlineDefaultRound, OutlineDefaultRoundBlock, OutlineDefaultRoundFull, PATTERN_MOTIFS, PATTERN_PALETTES, PLATFORM_CONFIGS, PageContentComponent, PageLinksComponent, PageRefreshService, PageTemplateComponent, PageWrapperComponent, PaginationComponent, PaginationService, PasswordInputComponent, PatternComponent, PhoneInputComponent, PillComponent, PinInputComponent, PlainCodeBoxComponent, PopoverSelectorComponent, PreferencesService, PresetService, PriceTagComponent, PrimarySolidBlockButton, PrimarySolidBlockHrefButton, PrimarySolidBlockIconButton, PrimarySolidBlockIconHrefButton, PrimarySolidDefaultRoundButton, PrimarySolidDefaultRoundHrefButton, PrimarySolidDefaultRoundIconButton, PrimarySolidDefaultRoundIconHrefButton, PrimarySolidFullButton, PrimarySolidFullHrefButton, PrimarySolidFullIconButton, PrimarySolidFullIconHrefButton, PrimarySolidLargeRoundButton, PrimarySolidLargeRoundHrefButton, PrimarySolidLargeRoundIconButton, PrimarySolidLargeRoundIconHrefButton, PrimarySolidSmallRoundButton, PrimarySolidSmallRoundHrefButton, PrimarySolidSmallRoundIconButton, PrimarySolidSmallRoundIconHrefButton, ProcessLinksPipe, ProfileSkeletonComponent, ProgressBarComponent, ProgressRingComponent, ProgressStatusComponent, PrompterComponent, QR_PRESETS, QrCodeComponent, QrGeneratorService, QueryBuilder, QuoteBoxComponent, RadioInputComponent, RangeInputComponent, RatingComponent, RefresherComponent, RightsFooterComponent, RotatingTextComponent, SHAPE_KEYS, SKELETON_LAYOUT_DEFAULT_ROWS, SKELETON_PRESETS, SOLID_KEYS, SearchSelectorComponent, SearchbarComponent, SecondarySolidBlockButton, SecondarySolidBlockHrefButton, SecondarySolidBlockIconButton, SecondarySolidBlockIconHrefButton, SecondarySolidDefaultRoundButton, SecondarySolidDefaultRoundHrefButton, SecondarySolidDefaultRoundIconButton, SecondarySolidDefaultRoundIconHrefButton, SecondarySolidFullButton, SecondarySolidFullHrefButton, SecondarySolidFullIconButton, SecondarySolidFullIconHrefButton, SecondarySolidLargeRoundButton, SecondarySolidLargeRoundHrefButton, SecondarySolidLargeRoundIconButton, SecondarySolidLargeRoundIconHrefButton, SecondarySolidSmallRoundButton, SecondarySolidSmallRoundHrefButton, SecondarySolidSmallRoundIconButton, SecondarySolidSmallRoundIconHrefButton, SegmentControlComponent, SelectSearchComponent, SessionService, ShareButtonsComponent, SimpleComponent, SkeletonComponent, SkeletonLayoutComponent, SkeletonService, SolidBlockButton, SolidDefault, SolidDefaultBlock, SolidDefaultButton, SolidDefaultFull, SolidDefaultRound, SolidDefaultRoundBlock, SolidDefaultRoundButton, SolidDefaultRoundFull, SolidFullButton, SolidLargeButton, SolidLargeRoundButton, SolidSmallButton, SolidSmallRoundButton, StatsCardComponent, StepperComponent, StorageService, SwipeCarouselComponent, TRI_KEYS, TabbedContentComponent, TableSkeletonComponent, TabsComponent, Terminal404Component, TestimonialCardComponent, TestimonialCarouselComponent, TextComponent, TextInputComponent, TextareaInputComponent, ThemeOption, ThemeService, TimelineComponent, TitleBlockComponent, TitleComponent, ToastService, ToggleInputComponent, TokenService, ToolbarActionType, ToolbarComponent, TranslatePipe, TypedCollection, UPDATE_BANNER_DEFAULT_CONTENT, UPDATE_BANNER_I18N_NAMESPACE, UpdateBannerComponent, UserAvatarComponent, UsernameInputComponent, VALTECH_ADS_CONFIG, VALTECH_APP_CONFIG, VALTECH_APP_VERSION, VALTECH_AUTH_CONFIG, VALTECH_COMPANY_LINKS, VALTECH_DEFAULT_CONTENT, VALTECH_DONATION_CONFIG, VALTECH_FEEDBACK_CONFIG, VALTECH_FIREBASE_CONFIG, VALTECH_FOOTER_I18N, VALTECH_FOOTER_LOGO, VALTECH_LANGUAGE_SELECTOR, VALTECH_LEGAL_CONFIG, VALTECH_SOCIAL_LINKS, VERSION, WizardComponent, WizardFooterComponent, applyDefaultValueToControl, authGuard, authInterceptor, blogPost, buildFooterLinks, buildPath, collections, createFirebaseConfig, createGlowCardProps, createInitialPaginationState, createNumberFromToField, createRefreshableStream, createTitleProps, docs, extractPathParams, generatePatternTiles, generateRandomTile, getAppInfo, getAppVersion, getCollectionPath, getDocumentId, getTimeOfDayKey, goToTop, guestGuard, hasEmulators, isAtEnd, isCollectionPath, isDocumentPath, isEmulatorMode, isValidPath, joinPath, maxLength, mulberry32, news, parseMarkdownArticle, permissionGuard, permissionGuardFromRoute, provideLegalContent, provideValtechAds, provideValtechAppConfig, provideValtechAppVersion, provideValtechAuth, provideValtechAuthInterceptor, provideValtechDonations, provideValtechFeedback, provideValtechFirebase, provideValtechI18n, provideValtechLegal, provideValtechPresets, provideValtechSkeleton, query, renderPatternSvgInner, replaceSpecialChars, resolveColor, resolveInputDefaultValue, roleGuard, storagePaths, superAdminGuard, toArticle };
45765
+ export { ACTION_CARD_DEFAULTS, AD_SIZE_MAP, API_TABLE_COLUMN_LABELS, ARTICLE_SPACING, AVATAR_UPLOAD_DEFAULTS, AccordionComponent, ActionCardComponent, ActionHeaderComponent, ActionType, AdSlotComponent, AdsLoaderService, AdsService, AlertBoxComponent, AnalyticsErrorHandler, AnalyticsRouterTracker, AnalyticsService, AppConfigService, AppVersionService, ArticleBuilder, ArticleComponent, AuthBackgroundComponent, AuthService, AuthStateService, AuthStorageService, AuthSyncService, AvatarComponent, AvatarUploadComponent, BOTTOM_NAV_DEFAULTS, BannerComponent, BaseDefault, BlogPostBuilder, BottomNavComponent, BoxComponent, BreadcrumbComponent, ButtonComponent, ButtonGroupComponent, CALLOUT_LABELS, CHEV_KEYS, COMMON_COUNTRY_CODES, COMMON_CURRENCIES, CURRENCY_INFO, CardComponent, CardSection, CardType, CardsCarouselComponent, CheckInputComponent, CheckboxRadioInputComponent, ChipGroupComponent, ClearDefault, ClearDefaultBlock, ClearDefaultFull, ClearDefaultRound, ClearDefaultRoundBlock, ClearDefaultRoundFull, CodeDisplayComponent, CommandDisplayComponent, CommentComponent, CommentInputComponent, CommentSectionComponent, CompanyFooterComponent, ComponentStates, ConfirmationDialogService, ContainerComponent, ContentLoaderComponent, ContentReactionComponent, ContentTransformer, CookieBannerComponent, CountdownComponent, CurrencyInputComponent, DEFAULT_ADS_CONFIG, DEFAULT_APP_CONFIG_SERVICE_CONFIG, DEFAULT_APP_VERSION_SERVICE_CONFIG, DEFAULT_AUTH_CONFIG, DEFAULT_BACK_HEADER, DEFAULT_CANCEL_BUTTON, DEFAULT_CHECK_INTERVAL_MS, DEFAULT_CONFIRM_BUTTON, DEFAULT_COUNTDOWN_LABELS, DEFAULT_COUNTDOWN_LABELS_EN, DEFAULT_DONATION_CONFIG, DEFAULT_EMPTY_STATE, DEFAULT_EMULATOR_CONFIG, DEFAULT_FEEDBACK_CONFIG, DEFAULT_FEEDBACK_TYPE_OPTIONS, DEFAULT_HOME_HEADER, DEFAULT_INFINITE_LIST_METADATA, DEFAULT_MODAL_CANCEL_BUTTON, DEFAULT_MODAL_CONFIRM_BUTTON, DEFAULT_PAGE_SIZE_OPTIONS, DEFAULT_PLATFORMS, DEFAULT_REFRESHER_METADATA, DEFAULT_SKELETON_CONFIG, DataTableComponent, DateInputComponent, DateRangeInputComponent, DetailSkeletonComponent, DeviceService, DisplayComponent, DividerComponent, DocsApiTableComponent, DocsBreadcrumbComponent, DocsBuilder, DocsCalloutComponent, DocsCodeExampleComponent, DocsLayoutComponent, DocsNavLinksComponent, DocsNavigationService, DocsPageComponent, DocsSearchComponent, DocsSectionComponent, DocsShellComponent, DocsSidebarComponent, DocsTocComponent, DonationService, DownloadService, EmailInputComponent, ExpandableTextComponent, FEATURES_LIST_DEFAULTS, FabComponent, FaqComponent, FeaturesListComponent, FeedbackFormComponent, FeedbackService, FileInputComponent, FirebaseService, FirestoreCollectionFactory, FirestoreService, FooterComponent, FooterLinksComponent, FormComponent, FormFooterComponent, FormSkeletonComponent, FunHeaderComponent, GlassComponent, GlowCardComponent, GlowComponent, GridSkeletonComponent, HANDOFF_ROUTE_PARAM, HANDOFF_TOKEN_PARAM, HandoffService, HeaderComponent, HintComponent, HorizontalScrollComponent, HourInputComponent, HrefComponent, I18nService, IMAGE_DEFAULTS, INITIAL_AUTH_STATE, INITIAL_MFA_STATE, Icon, IconComponent, IconService, ImageComponent, ImageCropComponent, ImageService, InAppBrowserService, InfiniteListComponent, InfoComponent, InputI18nHelper, InputType, ItemListComponent, LANG_STORAGE_KEY$1 as LANG_STORAGE_KEY, LEGAL_CONTENT_CONFIG, LOGIN_DEFAULTS, LanguageSelectorComponent, LayeredCardComponent, LegalContentService, LegalLinkService, LinkComponent, LinkProcessorService, LinkedProvidersComponent, LinksAccordionComponent, LinksCakeComponent, ListSkeletonComponent, LoadingDirective, LocalStorageService, LocaleService, LoginComponent, MODAL_SIZES, MOTIF_KEYS, MOTION, MaintenancePageComponent, MarkdownArticleParserService, MenuComponent, MessagingService, MetaService, ModalService, MultiSelectSearchComponent, NavigationService, NewsBuilder, NoContentComponent, NotesBoxComponent, NotificationActionService, NotificationsService, NumberFromToComponent, NumberInputComponent, NumberStepperComponent, OAUTH_PROVIDERS_INFO, OAuthCallbackComponent, OAuthService, OrgSwitchService, OutlineDefault, OutlineDefaultBlock, OutlineDefaultFull, OutlineDefaultRound, OutlineDefaultRoundBlock, OutlineDefaultRoundFull, PATTERN_MOTIFS, PATTERN_PALETTES, PLATFORM_CONFIGS, PageContentComponent, PageLinksComponent, PageRefreshService, PageTemplateComponent, PageWrapperComponent, PaginationComponent, PaginationService, PasswordInputComponent, PatternComponent, PhoneInputComponent, PillComponent, PinInputComponent, PlainCodeBoxComponent, PopoverSelectorComponent, PreferencesService, PresetService, PriceTagComponent, PrimarySolidBlockButton, PrimarySolidBlockHrefButton, PrimarySolidBlockIconButton, PrimarySolidBlockIconHrefButton, PrimarySolidDefaultRoundButton, PrimarySolidDefaultRoundHrefButton, PrimarySolidDefaultRoundIconButton, PrimarySolidDefaultRoundIconHrefButton, PrimarySolidFullButton, PrimarySolidFullHrefButton, PrimarySolidFullIconButton, PrimarySolidFullIconHrefButton, PrimarySolidLargeRoundButton, PrimarySolidLargeRoundHrefButton, PrimarySolidLargeRoundIconButton, PrimarySolidLargeRoundIconHrefButton, PrimarySolidSmallRoundButton, PrimarySolidSmallRoundHrefButton, PrimarySolidSmallRoundIconButton, PrimarySolidSmallRoundIconHrefButton, ProcessLinksPipe, ProfileSkeletonComponent, ProgressBarComponent, ProgressRingComponent, ProgressStatusComponent, PrompterComponent, QR_PRESETS, QrCodeComponent, QrGeneratorService, QueryBuilder, QuoteBoxComponent, RadioInputComponent, RangeInputComponent, RatingComponent, RefresherComponent, RightsFooterComponent, RotatingTextComponent, SHAPE_KEYS, SKELETON_LAYOUT_DEFAULT_ROWS, SKELETON_PRESETS, SOLID_KEYS, SearchSelectorComponent, SearchbarComponent, SecondarySolidBlockButton, SecondarySolidBlockHrefButton, SecondarySolidBlockIconButton, SecondarySolidBlockIconHrefButton, SecondarySolidDefaultRoundButton, SecondarySolidDefaultRoundHrefButton, SecondarySolidDefaultRoundIconButton, SecondarySolidDefaultRoundIconHrefButton, SecondarySolidFullButton, SecondarySolidFullHrefButton, SecondarySolidFullIconButton, SecondarySolidFullIconHrefButton, SecondarySolidLargeRoundButton, SecondarySolidLargeRoundHrefButton, SecondarySolidLargeRoundIconButton, SecondarySolidLargeRoundIconHrefButton, SecondarySolidSmallRoundButton, SecondarySolidSmallRoundHrefButton, SecondarySolidSmallRoundIconButton, SecondarySolidSmallRoundIconHrefButton, SegmentControlComponent, SelectSearchComponent, SessionService, ShareButtonsComponent, SimpleComponent, SkeletonComponent, SkeletonLayoutComponent, SkeletonService, SolidBlockButton, SolidDefault, SolidDefaultBlock, SolidDefaultButton, SolidDefaultFull, SolidDefaultRound, SolidDefaultRoundBlock, SolidDefaultRoundButton, SolidDefaultRoundFull, SolidFullButton, SolidLargeButton, SolidLargeRoundButton, SolidSmallButton, SolidSmallRoundButton, StatsCardComponent, StepperComponent, StorageService, SwipeCarouselComponent, TRI_KEYS, TabbedContentComponent, TableSkeletonComponent, TabsComponent, Terminal404Component, TestimonialCardComponent, TestimonialCarouselComponent, TextComponent, TextInputComponent, TextareaInputComponent, ThemeOption, ThemeService, TimelineComponent, TitleBlockComponent, TitleComponent, ToastService, ToggleInputComponent, TokenService, ToolbarActionType, ToolbarComponent, TranslatePipe, TypedCollection, UPDATE_BANNER_DEFAULT_CONTENT, UPDATE_BANNER_I18N_NAMESPACE, UpdateBannerComponent, UserAvatarComponent, UsernameInputComponent, VALTECH_ADS_CONFIG, VALTECH_APP_CONFIG, VALTECH_APP_VERSION, VALTECH_AUTH_CONFIG, VALTECH_COMPANY_LINKS, VALTECH_DEFAULT_CONTENT, VALTECH_DONATION_CONFIG, VALTECH_FEEDBACK_CONFIG, VALTECH_FIREBASE_CONFIG, VALTECH_FOOTER_I18N, VALTECH_FOOTER_LOGO, VALTECH_LANGUAGE_SELECTOR, VALTECH_LEGAL_CONFIG, VALTECH_SOCIAL_LINKS, VERSION, WizardComponent, WizardFooterComponent, applyDefaultValueToControl, authGuard, authInterceptor, blogPost, buildFooterLinks, buildPath, collections, connectPageRefresh, createFirebaseConfig, createGlowCardProps, createInitialPaginationState, createNumberFromToField, createRefreshableStream, createTitleProps, docs, extractPathParams, generatePatternTiles, generateRandomTile, getAppInfo, getAppVersion, getCollectionPath, getDocumentId, getTimeOfDayKey, goToTop, guestGuard, hasEmulators, isAtEnd, isCollectionPath, isDocumentPath, isEmulatorMode, isValidPath, joinPath, maxLength, mulberry32, news, parseMarkdownArticle, permissionGuard, permissionGuardFromRoute, provideLegalContent, provideValtechAds, provideValtechAppConfig, provideValtechAppVersion, provideValtechAuth, provideValtechAuthInterceptor, provideValtechDonations, provideValtechFeedback, provideValtechFirebase, provideValtechI18n, provideValtechLegal, provideValtechPresets, provideValtechSkeleton, query, renderPatternSvgInner, replaceSpecialChars, resolveColor, resolveInputDefaultValue, roleGuard, storagePaths, superAdminGuard, toArticle };
45731
45766
  //# sourceMappingURL=valtech-components.mjs.map